kintone API

更新記錄

更新單個記錄。

目錄

HTTP 方法PUT
URLhttps://sample.cybozu.com/k/v1/record.json
URL(訪客空間)https://sample.cybozu.com/k/guest/GUEST_SPACE_ID/v1/record.json
認證 密碼驗證 , API令牌認證 , 會話認證 , OAuth認證
Content-Typeapplication/json

請求參數

參數名稱 類型 必須 說明
app 數值或字串 必須 應用ID
id 數值或字串 部分條件下必須 記錄ID
如果指定updateKey,則id 不能指定。
updateKey 物件 條件必填項 欄位代碼和値
如果要透過指定值來更新欄位,請指定updateKey
可指定的欄位為設置了“值為唯一”的「單行文字方塊」或「數值」欄位。
如果指定id,則updateKey 不能指定。
record 物件 可省略 指定記錄資訊(欄位代碼和欄位值)的物件
有關詳細的欄位格式,請參閱以下頁面。
欄位格式
如果省略,則不會更新數據。
revision 數值或字串 可省略 預期修訂號
如果它與實際修訂號不匹配,則會發生錯誤,並且不會更新記錄。
如果指定值「-1」或未指定值,則不會驗證修訂號。

應答屬性

屬性名稱 類型 說明
revision 字串 已更新的記錄的修訂號

所需存取權限

  • 應用程式的記錄的編輯權限
  • 要更新其值的記錄的編輯權限
  • 要更新其值的欄位的編輯權限

範例

1
https://sample.cybozu.com/k/v1/record.json
1
2
3
4
{
  "X-Cybozu-API-Token": "API_TOKEN",
  "Content-Type": "application/json"
}

有關請求頭的詳細資訊,請參閱通用規格。
kintone REST API通用規格

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{
  "app": 1,
  "id": 1001,
  "record": {
    "單行文字方塊_0" : {
      "value": "character string is changed"
    },
    // 對於放置在表中的欄位的第一行
    "表格_0": {
      "value": [
        {
          "id": 1,
          "value": {
            "單行文字方塊_1" : {
              "value": "character string is changed"
            }
          }
        }
      ]
    }
  },
  "revision": 2
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
  "app": 1,
  "updateKey": {
    "field": "單行文字方塊_0",
    "value": "欄位的値"
  },
  "record": {
    "單行文字方塊_1" : {
      "value": "character string is changed"
    }
  },
  // 對於放置在表中的欄位的第一行
    "表格_0": {
      "value": [
        {
          "id": 1,
          "value": {
            "單行文字方塊_2": {
              "value": "character string is changed"
            }
          }
        }
      ]
    }
  },
  "revision": 2
}

1
2
3
{
  "revision": "3"
}

有關kintone.api()的說明,請參閱以下頁面。
傳送kintone REST API請求

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
const body = {
  app: kintone.app.getId(),
  id: 1001,
  record: {
    單行文字方塊_0: {
      value: 'ABC'
    }
  }
};

await kintone.api(kintone.api.url('/k/v1/record.json', true), 'PUT', body);

根據您的環境,curl的格式可能會有所不同。
有關說明,請參閱以下頁面。
使用curl命令執行kintone REST API中的3.執行API (日語)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
curl -X PUT 'https://sample.cybozu.com/k/v1/record.json' \
  -H 'X-Cybozu-API-Token: API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "app": 1,
    "id": 1001,
    "record": {
      "單行文字方塊_0" : {
        "value": "ABC"
      }
    }
  }'

補充

  • 有兩種方法:一種是指定記錄ID,另一種是指定欄位的值。

更新附件欄位時

  • 如果要將新檔添加到已附加檔的欄位中,請將附加檔 fileKey 的值指定為欄位值。
  • 如果要更新已附加的檔案,需要用上傳文件API來獲取fileKey,並在“獲取一筆記錄的API”中指定獲得的fileKey
  • 如果要從欄位中刪除已附加的檔案,請從欄位的值中排除要刪除 fileKey 的檔。

更新表格時

  • 如果省略record中表的欄位代碼,則保留該表中的數據。
    但是,如果要更新表的一部分,請在請求中包含所有現有行。 請求中未指定的行將被刪除。
  • 如指定透過「取得1筆記錄API」獲取的表格行id,則會更新指定了id的行。
    獲取1條記錄
    如果不指定id,而直接更改行的值,則id將發生變更變。
  • 行的順序是請求中指定的陣列的順序。
    如果只想對行進行排序,請在請求中僅指定調整了排序的 id

限制事項

  • 以下欄位的值無法更新:
    • 從Lookup源複製的欄位
    • 狀態
    • 類別
    • 計算
    • 執行者
    • 建立人
    • 建立時間
    • 更新人
    • 更新時間
    • 具有自動計算功能的單行字串欄位