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

レコードの更新/挿入

ID または指定された外部 ID 項目の値に基づいて、レコードを作成するか、既存のレコードを更新 (更新/挿入) します。
  • 外部 ID が一致しない場合は、リクエストボディに従って新規レコードが作成されます。
  • 外部 ID が一度だけ一��する場合は、リクエストボディに従ってレコードが更新されます。
  • 外部 ID が複数回一致する場合は、300 エラーが報告され、レコードは作成も更新もされません。

以降のセクションでは、外部 ID リソースを使用して外部 ID でレコードを取得する方法とレコードを Upsert する方法を説明します。

外部 ID を使用した新規レコードの更新/挿入

この例では、PATCH メソッドを使用して新規レコードを挿入します。外部 ID 項目「customExtIdField__c」がすでに Account に追加されていると想定します。また、customExtIdField 値が 11999 の Account レコードがまだ存在していないと想定します。

この例では、ジョブの作成とレコードデータのアップロードを 1 回のコールで実行できます。

まだ存在していないレコードを Upsert する例
JSON リクエストボディ newrecord.json ファイルの例
JSON 応答の例
成功を示す応答を次に示します。

HTTP 状況コードは 201 (Created) です。

created パラメータが応答に表示されるのは、API バージョン 46.0 以降です。それより前のバージョンでは表示されません。

メモ

エラー応答
外部 ID 項目が不正な場合は、次のような応答が返されます。

外部 ID を使用した既存のレコードの更新/挿入

この例では、PATCH メソッドを使用して既存のレコードを更新します。外部 ID 項目「customExtIdField__c」がすでに Account に追加されていて、customExtIdField 値が 11999 の Account レコードがすでに存在すると想定します。要求では updates.json を使用して更新する項目値を指定します。

既存のレコードを Upsert する例
JSON リクエストボディ updates.json ファイルの例
JSON 応答の例
API バージョン 46.0 以降では、HTTP 状況コードは 200 (OK) で、成功を示す応答は次のとおりです。

API バージョン 45.0 以前では、HTTP 状況コードは 204 (No Content) で、レスポンスボディはありません。

エラー応答
外部 ID 値が一意でない場合、HTTP 状況コード 300 が返され、さらにクエリに一致したレコードのリストが返されます。
外部 ID 項目が存在しない場合、エラーメッセージとコードが返されます。

Id を外部 ID として使用した新規レコードの挿入

この例では、特殊なケースとして POST メソッドを使用し、Id 項目が外部 ID として処理されるレコードを挿入します。Id の値は null であるため、要求から除��されます。このパターンは、異なる外部 ID によって複数のレコードを Upsert するコードを記述していて、個別のリソースを要求したくない場合に役立ちます。Id を使用する POST は、API バージョン 37.0 以降で使用できます。

まだ存在していないレコードを挿入する例
JSON リクエストボディ newrecord.json ファイルの例
JSON 応答の例
成功を示す応答を次に示します。

HTTP 状況コードは 201 (Created) です。

created パラメータが応答に表示されるのは、API バージョン 46.0 以降です。それより前のバージョンでは表示されません。

メモ