ballerinax/salesforce.apex Ballerina library

8.1.0

Overview

Salesforce Apex REST API enables you to expose your Apex classes and methods as RESTful web services. This module provides operations for executing custom Apex REST endpoints, allowing you to perform various HTTP operations on these endpoints and handle responses accordingly.

Ballerina Salesforce Apex REST API client supports the Salesforce v59.0 APEX REST API.

Setup guide

  1. Create a Salesforce account with the REST capability.

  2. Go to Setup --> Apps --> App Manager

    Setup Side Panel
  3. Create a New Connected App.

    Create Connected Apps Create Connected Apps
  4. After the creation user can get consumer key and secret through clicking on the Manage Consumer Details button.

    Consumer Secrets
  5. The next step is to get the token.

    • Log in to Salesforce in your preferred browser and enter the following URL: https://<YOUR_INSTANCE>.salesforce.com/services/oauth2/authorize?response_type=code&client_id=<CONSUMER_KEY>&redirect_uri=<REDIRECT_URL>

    • Allow access if an alert pops up, and the browser will be redirected to a URL like the following: https://login.salesforce.com/?code=<ENCODED_CODE>

    • The code can be obtained after decoding the encoded code

  6. Get Access and Refresh tokens

    • The following request can be sent to obtain the tokens. curl -X POST https://<YOUR_INSTANCE>.salesforce.com/services/oauth2/token?code=<CODE>&grant_type=authorization_code&client_id=<CONSUMER_KEY>&client_secret=<CONSUMER_SECRET>&redirect_uri=https://test.salesforce.com/
    • Tokens can be obtained from the response.

Quickstart

To use the Salesforce Apex client in your Ballerina application, update the .bal file as follows:

Step 1: Import connector

Import the ballerinax/salesforce.apex module into the Ballerina project.

Copy
import ballerinax/salesforce.apex;

Step 2: Create a new connector instance

Create a ConnectionConfig with the OAuth2 tokens obtained, and initialize the connector with it.

Copy
apex:ConnectionConfig sfConfig = {
    baseUrl: baseUrl,
    auth: {
        clientId: clientId,
        clientSecret: clientSecret,
        refreshToken: refreshToken,
        refreshUrl: refreshUrl
    }
};

apex:Client apexClient = check new (sfConfig);

Step 3: Invoke connector operation

  1. Now you can use the operations available within the connector. Note that they are in the form of remote operations. Following is an example of how to execute a custom Apex REST endpoint using the connector.
Copy
public function main() returns error? {
    string caseId = check apexClient->apexRestExecute("Cases", "POST",
        {
        "subject": "Item Fault!",
        "status": "New",
        "priority": "High"
    });
    return;
}
  1. Use bal run command to compile and run the Ballerina program.

Examples

  1. Salesforce APEX REST API use cases - How to employ APEX REST API to create a case in Salesforce.

Import

import ballerinax/salesforce.apex;Copy

Metadata

Released date: 26 days ago

Version: 8.1.0

License: Apache-2.0


Compatibility

Platform: java17

Ballerina version: 2201.10.0

GraalVM compatible: Yes


Pull count

Total: 94935

Current verison: 56


Weekly downloads


Source repository


Keywords

Sales & CRM/Customer Relationship Management

Cost/Freemium


Contributors

Other versions

See more...