この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

sObject Collections を使用したレコードの更新/挿入

sObject コレクションを使用した PATCH 要求によって、外部 ID 項目に基づいて最大 200 件のレコードを作成または更新 (更新/挿入) します。このメソッドでは、UpsertResult オブジェクトのリストを返します。エラーが発生した場合に要求全体をロールバックするかどうかを選択できます。この要求は、API バージョン 46 以降で使用できます。
  • リストには最大 200 個のオブジェクトを含めることができます。
  • リストには要求 URI で指定された種別のオブジェクトのみを含めることができます。
  • リクエストボディの各オブジェクトには属性の対応付けが含まれている必要があります。対応付けには type の値が含まれている必要があります。

    sObject コレクションを使用して blob データを挿入する場合は、他の値も属性の対応付けに必要となります。詳細は、「sObject コレクションを使用した blob レコードのコレクションの挿入」を参照してください。

    メモ

  • オブジェクトは、リクエストボディでリストされている順に作成または更新されます。UpsertResult オブジェクトも同じ順序で返されます。
  • サポートされるのは外部 ID のみです。レコード ID は使用しないでください。

要求が適切な形式でない場合、API は 400 Bad Request HTTP 状況を返します。要求の構文を修正し、再試行してください。要求が適切な形式の場合、API は 200 OK HTTP 状況を返します。項目が正常に処理された場合、success フラグがその項目で表示されます。エラー情報は errors 配列で返されます。

構文

URI
/services/data/vXX.X/composite/sobjects/SobjectName/ExternalIdFieldName
形式
JSON、XML
HTTP のメソッド
PATCH
認証
Authorization: Bearer token
パラメータ
パラメータ 説明
allOrNone 省略可能。いずれかのオブジェクトの作成が失敗したときに要求全体をロールバックするのか (true)、それとも要求内のその他のオブジェクトの作成を個別に続行するのかを示します。デフォルトは、false です。

Composite 要求に sObject Collections 要求が組み込まれている場合、Composite 要求の allOrNone パラメータも結果に影響する場合があります。「Composite 要求および Collections 要求の allOrNone パラメータ」を参照してください。

メモ

records 必須。sObjects のリスト。sObject コレクションを使用する PATCH 要求では、各オブジェクトの type 属性を設定します。どのオブジェクトにも id 項目は設定しません。代わりに、要求 URI で指定された外部 ID 項目を、使用します。

リクエストの例
1curl -X PATCH https://MyDomainName.my.salesforce.com/services/data/v59.0/composite/sobjects/Account/MyExtId__c -H "Authorization: Bearer token" -H "Content-Type: application/json" -d "@exampleRequestBody.json"
リクエストボディの例
1{
2    "allOrNone" : false,
3    "records" : [{
4        "attributes" : {"type" : "Account"},
5        "Name" : "Company One",
6        "MyExtId__c" : "AAA"
7    }, {
8        "attributes" : {"type" : "Account"},
9        "Name" : "Company Two",
10        "MyExtId__c" : "BBB"
11    }]
12}
レスポンスボディの例
1HTTP/1.1 200 OK
2[
3    {
4        "id": "001xx0000004GxDAAU",
5        "success": true,
6        "errors": [],
7        "created": true
8    },
9    {
10        "id": "001xx0000004GxEAAU",
11        "success": true,
12        "errors": [],
13        "created": false
14    }
15]
レスポンスボディの例 (一部の項目でエラーが発生し、allOrNonefalse の場合)
1HTTP/1.1 200 OK
2
3[
4   {
5      "id" : "001xx0000004GxDAAU",
6      "success" : true,
7      "errors" : [ ]
8   },
9   {
10      "success" : false,
11      "errors" : [
12         {
13            "statusCode" : "MALFORMED_ID",
14            "message" : "Contact ID: id value of incorrect type: 001xx0000004GxEAAU",
15            "fields" : [
16               "Id"
17            ]
18         }
19      ]
20   }
21]
レスポンスボディの例 (一部の項目でエラーが発生し、allOrNonetrue の場合)
1HTTP/1.1 200 OK
2
3[
4   {
5      "id" : "001xx0000004GxDAAU",
6      "success" : false,
7      "errors" : [
8         {
9            "statusCode" : "ALL_OR_NONE_OPERATION_ROLLED_BACK",
10            "message" : "Record rolled back because not all records were valid and the request was using AllOrNone header",
11            "fields" : [ ]
12         }
13      ]
14   },
15   {
16      "success" : false,
17      "errors" : [
18         {
19            "statusCode" : "MALFORMED_ID",
20            "message" : "Contact ID: id value of incorrect type: 001xx0000004GxEAAU",
21            "fields" : [
22               "Id"
23            ]
24         }
25      ]
26   }
27]