Mastering Salesforce Integration: A Comprehensive Guide to APIs with Apex and Aura Component Examples

January 11, 2024
Himanshu Varshney
Senior Salesforce Developer

SFApexExampleApi

REST API

Purpose: Used for accessing resources in any format (XML, JSON, etc.) over HTTP with a wide range of functionalities.

Example in Apex:

HttpRequest req = new HttpRequest();
req.setEndpoint('https://yourinstance.salesforce.com/services/data/vXX.0/sobjects/Account/');
req.setMethod('GET');
Http http = new Http();
HTTPResponse res = http.send(req);

Example in Aura Components:

action.setParams({
  "request": req
});


SOAP API

Purpose: Primarily used for integrating with enterprise systems, supporting XML-based messaging.

Example in Apex: Apex does not natively consume SOAP; it's typically used on the external system to call into Salesforce.


Bulk API

Purpose: Optimized for loading large sets of data asynchronously. It's efficient for querying large datasets.

Example in Apex:

AsyncApexJob a = [SELECT Id, Status, NumberOfErrors, JobItemsProcessed,
                  TotalJobItems, CreatedBy.Email
                  FROM AsyncApexJob WHERE Id = :jobID];


Metadata API

Purpose: Used for managing customization and building tools that can manage the metadata model, not the data itself.

Example in Apex: Typically used via tools like ANT migration tool, not directly accessible in Apex.


Streaming API

Purpose: Useful for receiving notifications for changes to Salesforce data (in near real-time).

Example in Aura Components: Aura Components can subscribe to a channel to receive notifications.

$A.get("e.empApi:subscribe").setParams({
    channel: '/event/My_Event__e',
    replayId: -1
}).fire();


Tooling API

Purpose: Allows you to build custom development tools or apps for Salesforce platforms. It provides endpoints for describing, querying, and modifying your metadata.

Example in Apex:

HttpRequest req = new HttpRequest();
req.setEndpoint(URL.getSalesforceBaseUrl().toExternalForm()+'/services/data/vXX.0/tooling/query?q=Select+Id,Name+From+ApexClass');
req.setMethod('GET');


Chatter REST API

Purpose: Used for accessing Salesforce Chatter feeds and social data such as users, groups, followers, and files.

Example in Apex:

ConnectApi.FeedItem fi = ConnectApi.ChatterFeeds.postFeedItem(null, ConnectApi.FeedType.News, 'me', 'Hello World', null);


UI API

Purpose: Lets you build UI for viewing Salesforce data, loading records, and saving changes back to the server.

Example in Aura Components:

var action = component.get("c.getRecord");
action.setParams({ recordId : component.get("v.recordId") });


Analytics API

Purpose: Used for running reports and accessing analytics data.

Example in Apex: Not typically used directly in Apex; more for external systems.


Composite API

- **Purpose**: Allows you to combine multiple requests into a single call.
- **Example in Apex**:
  ```apex
  HttpRequest req = new HttpRequest();
  req.setEndpoint('https://yourinstance.salesforce.com/services/data/vXX.0/composite/');
  req.setMethod('POST');

Each API serves a specific purpose and offers different capabilities. Apex and Aura Components can leverage these APIs to create powerful, integrated Salesforce applications. The examples provided demonstrate basic usage and would need to be adapted to your specific requirements.

Written by

Himanshu Varshney
Himanshu Varshney

Senior Salesforce Developer

Share this article:
View all articles

Related Articles

The Institutions That Move First Will Win: AI and the Future of Institutional Finance featured image
June 16, 2026
The financial services industry is at an AI inflection point. Institutions that act decisively on AI today will build compounding competitive advantages in deal velocity, research quality, and compliance efficiency. Anablock, an official Anthropic implementation partner, explains why Claude is the right foundation — and how to move fast.

Talk to Anablock about building AI around your workflows.

If you are ready to move from research to implementation, we can help map the right AI system around your tools, data, team, and goals.