Standard users can only manage their own genies. Admin users can manage all genies and view owner information by passing
adminMode: true.List genies
Retrieves a paginated list of genies with essential fields. Optimized for selects, dropdowns, and summary views.string
required
Must be
"genies"string
required
Must be
"list"object
boolean
Whether the request succeeded.
object
Get all genies
Retrieves all genies with full configuration using cursor-based pagination. Returns complete genie objects including settings, phone, page, group, and knowledge base data.string
required
Must be
"genies"string
required
Must be
"all"object
boolean
Whether the request succeeded.
object
When
adminMode is true, each genie includes an owner field with id, full_name, email, and role. Standard users always see owner: null.Get genie
Retrieves a single genie by ID with its full configuration, including settings, phone number, page, group, and knowledge base.string
required
Must be
"genies"string
required
Must be
"get"string
required
The UUID of the genie to retrieve.
object
boolean
Whether the request succeeded.
object
Create genie
Creates a new voice AI genie with the specified configuration. The genie is automatically provisioned in the voice agent system.string
required
Must be
"genies"string
required
Must be
"create"object
required
boolean
Whether the request succeeded.
string
Confirmation message.
object
Admin users can create genies on behalf of other users by including
impersonatedUserId in the data object.Update genie
Updates an existing genie’s configuration. Supports partial updates — only the fields you include will be changed.string
required
Must be
"genies"string
required
Must be
"update"string
required
The UUID of the genie to update.
object
required
boolean
Whether the request succeeded.
string
Confirmation message.
object
Delete genie
Permanently deletes a genie, removes it from the voice agent system, and releases any associated phone numbers.string
required
Must be
"genies"string
required
Must be
"delete"string
required
The UUID of the genie to delete.
boolean
Whether the request succeeded.
string
Confirmation message.
Clone genie
Creates a copy of an existing genie with all its configuration. Optionally rename the clone and apply text replacements to the system prompt and first message.string
required
Must be
"genies"string
required
Must be
"clone"string
required
The UUID of the genie to clone.
object
boolean
Whether the request succeeded.
object
Attached knowledge base documents are cloned and linked to the new genie automatically. If a document clone fails (for example due to a transient error), the genie itself is still created — only that document is skipped. Goal associations from the original genie are also copied to the clone.
Reorder genies
Updates the display order of genies. Pass an object mapping genie IDs to their desired position (zero-indexed).string
required
Must be
"genies"string
required
Must be
"reorder"object
required
boolean
Whether the request succeeded.
string
Confirmation message.
Analytics
Returns conversation analytics per genie — total conversations, recent conversations (last 7 days), and last-used timestamp.string
required
analyticsobject
Response
Returns an array of analytics objects (one per genie):array
Limits
Returns the genie quota for the authenticated user’s personal account and, if applicable, their workspace (team).string
required
limitsResponse
object
Timeline
Returns a day-by-day conversation count for a genie over a specified date range.string
required
timelinestring
required
Genie UUID.
object
required
Response
URL lookup (authenticated)
Loads a genie by its URL slug. Used by authenticated surfaces (the widget, the genie page, team members) to bootstrap a conversation. Returns the full genie object and, for consumer users where memory is enabled, the caller’s stored memory context. Access is granted when the caller is the genie’s owner, an admin, a workspace team member, holds a valid time-limited access grant, or the genie is public or a marketplace genie. Inactive genies returnNOT_FOUND even when access would otherwise be allowed.
For fully public (unauthenticated) genie loading — used by embedded widgets before a user signs in — use the
url action on the public genies resource instead.string
required
Must be
"genies"string
required
Must be
"url"object
required
boolean
Whether the request succeeded.
object
Embed code
Returns an HTML embed snippet for embedding a genie on an external website.string
required
embed-codestring
required
Genie UUID.
Request access
Submits an access request for a private genie. Used when a visitor wants to access a genie they don’t have permission for.string
required
request-accessstring
required
Genie UUID.
Accept invite
Accepts an invitation to access a genie using an access token.string
required
accept-invitestring
required
Genie UUID.
Signature style
Retrieves and, if necessary, initializes a genie’s email signature style. Fills in a defaultsignatureStyle object when absent, and always refreshes the phoneNumber and liveUrl snapshots within signatureStyle to match the genie’s current phone and public URL. Once signatureStyle exists, only the snapshot fields are ever refreshed — layout preferences and toggle states set by the user are never overwritten. Other branding fields (colors, logo) are never modified by this action.
string
required
Must be
"genies"string
required
Must be
"signature-style"string
required
The UUID of the genie.
boolean
Whether the request succeeded.
object

