少ない往復回数での複数レコードの作成
sObject コレクションを使用した POST 要求によって、最大 200 件のレコードを追加し、SaveResult オブジェクトのリストを返します。エラーが発生した場合に要求全体をロールバックするかどうかを選択できます。
要求の構文
POST /vXX.X/composite/sobjects
パラメータ
| パラメータ | 説明 |
|---|---|
| allOrNone | 省略可能。いずれかのオブジェクトの作成が失敗したときに要求全体をロールバックするのか (true)、それとも要求内のその他のオブジェクトの作成を個別に続行するのかを示します。デフォルトは、false です。 |
| records | 必須。sObjects のリスト。sObject コレクションを使用する POST 要求では、各オブジェクトの type 属性を設定しますが、id 項目はどのオブジェクトに対しても設定しません。 |
使用のガイドライン
- リストには最大 200 個のオブジェクトを含めることができます。
- リストには異なる種別のオブジェクトを含めることができ、カスタムオブジェクトも使用できます。
- 各オブジェクトには属性の対応付けが含まれている必要があります。対応付けには type の値が含まれている必要があります。
- オブジェクトは、リストされている順に作成されます。SaveResult オブジェクトは、作成要求が指定された順に返されます。
- リクエストボディに複数の種別のオブジェクトが含まれている場合は、チャンクとして処理されます。たとえば、受信したオブジェクトが {account1, account2, contact1, account3} の場合、要求は次のように 3 つのチャンクで処理されます: {{account1, account2}, {contact1}, {account3}}。1 つの要求で最大で 10 個のチャンクを処理できます。
- 1 つの要求で最大で 10 個のチャンクを処理できます。
- 複数のオブジェクト種別のレコードを作成する場合、いずれかのオブジェクト種別が Salesforce の [設定] 領域の機能に関連していると、1 回のコールでは作成することができません。
リクエストボディの例
1POST /composite/sobjects
2{
3 "allOrNone" : false,
4 "records" : [{
5 "attributes" : {"type" : "Account"},
6 "Name" : "example.com",
7 "BillingCity" : "San Francisco"
8 }, {
9 "attributes" : {"type" : "Contact"},
10 "LastName" : "Johnson",
11 "FirstName" : "Erica"
12 }]
13}レスポンスボディの例
1[
2 {
3 "success": false,
4 "errors": [
5 {
6 "fields": [],
7 "message": "There was an error creating this object.",
8 "statusCode": "DUPLICATES_DETECTED"
9 }
10 ],
11 "warnings": []
12 },
13 {
14 "success": true,
15 "id": "003xx000004TmiQAAS",
16 "errors": [],
17 "warnings": []
18 }
19]