更新多條記錄

information

本頁面使用機器翻譯而成。
機器翻譯免責聲明 (External link)

目錄

更新多條記錄

更新多條記錄。

  • 您一次最多可以更新 100 條記錄。
  • 有兩種方法可以更新記錄:指定記錄ID和指定欄位的值。
  • 如果該過程失敗,則將取消對請求中指定的記錄的任何更新。

URL

常規應用程式
https://sample.cybozu.com/k/v1/records.json
訪客空間的應用程式
https://sample.cybozu.com/k/guest/GUEST_SPACE_ID/v1/records.json

HTTP 方法

PUT

所需存取權限

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

請求

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

https://sample.cybozu.com/k/v1/records.json

標頭
1
2
3
4
{
  "X-Cybozu-API-Token": "API_TOKEN",
  "Content-Type": "application/json"
}

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

正文(指定記錄 ID)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{
  "app": 1001,
  "records": [
    {
      "id": 1,
      "revision": 4,
      "record": {
        "單行文字方塊_0" : {
          "value": "ABC"
        }
      }
    },
    {
      "id": 2,
      "revision": 1,
      "record": {
        "單行文字方塊_1" : {
          "value": "DFG"
        }
      }
    }
  ]
}
內文(如果要透過指定值來更新欄位)
 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
28
29
{
  "app": 1001,
  "records": [
    {
      "updateKey": {
        "field": "單行文字方塊_0",
        "value": "CODE123"
      },
      "revision": 4,
      "record": {
        "單行文字方塊_1" : {
          "value": "123"
        }
      }
    },
    {
      "updateKey": {
        "field": "單行文字方塊_0",
        "value": "CODE456"
      },
      "revision": 1,
      "record": {
        "單行文字方塊_1" : {
          "value": "456"
        }
      }
    }
  ]
}

回應

屬性
屬性名稱 類型 說明
records 陣列(物件) 具有更新記錄的 ID 和修訂號的物件陣列
records[].id 字串 更新記錄的記錄ID
records[].revision 字串 已更新的記錄的修訂號
示例回應
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
{
  "records": [
    {
      "id": "1",
      "revision": "5"
    },
    {
      "id": "2",
      "revision": "2"
    }
  ]
}

示例代碼

使用 curl 的請求
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
curl -X PUT 'https://sample.cybozu.com/k/v1/records.json' \
  -H 'X-Cybozu-API-Token: API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "app": 1,
    "records": [
      {
        "id": 1,
        "record": {
          "單行文字方塊_0" : {
            "value": "ABC"
          }
        }
      },
      {
        "id": 2,
        "record": {
          "單行文字方塊_1" : {
            "value": "DFG"
          }
        }
      }
    ]
  }'
kintone.api()請求使用

有關詳細的kintone.api(),請參閱以下頁面。
發送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
const body = {
  app: kintone.app.getId(),
  records: [
    {
      id: 1,
      record: {
        單行文字方塊_0: {
          value: 'ABC'
        }
      }
    },
    {
      id: 2,
      record: {
        單行文字方塊_1: {
          value: 'DFG'
        }
      }
    }
  ]
};

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

注意事項

更新附件欄位時
  • 如果要將新檔添加到已附加檔的欄位中,請將附加檔 fileKey 的值指定為欄位值。
  • 如果要更新已附加的檔,請使用fileKey上傳檔案API再次上傳檔,並在更新多條記錄 API中指定獲取到的檔案。
  • 如果要從欄位中刪除已附加的檔案,請從欄位的值中排除要刪除 fileKey 的檔。
更新表格時
  • 如果省略records[].record中表的欄位代碼,則保留該表中的數據。
    但是,如果要更新表的一部分,請在請求中包含所有現有行。
    請求中未指定的行將被刪除。
  • 當您指定使用 API獲取的表中的列以id選取多條記錄時 API,使用指定的 ID 更新行。
    獲取多條記錄
    如果id變更行的值而不指定 ,則變更為id
  • 行的順序是請求中指定的陣列的順序。
    如果只想對行進行排序,請在請求中僅指定調整了排序的 id

限制事項

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