Reply Intelligence Voice AI Triggered by Salesforce
This guide walks you through installing the Reply Intelligence Voice AI package in Salesforce and configuring a Flow to send data from Salesforce to the Reply Intelligence AI agent. The integration uses a Salesforce Flow with an invocable Apex action (included in the package) to POST Salesforce record data to a Reply Intelligence API endpoint. By the end of this guide, your Salesforce org will automatically transmit lead/contact data to Reply Intelligence whenever your Flow is triggered.
Overview
Reply Intelligence Voice AI Package is a managed Salesforce package that allows you to send Salesforce data (like lead or contact details) to the Reply Intelligence platform via HTTP callouts. It includes an invocable Apex class (often listed as Cypress Webhooks) that can be used in Flow Builder to make outbound web requestscypresslearning.com. In our setup, we will use this Apex action in a Flow to send a contact/lead’s information to a Reply Intelligence “Webhook” URL. This enables real-time data handoff to the Reply Intelligence AI agent (for example, to initiate an AI-driven follow-up call or to log the data in the Reply Intelligence system).
How it works: The Flow will collect the necessary fields from a Salesforce record and call the Apex action, which performs an HTTP POST to the Reply Intelligence API endpoint with the data. Salesforce admins can configure which fields to send by editing the Flow (no custom code needed beyond the provided package). The integration is flexible – you can include standard or custom fields in the data payload as long as those fields are also set up on the Reply Intelligence side to be captured.
Prerequisites
Before you begin, ensure you have the following:
- Salesforce Edition: An org with API access ( Enterprise Edition or higher is recommendedcypresslearning.com). The package requires callout capability, which is available in Enterprise, Unlimited, Developer editions, etc.
- Permissions: You need Salesforce admin rights to install packages and create flows.
- Reply Intelligence Account: Access to your Reply Intelligence portal (the AI agent interface) to retrieve the Webhook API Endpoint. Make sure you have a form or integration setup in Reply Intelligence (under Contacts > Forms) for receiving data.
- Package Installation Link: The unique installation URL for the Reply Intelligence Voice AI managed package (provided by Reply Intelligence or Cypress Learning). Keep this link handy.
Screenshot Placeholder: (Overview of the integration architecture)
Step 1: Install the Reply Intelligence Voice AI Package
- Access the Installation URL: Click the provided installation link for the Reply Intelligence Voice AI Salesforce package. This may be an AppExchange listing or a direct package install link (e.g.,
https://login.salesforce.com/packaging/installPackage.apexp?p0=...). Log in with your Salesforce Administrator credentials if prompted. - Confirm Installation Details: You will see an installation screen showing the package name (e.g., “Webhooks by Cypress” or “Reply Intelligence Voice AI”) and details. Select the installation scope (typically “Install for All Users” is recommended unless you have specific security requirements).
- Acknowledge and Install: Check the acknowledgment for third-party access if requested (the package might call out to external sites – we will configure the allowed site in the next step). Then click Install. The installation might take a moment; wait for it to complete.
- Post-installation Verification: Once installed, navigate to Setup > Installed Packages and verify that the package appears in the list. You should see a package entry for Reply Intelligence or Webhooks by Cypress. This confirms the package and its Apex actions are now available in your org.
Screenshot Placeholder: (Package installation confirmation screen or Installed Packages list showing the Reply Intelligence package)
Step 2: Add the Reply Intelligence API Endpoint to Remote Site Settings
Because the Apex action will make an external call to the Reply Intelligence API, we must authorize that external URL in Salesforce’s Remote Site Settings (this is required for Apex callouts to external services).
- In Salesforce Setup, go to the Quick Find box and type Remote Site Settings, then select it.
- Click the New Remote Site button to add a new entry.
- Fill in the details:
- Remote Site Name: e.g.,
Reply_Intelligence_API(this can be any descriptive name without spaces). - Remote Site URL:
https://ai.replyintelligence.io– This is the base URL for the Reply Intelligence API. (Includehttps://and up to the.iodomain as shown.) - Description: (Optional) e.g., “Reply Intelligence API Endpoint”.
- Remote Site Name: e.g.,
- Ensure the URL is correct and uses HTTPS, then click Save. Salesforce will now trust callouts to
ai.replyintelligence.io.
salesforce.stackexchange.com shows the general process for adding a Remote Site: navigate to Remote Site Settings, click “New Remote Site”, enter a name and the URL, and save. Once this is done, the platform will allow the Apex callout to reach the Reply Intelligence endpoint.
Screenshot Placeholder: (Remote Site Settings page with the new entry for ai.replyintelligence.io highlighted)
Step 3: Retrieve Your Reply Intelligence Webhook URL (API Endpoint)
Next, obtain the specific webhook endpoint URL from the Reply Intelligence portal. This is the URL that receives the data from Salesforce. (Each form or AI agent setup in Reply Intelligence may have a unique endpoint.)
- Log in to Reply Intelligence: Visit the Reply Intelligence portal (often at
https://ai.replyintelligence.ioor a similar URL) and log in with your credentials. - Navigate to Form Integration: Go to Contacts (or the relevant section for leads/contacts) and then Forms. Select an existing form that you want to send data to, or create a new form for this integration.
- Find the API Integration Instructions: Within the form’s settings, look for an API Integration or Webhook section. The interface should provide “Your Custom API Endpoint” for that form.
- Copy the Endpoint URL: It will look like
https://ai.replyintelligence.io/api/input/******/contact?public_key=*************
(with a unique identifier in place of the asterisks). Copy this full URL – you will need it when setting up the Flow. This URL represents the endpoint where our Salesforce data should be sent via HTTP POST.
Make sure you have this URL copied exactly. It’s a good idea to keep it handy (perhaps in a notepad temporarily) as you’ll paste it into the Flow configuration next.
Screenshot Placeholder: (Reply Intelligence portal showing the Form’s API Endpoint URL to copy)
Step 4: Create a Salesforce Flow to Send Data to Reply Intelligence
With the package installed, remote site configured, and endpoint URL in hand, you can now build a Flow that sends data to Reply Intelligence. We will use a Record-Triggered Flow as an example (triggered when a new Lead is created, for instance), but you can adapt these instructions to other flow types as needed.
4.1 – Start a New Flow
- In Salesforce Setup, go to Process Automation > Flows (or search “Flows” in Quick Find) and click New Flow.
- Select Record-Triggered Flow (if you want the data sent automatically when a record is created or updated). Click Create.
- Configure the trigger:
- Object: Choose the object that contains the data you want to send (e.g., Lead or Contact).
- Trigger Condition: For example, trigger the flow when a record is created (and optionally when updated, if you want to send on updates too). You can add entry conditions if needed (or leave none to trigger for every new record).
- Optimize For: Actions and Related Records (since we will perform an action – the callout).
- Click Done to set the trigger.
Screenshot Placeholder: (Flow trigger setup screen with object and trigger conditions configured)
4.2 – Add the “Cypress Webhooks” Apex Action to the Flow
- On the Flow canvas, click + to add a new element. Choose Action.
- In the action search bar, find the invocable Apex action installed by the package. It may be listed as CypressWebhooks, Webhooks by Cypress, or similar. (This corresponds to the Apex class that will perform the callout.)
- Select the Cypress Webhooks action. In the New Action dialog, it might show fields to configure, such as URL, Body, and Method (depending on the package version).
- Label/Name: You can give this action a meaningful name like “Send to Reply Intelligence”.
- If an API Name or unique name is required, fill that (it may default based on the label).
- Click Done (we will configure its inputs after creating the JSON template in the next step).
At this point, you have an Action element in your flow that will perform the HTTP callout. We now need to provide it with the data (URL and body).
Screenshot Placeholder: (Flow Builder canvas showing the Action element added, e.g., “Send to Reply Intelligence” action node)
4.3 – Create a Text Template for the JSON Body
We will build the JSON payload that contains the record’s field data using a Text Template resource. This allows you to construct a JSON string with merge fields from the record.
- In the Flow, click New Resource (often found in the Toolbox on the left side under “Manager” tab).
- Choose Text Template as the resource type. Set a name (e.g.,
JSON_Body_Template). - In the text template editor, input the JSON structure that the Reply Intelligence API expects. For example, if sending basic contact info:
{ "firstName": "{!$Record.FirstName}", "lastName": "{!$Record.LastName}", "email": "{!$Record.Email}", "phone": "{!$Record.Phone}", "company": "{!$Record.Company}", "jobTitle": "{!$Record.Title}" }Each value after the colon is a merge field pulling from the record that triggered the flow (using the $Record global variable in a record-triggered flow). Ensure the JSON format is valid (quotes around field names and values, commas between pairs). - Adjust the fields/names as needed. You can include additional fields – for any custom field you want to send, just add a new line in the JSON with the appropriate API name and the merge field. (Make sure the Reply Intelligence form is set up to handle those fields as well.)
- Click Done/Save on the text template resource.
Using a Text Template in this way lets you easily pass multiple values in a single structured string. In fact, creating a JSON payload as a plain text template is a common Flow techniqueericsplayground.wordpress.com for sending data to external services.
Note: The example above assumes the object has fields like FirstName, LastName, Email, Phone, Company, Title (as a Lead would). Modify the JSON keys and merge fields to match your object’s field API names and the expected keys in Reply Intelligence. Custom fields are supported too – just ensure the field exists on the Salesforce record and the Reply Intelligence form is configured to accept that field in the JSON.
Screenshot Placeholder: (Flow Text Template configuration dialog showing the JSON with merge fields)
4.4 – Configure the Apex Action’s Input Variables
Now that we have the endpoint URL (from Step 3) and the JSON body template, we will configure the Apex action element in the flow with these values:
- Click on the Cypress Webhooks action element in your flow to open its configuration (or click the edit icon).
- You should see input field options. Set them as follows:
- URL – This is the endpoint URL you copied from the Reply Intelligence portal. Paste the full URL (e.g.,
https://ai.replyintelligence.io/api/input/ABC123...). (If the action expects a collection of URLs, you can insert this as the only value in a collection.) - Body – If a Body field is available for the action, select Text Template and choose the JSON text template resource (
JSON_Body_Template) you created. This will supply the HTTP request body. - Method – Ensure the method is set to POST. Depending on the package version, the Apex action might default to POST (since we chose the POST-specific action), or there might be a dropdown/field to specify the HTTP method. If it’s there, choose “POST”.
- URL – This is the endpoint URL you copied from the Reply Intelligence portal. Paste the full URL (e.g.,
- Double-check that the inputs are filled correctly: one URL (the webhook endpoint), and the body is referencing your text template. The action is now configured to send an HTTP POST to the specified URL with the JSON payload whenever the flow runs.
Screenshot Placeholder: (Action element configuration screen, showing URL filled in and Body mapped to the JSON text template)
4.5 – Save and Activate the Flow
- Click Save on your flow. Give it a name like “Send Lead to Reply Intelligence” and provide a description if desired.
- Activate the flow by clicking the Activate button. (Only active flows will run when triggered.)
- Your Flow is now live. Whenever a record meets the trigger criteria (e.g., a new Lead is created), Salesforce will execute the flow and call the Reply Intelligence webhook.
Screenshot Placeholder: (Flow summary screen showing the flow is active)
salesforceben.com – Remember, Salesforce Flows can call invocable Apex actions to send data to external systems. In this case, our flow uses the installed Apex action to push data out to Reply Intelligence. The heavy lifting (HTTP POST logic) is handled by the package’s Apex code, so you don’t need to write any code – just configure the flow as above.
Step 5: Test and Verify the Integration
With everything configured, it’s important to test the end-to-end process:
- Create a test record: In Salesforce, create a new record on the object you set the flow for (for example, create a new Lead with a first name, last name, email, etc.). Ensure it meets any conditions that trigger the flow.
- Flow execution: After saving the record, the flow should execute automatically. There won’t be a visible UI indication, but behind the scenes the Apex action is called.
- Verify in Reply Intelligence: Log in to the Reply Intelligence portal and check the form or data capture area corresponding to the webhook. You should see that a new entry was received (with the data from the Salesforce record). For instance, if it’s a form, check the form submissions or contacts list in Reply Intelligence for the test lead’s info.
- Salesforce monitoring (optional): In Salesforce, you can check the Debug Logs to confirm the callout was made successfully. The Apex action will log the response from Reply Intelligence (if any) using
System.debug. Ensure that no errors appear in the logs. If you see an error about the callout, double-check the Remote Site Settings and that the endpoint URL is correct. - Troubleshooting: If the data did not appear in Reply Intelligence:
- Revisit the Flow and ensure it’s active and the criteria are correct.
- Make sure the JSON fields in the Text Template exactly match what the Reply Intelligence endpoint expects. (Field names are case-sensitive.)
- Confirm the remote site URL is properly added and Active in Salesforce settings.
- You can also try running the flow in debug mode (Flow Builder offers a debug run feature for record-triggered flows by providing sample record values) to see the flow’s execution step by step.
Once the test record goes through, congratulations – your Salesforce is now integrated with Reply Intelligence! Whenever your flow runs (e.g., when new leads come in), the data will be sent to the Reply Intelligence AI agent platform in real time.
By following this guide, Salesforce admins or developers can easily set up the Reply Intelligence Voice AI package and configure a no-code automation (using Flow) to send data to the Reply Intelligence system. The key steps were installing the managed package (which provides the Apex callout action), whitelisting the external URL, and building a flow with a JSON payload. This setup can be extended or customized as needed – for example, you can add more fields to the JSON or use different trigger criteria. The integration is flexible and can support various use cases where Salesforce records need to kick off AI-driven processes in Reply Intelligence.
