SetSmart
SchedulingConnect AI agents to SetSmart, an AI appointment setter that qualifies leads and books calls in Instagram, WhatsApp, and Messenger. Agents pick up the booked meeting and prepare whoever is taking it.
What This Integration Enables
SetSmart is an appointment setter that works where the lead already is. Its assistant qualifies people inside Instagram, WhatsApp and Messenger DMs, which is a different job from a booking page and produces a different artifact. What comes out is not a calendar slot, it is a conversation with structure hung on it: qualification fields for age, occupation, objective, availability and business situation, a recap string the assistant assembled, tags, notes, custom key and value pairs, and the Meta ad referral data showing which creative brought the person in. Every outbound message carries an attribution of ai, human or template, so a flow can tell what the assistant said from what a person said.
For a FlowRunner agent, that makes SetSmart the front half of a pipeline rather than a notification source. The agent reads Get Leads Ready For Call and moves qualified people into the CRM with their recap attached. It reads Get Failed Messages to catch an invalid number or a closed WhatsApp messaging window before someone assumes a lead went cold. It writes back with Add Tags, Set Contact Notes and Update Custom Fields so the social inbox and the CRM stay in agreement. Chat With Assistant even runs the same qualification logic outside the three DM channels, so a website widget can be driven by the assistant the team already trained. What the agent does not do on its own is decide when the assistant should stop talking to someone, which is where FlowRunner's human-in-the-loop design draws the line.
Without FlowRunner
With FlowRunner
Use Case Scenarios
The DM that lands in the CRM already qualified
A prospect replies to an Instagram ad and the assistant works them through qualification. When they agree to a call, On Lead Ready For Call fires. The agent calls Get Lead Qualification Summaries for the recap the assistant built, then Find Contact for the full conversation, the tags and the Meta ad referral fields. It creates or updates the deal in HubSpot with the recap in the description and the originating creative on the record, books the slot through Calendly, calls Mark Lead As Booked so SetSmart and the CRM agree, and posts the recap plus the last few messages to the rep's channel in Slack. The rep opens the call already knowing what the person asked for.
Reactivating a segment without burning the window
A campaign list needs re-engaging. The agent runs Import Contact for people not yet in SetSmart, which creates the contact and starts the conversation with a named template, and Send Template Message for existing contacts, using Schedule Type Next Window so sends land in the 07:00 to 23:00 CET slot rather than at three in the morning. It keeps the returned scheduled message IDs, and if the campaign is paused or the segment changes, Cancel Scheduled Message pulls back anything still pending. Anything already sent cannot be recalled, so the agent checks List Scheduled Messages against the current segment before the window opens rather than after. Delivery problems come back through Get Failed Messages and get written to a Google Sheets tab for list hygiene.
Keeping the social inbox and the pipeline honest
Once a week the agent runs Export Conversations across the period, filtered by qualification flags and channel, and reconciles it against the pipeline. Leads marked booked with no matching CRM record get flagged. Contacts in Get Contacts With AI Off that nobody has replied to for days get surfaced, because a disabled assistant with no human behind it is a conversation going nowhere. For agencies, Get Agency Usage returns per client weighted message counts, AI cost in USD at provider list prices and conversations created, which the agent writes into the client's monthly report alongside the bookings those conversations produced. The connection between spend and meetings stops being an argument.
Human-in-Loop Highlight
The consequential call on this connector is Turn Off AI, and it is easy to underrate. It disables the assistant for a contact so it stops replying to their messages. There is no queue, no notification and no owner attached to that decision. The lead is a real person sitting in a DM thread who has just been talking to something that answered every time, and now nothing answers. On WhatsApp it is worse than silence: the 24 hour messaging window closes, and after that the conversation can only be restarted with a template send, which is a colder and more expensive way back in than simply continuing. A lead qualified out this way does not appear in Get Leads Ready For Call, does not appear in the pipeline, and does not appear anywhere a human would look. They are just gone.
So an agent that has read a qualification summary and concluded the lead is out of scope does not reach for Turn Off AI. It stops and asks the owner in their channel: "The assistant has this lead as out of region with no stated budget, and my rule says disqualify. Turning the AI off leaves an open Instagram thread with nobody answering. Recap and last four messages attached. Reply hand-off to route them to a rep, close to send the polite decline template, or confirm to disable the assistant." The same rule covers Send Template Message with an immediate schedule, because Cancel Scheduled Message only reaches messages still pending and a sent message cannot be pulled back. Agents can qualify, tag, book and file all day. Deciding that a person stops getting answers is an automation exception by design.
Agent Capabilities
21 actionsContacts
6- Find Contact Looks up contacts by contact ID, phone number, email address, Instagram username or tag, and returns the full record including qualification fields, tags, notes, custom fields, Meta ad referral data and the complete conversation history. Each outbound message carries a sent_by attribution of ai, human or template. Searching by tag returns every match and supports paging.
- Import Contact Creates a contact and, unless the send is disabled, sends the named template to start the conversation. Duplicates are detected and prevented automatically, and custom fields are stored as key and value pairs that stay visible and editable in the contact panel. If the contact already exists, Find Contact retrieves its contact ID instead.
- Set Contact Notes Writes the internal notes field on a contact, replacing whatever was there before. Used to carry context from another system into the panel the human operator reads, and worth reading first when several flows write to the same field.
- Add Tags Adds one or more tags to a contact's conversation, identified by contact ID, phone or email. Tags are how a flow segments the social inbox for later reporting and re-engagement.
- Remove Tags Removes one or more tags from a contact's conversation and reports which were removed, which were attempted and which remain. Used to retire a campaign tag without disturbing the rest of a contact's labelling.
- Update Custom Fields Adds or updates custom key and value fields on a contact and optionally deletes named fields, both in a single call. Used to push CRM attributes into the conversation view so the assistant and the operator see the same facts.
Leads
5- Get All Leads Returns every lead on the account with contact details, qualification flags, current step, tags, notes and conversation, sorted newest first and paginated 100 per page. Used for full syncs and audits rather than routine polling.
- Get Answered Leads Returns leads that have replied at least once, sorted by most recent update, each with the assistant that handled the conversation. Used to separate people actually in a conversation from people who were merely contacted.
- Get Leads Ready For Call Returns the leads that have agreed to a call, sorted by most recent update. This is the handoff list: the agent reads it, moves each lead into the CRM and prepares the rep who will take the call.
- Get Lead Qualification Summaries Returns the qualification summary the assistant built for each lead, including age, occupation, objective, availability, business situation, other criteria and a combined recap string. This is the briefing a rep should have before the call rather than after it.
- Mark Lead As Booked Marks one or more contacts as booked, identified by contact ID, phone, email or Instagram username. When an identifier other than contact ID matches several contacts, every match is marked and the response lists them, so a flow should check what came back.
Messaging
4- Send Template Message Sends a WhatsApp template message to a contact identified by contact ID, phone or email, resolved in that order. Create If Missing together with a phone number creates the conversation through the opt-in flow and sends in one call. Schedule Type controls delivery: Immediate sends now, Specific Date And Time uses the supplied datetime, and Next Window sends in the next 07:00 to 23:00 CET slot.
- List Scheduled Messages Lists queued template sends, filterable by status, template name, recipient, contact, campaign batch or scheduled time window, and returns the message IDs that Cancel Scheduled Message needs. This is the pre-flight check before a campaign window opens.
- Cancel Scheduled Message Cancels a queued template send by its message ID. Only messages still pending can be cancelled, and a message that has already gone out cannot be recalled, which is why the review happens before the send rather than after it.
- Get Failed Messages Returns the leads whose most recent message failed to send, sorted by most recent update. Used to catch an invalid number or a closed WhatsApp messaging window before anyone concludes the lead went quiet on purpose.
Conversations and AI Control
5- Export Conversations Exports full conversations with contact details, qualification block, tags, notes, custom fields, Meta ad referral data and every message, filterable by qualification flags, channel, assistant and date range. Returns a total count and a has_more flag for paging through a period.
- Chat With Assistant Runs one turn of a SetSmart assistant outside WhatsApp, Instagram and Messenger, so the same qualification logic can drive a website widget or a custom channel. File search over vector stores and booking through Calendly or GoHighLevel all work. Pass an empty conversation on the first call, then append the returned assistant message and the user's next message to keep history.
- Turn Off AI Disables the assistant for a contact so it stops replying to their messages. When the contact does not exist and a phone number is supplied, the contact is created with the assistant already disabled. This ends a live conversation from the other person's point of view, which is why it belongs behind a human decision.
- Turn On AI Re-enables the assistant for an existing contact so it resumes replying. The contact must already exist, and Get Contacts With AI Off lists the contacts currently disabled.
- Get Contacts With AI Off Returns the contacts whose assistant is currently disabled, with their channel, tags and update timestamp. Used to find threads that were handed to a human and then forgotten.
Reporting
1- Get Agency Usage Returns per client usage over a date range: the weighted message count used for billing, the AI cost in USD at provider list prices and the number of conversations created, plus a totals block. Requires an Agency plan owner key, defaults to the current calendar month and accepts a window of at most 366 days.
Triggers
2 triggersEvent Triggers
2- On New Lead Fires for each new lead that appears on the account. The first poll records the leads already present without emitting them, and later polls emit only leads whose contact ID has not been seen before, oldest first. Used to mirror a new social conversation into the CRM the moment it starts, so attribution is captured while the ad referral data is still attached.
- On Lead Ready For Call Fires when a lead agrees to a call. The first poll baselines the leads already flagged and later polls emit only newly flagged ones, oldest first. This is the trigger that starts the handoff: pull the recap, create the record, book the slot and brief the rep before the meeting exists on anyone's calendar.
Frequently Asked Questions
What can FlowRunner do with SetSmart?
FlowRunner agents can run Find Contact, Get All Leads, and Get Answered Leads in SetSmart, plus 18 more actions.
Does connecting SetSmart to FlowRunner require OAuth?
No. SetSmart connects to FlowRunner with an API key, no OAuth flow required.
Can SetSmart trigger a FlowRunner workflow automatically?
Yes. SetSmart supports 2 triggers that can start a FlowRunner workflow automatically.
Start building with SetSmart
$100 in credits. No card required. Connect in minutes.