Activity › Forums › Salesforce® Discussions › When can we use REST API ,SOAP API,BULK API and STREAMING API in Salesforce? › Reply To: When can we use REST API ,SOAP API,BULK API and STREAMING API in Salesforce?
MemberJanuary 16, 2017 at 6:58 am
REST API is a simple and powerful web service based on REST ful principles. It exposes all sorts of Salesforce functionality via REST resources and HTTP methods. For example, you can create, read, update, and delete (CRUD) records, search or query your data, retrieve object metadata, and access information about limits in your org. REST API supports both XML and JSON.
Because REST API has a lightweight request and response framework and is easy to use, it’s great for writing mobile and web apps.
SOAP API is a robust and powerful web service based on the industry-standard protocol of the same name. It uses a Web Services Description Language (WSDL) file to rigorously define the parameters for accessing data through the API. SOAP API supports XML only. Most of the SOAP API functionality is also available through REST API. It just depends on which standard better meets your needs.
Because SOAP API uses the WSDL file as a formal contract between the API and consumer, it’s great for writing server-to-server integrations.
Bulk API is a specialized RESTful API for loading and querying lots of data at once. By lots, we mean 50,000 records or more. Bulk API is asynchronous, meaning that you can submit a request and come back later for the results. This approach is the preferred one when dealing with large amounts of data.
Bulk API is great for performing tasks that involve lots of records, such as loading data into your org for the first time.
Streaming API is a specialized API for setting up notifications that trigger when changes are made to your data. It uses a publish-subscribe, or pub/sub, model in which users can subscribe to channels that broadcast certain types of data changes.
The pub/sub model reduces the number of API requests by eliminating the need for polling. Streaming API is great for writing apps that would otherwise need to frequently poll for changes.