Skip to main content

Add contacts to a workflow

Contacts enter a workflow from the CRM.
1

Open the CRM

Go to CRM → Leads and narrow the list with Filters, or find a single contact.
2

Assign

Click Assign on a row for one contact, or in the toolbar for everyone matching the filters (every page, not just the one on screen).
3

Choose the workflow

Set Assign to to Workflow and pick it under Choose Workflow.
4

Choose when to start

Start now, or turn on Schedule Later and pick a date and time.
The workflow itself decides which agent calls, how many retries it gets and what happens in between, so there is nothing else to set. Each contact gets their own run, starting at Start.
A contact who is already partway through this workflow is skipped. Assigning the same filter twice adds only the contacts who were not in it yet.
Each contact’s CRM attributes come with them into the run. They are what the Contact value source reads, and they are copied into Call Metadata, so {{city}} in an agent’s prompt works on calls the workflow places.

Add contacts through the API

To start a workflow from your own system, such as a website form, your CRM or your backend, call Assign to Workflow with the phone number and the workflow’s ID.
  • workflow_id: open the workflow; the ID is the last part of the URL.
  • attributes: optional values saved on the contact before the run starts, so every step can use them. Each key must be an attribute that exists in CRM → Attributes. replace: true overwrites an existing value; false only fills an empty one.
  • schedule_at: optional start time in IST, as YYYY-MM-DDTHH:mm:ss. Leave it out to start now.
A number that is already partway through the workflow is not started again, the same as when assigning from the CRM.

Follow the runs

Open the workflow from Workflows to see every contact in it. The counts at the top show Total Leads, Active (running, waiting or awaiting a call), Completed, Failed and Cancelled. Use Search phone number to find one contact. Click a row to open that contact’s timeline: every step the run took, in order, with what each one did. That includes the call SID and outcome of each call, the API response, which branch a Conditions step took and why, and any error.
When a contact ended up on the wrong path, open their timeline and look at the Conditions step. It shows the value each rule compared against, which is usually the quickest way to spot a field that was empty or spelled differently than expected.