ステップ 6: クエリジョブ
この Bulk API 2.0 の例は、クエリジョブの作成、その進行状況の監視、およびジョブ結果の取得を行う方法を示しています。
-
ジョブを作成します。
URI
1/services/data/v59.0/jobs/query一括クエリジョブの作成例
1curl https://MyDomainName.my.salesforce.com/services/data/v59.0/jobs/query -H 'Content-Type: application/json' -H 'Authorization: Bearer 00DE0X0A0M0PeLE!AQcAQH0dMHEXAMPLEzmpkb58urFRkgeBGsxL_QJWwYMfAbUeeG7c1EXAMPLEDUkWe6H34r1AAwOR8B8fLEz6nEXAMPLE' -H "X-PrettyPrint:1" --data-raw '{ "operation" : "query", "query" : "SELECT Id, Name FROM Account" } ' -X POST応答にはジョブ id が含まれており、ジョブの状態として UploadComplete が示されています。(ジョブを監視またはジョブ結果を取得するには、ジョブ id を使用します)。
レスポンスボディの例
1{ 2 "id" : "7986gEXAMPLE4X2OPT", 3 "operation" : "query", 4 "object" : "Account", 5 "createdById" : "0055fEXAMPLEtG4AAM", 6 "createdDate" : "2022-01-02T17:38:59.000+0000", 7 "systemModstamp" : "2022-01-02T17:38:59.000+0000", 8 "state" : "UploadComplete", 9 "concurrencyMode" : "Parallel", 10 "contentType" : "CSV", 11 "apiVersion" : 59.0, 12 "lineEnding" : "LF", 13 "columnDelimiter" : "COMMA" 14} -
返されたジョブ id を使用してジョブの状態を監視します。
URI
1/services/data/v59.0/jobs/query/queryJobIdクエリジョブの状態の監視例
1curl https://MyDomainName.my.salesforce.com/services/data/v59.0/jobs/query/7986gEXAMPLE4X2OPT -H 'Authorization: Bearer 00DE0X0A0M0PeLE!AQcAQH0dMHEXAMPLEzmpkb58urFRkgeBGsxL_QJWwYMfAbUeeG7c1EXAMPLEDUkWe6H34r1AAwOR8B8fLEz6nEXAMPLE' -H "X-PrettyPrint:1" -X GETレスポンスボディの例
応答には、ジョブの現在の状態が表示されます。この手順を繰り返していくと、状態が JobComplete になります。
1{ 2 "id" : "7986gEXAMPLE4X2OPT", 3 "operation" : "query", 4 "object" : "Account", 5 "createdById" : "0055fEXAMPLEtG4AAM", 6 "createdDate" : "2022-01-02T17:38:59.000+0000", 7 "systemModstamp" : "2022-01-02T17:39:00.000+0000", 8 "state" : "JobComplete", 9 "concurrencyMode" : "Parallel", 10 "contentType" : "CSV", 11 "apiVersion" : 59.0, 12 "jobType" : "V2Query", 13 "lineEnding" : "LF", 14 "columnDelimiter" : "COMMA", 15 "numberRecordsProcessed" : 28, 16 "retries" : 0, 17 "totalProcessingTime" : 153 18} -
ジョブの結果を取得します。
URI
1/services/data/v59.0/jobs/query/queryJobId/resultsジョブ結果の取得例
1curl https://MyDomainName.my.salesforce.com/services/data/v59.0/jobs/query/7986gEXAMPLE4X2OPT/results/ -H 'Authorization: Bearer 00DE0X0A0M0PeLE!AQcAQH0dMHEXAMPLEzmpkb58urFRkgeBGsxL_QJWwYMfAbUeeG7c1EXAMPLEDUkWe6H34r1AAwOR8B8fLEz6nEXAMPLE' -H "Content-Type: application/json; charset=UTF-8" -H "Accept: text/csv" -H "X-PrettyPrint:1" -X GET応答には、クエリジョブ作成時の SOQL クエリの結果が表示されます。
レスポンスボディの例
1"Id","Name" 2"0015f00000BCvReAAL","Sample Account for Entitlements" 3"0015f00000BFjNuAAL","University of The Terrific" 4"0015f00000C6beUAAR","Edge Communications" 5"0015f00000C6beVAAR","Burlington Textiles Corp of America" 6"0015f00000C6beWAAR","Pyramid Construction Inc." 7"0015f00000C6beXAAR","Dickenson plc" 8"0015f00000C6beYAAR","Grand Hotels & Resorts Ltd" 9"0015f00000C6beZAAR","United Oil & Gas Corp." 10"0015f00000C6beaAAB","Express Logistics and Transport" 11"0015f00000C6bebAAB","University of Arizona" 12"0015f00000C6becAAB","United Oil & Gas, UK" 13"0015f00000C6bedAAB","United Oil & Gas, Singapore" 14"0015f00000C6beeAAB","GenePoint"この例では、小さな結果セットが返されるため、結果全体を簡単に見ることができます。クエリでもっと大きな結果が返される場合は、結果が複数の連続する結果セットに分割されます。他の結果セットを表示するには、ロケータを使用して次の結果セットを取得します。詳細は、「クエリジョブの結果の取得」を参照してください。