Pre-RequisiteYou need to already have a Flow or Apex logic built in Salesforce that:
  • Accepts input fields (e.g., name, contact number)
  • Does something meaningful (like creating a Case)
  • Optionally returns a result back (e.g., Case Number)
If you don’t know how to do that yet, don’t worry. We’ll cover building those later. For now, just assume the logic is already built.

You can go through below example for your reference.

Flow Tools

Example Use Case: Create Case Tool

Create your First Tool

Follow the below steps to see your first tool in action
1

Step 1: Go to Tools Tab

  1. Open the ConverseKit Salesforce App.
  2. Click on the Tools tab in the navigation.
  3. Click New Tool to start
2

Step 2: Fill in Tool Information

Here are the fields you’ll need to complete:

🏷 Tool Info

Define what your tool is and how it behaves during a conversation.
FieldWhat it MeansExample
Tool NameA unique internal name. Avoid spaces.Create_Case
DescriptionWhat this tool does. This helps you and others understand its purpose.”Captures customer details and stores them in Salesforce.”
AsyncShould the assistant wait while the tool runs? Set to true if the assistant should keep talking during tool execution.✅ Yes for Create_Case

🖥 Server Details

Define what logic to run behind the scenes when the tool is triggered.
FieldWhat it MeansExample
Tool TypeWhat kind of backend logic will this tool call? Choose:
Flow – for declarative (point-and-click) automation
Apex REST Resource – for code-based logic
Flow
Flow API Name / Apex EndpointThe unique name or URL mapping of your logic in Salesforce. For Flows, use the API name (no spaces). For Apex, use the URL Mapping set in @RestResource.createvoicecase
Timeout(Seconds)How long the assistant should wait for a response before giving up.20

🧾 Tool Parameters

The Tool Parameters section defines what input data your tool needs from the assistant to run correctly. Think of it like a form — your assistant collects data from the user during the call, and passes that information into the tool as parameters.Define the input fields that you want your assistant to send to the Flow or Apex.
FieldDescription
ParameterThe internal name of the data being passed. This should exactly match the input variable name in your Salesforce Flow or Apex method. Use lowercase and underscores if needed (e.g., contact_number).
Parameter TypeWhat kind of data is expected for this parameter. Common types include:
- string (text)
- number (digits like phone numbers)
- boolean (true/false)
- date (calendar date)
- datetime (date + time)
DescriptionA short note explaining what this parameter is for. This is helpful for others reviewing or editing the tool later. Example: “Contact number of the customer.”
RequiredCheck this box if the assistant must collect this information from the user before calling the tool. If unchecked, the tool will still run even if this value is missing (not recommended unless optional).
Example Tool ParametersLet’s say you’re creating a tool called Create_Case that collects user complaints. Then, you’ll likely need the customer’s name, their_phone number_ and a description of the complaintEach of these values becomes a parameter.
ParameterTypeDescriptionRequired
namestringName of the customer✅ Yes
contact_numbernumberCustomer’s phone number✅ Yes
complaintstringDescription of the complaint✅ Yes
These fields must match your Flow input variable names exactly. If your Flow expects contactNumber and you put contact_number in the tool, the integration will fail.
As a best practice follow snake_case naming convention for parameters, Eg: contact_number This maintains consistency with Salesforce conventions and reduces integration friction.

📢 System Messages

These are the things your assistant says while the tool is running. They’re useful for asynchronous tools where processing may take time.
Message TypeWhat It’s ForExample
StartAssistant says this when tool starts running”I’m capturing your details into our CRM…”
DelayedIf it’s taking longer than expected”Sorry for the delay, still working on it…”
CompletedWhen it succeeds”Your details are captured successfully!”
FailedWhen something goes wrong”Something went wrong. I’ll notify the team for follow-up.”

3

Step 3: Save and Link to Assistant

  1. After you click Save on the tool…
  2. Go to the Assistant Details Page
  3. Scroll to the Tools section
  4. Click Add Tool
  5. Choose your new tool and Save
Now your assistant can call this tool during live calls—just like a human agent would take an action.

🚀 What’s Next?

Ready to try building your first real tool? 👉 In the next section, we’ll walk you through creating a Flow-based tool step-by-step — from Flow creation to parameter setup to testing.