Skip to main content

API reference

Inspect the current OpenAPI routes and shared schemas.

At a glance

Version
3.1.0
Base URL
pantheon-todo.alethiconsulting.com/pantheon-api
Auth
Bearer
Contract
api/openapi/openapi.json

Conventions​

Base URLhttps://pantheon-todo.alethiconsulting.com/pantheon-api
AuthenticationAuthorization: Bearer PANTHEON_API_KEY
JSONSend Content-Type: application/json.
StreamingRequest text/event-stream.
IdempotencyUse an 8 to 255 character key where required.

Endpoints​

MethodPathPurposeSuccessErrors
POST/v1/auth/signupSignup201422
POST/v1/auth/loginLogin200422
POST/v1/auth/logoutLogout204None
GET/v1/auth/meMe200None
GET/v1/auth/keysList Keys200None
POST/v1/auth/keysCreate Key201422
DELETE/v1/auth/keys/{key_id}Revoke Key204422
POST/v1/auth/password/changeChange Password204422
POST/v1/auth/email/verify/requestRequest Verification202401, 409, 429
POST/v1/auth/email/verify/confirmConfirm Verification200400, 422
POST/v1/auth/password/reset/requestRequest Password Reset202422, 429
POST/v1/auth/password/reset/confirmConfirm Password Reset204400, 422
POST/v1/admin/users/{user_id}/passwordAdmin Reset Password204422
GET/v1/admin/api-keysList Admin Api Keys200None
POST/v1/admin/api-keysCreate Admin Api Key201422
DELETE/v1/admin/api-keys/{key_id}Delete Admin Api Key204422
GET/v1/users/{user_id}/memoryGet User Memory200422
DELETE/v1/users/{user_id}/memoryDelete User Memory200422
GET/v1/sessions/{session_id}/memoryGet Session Memory200422
DELETE/v1/sessions/{session_id}/memoryDelete Session Memory200422
POST/v1/agentsCreate Agent201422
GET/v1/agentsList Agents200422
GET/v1/agents/{agent_id}Get Agent200422
PUT/v1/agents/{agent_id}Update Agent200422
DELETE/v1/agents/{agent_id}Delete Agent204422
GET/v1/agents/slug/{slug}Get Agent By Slug200422
POST/v1/assistant/conversationsCreate Conversation201401, 403, 404, 422, 503
GET/v1/assistant/conversationsList Conversations. Returns an object with data and next_page.200400, 401, 403, 404, 422
GET/v1/assistant/conversations/{conversation_id}Get Conversation200400, 401, 403, 404, 422
DELETE/v1/assistant/conversations/{conversation_id}Delete Conversation204401, 403, 404, 422, 503
POST/v1/assistant/conversations/{conversation_id}/scopeSwitch Scope200401, 403, 404, 409, 422, 503
POST/v1/assistant/conversations/{conversation_id}/messagesMessage202401, 403, 404, 409, 422, 429, 503
GET/v1/assistant/conversations/{conversation_id}/eventsList Events. Returns an object with data and next_cursor.200400, 401, 403, 404, 422
GET/v1/assistant/conversations/{conversation_id}/events/streamStream200400, 401, 403, 404, 422
GET/v1/assistant/conversations/{conversation_id}/graphs/{graph_id}Graph200400, 401, 403, 404, 422
GET/v1/assistant/approvalsList Approvals. Returns an object with data and next_page.200400, 401, 403, 404, 422
GET/v1/assistant/approvals/{approval_id}Get Approval200400, 401, 403, 404, 422
POST/v1/assistant/approvals/{approval_id}/decisionDecide Approval200401, 403, 404, 422, 503
GET/v1/assistant/reply-evidence/{approval_id}Get Reply Evidence200400, 401, 403, 404, 422
POST/v1/assistant/reply-evidence/{approval_id}/decisionDecide Reply Evidence200401, 403, 404, 422, 503
GET/v1/assistant/statusStatus200400, 401, 403, 404, 422
PUT/v1/assistant/workspace-switchWorkspace Switch200401, 403, 404, 422
GET/v1/assistant/preferencesPreferences200400, 401, 403, 404, 422
PATCH/v1/assistant/preferencesUpdate Preferences200401, 403, 404, 422, 503
GET/v1/audit/recordsList Audit Records200422
POST/v1/deploymentsCreate a deployment201401, 403, 404, 422
GET/v1/deploymentsList deployments. Returns an object with data and next_cursor.200401, 403, 422
GET/v1/deployments/{deployment_id}Get a deployment200401, 403, 404, 422
POST/v1/deployments/{deployment_id}/activateActivate Deployment200404, 409, 422
GET/v1/diagnostics/requests/{request_id}Request Lookup200400, 401, 403, 404, 422
GET/v1/agents/{agent_id}/observabilityObservability200400, 401, 403, 404, 422
POST/v1/admin/environmentsCreate Environment201422
GET/v1/admin/environmentsList Environments Admin200422
GET/v1/admin/environments/{env_id}Get Environment Admin200422
PUT/v1/admin/environments/{env_id}Update Environment200422
DELETE/v1/admin/environments/{env_id}Delete Environment204422
GET/v1/environmentsList Environments200422
GET/v1/environments/{env_id}Get Environment200422
POST/v1/sessions/{session_id}/eventsAppend session events200401, 403, 404, 422, 429
GET/v1/sessions/{session_id}/eventsList session events. Returns an object with data and next_cursor.200400, 401, 403, 404, 422
GET/v1/sessions/{session_id}/events/streamStream session events200400, 401, 403, 404, 422
GET/health/componentsComponent health200None
GET/v1/sessions/{session_id}/messagesList Messages. Returns an object with data and next_page.200422
GET/v1/modelsList Models200None
POST/v1/sessions/{session_id}/runs/{run_id}/resumeResume a run202400, 401, 403, 404, 409, 422, 429, 503
POST/v1/sessions/{session_id}/runsStart a run200400, 401, 403, 404, 409, 422, 429, 503
GET/v1/sessions/{session_id}/runs/{run_id}/streamStream run events200401, 403, 404, 422
POST/v1/sessions/{session_id}/runs/waitStart a run and wait200401, 403, 404, 409, 422, 429, 503
POST/v1/sessions/{session_id}/runs/{run_id}/stopStop a run200401, 403, 404, 422
GET/v1/sessions/{session_id}/runs/{run_id}Get Run200422
POST/v1/sessions/{session_id}/runs/{run_id}/cancelCancel a run202401, 403, 404, 409, 422
POST/v1/sessions/{session_id}/sandboxProvision Sandbox201422
DELETE/v1/sessions/{session_id}/sandboxDestroy Sandbox204422
POST/v1/sessions/{session_id}/sandbox/syncSync Sandbox200422
POST/v1/sessions/{session_id}/sandbox/extend-ttlExtend Sandbox Ttl200422
POST/v1/sessions/{session_id}/files/uploadUpload File200422
GET/v1/sessions/{session_id}/files/{path}Download File200422
GET/v1/sessions/{session_id}/filesList Files200422
GET/v1/secretsList Secrets200None
POST/v1/secretsCreate Secret201422
GET/v1/secrets/{name}Get Secret200422
PUT/v1/secrets/{name}Update Secret200422
DELETE/v1/secrets/{name}Delete Secret204422
POST/v1/sessionsCreate Session201422, 429
GET/v1/sessionsList Sessions. Returns an object with data and next_page.200422
GET/v1/sessions/{session_id}Get Session200422
POST/v1/sessions/{session_id}Update Session200422
DELETE/v1/sessions/{session_id}Delete Session204422
POST/v1/sessions/{session_id}/archiveArchive Session200422
GET/v1/skillsList Tenant Skills200None
POST/v1/skillsCreate Tenant Skill201422
GET/v1/skills/{name}Get Tenant Skill200422
PUT/v1/skills/{name}Update Tenant Skill200422
DELETE/v1/skills/{name}Delete Tenant Skill204422
POST/v1/skills/importImport Tenant Skill Md201422
POST/v1/skills/validateValidate Skill200422
POST/v1/skills/uploadImport Tenant Skill File201422
GET/v1/skills/{name}/downloadDownload Tenant Skill200422
GET/v1/skills/{name}/files/contentGet Tenant Skill File Content200422
POST/v1/skills/{name}/filesUpload Tenant Skill File200422
POST/v1/admin/tenants/{tenant_id}/skillsCreate Org Skill201422
POST/v1/admin/skills/builtinCreate Builtin Skill201422
GET/v1/sessions/{session_id}/skills/catalogGet Skill Catalog200422
PUT/v1/sessions/{session_id}/skills/enabledSet Enabled Skills200422
GET/v1/sessions/{session_id}/artifactsList Artifacts200422
GET/v1/sessions/{session_id}/artifacts/{artifact_id}Get Artifact200422
DELETE/v1/sessions/{session_id}/artifacts/{artifact_id}Delete Artifact200422
GET/v1/sessions/{session_id}/artifacts/{artifact_id}/downloadDownload Artifact200422
GET/v1/sessions/{session_id}/artifacts/{artifact_id}/files/{path}Serve Artifact Subfile200422
GET/v1/api-keysList Tenant Api Keys200None
POST/v1/api-keysCreate Tenant Api Key201422
DELETE/v1/api-keys/{key_id}Delete Tenant Api Key204422
POST/v1/admin/tenants/{tenant_id}/api-keysAdmin Create Tenant Api Key201422
GET/v1/admin/tenants/{tenant_id}/api-keysAdmin List Tenant Api Keys200422
DELETE/v1/admin/tenants/{tenant_id}/api-keys/{key_id}Admin Delete Tenant Api Key204422
POST/v1/usersCreate User201422
GET/v1/usersList Users. Returns an object with data and next_page.200422
GET/v1/users/{user_id}Get User200422
PUT/v1/users/{user_id}Update User200422
DELETE/v1/users/{user_id}Delete User204422
GET/v1/admin/usersAdmin List Users. Returns an object with data and next_page.200422
GET/v1/admin/users/{user_id}Admin Get User200422
PUT/v1/admin/users/{user_id}Admin Update User200422
POST/v1/admin/tenantsCreate Tenant201422
GET/v1/admin/tenantsList Tenants200422
GET/v1/admin/tenants/{tenant_id}Get Tenant200422
PUT/v1/admin/tenants/{tenant_id}Update Tenant200422
PATCH/v1/admin/tenants/{tenant_id}Update Tenant200422
DELETE/v1/admin/tenants/{tenant_id}Delete Tenant204422
GET/v1/workspace/receiptsWorkspace Receipts. Returns an object with data and next_cursor.200422
POST/v1/testsCreate Test202401, 403, 404, 409, 422, 429, 503
GET/v1/tests/{test_id}Get Test200400, 401, 403, 404, 422
POST/v1/toolsCreate a tool201400, 401, 403, 409, 422
GET/v1/toolsList tools. Returns an object with data and next_cursor.200401, 403, 422
GET/v1/tools/{tool_id}Get tool by ID200401, 403, 404, 422
POST/v1/tools/{tool_id}/versionsCreate new tool definition version201400, 401, 403, 404, 409, 422
GET/v1/tools/{tool_id}/versionsList tool definition versions. Returns an object with data and next_cursor.200401, 403, 404, 422
GET/v1/tools/{tool_id}/versions/{version}Get specific tool definition version200401, 403, 404, 422
POST/v1/tools/{tool_id}/versions/{version}/deprecateDeprecate a tool definition version200401, 403, 404, 422
GET/v1/usageGet Usage200422
GET/v1/admin/tenants/{tenant_id}/usageGet Admin Usage200422
GET/v1/workspacesList Workspaces200401, 422
POST/v1/workspacesCreate Workspace201401, 409, 422, 429
PATCH/v1/workspaces/{workspace_id}Rename Workspace200401, 403, 404, 409, 422
DELETE/v1/workspaces/{workspace_id}Delete Workspace200401, 403, 404, 409, 422
POST/v1/workspaces/{workspace_id}/restoreRestore Workspace200401, 403, 404, 409, 410, 422
POST/v1/workspaces/{workspace_id}/switchSwitch Workspace200401, 404, 422
GET/healthHealthcheck200None
GET/Root Healthcheck200None
GET/v1/admin/bami/settingsSettings200401, 403, 404, 409, 422, 429, 503
PATCH/v1/admin/bami/settingsUpdate Settings200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/tenants/{id}/settingsTenant Settings200401, 403, 404, 409, 422, 429, 503
PATCH/v1/admin/bami/tenants/{id}/settingsUpdate Tenant200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/killKill202401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/releasesReleases. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/releasesRelease201401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/rolloutsRollout201401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/rollouts/{id}/rollbackRollback200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/metricsMetrics200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/auditAudit Records. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/support-accessSupport Access201401, 403, 404, 409, 422, 429, 503
DELETE/v1/admin/bami/support-access/{id}Revoke Support200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/conversations/{id}Conversation200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/modelOverview200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/model/qualificationsStart Qualification202401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/model/qualifications/{id}Qualification200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/model/qualifications/{id}/enableEnable200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/auth/loginLogin202401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/auth/mfaMfa200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/auth/sessionSession200401, 403, 404, 409, 422, 429, 503
DELETE/v1/admin/bami/auth/sessionLogout204401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/containment-reviewsContainment Reviews. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/containment-reviews/{review_id}Dispose Review200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/staff/{user_id}/emergency-revokeEmergency Revoke200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/operations/{idempotency_key}Operation200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/tenantsTenants. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/tenants/{tenant_id}Tenant Detail200401, 403, 404, 409, 422, 429, 503
PATCH/v1/admin/console/tenants/{tenant_id}/classificationClassify Tenant200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/usageUsage200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/usage/exportUsage Export200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/auditAudit. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/tenants/{tenant_id}/suspendSuspend Tenant200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/tenants/{tenant_id}/resumeResume Tenant200401, 403, 404, 409, 422, 429, 503
PATCH/v1/admin/console/tenants/{tenant_id}/limitsUpdate Limits200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/tenants/{tenant_id}/keysTenant Keys. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/tenants/{tenant_id}/keys/{key_id}/revokeRevoke Key200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/usersUsers. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/users/{user_id}User Detail200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/rolesRoles. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
PUT/v1/admin/console/roles/{user_id}Set Role200401, 403, 404, 409, 422, 429, 503
DELETE/v1/admin/console/roles/{user_id}Revoke Role200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/approvalsCreate Approval200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/attentionAttention. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/attention/{item_id}/acknowledgeAcknowledge Attention200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/attention/{item_id}/resolveResolve Attention200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/healthHealth200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/incidentsIncidents. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/agentsAgents. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/deploymentsDeployments. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/sessionsSessions. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/runsRuns. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/requests/{request_id}Request Correlation200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/notification-settingsNotification Settings200401, 403, 404, 409, 422, 429, 503
PATCH/v1/admin/console/notification-settingsUpdate Notification Settings200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/console/data-requestsData Requests. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/console/data-requestsCreate Data Request200401, 403, 404, 409, 422, 429, 503
PATCH/v1/admin/console/data-requests/{request_id}Update Data Request200401, 403, 404, 409, 422, 429, 503

