How Can We Help?

Available SDKs

The different Fastcall Subscriber API “actions” are provided as Salesforce Invocable Actions. Thus these can be invoked through the following means:

  • Apex code
  • Salesforce Flows
  • Salesforce’s REST API

Apex

In Apex you interact with the Fastcall Subscriber API by constructing instances of the native Invocable.Action class. The set of invocation parameters is unique to each action. The action to invoke is determined by the invocable action name when using the createCustomAction(...) method, e.g. SubscriberUserStatusInvocable.

Throws

  • FastCall.SubscriberAPI.APIException – If an error occurs, an instance of APIException is thrown, so you should catch & handle this exception type for a correct implementation.

Example

Invocable.Action action = Invocable.Action.createCustomAction('apex', 'FastCall', 'SubscriberUserStatusInvocable');

action.setInvocationParameter('userId', '005xxxxxxxxxxxxxxx');
action.setInvocationParameter('statusType', 'Available');

List<Invocable.Action.Result> results = action.invoke();

if (results.size() > 0 && results[0].isSuccess()) {
    System.debug('Result is: ' + results[0]);
}

Salesforce Flows

The Flow definition bellow will send an SMS message to new Lead records.

Fastcall API actions will be available on the Flow editor.

You can then populate the action’s parameters with data from Salesforce records and the flow’s execution context.

REST API

Salesforce methods annotated as @InvocableMethods are also made available via the Salesforce REST API under a URL with the following format:

/services/data/vXX.X/actions/custom/apex/invocableName

After authenticating and authorizing access in Salesforce, you can make an HTTP POST request to the Fastcall action endpoint, passing the parameters in the HTTP request’s body formatted as JSON. This means you can initiate calls and send SMS/MMS messages using Fastcall, from any external system capable of interacting with the Salesforce REST API, including:

  • Browser-based Javascript apps
  • Any external application, written in any language and running on any platform, as long as it’s capable of authenticating & authorizing via OAuth 2.0 flows, and sending HTTP POST requests with a JSON payload on the HTTP request body

These messages and calls will be logged & updated in real-time in the Salesforce org, and associated with the proper record in Salesforce (i.e. a Lead, Contact, or any other standard or custom object record).

Example

The HTTP request below would start a call to a random phone number.

HTTP POST /services/data/v48.0/actions/custom/apex/FastCall__SubscriberCallInvocable

HTTP Body

{
    "inputs" : [ {
        "toPhone" : "+15553334444",
        "ivrId"   : "a0M0t00000CQT8kEAH"
    } ]
}
Ready to start the Free Trial?

Provide your information and install the package in your Salesforce Org.

Please enter your email to join the Fastcall Appexchange