Get Appointment Candidates
作業種別グループまたは作業種別と、サービステリトリーに基づいて、サービスリソース (予定の候補) のリストを返します。
要求を作成する前に、Salesforce Scheduler を設定します。この設定には、サービスリソース、サービステリトリーメンバー、作業種別グループ、作業種別、作業種別グループメンバー、およびサービステリトリー作業種別の作成または設定が含まれます。詳細は、「Salesforce Scheduler の設定」を参照してください。
利用可能な時間枠を決定するために、予定の時間枠が、項目値、スケジュール済み予定、不在、Scheduler の設定、スケジュールポリシーなどの複数の要素に基づいて決定されます。詳細は、「Salesforce Scheduler による対応可能な時間枠の決定」を参照してください。
リソースの開始時刻および終了時刻を返す際には、以下の要素が検討されます。
- リソースの作業可能性
- サービステリトリーメンバー、サービステリトリー、作業種別、取引先の営業時間の各項目を使用して判断されます。
- リソースの作業不可能性
- リソースの不在、リソースが割り当てられた既存の予定に基づいて判断されます。リソースは、状況が [クローズ済み]、[キャンセル]、または [完了] のいずれでもない予定の必須リソースとしてマークする必要があります。
- スケジュールポリシー内の予定の開始時間の間隔
- 予定を開始できる時間は、スケジュールポリシー内の [Appointment start time interval (予定の開始時間の間隔)] 項目を使用して決定されます。この間隔には、5、10、15、20、30、または 60 を設定できます。デフォルトでは 15 に設定されます。
- 作業種別の期間
- 終了時刻は、開始時刻 + 作業種別の期間で計算されます。
構文
- URI
- /services/data/vXX.X/scheduling/getAppointmentCandidates
- 使用可能なバージョン
- 45.0
- 形式
- JSON、XML
- HTTP のメソッド
- POST
- リクエストボディ
-
パラメーター 必須 型 説明 accountId いいえ String 関連取引先の ID。 allowConcurrentScheduling いいえ Boolean true の場合、時間枠での同時予定のスケジュールが許可されます。false の場合、同時予定は許可されません。デフォルトは false です。 この項目は、API バージョン 47.0 以降で使用できます。
correlationId いいえ String ServiceResourceScheduleHandler Apex インターフェースにカスタム情報を渡すための ID。たとえば、この相関関係 ID によって Apex インターフェース実装をコールするアプリケーション、Web サイト、または外部システムを識別できます。カスタム値を渡さない場合、ランダムに生成された識別子が渡されます。 この項目は、API バージョン 53.0 以降で使用できます。
endTime いいえ String 時間枠 (両端を含む) が終わる最も遅い時間。 engagementChannelTypeIds いいえ String[] エンゲージメントチャネル種別レコードの ID。サービスリソースの対応可能状況は、選択したエンゲージメントチャネル種別に基づいて絞り込みます。この項目は、API バージョン 56.0 以降で使用できます。 getAppointmentCandidates API でエンゲージメントチャネル種別を使用できるのは、次の場合のみです。- [エンゲージメントチャネルを使用して予定をスケジュール] 設定が、Salesforce 組織の Salesforce Scheduler の設定で有効になっている。
- シフトが、スケジュールポリシーで定義されている。スケジュールポリシーでのシフトの設定の詳細は、「スケジュールポリシーでのシフトルールの定義」を参照してください。
filterByResources いいえ String[] サービスリソース ID のカンマ区切りリスト。API は、リストと選択したサービステリトリーの両方の資格があるサービスリソースのみを返します。リソースは、リソース ID が渡された順序で並び替えられます。API バージョン 51.0 以降で利用できます。 resourceLimitApptDistribution いいえ Integer 予定の配分が有効になっている場合に予定のスケジュール中に表示するサービスリソースの最大数を指定します。API バージョン 53.0 以降で利用できます。 startTime いいえ String 時間枠 (両端を含む) が始まる最も早い時間。指定されていない場合は、デフォルトの要求の現時刻に設定されます。過去の時間も使用できます。 schedulingPolicyId いいえ String AppointmentSchedulingPolicy オブジェクトの ID。リクエストボディでスケジュールポリシーが渡されない場合、デフォルトの設定が使用されます。この API を使用する場合、すべてのスケジュールポリシー設定が考慮されます。 territoryIds はい String[] 要求されている作業が実施されるサービステリトリー ID のリスト。 workType workTypeGroupId が指定されていない場合は必須。 Work Type 実施される作業の種別。 workTypeGroupId workType が指定されていない場合は必須。 String 実施されている作業種別を含む作業種別グループの ID。 - レスポンスボディ
- 要求の実行が成功すると、利用可能な予定のリソースのリストを含むレスポンスボディが返されます。
-
パラメーター 必須 型 説明 candidates はい Candidates[] 利用可能な予定の候補のリスト。
例
- リクエストボディの例
-
workTypeGroupId を使用:
1{ 2 "startTime": "2019-01-23T00:00:00.000Z", 3 "endTime": "2019-02-30T00:00:00.000Z", 4 "workTypeGroupId": "0VSB0000000KyjBOAS", 5 "accountId": "001B000000qAUAWIA4", 6 "territoryIds": [ 7 "0HhB0000000TO9WKAW" 8 ], 9 "schedulingPolicyId": "0VrB0000000KyjB", 10 "engagementChannelTypeIds": [ 11 "0eFRM00000000Bv2AI" 12 ] 13} -
workTypeId を使用:
1{ 2 "startTime": "2019-01-23T00:00:00.000Z", 3 "endTime": "2019-02-30T00:00:00.000Z", 4 "workType": { 5 "id": "08qRM00000003fkYAA" 6 }, 7 "territoryIds": [ 8 "0HhRM00000003OZ0AY" 9 ], 10 "accountId": "001B000000qAUAWIA4", 11 "schedulingPolicyId": "0VrB0000000KyjB", 12 "engagementChannelTypeIds": [ 13 "0eFRM00000000Bv2AI" 14 ] 15} - レスポンスボディの例
-
1{ 2 "candidates": [ 3 { 4 "endTime": "2019-01-23T19:15:00.000+0000", 5 "resources": [ 6 "0HnB0000000D2DsKAK" 7 ], 8 "startTime": "2019-01-23T16:15:00.000+0000", 9 "territoryId": "0HhB0000000TO9WKAW", 10 "engagementChannelTypeIds": [ 11 "0eFRM00000000Bv2AI" 12 ] 13 }, 14 { 15 "endTime": "2019-01-23T19:30:00.000+0000", 16 "resources": [ 17 "0HnB0000000D2DsKAK" 18 ], 19 "startTime": "2019-01-23T16:30:00.000+0000", 20 "territoryId": "0HhB0000000TO9WKAW", 21 "engagementChannelTypeIds": [ 22 "0eFRM00000000Bv2AI" 23 ] 24 }, 25 { 26 "endTime": "2019-01-23T19:45:00.000+0000", 27 "resources": [ 28 "0HnB0000000D2DsKAK" 29 ], 30 "startTime": "2019-01-23T16:45:00.000+0000", 31 "territoryId": "0HhB0000000TO9WKAW", 32 "engagementChannelTypeIds": [ 33 "0eFRM00000000Bv2AI" 34 ] 35 } 36 ] 37}