773
Which API Should I Use in Salesforce?
following user permission need:
User Permissions Needed – API Enabled under the profile level
Application Programming Interface (API)
API Name | What It’s For | When to Use It | Protocol | Data Format | Communication |
---|---|---|---|---|---|
REST API | Accessing objects in your organization using REST. | You want to leverage the REST architecture to integrate with your organization. No WSDL requirement.Well-suited for browser-based applications, mobile apps, and highly-interactive social applications. | REST | JSON, XML | Synchronous |
SOAP API | Integrating your organization’s data with other applications using SOAP. | You have pre-existing middleware services that need to work with WSDLs and XML data. | SOAP/WSDL | XML | Synchronous |
Chatter REST API | Accessing Chatter feeds and social data such as users, groups, followers, and files using REST. | You want to integrateChatter into a variety of applications, such as mobile apps, intranet sites, and third-party Web applications. | REST | JSON, XML | Synchronous (photos are processed asynchronously) |
Bulk API | Loading or deleting large numbers of records. | You have over a million records to process and speed is a requirement. | REST | CSV, XML | Asynchronous |
Metadata API | Managing customizations in your organization and building tools that can manage the metadata model, not the data itself. | You want to migrate changes, such as custom object definitions and page layouts, from a sandbox to your production environment. | SOAP/WSDL | XML | Asynchronous |
Streaming API | Providing a stream of data reflecting data changes in your organization. | You need near real-time notifications of when records are created or updated. | Bayeux | JSON | Asynchronous (stream of data) |
Apex REST API | Building your own REST API in Apex. ExposesApex classes as RESTful Web services. | You need to build custom JSON responses or you want to expose custom functionality that you implemented in Apex. | REST | JSON, XML, Custom | Synchronous |
Apex SOAP API | Creating custom SOAP Web services in Apex. Exposes Apex classes as SOAP Web services. | You need to build custom XML responses or you want to expose custom functionality that you implemented in Apex . | SOAP/WSDL | XML | Synchronous |
Tooling API | Building custom development tools forForce.com applications. | You want to add functionality to your existing development and integration tools or you want to build specialized development tools for a specific application or service. | REST and SOAP | JSON, XML, Custom | Asynchronous |
For More Details, click here