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

Consent Write

ユーザーはさまざまな場所に同意設定を保存することがあります。Consent Write API では、1 つの API コールを介して複数のレコードで同意の更新および書き込みができるため、レコード全体で同意を同期したり、新しい同意データモデルを入力したりするのに役立ちます。このリソースは REST API バージョン 48.0 以降で使用できます。
Consent API は、レコードに参照関係があるか、メールアドレスを共有している場合、取引先オブジェクト、連絡先種別承諾オブジェクト、データ使用目的オブジェクト、個人オブジェクト、リードオブジェクト、個人取引先オブジェクト、ユーザーオブジェクトに同意の値を書き込みます。この API は Data Cloud 個人レコードに書き込むこともできます。Consent API は、メールアドレス項目がプラットフォームの暗号化によって保護されているレコードを見つけることはできません。

Spring '21 リリースでは、この API にはメールアドレスが 1 つのみ取り込まれます。メールアドレスが一致したレコードは、API コールで設定されたパラメーターに基づいて更新されます。

メモ

リストされたメールアドレスを使用するすべてのレコードが更新されます。createIndividual パラメーターが選択されていて、個人レコードが存在しない場合は、API によって個人レコードが作成されます。正当な場合、連絡先種別承諾および連絡先メールレコードも作成されます。

リクエストボディを使用するのは Data Cloud のみです。リクエストボディで何も渡さない場合は、空のオブジェクト {} を渡します。

構文

URI
/services/data/vXX.X/consent/action/action?ids=listOfIds
形式
JSON
HTTP のメソッド
PATCH
認証
Authorization: Bearer token
要求のパラメーター
パラメーター 説明
blobParam 省略可能。可搬性の書き込み位置などの情報を Data Cloud に渡すために使用します。mode=cdp の場合のみ使用します。このパラメーターは、PATCH リクエストボディの一部として渡す必要があります。
captureDate 省略可能。同意が捕捉される日時。デフォルトは API コールが実行される日時です。
captureContactPointType 省略可能。同意の捕捉方法を表します (Web、電話、メール)。サポートされている値は、次のとおりです。
  • email
  • phone
  • web (デフォルト)
captureSource 省略可能。同意の捕捉元。デフォルトの捕捉元は Consent API です。最大文字数は 255 文字です。
consentName 省略可能。新しい同意レコードの名前を設定するために使用します。デフォルトは、Individual Name-Datetime (<名前> 2019-03-31T15:47:57) です。 最大文字数は 255 文字です。
createIndividual 省略可能。ブール型。true に設定し、API コールに個人オブジェクトのない複数のレコードに一致するメールアドレスが含まれている場合、個人オブジェクトが作成されます。API コールでメールに一致するメールアドレスが使用されている同意レコードは、新しい個人オブジェクトにリンクされます。複数のレコードが見つかった場合、個人オブジェクトにリンクされていないレコードは、他のレコードで見つかった個人オブジェクトにリンクされます。一致するレコードで複数の個人オブジェクトが見つかった場合、コールは拒否されます。
doubleOptIn 省略可能。ダブルオプトインが完了した日時。書式は「Date および DateTime の有効な書式」に記載されています。
effectiveFrom 省略可能。同意が有効である期間の開始日。書式は「Date および DateTime の有効な書式」に記載されています。デフォルトは API コールが実行される日付です。
effectiveTo 省略可能。同意が有効である期間の終了日。書式は「Date および DateTime の有効な書式」に記載されています。
ids 必須。同意を同期するために使用されるメールアドレス。ID には、レコード ID か、レコードに記載されたメールアドレスを使用できます。mode=cdp の場合、ID 値は [個人 ID] 属性に等しい文字列です。
individualName 省略可能。個人レコードの個人の名前。新しい個人レコードに名前が入力されていない場合、渡されたメールアドレスのローカル部分が使用されます。最大文字数は 80 文字です。
mode 省略可能。デフォルト値は normal です。許可されるモードは normal または cdp です。mode=cdp の場合、要求は Data Cloud プラットフォームに渡され、同意が取得されるか、または書き込まれます。mode=cdp パラメーターは、actionblobParam、および ids パラメーターのみをサポートします。
purposeName 省略可能。同意したデータ使用目的。以前作成した既存のデータ使用目的を使用する必要があります。同じ名前の目的が複数ある場合、その 1 つのみが選択されます。
status 必須。同意の状況 (OptInOptOutSeenNotSeen)。個人オブジェクトにアクションがある場合 (追跡や処理など)、有効な値は OptInOptOut のみです。
アクション

有効な値は、次のとおりです。

  • email
  • fax
  • geotrack
  • mailing
  • phone
  • portability
  • process
  • profile
  • shouldForget
  • social
  • solicit
  • storePiiElsewhere
  • track
  • web

セキュリティ

Consent Write API をコールするには、ModifyAllData または ConsentApiUpdate ユーザー権限を持っている必要があります。これは、この API が、ユーザーが通常アクセスするレコードだけでなく、レコード間のリンクや同意フラグの値など、組織全体の同意データを書き込むためです。ConsentApiUpdate ユーザー権限によって、Consent Write API コール時の完全な更新権限がユーザーに付与されます。

リクエストの例
1curl -X PATCH https://MyDomainName.my.salesforce.com/services/data/v60.0/consent/action/<action>?ids=<email-OR-recordID>&status=<optout/optin/seen/notseen>&createIndividual=<true/false> -H "Content-Type: application/json" -d "@exampleRequestBody.json"
リクエストボディの例
1{}
レスポンスボディの例
1{
2  "<email-OR-recordID>" : {
3    "result" : "Success",
4    "edited" : [{
5      "objectType" : "<Contact, Lead, User, etc.>",
6      "field" : "<HasOptedOutofFax, DoNotCall,etc>",
7      "valueOfField" : "<true/false>",
8      "id" : "<recordID>"
9    }],
10  }
11}