Campaign と、Lead または Contact との間の関連を表します。
サポートされているコール
API バージョン 15.0 以前: create()、delete(), describeLayout()、describeSObjects()、getDeleted()、getUpdated()、query()、retrieve()、update()、upsert()
API バージョン 16.0 以降: upsert()
特別なアクセスルール
カスタマーポータルユーザはこのオブジェクトにアクセスできません。
項目
| CampaignId |
- 型
- reference
- プロパティ
- Create、Filter、Group、Sort
- 説明
- 必須。Lead または Contact が関連付けられる Campaign の ID。
|
| ContactId |
- 型
- reference
- プロパティ
- Create、Filter、Group、Nillable、Sort
- 説明
- 必須。Campaign に関連付けられている Contact の ID。
|
| CurrencyIsoCode |
- 型
- picklist
- プロパティ
- Create、Defaulted on create、Filter、Nillable、Restricted picklist、Update
- 説明
- 複数の currency 機能を有効化している組織にのみ使用できます。組織で使用できる currency の ISO コードが指定されています。
|
| FirstRespondedDate |
- 型
- date
- プロパティ
- Filter、Group、Nillable、Sort
- 説明
- キャンペーンメンバーが、最初にレスポンスありの状況に指定された日付を示します。
|
| HasResponded |
- 型
- boolean
- プロパティ
- Defaulted on create、Filter、Group、Sort
- 説明
- キャンペーンメンバーが、キャンペーンにレスポンスを行ったか (true)、否か (false) を示します。表示ラベルは Responded です。
|
| LeadId |
- 型
- reference
- プロパティ
- Create、Filter、Group、Nillable、Sort
- 説明
- 必須。Campaign に関連付けられている Lead の ID。
|
| RecordTypeId |
- 型
- reference
- プロパティ
- Create、Filter、Nillable、Update
- 説明
- このオブジェクトに割り当てられるレコードタイプの ID。レコードタイプを変更するには、関連付けられた Campaign の CampaignMemberRecordTypeId 項目を変更します。
|
| Status |
- 型
- picklist
- プロパティ
- Create、Filter、Group、Nillable、Sort、Update
- 説明
- このオブジェクトの HasResponded フラグを制御します。HasResponded フラグは参照のみであるため直接設定できませんが、この項目を create コールまたは update コールで設定することで間接的に設定することができます。それぞれの事前定義された値は、HasResponded フラグ値を意味します。この項目を更新するごとに、HasResponded フラグが暗黙的に更新されます。Salesforce ユーザインターフェースでは、マーケティングユーザが、Status 選択リスト項目の有効な状況値を定義できます。デフォルトの状況として、1 つの状況を選択できます。Status 項目の各値を対象に、「レスポンスあり」としてカウントする必要のある値を指定することもできます。つまり、それらの値に対しては、HasResponded フラグが true に設定されます。
最大 40 文字です。
キャンペーンメンバーの作成や更新では、CampaignMemberStatus オブジェクトの ID ではなく、Status のテキスト値を使用します。
|
CampaignMember データを Salesforce にインポートし、CreatedDate など、監査項目に値を設定する必要がある場合は、Salesforce にご連絡ください。これらの項目を自身で設定する必要がない限り、監査項目は API 操作時に自動的に更新されます。
使用方法
各レコードには一意の ID があり、ContactId または LeadId のいずれかを指定する必要がありますが、両方を指定することはできません。両方を指定して 1 つのレコードを作成しようとすると、挿入��理自体は正常に行われますが、ContactId のみが挿入されます。ただし、1 つの Campaign に 2 つのレコードを個別に作成できます。1 つは Lead、もう 1 つは Contact のレコードです。
Contact または
Lead の標準項目は、
CampaignMember オブジェクトに関連付けられていますが、直接クエリすることはできません。たとえば、リードの
Phone をクエリに含めるには、
Lead オブジェクトの項目をクエリします。
1SELECT Id, (SELECT Phone FROM Lead)
2FROM CampaignMember
このオブジェクトは、マーケティング機能を使用でき、有効なマーケティングライセンスを付与されている組織にのみ定義されています。また、マーケティングユーザとして有効化されているユーザのみアクセスできます。組織にマーケティング機能または有効なマーケティングライセンスが付与されていない場合、このオブジェクトは describeGlobal() コールに表示されず、CampaignMember オブジェクトでは、describeSObjects() または query() を使用できません。
API バージョン 16.0 以降では、
create() コールは新しいレコードを作成するのみですが、以前のバージョンでは、
create() コールはレコードを作成し、更新します。
API は、指定された
CampaignId および
ContactId または
LeadId にレコードが存在するかどうかを特定します。
取引先責任者に変換するリードベースのキャンペーンメンバーを追跡する場合を除き、ContactId または LeadId のいずれかを使用し、2 つ同時に使用しないようにします。
指定された
ContactId または
LeadId にレコードが存在しない場合、新しいレコードが作成されます。レコードが存在する場合、エラーが返され、更新は行われません。既存のレコードを更新するには、更新する
CampaignMember レコードの ID を指定します。
API バージョン 15.0 以前では、1 つの create 要求を使用して複数のレコードを送信し、複数のレコードが既存のレコードに一致した場合、送信した最初のレコードに基づいて既存のレコードが更新されます。送信されたレコード間で一致があり、かつ、既存のレコードに一致するものがないという場合は、送信された最後のレコードに基づいて作成が実行されます。
upsert() コールは、API バージョン 16.0 以降でサポートされていません。このオブジェクトに upsert() コールを使用するには、まずレコード ID 以外の ID 項目のすべてのデータを削除する必要があります。
レコードを削除するには、削除する CampaignMember レコードの ID を指定します。
レコードを作成または更新する場合、コールで指定された Status 項目値は、指定された Campaign で有効な状況がどうかが検証されます。
- 指定された Status 値が有効な状況である場合、値が更新され、HasResponded に関連付けられた Status の値に応じて、HasResponded 項目が true または false に更新されます。
- 指定された Status の値が有効な状況ではない場合、API はデフォルトの状況を Status 項目に割り当て、関連付けられた値で HasResponded 項目を更新します。ただし、指定された Campaign にデフォルトの状況がない場合、API はコールで指定された値を Status 項目に割り当て、HasResponded 項目は false に設定します。