Bulk API 2.0 と Bulk API の違いは?
Bulk API 2.0 の前のバージョンである「Bulk API」が提供されていますが、ワークフローを能率化したい場合は、Bulk API ではなく Bulk API 2.0 を使用してください。Bulk API 2.0 では、簡単なインターフェースを通じて、大量のデータを Salesforce 組織に読み込んだり、組織データに対して一括クエリを実行したりできます。Bulk API 2.0 は、設計上、他の Salesforce API との一貫性や統合のしやすさが向上しています。また、Bulk API 2.0 には、今後、新たな技術が取り入れられていく利点もあります。
Bulk API 2.0 では、次のことが可能です。
- クライアント側のコード記述を削減する。
- ジョブ状況の監視を簡単にする。
- 失敗したレコードを自動再試行する。
- 並列処理をサポートする。
- 取得またはクエリワークフローの完了に必要なコール数を削減する。
- バッチ管理を簡素化する。
Bulk API 2.0 クエリワークフローの例を次に示します。

Bulk API のクエリワークフローはもっと複雑で、バッチを作成して結果セットの取得を反復する必要があります。

機能セットと制限がプロジェクトの要件に完全に一致する場合は、Bulk API を使用してください。
次の表は、Bulk API 2.0 と Bulk API の基本的な機能セットを比較したものです。
| 機能 | Bulk API 2.0 | Bulk API |
|---|---|---|
| 取得使用可能 | 41.0 以降 | 16.0 以降 |
| クエリ使用可能 | 47.0 以降 | 21.0 以降 |
| 認証 | Salesforce の他の REST API でサポートされるすべての OAuth 2.0 フローがサポートされます。 | なし。SOAP API の login() コールで取得される特別な X-SFDC-Session ヘッダーが必要です。 |
| 取得データの形式 | CSV | CSV、XML、JSON、およびバイナリ添付ファイルを処理します。 |
| 大きなファイルのバッチ化 | データをいくつかのバッチに自動的に分割して並列処理を行うことで大量データのアップロードが簡素化されます。自分のレコードデータを含む CSV ファイルをアップロードし、結果の準備ができたら再度確認します。すべての結果は 1 つのエンドポイントから返されます。 | 大きなファイルは、手動でバッチ化する必要があります。これには、カスタムコードを使用する方法と、手作業による方法があります。 |
| クエリ結果の取得 | 単一のエンドポイントにすべて含まれています。 | 個々の結果セットの取得を反復します。 |
| 1 日のアップロードの制限 |
1 日あたりにアップロードできる合計レコード数の制限を受けます。 クライアントが REST API /limits エンドポイントを介して使用できます。 |
1 日あたりのバッチ数の制限を受けます。 |
| データローダの互換性 | いいえ | はい |
Bulk API 2.0 と Bulk API の制限の詳細な比較については、このドキュメントの「制限」を参照してください。