Schemas​

The checked-in OpenAPI file is the field-level source of truth.

SchemaRequired fieldsProperties
CreateToolRequestdescription, input_schema, output_schema, name, display_namedescription, executor, input_schema, output_schema, side_effect, confirmation, name, display_name
CreateToolVersionRequestdescription, input_schema, output_schemadescription, executor, input_schema, output_schema, side_effect, confirmation
ToolResponseid, name, display_name, latest_version, status, created_at, updated_atid, name, display_name, latest_version, status, created_at, updated_at, latest_definition
ToolDefinitionResponseid, tool_id, name, version, description, executor, input_schema, output_schema, schema_profile_version, side_effect, confirmation, content_hash, status, created_atid, tool_id, name, version, description, executor, input_schema, output_schema, schema_profile_version, side_effect, confirmation, content_hash, status, created_at
ToolListResponsedatadata, next_cursor
CreateAgentRequestname, slugname, slug, model, system_prompt, tools, tool_requirements, skills, environment_id, requires_sandbox, metadata
AgentResponseid, name, slug, modelid, name, slug, model, system_prompt, tools, tool_requirements, skills, environment_id, requires_sandbox, tool_policy, metadata, status, version, created_at, updated_at
CreateDeploymentRequestagent_idagent_id, agent_version, tool_definition_ids, model, environment_id, application_tool_response_deadline_seconds
DeploymentResponseid, agent_id, agent_revision_id, agent_version, model, requires_sandbox, application_tool_response_deadline_seconds, prompt_policy_version, prompt_policy_hash, content_hash, source, status, active, created_atid, agent_id, agent_revision_id, agent_version, model, environment_id, requires_sandbox, application_tool_response_deadline_seconds, prompt_policy_version, prompt_policy_hash, content_hash, source, status, active, tool_bindings, created_at
CreateSessionRequestNoneagent_slug, deployment_id, prefer_latest_agent_version, user_id, environment_id, model, title, metadata, secrets, env
SessionResponseid, modelid, user_id, agent, agent_id, agent_slug, deployment, deployment_snapshot_id, deployment_source, environment_id, requires_sandbox, model, status, title, metadata, secrets, env, sandbox_id, sandbox_status, usage, created_at, updated_at, archived_at
CreateRunRequestNoneevents, model
RunResponserun_id, statusrun_id, status, record_integrity, model_used, artifacts, required_event_ids
ResumeRequesteventsevents
ResumeAcceptedrun_id, status, accepted_events, remaining_event_idsrun_id, status, accepted_events, remaining_event_ids
EventResponseid, typeid, type, content, parent_event_id, run_id, model_used, seq, metadata, created_at, sequence, workspace_id, session_id, in_reply_to_event_id, data
ErrorEnvelopeerrorerror
SessionBusyErrorEnvelopeerrorerror
UsageResponsefrom, to, totals, dailysandbox_seconds_estimated, from, to, totals, daily
UsageTotalsNonesessions_created, runs_total, input_tokens, output_tokens, sandbox_seconds, tool_calls, runs_by_status
DailyUsagedatesessions_created, runs_total, input_tokens, output_tokens, sandbox_seconds, tool_calls, date
TenantRateLimitEnvelopeerrorerror
TenantRateLimitDetailslimit, window_seconds, retry_afterlimit, window_seconds, retry_after
BamiConversationid, workspace_id, user_id, session_id, scope, scope_generation, title, active_run_id, release_id, model_version, created_at, updated_at, deleted_at, expires_at, cancellation_receipt_id, availabilityid, workspace_id, user_id, session_id, scope, scope_generation, title, active_run_id, release_id, model_version, created_at, updated_at, deleted_at, expires_at, cancellation_receipt_id, availability
BamiReceiptid, kind, workspace_id, creator_id, conversation_id, request_id, session_id, run_id, via, label, outcome, reason, agent_id, agent_revision_id, agent_revision, deployment_id, deployment_hash, unavailable, effective_model, environment_id, prompt_policy_hash, executors, input, assertions, permitted_overrides, output_references, event_references, content_hashes, usage, remaining_local_change, proof_limits, usage_disclosed_at, created_at, completed_at, content_expires_at, content_deleted_at, audit_expires_atid, kind, workspace_id, creator_id, conversation_id, request_id, session_id, run_id, via, label, outcome, reason, agent_id, agent_revision_id, agent_revision, deployment_id, deployment_hash, draft_id, draft_revision, draft_hash, test_snapshot_id, test_snapshot_hash, runtime_profile_version, unavailable, effective_model, environment_id, prompt_policy_hash, executors, input, assertions, permitted_overrides, output_references, event_references, content_hashes, usage, remaining_local_change, proof_limits, memory_isolated, usage_disclosed_at, created_at, completed_at, content_expires_at, content_deleted_at, audit_expires_at
BamiTestCreatedeployment_id, title, input, assertions, executor_mode, tool_stubsdeployment_id, title, input, assertions, executor_mode, tool_stubs
BamiDiagnosticLookuptarget, audit, sessions, runs, events, coverage, next_cursorstarget, audit, sessions, runs, events, coverage, next_cursors

