Prerequisites
- A configured telephony provider — outbound calls will fail without one
- An API key for authentication
Finding your trigger URL
When you add an API Trigger node to your workflow, AiLunaPro assigns it a unique UUID. The trigger node exposes two URLs that share this UUID:- A production URL for the published workflow
- A test URL for the latest draft
Test vs production
Use the test URL while iterating on changes so production traffic continues to hit the published version.
The production URL only executes a published workflow. If you update the workflow but do not publish it, the production trigger will continue to run the older published version.
Once you publish your draft, both URLs run the same definition.
The request body, headers, and response shape are identical for both URLs.
Making a request
Authenticate by passing your API key in theX-API-Key header. The request body requires a phone_number and accepts optional initial_context, telephony_configuration_id, from_phone_number_id, and model_overrides fields.
Response
A successful request returns aworkflow_run_id that you can use to retrieve run details, recordings, and transcripts.
Error responses
Initial context
initial_context is a JSON object containing any information you want your voice agent to access during the call. You can reference these values in your prompts using template variables — values enclosed in {{ and }}.
For example, if your request includes:
{{user.name}} — in Agent prompts, initial_context fields are referenced directly by name (not prefixed with initial_context.). See template variables for the exact syntax in prompts versus webhook payloads.
See Context & Variables for more on how data flows through a call.
Override the greeting for one call
Passgreeting_override inside initial_context to replace the Start Call node’s saved greeting for one API-triggered call. A valid override takes precedence over the saved greeting. If you omit it, AiLunaPro uses the saved greeting; if neither exists, the Start node follows its normal no-greeting behavior.
For a text greeting:
greeting_override. Because fetched context is applied after trigger context, a valid fetched override replaces one supplied by the trigger.
Choosing models for one call
Create provider connections and named model configurations on the Model Configurations page. Copy their UUIDs to select them inmodel_overrides. Referenced configurations and connections must be active and belong to the trigger’s organization.
This request selects a saved setup and customizes its LLM temperature and TTS voice:
model_configuration_uuid to customize the setup already selected by the workflow.
To select another connection for one service, provide that service’s provider_connection_uuid:
settings.
The order of precedence is organization default → workflow override → API override → pre-call data fetch override:
- Selecting a named configuration starts from that entire saved setup, replacing earlier model choices and parameter changes. Explicit settings in the same override apply afterward.
- Selecting another connection for the same provider preserves that service’s parameters. Selecting a different provider starts that service from the new provider’s defaults and your explicit settings.
- Settings-only overrides change individual fields. Omitted fields inherit;
temperature: nullrequests the provider default.embeddings: nulldisables embeddings only when the workflow does not require indexed-document retrieval. - Overrides affect this run. They do not edit saved configurations or workflows.
model_overrides outside initial_context. See Pre-Call Data Fetch for selecting models from your own endpoint.
Choosing a telephony configuration and caller ID
By default, calls are placed through your organization’s default outbound telephony configuration. To route a specific call through a different configuration — for example, to dial out from a regional number — passtelephony_configuration_id in the request body.
https://voice.ailunapro.com/telephony-configurations). The configuration must belong to the same organization as the API Trigger; otherwise the request returns 404.
To use a specific caller ID from that configuration, also pass from_phone_number_id:
from_phone_number_id is the ID of a phone number configured under the selected telephony configuration. The number must be active and belong to that configuration; otherwise the request returns 400. You can retrieve configured numbers with List phone numbers.
For full endpoint details including all parameters and response fields, see the API reference.
