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

Composite サブ要求

Composite サブ要求では、Composite Graph リソースを使用して実行するサブ要求を記述します。

プロパティ

名前 説明
body Varies

省略可能。

サブ要求の入力ボディ。

内容は url プロパティに指定された要求に応じて異なります。

httpHeaders Map<String, String>

省略可能。

サブ要求に含める要求ヘッダーとその値。次の 3 つのヘッダーを除き、要求されたリソースによってサポートされる任意のヘッダーを含めることができます。

  • Accept
  • Authorization
  • Content-Type

サブ要求は、最上位レベルの要求からこれら 3 つのヘッダーの値を継���します。サブ要求では、これらのヘッダーを指定しないでください。指定すると、最上位レベルの要求は失敗し、HTTP 400 応答が返されます。

有効な HTTP ヘッダーを含むサブ要求は並べ替えることができないため、要求の処理速度が低下します。

メモ

method String

必須。

要求するリソースに使用するメソッド。使用できる値は DELETE、GET、PATCH、および POST (大文字と小文字を区別) です。有効なメソッドのリストは、要求するリソースに関するドキュメントを参照してください。

このメソッドは、Composite Graph 要求を送信するために使用される POST メソッドとは異なります。ここで指定された方法は、url で指定されたリソースで動作する (グラフ内) メソッドです。

referenceId String

必須。

サブ要求の応答に対応付けられる参照 ID で、後のサブ要求で応答を参照するために使用できます。referenceId はサブ要求の本文または URL で参照できます。次の構文を使用して参照を含めます: @{referenceId.FieldName}

参照 ID では 2 つの演算子を使用できます。

. 演算子は、応答の JSON オブジェクトの項目を参照します。たとえば、あるサブ要求で取引先レコードのデータを取得して、参照 ID Account1Data を出力に割り当てるとします。後のサブ要求で次のような取引先名を参照できます: @{Account1Data.Name}

[] 演算子は、応答で JSON コレクションをインデックス付けします。たとえば、1 つのサブ要求で sObject Basic Information リソースを使用して取引先基本情報を要求し、参照 ID AccountInfo を出力に割り当てるとします。応答の一部に、最近作成された取引先のコレクションが含められます。最近使ったデータのコレクションで最初の取引先の ID を参照できます。例: @{AccountInfo.recentItems[0].Id}

応答のコンテキストで意味をなす限り、各演算子を再帰的に使用できます。たとえば、取引先の複合住所項目の請求先市区郡コンポーネントを参照する場合: @{NewAccount.BillingAddress.city}

referenceId は大文字と小文字が区別されるため、参照している項目の大文字/小文字に注意を払ってください。「使用状況」を参照してください。

  • referenceId は、先頭を文字または数字にする必要があります。
  • referenceId には、文字、数字、アンダースコア (「_」) のみを使用する必要があります。

メモ

url String

必須。

要求するリソース。

  • URL には、サブ要求がサポートするクエリ文字列パラメータを含めることができます。クエリ文字列は、URL 符号化されている必要があります。
  • パラメータを使用して、レスポンスボディを絞り込むことができます。
  • 次の URL のみがサポートされています。
    • /services/data/vXX.X/sobject/sObject
    • /services/data/vXX.X/sobject/sObject/id
    • /services/data/vXX.X/sobject/sObject/customFieldName/externalId
  • バージョン番号 XX.X は 50.0 以降である必要があります。

例 1

1{
2   "body" : {
3     "Name" : "Sample Account"
4   },
5   "method" : "POST",
6   "referenceId" : "refAccount",
7   "url" : "/services/data/v52.0/sobjects/Account"
8}

例 2

1{
2   "method" : "GET",
3   "referenceId" : "NewAccountFields",
4   "url" : "/services/data/v52.0/sobjects/Account/@{refAccount.id}"
5}

使用方法

referenceId は大文字と小文字が区別されるため、参照している項目の大文字/小文字に注意することが重要です。同じ項目でも、コンテキストによって異なる大文字/小文字が使用されることがあります。たとえば、レコードを作成する場合、ID 項目は応答で id と表示されます。ただし、sObject Rows リソースを使用してレコードのデータにアクセスする場合、ID 項目は Id と表示されます。例 2 の @{refAccount.id} 参照は有効です。例 1 に示すように refAccount が POST からの応答を参照するためです。@{refAccount.Id} と同様、代わりに Id を使用する場合 (すべて小文字ではなく大文字と小文字を併用)、参照 ID は大文字/小文字が間違っているため、要求の送信時にエラーが表示されます。

結果

サブ要求の結果は、他の Composite 要求の結果と同じです。「Composite サブ要求の結果」を参照してください。