SalesforceのBulk APIとは?使用例とともに使用方法を解説します!
IT・技術関連
更新日:2024.09.05


SalesforceのBulk APIとは?
SalesforceのBulk APIとは非同期処理で大量データを操作できるRESTベースのAPIです。Bulk APIは非同期処理のため、実行結果をポーリングして確認する必要があります。
また、Bulk APIではCSVファイルをSalesforceのサーバーに送信し、大量データを操作することが可能です。
Bulk APIを使用する方法

【Step1】Salesforceにログインする
Bulk APIは一括処理に特化したAPIのため、ログイン処理がサポートされていません。そのため、SOAP APIを利用して、Salesforceにログインします。 1.テキストファイルを「loginInfo.txt」という名前で作成し、ログイン情報を記述します。Salesforceのユーザー名を<n1:username>要素の値に、パスワードは<n1:password>要素の値に設定します。<?xml version=""1.0"" encoding=""utf-8"" ?>
<env:Envelope xmlns:xsd=""http://www.w3.org/2001/XMLSchema""
xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance""
xmlns:env=""http://schemas.xmlsoap.org/soap/envelope/"">
<env:Body>
<n1:login xmlns:n1=""urn:partner.soap.sforce.com"">
<n1:username>test_user1</n1:username>
<n1:password>user1_password</n1:password>
</n1:login>
</env:Body>
</env:Envelope>
2.コマンドの{version}をAPIのバージョンに置き換えてから実行します。
curl https://login.salesforce.com/services/Soap/u/{version} -H ""Content-Type: text/xml; charset=UTF-8"" -H ""SOAPAction: login"" -d @loginInfo.txt
3.ログイン処理のレスポンスがXML形式で返ってきますので、次の内容を控えます。
・<sessionId>要素の値
・<serverUrl>要素内のホスト名の最初にあるインスタンス
【Step2】ジョブを作成する
取引先を登録するジョブを作成します。 1.テキストファイルを「jobInfo.txt」という名前で作成し、作成するジョブの情報を記述します。要素に次の値を入力します。 ・<operation> 操作種別 ・<object> 操作対象のオブジェクト ・<contentType> 操作時に利用するファイルの形式<?xml version=""1.0"" encoding=""UTF-8""?>
<jobInfo xmlns=""http://www.force.com/2009/06/asyncapi/dataload"">
<operation>insert</operation>
<object>Account</object>
<contentType>CSV</contentType>
</jobInfo>
2.コマンドを次の内容に置き換えてから実行します。
・{instance}
【Step1】の<serverUrl>要素内のホスト名の最初にあるインスタンス
・{version}
APIのバージョン
・{sessionId}
【Step1】の<sessionId>要素の値
curl https://{instance}.salesforce.com/services/async/{version}/job -H ""X-SFDC-Session: {sessionId}"" -H ""Content-Type: application/xml; charset=UTF-8"" -d @jobInfo.txt
3.ジョブ作成のレスポンスがXML形式で返ってきますので、<id>要素の値を控えます。
【Step3】取引先の登録バッチを追加する
取引先の登録バッチを追加します。 1.CSVファイルを「accountData.csv」という名前で作成し、登録する取引先情報を記述します。""Name""
""取引先1""
""取引先2""
2.コマンドを次の内容に置き換えてから実行します。
・{instance}
【Step1】の<serverUrl>要素内のホスト名の最初にあるインスタンス
・{version}
APIのバージョン
・{jobId}
【Step2】の<id>要素の値
・{sessionId}
【Step1】の<sessionId>要素の値
curl https://{instance}.salesforce.com/services/async/{version}/job/{jobId}/batch -H ""X-SFDC-Session: {sessionId}"" -H ""Content-Type: text/csv; charset=UTF-8"" --data-binary @accountData.csv
3.バッチ追加のレスポンスがXML形式で返ってきますので、<id>要素の値を控えます。
【Step4】ジョブを終了する
Salesforceへのバッチのデータ送信が完了したことを通知するために、ジョブを終了します。 1.テキストファイルを「closeJob.txt」という名前で作成し、ジョブ終了の情報を記述します。<?xml version=""1.0"" encoding=""UTF-8""?>
<jobInfo xmlns=""http://www.force.com/2009/06/asyncapi/dataload"">
<state>Closed</state>
</jobInfo>
2.コマンドを次の内容に置き換えてから実行します。
・{instance}
【Step1】の<serverUrl>要素内のホスト名の最初にあるインスタンス
・{version}
APIのバージョン
・{jobId}
【Step2】の<id>要素の値
・{sessionId}
【Step1】の<sessionId>要素の値
curl https://{instance}.salesforce.com/services/async/{version}/job/{jobId} -H ""X-SFDC-Session: {sessionId}"" -H ""Content-Type: application/xml; charset=UTF-8"" -d @closeJob.txt
【Step5】バッチの実行状況を確認する
バッチの実行状況を確認します。 1.コマンドを次の内容に置き換えてから実行します。 ・{instance} 【Step1】の<serverUrl>要素内のホスト名の最初にあるインスタンス ・{version} APIのバージョン ・{jobId} 【Step2】の<id>要素の値 ・{batchId} 【Step3】の<id>要素の値 ・{sessionId} 【Step1】の<sessionId>要素の値curl https://{instance}.salesforce.com/services/async/{version}/job/{jobId}/batch/{batchId} -H ""X-SFDC-Session: {sessionId}""
2.<state>要素の値がCompletedの場合、バッチの処理が完了したとなります。
Bulk APIを利用してみよう

この記事の監修者・著者

- AWSパートナー/Salesforce認定コンサルティングパートナー 認定企業
-
ITエンジニア派遣サービス事業を行っています。AWSやSalesforceなど専門領域に特化したITエンジニアが4,715名在籍し、常時100名以上のITエンジニアの即日派遣が可能です。
・2021年:AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
・2022年3月:人材サービス型 AWSパートナー認定
・AWS認定資格保有者数1,154名(2024年6月現在)
・Salesforce認定コンサルティングパートナー
・Salesforce認定資格者276名在籍(2024年5月現在)
・LPIC+CCNA 認定資格者:472 名(2024年6月時点)
最新の投稿
- 2024-12-27営業インタビュー情報共有の活性化の中心に。SP企画部の新たな取り組み
- 2024-07-01営業インタビュー最短で当日にご提案可能。 OPE営業の対応が早い3つの理由
- 2024-07-01営業インタビュー研修見学ツアーが高評価!「お客様のOPEに対する期待を高め、継続に貢献できればと思います。」
- 2024-07-01営業インタビュー信頼関係を構築し、エンジニアの長期就業へ
ITエンジニアの派遣を利用したい企業様へ

- 求人・転職サイトや自社採用サイトを使っているが、自社に合ったITエンジニアが応募してこない…
- すぐに採用したいが、応募がぜんぜん集まらない
こんな悩みをお持ちの採用・人事担当者の方は、
オープンアップITエンジニアをご検討ください!
オープンアップITエンジニアをご検討ください!
当社のITエンジニア派遣サービスは
- 派遣スピードが速い!(最短即日)
- 4,500名のエンジニアから貴社にマッチした人材を派遣
- 正社員雇用も可能
こんな特長があり、貴社の事業やプロジェクトに合った最適なITエンジニアを派遣可能です。
まずは下記ボタンから無料でご相談ください。