{"openapi":"3.1.0","info":{"title":"Airspeed API","description":"\n## 🔗 Base URL\n\nThe base URL for the API is `https://api.glyphic.ai/v1/`.\n\n## 🔐 Authentication\n\nTo authenticate your requests, include your API key in the `X-API-Key` header.\n\nYou can manage API keys in the [API Settings](https://app.goairspeed.com/settings/api) section of your Airspeed dashboard.\n\n## ⏳ Rate Limiting\n\nAPI **GET** requests are rate limited to **1000 requests per minute per API key**.\n\nAPI **POST** requests are rate limited to **30 requests per minute per API key**.\n\nExceeding the limit will result in a `429 Too Many Requests` response.\n\n## 📄 Pagination\n\nList endpoints use **cursor-based pagination** to navigate through results.\n\n### Query Parameters\n\n- `cursor` (optional): Cursor token from a previous response to fetch the next/previous page\n- `limit` (optional): Number of items per page (default: **20**, max: **100**)\n- `direction` (optional): Pagination direction, either `next` or `prev` (default: **next**)\n\n#### Response Structure\n\nPaginated responses include a `pagination` object:\n\n```json\n{\n  \"data\": [...],\n  \"pagination\": {\n    \"next_cursor\": \"cursor_token_for_next_page\",\n    \"previous_cursor\": \"cursor_token_for_previous_page\"\n  }\n}\n```\n\nWhen `next_cursor` or `previous_cursor` is `null`, there are no more pages in that direction.\n","version":"1.0.0"},"paths":{"/v1/test/ping":{"get":{"tags":["ping"],"summary":"Get Ping","operationId":"get_ping_v1_test_ping_get","responses":{"200":{"description":"Successful ping response","content":{"application/json":{"schema":{"type":"string","title":"Response Get Ping V1 Test Ping Get"},"example":"pong"}}},"401":{"description":"Unauthorized - Invalid or missing API key"}},"security":[{"APIKeyHeader":[]}]}},"/v1/agent-runs/":{"get":{"tags":["agent_runs"],"summary":"List Agent Runs","description":"Retrieve scheduled or event-triggered agent run outputs.\n\n- Results are scoped to the authenticated API key's organization.\n- Results are sorted by run creation time in descending order\n  (newest first).\n- List results include output previews; fetch a single run for the full\n  final output.\n- agent_id and agent_workflow_id are mutually exclusive; supplying both\n  returns a 400.","operationId":"list_agent_runs","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"description":"Filter to runs from a native scheduled agent ID. Mutually exclusive with agent_workflow_id.","title":"Agent Id"},"description":"Filter to runs from a native scheduled agent ID. Mutually exclusive with agent_workflow_id."},{"name":"agent_workflow_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"description":"Filter to runs from a legacy agent workflow ID. Mutually exclusive with agent_id.","title":"Agent Workflow Id"},"description":"Filter to runs from a legacy agent workflow ID. Mutually exclusive with agent_id."},{"name":"user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"description":"Filter to runs owned by a user ID.","title":"User Id"},"description":"Filter to runs owned by a user ID."},{"name":"call_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"description":"Filter to runs associated with a call ID.","title":"Call Id"},"description":"Filter to runs associated with a call ID."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Cursor for pagination","title":"Cursor"},"description":"Cursor for pagination"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of items per page","default":20,"title":"Limit"},"description":"Number of items per page"},{"name":"direction","in":"query","required":false,"schema":{"enum":["next","prev"],"type":"string","description":"Pagination direction","default":"next","title":"Direction"},"description":"Pagination direction"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedResponse_AgentRunPreview_"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"400":{"description":"agent_id and agent_workflow_id are mutually exclusive"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent-runs/{run_id}":{"get":{"tags":["agent_runs"],"summary":"Get Agent Run","description":"Retrieve a scheduled or event-triggered agent run by ID.","operationId":"get_agent_run","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRunDetail"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"404":{"description":"Agent run not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/calls/":{"get":{"tags":["calls"],"summary":"Get Calls","description":"Retrieve list of calls for your organization.\n\n- Only public calls are returned (all private calls are excluded)\n- Results are sorted by start time in descending order (newest first)","operationId":"list_calls","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"participant_email","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"A participant's email to filter by (case insensitive). Only calls with this participant will be shown.","title":"Participant Email"},"description":"A participant's email to filter by (case insensitive). Only calls with this participant will be shown."},{"name":"start_time_from","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"Filter calls starting from this time (UTC ISO 8601)","title":"Start Time From"},"description":"Filter calls starting from this time (UTC ISO 8601)"},{"name":"start_time_to","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"Filter calls starting up to this time (UTC ISO 8601)","title":"Start Time To"},"description":"Filter calls starting up to this time (UTC ISO 8601)"},{"name":"title_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Query to filter calls by call title.","title":"Title Filter"},"description":"Query to filter calls by call title."},{"name":"tag_ids","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593"}},{"type":"null"}],"description":"Filter calls by tag IDs. Only calls with at least one of the specified tags will be returned.","title":"Tag Ids"},"description":"Filter calls by tag IDs. Only calls with at least one of the specified tags will be returned."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Cursor for pagination","title":"Cursor"},"description":"Cursor for pagination"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of items per page","default":20,"title":"Limit"},"description":"Number of items per page"},{"name":"direction","in":"query","required":false,"schema":{"enum":["next","prev"],"type":"string","description":"Pagination direction","default":"next","title":"Direction"},"description":"Pagination direction"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedResponse_CallPreview_"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/calls/{call_id}":{"get":{"tags":["calls"],"summary":"Get Call","description":"Retrieve a call by its ID.\n\n- media_url is a presigned URL that expires in 24 hours","operationId":"get_call_info","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"call_id","in":"path","required":true,"schema":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593","title":"Call Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CallDetail"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"404":{"description":"Call not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/calls/{call_id}/media":{"get":{"tags":["calls"],"summary":"Get Media","description":"Retrieve a call's media URL and type by its ID.\n\n- media_url is a presigned URL that expires in 24 hours","operationId":"get_call_media","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"call_id","in":"path","required":true,"schema":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593","title":"Call Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CallMedia"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"404":{"description":"Call not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/calls/{call_id}/snippets":{"get":{"tags":["calls"],"summary":"Get Call Snippets","description":"Retrieve a call's snippets by its ID.\n\n- snippets are sorted by created_at_utc in descending order (newest first)\n- media_url is a presigned URL that expires in 24 hours\n- transcript_turns are filtered to the snippet time range","operationId":"get_call_snippets","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"call_id","in":"path","required":true,"schema":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593","title":"Call Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CallSnippet"},"title":"Response Get Call Snippets"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"404":{"description":"Call not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/call_bots":{"post":{"tags":["call_bots"],"summary":"Join Call","description":"Join a call by creating a bot that will join the specified meeting URL.\n\nThe bot will join the meeting and record it. Once the call is complete,\nit can be processed and retrieved through other API endpoints.\n\nMultiple bots cannot be created for the same meeting URL within 2 minutes.","operationId":"join_call","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"201":{"description":"Bot created successfully"},"409":{"description":"Bot already exists for this meeting"},"500":{"description":"Error creating bot"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"APIKeyHeader":[]}]}},"/v1/call_tags/":{"get":{"tags":["call_tags"],"summary":"List Call Tags","description":"Retrieve all call tags for your organization.\n\nTags are sorted by creation time (oldest first).","operationId":"list_call_tags","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/CallTagPreview"},"type":"array","title":"Response List Call Tags"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"}},"security":[{"APIKeyHeader":[]}]}},"/v1/playbooks/":{"get":{"tags":["playbooks"],"summary":"List Playbooks","description":"Retrieve a paginated list of playbooks for your organization.\n\n- Results are sorted by playbook creation time in descending order\n  (newest first).\n- `updated_at` reflects the latest version's update timestamp,\n  falling back to its creation time, and finally to the playbook's\n  own creation time when no version exists. (Because results are\n  sorted by playbook creation time, this field is not monotonic\n  across pages.)\n- Soft-deleted playbooks are excluded.","operationId":"list_playbooks","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Cursor for pagination","title":"Cursor"},"description":"Cursor for pagination"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of items per page","default":20,"title":"Limit"},"description":"Number of items per page"},{"name":"direction","in":"query","required":false,"schema":{"enum":["next","prev"],"type":"string","description":"Pagination direction","default":"next","title":"Direction"},"description":"Pagination direction"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedResponse_PlaybookPreview_"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/playbooks/{playbook_id}":{"get":{"tags":["playbooks"],"summary":"Get Playbook","description":"Retrieve a playbook by its ID, including the latest version's content.","operationId":"get_playbook","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"playbook_id","in":"path","required":true,"schema":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593","title":"Playbook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlaybookDetail"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"404":{"description":"Playbook not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/playbooks/{playbook_id}/versions":{"get":{"tags":["playbooks"],"summary":"List Playbook Versions","description":"List all versions for a playbook.\n\n- Results are sorted by created time in descending order\n  (newest first).","operationId":"list_playbook_versions","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"playbook_id","in":"path","required":true,"schema":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593","title":"Playbook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PlaybookVersionPreview"},"title":"Response List Playbook Versions"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"404":{"description":"Playbook not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/playbooks/{playbook_id}/versions/{version_id}":{"get":{"tags":["playbooks"],"summary":"Get Playbook Version","description":"Retrieve a specific version of a playbook by its ID.","operationId":"get_playbook_version","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"playbook_id","in":"path","required":true,"schema":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593","title":"Playbook Id"}},{"name":"version_id","in":"path","required":true,"schema":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-f]{24}$","example":"5eb7cf5a86d9755df3a6c593","title":"Version Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlaybookDetail"}}}},"401":{"description":"Unauthorized - Invalid or missing API key"},"404":{"description":"Playbook or version not found"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"AgentRunDetail":{"properties":{"id":{"type":"string","title":"Id","example":"5eb7cf5a86d9755df3a6c593"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"agent_id":{"anyOf":[{"type":"string","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"title":"Agent Id"},"agent_workflow_id":{"anyOf":[{"type":"string","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"title":"Agent Workflow Id"},"user_id":{"type":"string","title":"User Id","example":"5eb7cf5a86d9755df3a6c593"},"call_id":{"anyOf":[{"type":"string","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"title":"Call Id"},"output_status":{"$ref":"#/components/schemas/AgentRunOutputStatus"},"output_preview":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Output Preview"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"last_updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Updated At"},"output":{"type":"string","title":"Output"}},"type":"object","required":["id","user_id","output_status","output"],"title":"AgentRunDetail","description":"Detailed scheduled agent run output."},"AgentRunOutputStatus":{"type":"string","enum":["has_output","no_text_output"],"title":"AgentRunOutputStatus","description":"Whether a run currently has final text output."},"AgentRunPreview":{"properties":{"id":{"type":"string","title":"Id","example":"5eb7cf5a86d9755df3a6c593"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"agent_id":{"anyOf":[{"type":"string","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"title":"Agent Id"},"agent_workflow_id":{"anyOf":[{"type":"string","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"title":"Agent Workflow Id"},"user_id":{"type":"string","title":"User Id","example":"5eb7cf5a86d9755df3a6c593"},"call_id":{"anyOf":[{"type":"string","example":"5eb7cf5a86d9755df3a6c593"},{"type":"null"}],"title":"Call Id"},"output_status":{"$ref":"#/components/schemas/AgentRunOutputStatus"},"output_preview":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Output Preview"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"last_updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Updated At"}},"type":"object","required":["id","user_id","output_status"],"title":"AgentRunPreview","description":"Preview of a scheduled or event-triggered agent run."},"CallDetail":{"properties":{"id":{"type":"string","title":"Id","example":"5eb7cf5a86d9755df3a6c593"},"title":{"type":"string","title":"Title"},"companies":{"items":{"$ref":"#/components/schemas/CompanyPreview"},"type":"array","title":"Companies","default":[]},"participants":{"items":{"$ref":"#/components/schemas/ParticipantPreview"},"type":"array","title":"Participants","default":[]},"start_time":{"type":"string","format":"date-time","title":"Start Time"},"duration":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration"},"status":{"$ref":"#/components/schemas/CallStatus"},"tags":{"items":{"$ref":"#/components/schemas/CallTagPreview"},"type":"array","title":"Tags","default":[]},"transcript_turns":{"anyOf":[{"items":{"$ref":"#/components/schemas/TranscriptTurn"},"type":"array"},{"type":"null"}],"title":"Transcript Turns"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"media":{"anyOf":[{"$ref":"#/components/schemas/CallMedia"},{"type":"null"}]},"url_link":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url Link"},"insights":{"anyOf":[{"items":{"$ref":"#/components/schemas/CallInsight"},"type":"array"},{"type":"null"}],"title":"Insights"},"crm_deal_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Crm Deal Id"}},"type":"object","required":["id","title","start_time","status"],"title":"CallDetail","description":"Detail of a call used for viewing a call."},"CallInsight":{"properties":{"name":{"type":"string","title":"Name"},"value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Value"}},"type":"object","required":["name"],"title":"CallInsight","description":"Insight extracted from a call"},"CallMedia":{"properties":{"media_type":{"anyOf":[{"$ref":"#/components/schemas/MediaType"},{"type":"null"}]},"media_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Media Url"}},"type":"object","title":"CallMedia","description":"Media URL and type for a call."},"CallPreview":{"properties":{"id":{"type":"string","title":"Id","example":"5eb7cf5a86d9755df3a6c593"},"title":{"type":"string","title":"Title"},"companies":{"items":{"$ref":"#/components/schemas/CompanyPreview"},"type":"array","title":"Companies","default":[]},"participants":{"items":{"$ref":"#/components/schemas/ParticipantPreview"},"type":"array","title":"Participants","default":[]},"start_time":{"type":"string","format":"date-time","title":"Start Time"},"duration":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration"},"status":{"$ref":"#/components/schemas/CallStatus"},"tags":{"items":{"$ref":"#/components/schemas/CallTagPreview"},"type":"array","title":"Tags","default":[]}},"type":"object","required":["id","title","start_time","status"],"title":"CallPreview","description":"Preview of a call used for listing calls."},"CallSnippet":{"properties":{"media":{"anyOf":[{"$ref":"#/components/schemas/CallMedia"},{"type":"null"}]},"start_seconds":{"type":"integer","title":"Start Seconds"},"end_seconds":{"type":"integer","title":"End Seconds"},"transcript_turns":{"items":{"$ref":"#/components/schemas/TranscriptTurn"},"type":"array","title":"Transcript Turns","default":[]}},"type":"object","required":["start_seconds","end_seconds"],"title":"CallSnippet","description":"Snippet of a call."},"CallStatus":{"properties":{"code":{"$ref":"#/components/schemas/ProcessStatus"}},"type":"object","required":["code"],"title":"CallStatus"},"CallTagPreview":{"properties":{"id":{"type":"string","title":"Id","example":"5eb7cf5a86d9755df3a6c593"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"group":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Group"}},"type":"object","required":["id","name"],"title":"CallTagPreview","description":"Preview of a call tag."},"CompanyPreview":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"domain":{"type":"string","title":"Domain"}},"type":"object","required":["domain"],"title":"CompanyPreview"},"CursorPagination":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"},"previous_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Previous Cursor"}},"type":"object","title":"CursorPagination","description":"Cursor-based pagination."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"JoinCallRequest":{"properties":{"meeting_url":{"type":"string","title":"Meeting Url","description":"The URL of the meeting to join (e.g., Google Meet, Zoom, etc.)"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"The title of the meeting to join"},"participants":{"anyOf":[{"items":{"$ref":"#/components/schemas/Participant"},"type":"array"},{"type":"null"}],"title":"Participants","description":"The participants in the meeting"}},"type":"object","required":["meeting_url"],"title":"JoinCallRequest","description":"Request to join a call with a bot."},"MediaType":{"type":"string","enum":["audio","video"],"title":"MediaType"},"PaginatedResponse_AgentRunPreview_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/AgentRunPreview"},"type":"array","title":"Data"},"pagination":{"$ref":"#/components/schemas/CursorPagination"}},"type":"object","required":["data","pagination"],"title":"PaginatedResponse[AgentRunPreview]"},"PaginatedResponse_CallPreview_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/CallPreview"},"type":"array","title":"Data"},"pagination":{"$ref":"#/components/schemas/CursorPagination"}},"type":"object","required":["data","pagination"],"title":"PaginatedResponse[CallPreview]"},"PaginatedResponse_PlaybookPreview_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/PlaybookPreview"},"type":"array","title":"Data"},"pagination":{"$ref":"#/components/schemas/CursorPagination"}},"type":"object","required":["data","pagination"],"title":"PaginatedResponse[PlaybookPreview]"},"Participant":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"}},"type":"object","title":"Participant"},"ParticipantPreview":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"id":{"type":"integer","title":"Id"}},"type":"object","required":["id"],"title":"ParticipantPreview"},"PlaybookDetail":{"properties":{"id":{"type":"string","title":"Id","example":"5eb7cf5a86d9755df3a6c593"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"playbook_type":{"$ref":"#/components/schemas/PlaybookType"},"team_label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Team Label"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"},"content":{"type":"string","title":"Content"},"version_id":{"type":"string","title":"Version Id","example":"5eb7cf5a86d9755df3a6c593"}},"type":"object","required":["id","playbook_type","updated_at","content","version_id"],"title":"PlaybookDetail","description":"Detail of a playbook including the version content."},"PlaybookPreview":{"properties":{"id":{"type":"string","title":"Id","example":"5eb7cf5a86d9755df3a6c593"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"playbook_type":{"$ref":"#/components/schemas/PlaybookType"},"team_label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Team Label"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","playbook_type","updated_at"],"title":"PlaybookPreview","description":"Preview of a playbook used for listing playbooks.\n\nBuilt by MongoDB via the aggregation pipeline in\n``list_playbooks`` (see ``Settings.projection`` and\n``Settings.latest_version_lookup``). The other v1 playbook\nendpoints return ``PlaybookDetail`` instead, so this class has no\nPython-side factory."},"PlaybookType":{"type":"string","enum":["sales","customer_success","autogen_us","autogen_emea","autogen_apac"],"title":"PlaybookType","description":"Enum for playbook types."},"PlaybookVersionPreview":{"properties":{"id":{"type":"string","title":"Id","example":"5eb7cf5a86d9755df3a6c593"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","created_at"],"title":"PlaybookVersionPreview","description":"Preview of a playbook version used for listing versions."},"ProcessStatus":{"enum":["queued","in_progress","completed","failed","cancelled",null],"title":"ProcessStatus","description":"Status of a process.\nNOTE: THIS AFFECTS THE API!!!\nWe need `UNKNOWN` here as a catch all for the API. It should NEVER be used\noutside of the API."},"TranscriptTurn":{"properties":{"party_id":{"type":"integer","title":"Party Id"},"turn_text":{"type":"string","title":"Turn Text"},"timestamp":{"type":"string","title":"Timestamp"}},"type":"object","required":["party_id","turn_text","timestamp"],"title":"TranscriptTurn"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"APIKeyHeader":{"type":"apiKey","in":"header","name":"X-API-Key"}}}}