Get PAL
Returns a single PAL by its unique identifier.
By default this endpoint returns the live PAL — the version that powers conversations, deployments, and the public API. If the PAL has an active PAL Builder draft with unpublished changes, add ?source=draft to read the draft body without publishing it. See Draft vs live PALs for the full model.
Regardless of source, layers.conferencing is always returned from the live PAL, because conferencing is deployment config that is owned by the live row (see PATCH PAL).
https://docs.tavus.io/openapi.yaml for the full HTTP API contract.?source=draft to read the unpublished draft body without affecting live traffic. Draft views include a publish_url for Publish PAL. layers.conferencing is always the live value. See Draft vs live PALs.Authorizations
Path Parameters
The unique identifier of the PAL.
"pcb7a34da5fe"
Query Parameters
Which body to return when the PAL has an active PAL Builder draft.
- Omitted (default): returns the live PAL. The response shape is unchanged from previous behavior.
draft: overlays the active draft. The responsepal_idstill matches the id you queried;is_draft_view,has_unpublished_changes,live_pal_id,draft_pal_id,publish_url, androuting_messageare added so you can tell you are reading unpublished content. If no draft exists, or the draft has no unpublished changes, the live body is returned unchanged.live: only meaningful when you address a draft id directly — forces the live parent body. The responsepal_idstill matches the draft id you queried.
layers.conferencing is always the live value, even on a draft view.
draft, live Response
A unique identifier for the PAL.
"pcb7a34da5fe"
A name for the PAL.
"Life Coach"
The system prompt that will be used by the llm.
"As a Life Coach, you are a dedicated professional who specializes in..."
The default face_id associated with this PAL if one exists.
"r90bbd427f71"
The PAL's invitable meeting email on tavusinvite.com, derived from layers.conferencing.username. Present when conferencing is configured.
"acme-anna@tavusinvite.com"
Array of document IDs that the PAL has access to. These documents will be available to the PAL in all their conversations. The document_ids are returned in the response of the Get Document and the Create Document endpoints.
Array of document tags that the PAL has access to. Documents matching these tags will be available to the PAL in all their conversations.
The date and time the PAL was created.
""
The date and time of when the PAL was last updated.
Present and true only when you called this endpoint with ?source=draft and the PAL has an active PAL Builder draft with unpublished changes. Absent otherwise. Signals that the response body is the draft — not the live PAL that powers running conversations.
true
Present with is_draft_view=true. true when the draft has edits that have not been published to the live PAL.
true
Present with is_draft_view=true. The id of the live PAL that this draft belongs to. This is the same id you queried when using ?source=draft against a live PAL id.
"pcb7a34da5fe"
Present with is_draft_view=true. The id of the underlying draft row. You do not normally need this — patching or publishing the live id routes to the draft automatically — but it is exposed for tooling that wants to address the draft row directly.
"p5f1e8d2a934"
Present with is_draft_view=true. Convenience path for re-reading the live body: /v2/pals/{live_pal_id}?source=live.
"/v2/pals/pcb7a34da5fe?source=live"
Present with is_draft_view=true. The PAL endpoint that publishes this draft to live.
"/v2/pals/pcb7a34da5fe/publish"
Present with is_draft_view=true. Human-readable summary explaining that the body is the unpublished draft and that live traffic still uses the published version until you call POST /v2/pals/{pal_id}/publish.
"Showing the unpublished draft of pcb7a34da5fe. Conversations and the public live PAL use the published version until you publish — POST /v2/pals/pcb7a34da5fe/publish. Add ?source=live to read the live version."

