1. Overview#
Pre-Call Configuration is essentially context provided to the agent before a conversation begins. It integrates data from external sources like CRMs, Excel sheets, or APIs, enabling Formi agents to automate retries, schedule follow-ups, and send updates—all without engineering support.
2. Purpose#
The goal of this system is to enhance the personalization of customer interactions by:Enabling context-aware interactions where the AI agent knows the user's name and preferences beforehand
Facilitating outbound calls by an AI agent that can adapt to user-specific contexts
Reducing manual pre-call setup through reusable configurations
Streamlining integration with third-party systems via webhooks
and APIs
This ensures every interaction is personalized, engaging, and aligned with user expectations.
3. Data Flow Overview#
1.
Source (CRM/API/Excel) pushes context to Formi via an API call.
2.
Formi creates an interaction record with the specified schedule and retry logic.
3.
The interaction is executed at the scheduled time using an AUTO_START
(refers to follow up interactions ) or BIZ_START
(refers to the ones triggered thru /schedule API
) trigger.
4.
After the interaction concludes, outcomes are logged and shared with configured destination systems.
4. Configurable Fields (CRUD Endpoints)#
Refer this API endpoint for understanding the configurable fields:Refer the Webhook documentation for understanding the events that are sent to track the Call Queue System5. Source Integration and Sheet Logic#
Excel Sheet Structure#
PENDING: Contains all new leads that need to be called.
ONGOING: Contains all interactions that are currently in progress or require a follow-up.
COMPLETE: Contains all interactions that have been resolved or marked as closed.
Refer this example sheet for getting an overview of this Google Sheets System
7. API Contracts#
1. Schedule API#
Adds a new interaction to the queue with all required context and scheduling information.
2. Get Interaction List API#
Retrieves a list of interactions, with filters for contact_id
, name
, phone_number
, etc.
3. Update Interaction API#
Modifies an existing interaction, such as changing the scheduled time or updating metadata.
4. Delete Interaction API#
Removes a scheduled interaction from the queue.
5. Clear Interactions API#
Clears all interactions for a given outlet that occurred before a specified interaction ID.
6. Get Interaction by ID API#
Modified at 2025-07-04 12:11:04