For Agents
Launch outbound AI voice calls one-off or in bulk, run campaigns over a contact list, and retrieve call recordings and CSV reports through Lula's GAIL platform.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the GAIL API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with GAIL API API.
Place a single outbound AI voice call to a phone number with a chosen script
Launch a bulk batch of outbound calls in one request for high-volume outreach
Create, start, stop, and update campaigns that drive calls against a contact list
Add a single contact or bulk-add a contact list to an existing campaign
GET STARTED
Use for: I need to start a single outbound AI call to a customer right now, Launch 500 outbound calls in bulk for tomorrow's collections campaign, Create a new campaign tied to my Q3 lead list, Add a contact to an existing GAIL campaign
Not supported: Does not handle SMS messaging, inbound IVR routing, or full conversation transcript management — use for outbound AI call placement, campaigns, contact attachment, and recording retrieval only.
GAIL is Lula's AI-powered outbound calling platform, exposing a compact API for launching single and bulk outbound calls, building campaigns, attaching contacts, fetching call recordings, and retrieving CSV campaign reports. The 15 endpoints cover the core lifecycle: create a campaign, push contacts in, start or stop the campaign, and pull recordings or results out. Authentication is by X-API-Key header generated in the Gail Portal under General > Integrations > API Keys.
Retrieve a pre-signed URL or download the audio file for a completed call recording
Pull a CSV report of campaign results for downstream analytics
Patterns agents use GAIL API API for, with concrete tasks.
★ AI-driven outbound dialling for sales and renewals
Sales and customer-success teams use GAIL to run AI-voiced outbound campaigns against a contact list — for example, calling a renewal cohort with a tailored script. POST /campaigns creates the campaign, POST /campaigns/{id}/contacts/bulk_add attaches the list, and POST /campaigns/{id}/start launches it. Reps then pull the CSV report from /campaigns/{id}/report once the campaign winds down.
Create a campaign named 'Q3 Renewals', bulk-add 250 contacts via POST /campaigns/{id}/contacts/bulk_add, and start it with POST /campaigns/{id}/start.
Single ad-hoc outbound call from another workflow
When another system (CRM, helpdesk, internal tool) needs to trigger one outbound AI call rather than a campaign, POST /calls starts a single call with the chosen script and target number. The resulting callId can later be used with /calls/{callId}/recording-url to surface the audio in the originating tool.
Call POST /calls with the customer's phone number and the chosen script ID to launch a single outbound call, then poll /calls/{callId}/recording-url for the recording.
Recording retrieval for QA and compliance
QA teams and compliance reviewers need access to the audio of completed AI calls. GET /calls/{callId}/recording-url returns a pre-signed URL good for short-lived access, or GET /calls/{callId}/recording streams the audio file directly. Pair with the campaign report endpoint to map recordings back to outcomes.
For callId abc-123, fetch GET /calls/{callId}/recording-url and return the pre-signed URL for the QA reviewer.
Agent-driven campaign orchestration via Jentic
An AI sales agent needs to spin up a calling campaign in response to a Slack message ('renew the at-risk accounts this week') without writing custom GAIL integration code. Jentic stores the X-API-Key in MAXsystem and exposes the campaign create, contact add, start, and report endpoints by intent so the agent can chain them.
Search Jentic for 'create gail campaign', execute POST /campaigns, then chain bulk_add, start, and report operations against the new campaign ID.
15 endpoints — gail is lula's ai-powered outbound calling platform, exposing a compact api for launching single and bulk outbound calls, building campaigns, attaching contacts, fetching call recordings, and retrieving csv campaign reports.
METHOD
PATH
DESCRIPTION
/calls
Start a single outbound call
/calls/bulk
Start multiple outbound calls in bulk
/calls/{callId}/recording-url
Get a pre-signed URL for a call recording
/campaigns
Create a new campaign
/campaigns/{id}/start
Start a campaign
/campaigns/{id}/contacts/bulk_add
Bulk-add contacts to a campaign
/campaigns/{id}/report
Download a CSV report of campaign results
/calls
Start a single outbound call
/calls/bulk
Start multiple outbound calls in bulk
/calls/{callId}/recording-url
Get a pre-signed URL for a call recording
/campaigns
Create a new campaign
/campaigns/{id}/start
Start a campaign
Three things that make agents converge on Jentic-routed access.
Credential isolation
The GAIL X-API-Key is stored encrypted in the Jentic MAXsystem vault. Jentic injects it as the X-API-Key header on every call to api.lula.com/v1, so the raw key never enters the agent's prompt or logs.
Intent-based discovery
Agents search by intent such as 'start an outbound ai call', 'launch a calling campaign', or 'download a call recording', and Jentic returns the matching GAIL operation with its request schema for direct execution.
Time to first call
Direct GAIL integration: 1-3 days to wire authentication, model the campaign lifecycle, and stream recordings into a storage backend. Through Jentic: under 1 hour — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
GAIL (Lula API)
The full 103-endpoint Galactus surface for GAIL covering sequences, scripts, conversations, and webhooks
Use the larger GAIL (Lula API) when you need conversation transcripts, sequences, scripts, or do-not-call list management beyond the basic campaign and call lifecycle.
Bland.ai
Competing AI voice agent platform for outbound and inbound calls
Choose Bland.ai when you need programmable conversational pathways and pathway-based call flows; choose GAIL for campaign-led outbound with built-in contact lists and reporting.
Retell AI
Real-time AI voice agent platform for low-latency conversational calls
Pick Retell AI when ultra-low latency real-time voice is the priority; pick GAIL when you need campaign orchestration and CSV reporting.
Specific to using GAIL API API through Jentic.
What authentication does the GAIL API use?
GAIL uses an X-API-Key header. Generate the key in the Gail Portal under General > Integrations > API Keys and pass it as X-API-Key on every request to api.lula.com/v1. Through Jentic, the key is stored encrypted in MAXsystem and injected per call.
Can I launch bulk outbound calls with the GAIL API?
Yes. POST /calls/bulk accepts a batch of outbound calls in a single request, which is more efficient than looping over POST /calls when running large campaigns. For long-running outreach, prefer the campaign endpoints (POST /campaigns followed by /campaigns/{id}/contacts/bulk_add and /campaigns/{id}/start) so GAIL handles pacing for you.
What are the rate limits for the GAIL API?
Specific rate limits are not declared in the OpenAPI spec. Expect per-account caps tied to your Lula plan and outbound carrier capacity — design clients to retry on 429 responses and prefer bulk endpoints over tight loops on the single-call endpoint.
How do I download a call recording through Jentic?
Search Jentic for 'gail call recording', load GET /calls/{callId}/recording-url, and execute it with the callId. Jentic returns the pre-signed URL with the X-API-Key applied; for the raw audio bytes, use GET /calls/{callId}/recording instead.
Is the GAIL API the same as the larger GAIL (Lula API) v1 spec?
No — this 15-endpoint spec is the public v1 surface of GAIL. The companion spec lula.com/gail-api is a 103-endpoint Galactus External API covering the full platform, including conversations, sequences, scripts, do-not-call lists, webhooks, and sessions. Use this slimmer GAIL API when you only need calls, campaigns, contacts, and recordings.
/campaigns/{id}/contacts/bulk_add
Bulk-add contacts to a campaign
/campaigns/{id}/report
Download a CSV report of campaign results