API stands for Application Programming Interface. It provides a way to remotely interact with a web service. In the salesforce scenario, it can be defined as a software intermediary which connects between salesforce and any external system to programmatically access salesforce data. The typical uses of Salesforce API includes Create, Read, Update and Delete of data in salesforce objects and records.
Salesforce takes an API-first approach to building features on the Salesforce Platform which means building a robust API for a feature before focusing on designing its UI. This offers flexibility to manipulate the data in the way we want.
This article discusses the common API traits like the basics of API calls, types of API requests, Authentication and finally a list of different salesforce APIs in use.
Basics of an API Call
The client makes a request to the server and server retrieves the data from the database. Meanwhile the client and server waits for the response. When the data is ready, the server will return the data to the Client and client will then process the response (In this example the data is information regarding the Accounts object).
Synchronous vs Asynchronous Requests
- In Synchronous requests, the connection between the client and server remains open when the client waits for the response.
- Synchronous requests are effective in case when less than 200 records are to be processed.
- In asynchronous requests, the client will make the request and continue with other actions while the request is being processed by the server.
- Typical asynchronous requests can process millions of records at a time.
Authentication is the process of ensuring an API request is made on behalf of a valid user. All APIs require Authentication. For making API calls, authentication is done in two ways in Salesforce.
- OAuth. 2
- It is the de facto industry standard designed for online authorization which allows a website or application to access resources hosted by other web apps on behalf of a user.
- It results in an access_token.
- This method is used by REST API calls.
- login() call
- It is used to login to the login server and start a client session.
- When a client app makes a request to login, it passes the username and password as credentials. In the response, the client app will obtain a sessionid and server url.
- This type of authentication is used by SOAP API calls.
The popular Salesforce APIs are listed below.
- SOAP API-Access and manipulate data using standard SOAP XML messages.
- REST API-Access and manipulate data with a RESTful pattern using JSON and XML.
- BULK API-Unlike SOAP and REST APIs,BULK processes asynchronous requests and hence be able to perform operations on a large volume of data.
- Streaming API- It enables streaming of events using push technology and provides a subscription mechanism for receiving events in near real time.
- Custom API- It is used to build custom SOAP and REST APIs through Apex programming language.
- User Interface API-To build user interfaces that let users work with records, list views, actions, favorites and more.
- Metadata API-Metadata is data that describes other data. Metadata API works with metadata types and components. It is used to deploy, retrieve, create update or delete customization information such as custom object definitions and page layouts.
- Analytics API- IT is used to access Salesforce Report and Dashboard data using RESTful APIs.
This list is not a completely exhaustive list, but only included the more popular ones. To learn more about salesforce APIs, click API Library | Salesforce Developers.
We will discuss in detail the commonly used Salesforce data APIs in an upcoming article.
Looking for more information on API, leave us a message.
Take Five Consulting is a technology company, based in Virginia U.S., that specializes in the Mortgage Banking vertical especially LOS implementation and application development. Take Five Consulting creates and implement mortgage technology and software specifically for Mortgage Industry.