Tool contracts​

ValueMeaning
noneAccepted for side_effect. Default.
workspace_writeAccepted for side_effect.
external_writeAccepted for side_effect.
neverAccepted for confirmation. Default.
policyAccepted for confirmation.

Tool creation returns ToolResponse. Additional definition fields are omitted from this example.

Selected JSON response fields
{
  "id": "tool_123",
  "name": "echo_tool",
  "display_name": "Echo tool",
  "latest_version": 1,
  "status": "active",
  "created_at": "2026-09-08T12:00:00Z",
  "updated_at": "2026-09-08T12:00:00Z",
  "latest_definition": {
    "id": "tool_definition_123",
    "tool_id": "tool_123",
    "name": "echo_tool",
    "version": 1
  }
}

Deployments bind latest_definition.id through tool_definition_ids.

Version requests accept only fields listed under CreateToolVersionRequest above.

Sending name or display_name returns "Extra inputs are not permitted".

See Add a version for a request example.

Bami routes​

Assistant, diagnostics, tests, and admin Bami routes are served by the integrated phase one API. The following 44 operations come from the same generated OpenAPI path set as the Endpoints table.

Use a signed-in account session for assistant routes. Tenant and admin keys receive SESSION_REQUIRED. Admin Bami routes require a named MFA operator session; mutations require the dashboard Origin and CSRF token. Password and MFA exchanges establish that session.

