Skip to main content
A meeting is a live AI conversation session. Creating one spins up a Daily.co video room with your AI persona ready to talk and returns the join URL.
Every account is auto-seeded with two ready-to-use scenarios — Plus One and Requirement Gathering. List them with GET /scenarios and look for the default_kind field. No need to build a scenario before your first meeting.

Create a meeting

The minimum you need is a scenario_id and a person_name.
string
required
Name of the participant joining the session. The agent greets and addresses them by it, and it labels the call in transcripts, analyses and memory. If you don’t know who will join yet — say you are generating a link to send out — send "Guest".
string
required
UUID of the scenario this meeting runs.
string
Override the persona’s default voice for this session. See Voices.
string
regular (default) or instant.
string
Session-specific context injected into the AI’s prompt without changing the scenario. Use this to personalize: “Candidate has 8 years at Google, focus on ML infrastructure.”
string
The participant’s email. Fills {{USER_EMAIL}} / {userEmail} in the scenario’s prompt and welcome message.
string
Title for this call in meeting lists and analyses. Defaults to the scenario name. Max 200 characters.
integer
Length of this call, 1–240. Anyone can shorten a call; only your own workspace can run its scenarios past their saved length. Your plan’s call cap still applies.

Override the agent for one call

On your own workspace’s scenarios you can change the agent for a single call. The saved scenario is never touched — the next call runs it as saved. Sending any of these fields for another workspace’s scenario returns 403.
string
Replaces the scenario’s prompt for this call. The persona, voice, knowledge base, tools and every other scenario setting still apply, and note_context is still added on top. Plain text or a POML document, up to 64 KB (413 above that). Use note_context instead when you only want to add to the scenario’s prompt.
string
The agent’s first line for this call.
string
The call’s language, e.g. "English" or "Hindi". The voice follows it.
string
The name the agent goes by in this call.
object
Overrides the scenario’s meeting settings for this call. Only the keys you send change; unknown keys are rejected with 400. A capability your plan doesn’t include is switched off for the call, and the call is priced with the capabilities it actually runs.
object
A bring-your-own-agent endpoint for this call: { "base_url", "api_key", "model" }. Own workspace only.

Response

Joining the meeting

Hosted page — redirect the participant to meeting_url. Iframe embed:
Daily.co SDK for full UI control:

End-user meetings (no JWT)

For public or embedded scenarios, you can create a meeting without an API key — the call bills per minute to the scenario creator’s workspace credits (see Billing and credits).

After the meeting ends

GET /meetings/{id} returns the meeting along with its transcript, summary, and goal scores. See Post-Meeting Data.

All meeting endpoints