Bulk API Ingest

With Bulk API, you can insert, update, or upsert large data sets into your Salesforce org. Prepare a CSV, XML, or JSON file representation of the data you want to upload, create a job, upload job data, and let Salesforce take care of the rest.

Bulk API ingest limits are described in Bulk API and Bulk API 2.0 Limits and Allocations in the Salesforce Developer Limits and Allocations Quick Reference

  • Plan Bulk Data Loads

    Bulk API performance depends on the type of data that you’re loading, as well as any workflow rules and triggers associated with the objects in your batches. It’s useful to understand the factors that determine optimal loading time.

  • Install cURL

    The Bulk API uses HTTP GET and HTTP POST methods to send and receive CSV, XML, and JSON content, so it’s simple to build client applications using the tool or the language of your choice. This quick start uses a command-line tool called cURL to simplify sending and receiving HTTP requests and responses.

  • Walkthrough Sending HTTP Requests with cURL

    With cURL now configured, you can start sending HTTP requests to the Bulk API.

  • Prepare Data Files

    The Bulk API processes records in comma-separated values (CSV) files, XML files, or JSON files.

  • Load Binary Attachments

    The Bulk API can load binary attachments, which can be Attachment objects or Salesforce CRM Content.

  • Request Basics

    Here are some Bulk API request basics, including the format of URIs used to perform operations and details on how to authenticate requests using a session header.

  • Work with Batches

    A batch is a set of records sent to the server in an HTTP POST request. Each batch is processed independently by the server, not necessarily in the order it’s received.