Admission remains disabled until a qualified release and operator settings enable it. Listing, reading and deletion remain available while disabled. Foundation component metadata records schema origin; operation paths establish route availability.

MethodPathPurposeSuccessErrors
POST/v1/assistant/conversationsCreate Conversation201401, 403, 404, 422, 503
GET/v1/assistant/conversationsList Conversations. Returns an object with data and next_page.200400, 401, 403, 404, 422
GET/v1/assistant/conversations/{conversation_id}Get Conversation200400, 401, 403, 404, 422
DELETE/v1/assistant/conversations/{conversation_id}Delete Conversation204401, 403, 404, 422, 503
POST/v1/assistant/conversations/{conversation_id}/scopeSwitch Scope200401, 403, 404, 409, 422, 503
POST/v1/assistant/conversations/{conversation_id}/messagesMessage202401, 403, 404, 409, 422, 429, 503
GET/v1/assistant/conversations/{conversation_id}/eventsList Events. Returns an object with data and next_cursor.200400, 401, 403, 404, 422
GET/v1/assistant/conversations/{conversation_id}/events/streamStream200400, 401, 403, 404, 422
GET/v1/assistant/conversations/{conversation_id}/graphs/{graph_id}Graph200400, 401, 403, 404, 422
GET/v1/assistant/approvalsList Approvals. Returns an object with data and next_page.200400, 401, 403, 404, 422
GET/v1/assistant/approvals/{approval_id}Get Approval200400, 401, 403, 404, 422
POST/v1/assistant/approvals/{approval_id}/decisionDecide Approval200401, 403, 404, 422, 503
GET/v1/assistant/reply-evidence/{approval_id}Get Reply Evidence200400, 401, 403, 404, 422
POST/v1/assistant/reply-evidence/{approval_id}/decisionDecide Reply Evidence200401, 403, 404, 422, 503
GET/v1/assistant/statusStatus200400, 401, 403, 404, 422
PUT/v1/assistant/workspace-switchWorkspace Switch200401, 403, 404, 422
GET/v1/assistant/preferencesPreferences200400, 401, 403, 404, 422
PATCH/v1/assistant/preferencesUpdate Preferences200401, 403, 404, 422, 503
GET/v1/diagnostics/requests/{request_id}Request Lookup200400, 401, 403, 404, 422
GET/v1/agents/{agent_id}/observabilityObservability200400, 401, 403, 404, 422
POST/v1/testsCreate Test202401, 403, 404, 409, 422, 429, 503
GET/v1/tests/{test_id}Get Test200400, 401, 403, 404, 422
GET/v1/admin/bami/settingsSettings200401, 403, 404, 409, 422, 429, 503
PATCH/v1/admin/bami/settingsUpdate Settings200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/tenants/{id}/settingsTenant Settings200401, 403, 404, 409, 422, 429, 503
PATCH/v1/admin/bami/tenants/{id}/settingsUpdate Tenant200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/killKill202401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/releasesReleases. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/releasesRelease201401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/rolloutsRollout201401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/rollouts/{id}/rollbackRollback200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/metricsMetrics200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/auditAudit Records. Returns an object with data and next_cursor.200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/support-accessSupport Access201401, 403, 404, 409, 422, 429, 503
DELETE/v1/admin/bami/support-access/{id}Revoke Support200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/conversations/{id}Conversation200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/modelOverview200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/model/qualificationsStart Qualification202401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/model/qualifications/{id}Qualification200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/model/qualifications/{id}/enableEnable200401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/auth/loginLogin202401, 403, 404, 409, 422, 429, 503
POST/v1/admin/bami/auth/mfaMfa200401, 403, 404, 409, 422, 429, 503
GET/v1/admin/bami/auth/sessionSession200401, 403, 404, 409, 422, 429, 503
DELETE/v1/admin/bami/auth/sessionLogout204401, 403, 404, 409, 422, 429, 503

See Bami for diagnose, correct, verify, and the phase one REST handoff.

Use the contract​

Generate clients from api/openapi/openapi.json.

Read Get an API key for account setup and Usage and limits for tenant reporting.

Use the Quickstart to test the generated client against a complete flow.

Pitfalls​

  • New route examples are thin: Read Events, Errors, and Sessions and runs.
  • Bami admission returns unavailable: The routes are served, but admission requires enabled settings and a qualified release. Existing conversation reads remain available.
  • A schema changes: Regenerate both SDKs from the same checked-in OpenAPI contract.

Search docs

Esc

Ask Bami

Bami answers inside your signed-in dashboard. Write your question here, then paste it into Bami with Cmd/Ctrl+/.