{"openapi":"3.1.0","info":{"title":"MicroVM Manager API","version":"0.1.0"},"paths":{"/workers/{worker_id}/drain":{"post":{"tags":["System"],"summary":"Drain Worker","description":"Set a worker node into drain mode via Redis.","operationId":"drain_worker_workers__worker_id__drain_post","parameters":[{"name":"worker_id","in":"path","required":true,"schema":{"type":"string","title":"Worker Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Drain Worker Workers  Worker Id  Drain Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workers/{worker_id}/undrain":{"post":{"tags":["System"],"summary":"Undrain Worker","description":"Remove a worker node from drain mode via Redis.","operationId":"undrain_worker_workers__worker_id__undrain_post","parameters":[{"name":"worker_id","in":"path","required":true,"schema":{"type":"string","title":"Worker Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Undrain Worker Workers  Worker Id  Undrain Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/workers/{worker_id}/deployment-drain/{action}":{"post":{"tags":["System"],"summary":"Deployment Drain","description":"Local deployment control plane; never exposed as an unauthenticated public write.","operationId":"deployment_drain_workers__worker_id__deployment_drain__action__post","parameters":[{"name":"worker_id","in":"path","required":true,"schema":{"type":"string","title":"Worker Id"}},{"name":"action","in":"path","required":true,"schema":{"type":"string","title":"Action"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentDrainRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/api-keys/":{"post":{"tags":["API Keys"],"summary":"Create","operationId":"create_v1_api_keys__post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIKeyRecordCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIKeyRecordRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["API Keys"],"summary":"List All","operationId":"list_all_v1_api_keys__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/APIKeyRecordRead"},"title":"Response List All V1 Api Keys  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"head":{"tags":["API Keys"],"summary":"Head List","description":"HEAD endpoint for checking if resources exist without returning content.","operationId":"head_list_v1_api_keys__head","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/api-keys/{item_id}":{"get":{"tags":["API Keys"],"summary":"Get One","operationId":"get_one_v1_api_keys__item_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIKeyRecordRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["API Keys"],"summary":"Update","operationId":"update_v1_api_keys__item_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIKeyRecordCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIKeyRecordRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["API Keys"],"summary":"Delete","operationId":"delete_v1_api_keys__item_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/executions/":{"get":{"tags":["Executions"],"summary":"List All","operationId":"list_all_v1_executions__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/abc__TaskRead__1"},"title":"Response List All V1 Executions  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"head":{"tags":["Executions"],"summary":"Head List","description":"HEAD endpoint for checking if resources exist without returning content.","operationId":"head_list_v1_executions__head","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/executions/{item_id}":{"get":{"tags":["Executions"],"summary":"Get One","operationId":"get_one_v1_executions__item_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/abc__TaskRead__2"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/app-url/{session_id}":{"get":{"tags":["Sessions"],"summary":"Get App Url","description":"Get a public URL for a service running inside the VM.\n\nThis allows you to expose a web server running inside the VM (e.g., on port 3000)\nto the outside world via a public URL.\n\nArgs:\n    session_id: Your session UUID\n    port: The port your service is running on inside the VM (default: 80)\n\nReturns:\n    - url: The public URL to access your service\n    - direct_url: Direct subdomain URL (requires wildcard SSL setup)\n    - vm_ip: Internal VM IP (for debugging)\n    - port: The port being exposed\n    - vm_id: The VM identifier\n    - status: VM status (active/killed)\n    - expires_in_seconds: Time until VM is killed\n\nExample:\n    GET /v1/app-url/550e8400-e29b-41d4-a716-446655440000?port=3000\n\n    Response:\n    {\n        \"url\": \"https://api.instavm.io/v1/app/550e8400.../3000/\",\n        \"direct_url\": \"https://vmid-abc-15-3000.sandbox.instavm.io/\",\n        \"vm_ip\": \"172.30.15.2\",\n        \"port\": 3000,\n        \"vm_id\": \"vmid-abc-15\",\n        \"status\": \"active\",\n        \"expires_in_seconds\": 245\n    }","operationId":"get_app_url_v1_sessions_app_url__session_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"port","in":"query","required":false,"schema":{"type":"integer","maximum":65535,"minimum":1,"description":"Port to expose (1-65535)","default":80,"title":"Port"},"description":"Port to expose (1-65535)"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppURLResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/usage/{session_id}":{"get":{"tags":["Sessions"],"summary":"Get Session Usage","description":"Get aggregate CPU usage for a session.","operationId":"get_session_usage_v1_sessions_usage__session_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/session":{"post":{"tags":["Sessions"],"summary":"Create Session","description":"Creates a new session for a user given an API key.\n\nArgs:\n    api_key: User's API key\n    vm_lifetime_seconds: How long the VM will live (in seconds) from spawn time.\n                        Min: 20s, Max: 2592000s (30d), Default: 300s (5min)\n    memory_mb: VM memory in MB (128-8192). Default: uses system default.\n               Memory is hotplugged after VM restore if virtio-mem is configured.\n    vcpu_count: VM vCPU count (1, 2, 4, 6, 8). Default: 2.\n                Determines which snapshot folder to use (snap1, snap2, snap4, snap6, snap8).\n    metadata: Optional user-defined metadata for filtering (key-value pairs).\n    env: Optional environment variables to set in the VM (key-value pairs).\n          Env vars persist across all executions in this session. They are\n          applied eagerly only with prewarm=true; otherwise they remain\n          pending until POST /v1/vms or the first execution acquires a VM.\n    prewarm: Opt in to asynchronously acquiring a standard VM. Leave false\n             when the session will be passed to POST /v1/vms with a\n             snapshot, alternate image, or persistent volumes.","operationId":"create_session_v1_sessions_session_post","deprecated":true,"security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/status/{session_id}":{"get":{"tags":["Sessions"],"summary":"Get Session Status","description":"Check if a session and its VM are alive.\n\nThis endpoint provides a simple aliveness check for a session, including:\n- Whether the session exists\n- Whether a VM is assigned\n- Whether the VM is alive (active status)\n- VM uptime and remaining lifetime\n\nArgs:\n    session_id: Your session UUID\n\nReturns:\n    - exists: True if session exists\n    - vm_assigned: True if VM is assigned to this session\n    - vm_alive: True if VM exists and status is 'active'\n    - vm_status: Current VM status ('active', 'killed', etc.)\n    - vm_id: The VM identifier (if assigned)\n    - uptime_seconds: How long VM has been running (if alive)\n    - expires_in_seconds: Time until VM expires (if alive)\n    - created_at: When the session was created\n\nExample:\n    GET /v1/sessions/status/550e8400-e29b-41d4-a716-446655440000\n\n    Response (VM alive):\n    {\n        \"session_id\": \"550e8400-e29b-41d4-a716-446655440000\",\n        \"exists\": true,\n        \"vm_assigned\": true,\n        \"vm_status\": \"active\",\n        \"vm_id\": \"vmid-abc-15\",\n        \"vm_alive\": true,\n        \"uptime_seconds\": 123.45,\n        \"expires_in_seconds\": 176.55,\n        \"created_at\": \"2025-01-10T12:34:56\"\n    }\n\n    Response (no VM assigned yet):\n    {\n        \"session_id\": \"550e8400-e29b-41d4-a716-446655440000\",\n        \"exists\": true,\n        \"vm_assigned\": false,\n        \"vm_alive\": false,\n        \"vm_status\": null,\n        \"vm_id\": null,\n        \"uptime_seconds\": null,\n        \"expires_in_seconds\": null,\n        \"created_at\": \"2025-01-10T12:34:56\"\n    }\n\n    Response (VM dead):\n    {\n        \"session_id\": \"550e8400-e29b-41d4-a716-446655440000\",\n        \"exists\": true,\n        \"vm_assigned\": true,\n        \"vm_status\": \"killed\",\n        \"vm_id\": \"vmid-abc-15\",\n        \"vm_alive\": false,\n        \"uptime_seconds\": null,\n        \"expires_in_seconds\": 0,\n        \"created_at\": \"2025-01-10T12:34:56\"\n    }","operationId":"get_session_status_v1_sessions_status__session_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/session/{session_id}":{"get":{"tags":["Sessions"],"summary":"Get Session Info","description":"Get current session information.","operationId":"get_session_info_v1_sessions_session__session_id__get","deprecated":true,"security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/sandboxes":{"get":{"tags":["Sessions"],"summary":"List Sandboxes","description":"List VMs (sandboxes) with optional metadata filtering.\n\nThis endpoint matches E2B's Sandbox.list() functionality.\n\nArgs:\n    metadata: JSON string of key-value pairs to filter by.\n              Example: '{\"userId\": \"123\", \"env\": \"dev\"}'\n              Filters using @> (contains) operator for GIN-indexed queries.\n    limit: Maximum number of results (1-1000, default: 100)\n\nReturns:\n    List of sandbox info objects with:\n    - sandbox_id: Unique VM identifier\n    - template_id: Snapshot/template used (from parent_snapshot_ref)\n    - name: Template name (from parent_snapshot_ref or \"default\")\n    - metadata: User-defined key-value pairs\n    - started_at: ISO timestamp when VM was started\n    - end_at: ISO timestamp when VM will expire (if active)\n    - status: VM status ('active', 'killed', etc.)\n\nExample:\n    GET /v1/sessions/sandboxes?metadata={\"userId\":\"123\"}\n\n    Response:\n    [\n        {\n            \"sandbox_id\": \"vmid-abc-15\",\n            \"template_id\": \"snap2\",\n            \"name\": \"snap2\",\n            \"metadata\": {\"userId\": \"123\", \"env\": \"dev\"},\n            \"started_at\": \"2025-01-18T10:30:00\",\n            \"end_at\": \"2025-01-18T10:35:00\",\n            \"status\": \"active\"\n        }\n    ]","operationId":"list_sandboxes_v1_sessions_sandboxes_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"metadata","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"JSON string of metadata filters, e.g. '{\"userId\":\"123\"}'","title":"Metadata"},"description":"JSON string of metadata filters, e.g. '{\"userId\":\"123\"}'"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"description":"Maximum number of results","default":100,"title":"Limit"},"description":"Maximum number of results"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/VMSandboxInfo"},"title":"Response List Sandboxes V1 Sessions Sandboxes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/execute":{"post":{"summary":"Execute Command","description":"Executes a command in an available microVM.\n\nNOTE: The 'timeout' parameter is HTTP REQUEST TIMEOUT (how long to wait for response).\nVM lifetime is controlled by session's vm_lifetime_seconds (set during session creation).\n\nFlow:\n1. First /execute call → spawns VM, schedules kill after vm_lifetime_seconds\n2. Subsequent /execute calls → reuse same VM (until lifetime expires)\n3. After lifetime expires → VM is killed, next /execute spawns new VM\n\nRate limiting is applied based on user's subscription plan.\n\nMulti-node routing:\n- If session exists on another node, request is proxied to that node\n- New sessions are created locally","operationId":"execute_command_execute_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommandRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/execute_async":{"post":{"summary":"Execute Command Async","description":"Executes a given command asynchronously on an available microVM.\n\nRate limiting is applied based on user's subscription plan.","operationId":"execute_command_async_execute_async_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommandRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/kill":{"post":{"summary":"Kill Vm","description":"Kill the VM associated with a session.\n\nThis endpoint allows users to manually terminate their VM before the\nscheduled lifetime expires. Useful for freeing up resources when done\nwith a session.\n\nMulti-node routing:\n- The kill is dispatched via Celery to ``vm_queue_{worker_id}`` of\n  the owner worker; no HTTP inter-node proxying happens at this\n  layer. If the task lands on the wrong worker and the\n  ``multinode.strict_kill_ownership`` flag is on, the task itself\n  redispatches to the authoritative owner once.\n\nArgs:\n    session_id: The session UUID whose VM should be killed\n\nReturns:\n    Success message with the killed VM ID\n\nRaises:\n    400: Invalid session_id format\n    403: User doesn't own the session\n    404: Session not found or no VM assigned to session","operationId":"kill_vm_kill_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KillVMRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/upload":{"post":{"summary":"Upload File Endpoint","description":"Uploads a file to an available microVM.\n\nMulti-node routing:\n- If session exists on another node, request is proxied to that node","operationId":"upload_file_endpoint_upload_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_file_endpoint_upload_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/download":{"post":{"summary":"Download File Endpoint","description":"Downloads a file from an available microVM.\n\nMulti-node routing:\n- If session exists on another node, request is proxied to that node","operationId":"download_file_endpoint_download_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/execute_async":{"post":{"tags":["Execution"],"summary":"Execute Command Async","description":"Executes a given command asynchronously on an available microVM.\n\nRate limiting is applied based on user's subscription plan.","operationId":"execute_command_async_v1_execute_async_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommandRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/upload":{"post":{"tags":["Uploads"],"summary":"Upload File Endpoint","description":"Uploads a file to an available microVM.\n\nMulti-node routing:\n- If session exists on another node, request is proxied to that node","operationId":"upload_file_endpoint_v1_upload_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_file_endpoint_v1_upload_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/cli-auth/start":{"post":{"tags":["CLI Auth"],"summary":"Cli Auth Start","operationId":"cli_auth_start_api_cli_auth_start_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CLIAuthStartRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CLIAuthStartResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/cli-auth/approve":{"post":{"tags":["CLI Auth"],"summary":"Cli Auth Approve","operationId":"cli_auth_approve_api_cli_auth_approve_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CLIAuthApproveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CLIAuthApproveResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/cli-auth/exchange":{"post":{"tags":["CLI Auth"],"summary":"Cli Auth Exchange","operationId":"cli_auth_exchange_api_cli_auth_exchange_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CLIAuthExchangeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CLIAuthExchangeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/usage":{"get":{"tags":["Browser"],"summary":"Get Browser Usage","description":"Get current user's browser API usage statistics","operationId":"get_browser_usage_v1_browser_usage_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/auth/test":{"post":{"tags":["Browser"],"summary":"Test Browser Auth","description":"Test authentication with browser API","operationId":"test_browser_auth_v1_browser_auth_test_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserAuthTestRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserAuthTestResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/render":{"post":{"tags":["Browser"],"summary":"Render Page","description":"Render a webpage using the browser API","operationId":"render_page_v1_browser_render_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserRenderRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserRenderResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/screenshot/{usage_id}":{"get":{"tags":["Browser"],"summary":"Get Screenshot","description":"Retrieve a stored screenshot by usage ID","operationId":"get_screenshot_v1_browser_screenshot__usage_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"usage_id","in":"path","required":true,"schema":{"type":"integer","title":"Usage Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/usage/history":{"get":{"tags":["Browser"],"summary":"Get Browser Usage History","description":"Get user's browser usage history","operationId":"get_browser_usage_history_v1_browser_usage_history_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Offset"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/sessions/":{"post":{"tags":["Browser Sessions"],"summary":"Create Browser Session","description":"Create a new browser session","operationId":"create_browser_session_v1_browser_sessions__post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserSessionCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserSessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Browser Sessions"],"summary":"List Browser Sessions","description":"List active browser sessions for the user","operationId":"list_browser_sessions_v1_browser_sessions__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserSessionListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/sessions/{session_id}":{"get":{"tags":["Browser Sessions"],"summary":"Get Browser Session","description":"Get browser session information","operationId":"get_browser_session_v1_browser_sessions__session_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserSessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Browser Sessions"],"summary":"Close Browser Session","description":"Close a browser session","operationId":"close_browser_session_v1_browser_sessions__session_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/capabilities":{"get":{"tags":["Browser Sessions"],"summary":"Browser Capabilities","operationId":"browser_capabilities_v1_browser_capabilities_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/keypress":{"post":{"tags":["Browser Sessions"],"summary":"Press Key","operationId":"press_key_v1_browser_interactions_keypress_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserKeyPressRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/hover":{"post":{"tags":["Browser Sessions"],"summary":"Hover Element","operationId":"hover_element_v1_browser_interactions_hover_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserTargetRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/navigate":{"post":{"tags":["Browser Sessions"],"summary":"Navigate Browser","description":"Navigate to a URL in browser session","operationId":"navigate_browser_v1_browser_interactions_navigate_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserNavigateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/click":{"post":{"tags":["Browser Sessions"],"summary":"Click Element","description":"Click an element in browser session","operationId":"click_element_v1_browser_interactions_click_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserClickRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/type":{"post":{"tags":["Browser Sessions"],"summary":"Type Text","description":"Type text into an element","operationId":"type_text_v1_browser_interactions_type_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserTypeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/fill":{"post":{"tags":["Browser Sessions"],"summary":"Fill Form","description":"Fill a form field","operationId":"fill_form_v1_browser_interactions_fill_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserFillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/scroll":{"post":{"tags":["Browser Sessions"],"summary":"Scroll Page","description":"Scroll the page or an element","operationId":"scroll_page_v1_browser_interactions_scroll_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserScrollRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/wait":{"post":{"tags":["Browser Sessions"],"summary":"Wait For Condition","description":"Wait for a condition to be met","operationId":"wait_for_condition_v1_browser_interactions_wait_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserWaitRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/screenshot":{"post":{"tags":["Browser Sessions"],"summary":"Take Screenshot","description":"Take a screenshot of the browser session","operationId":"take_screenshot_v1_browser_interactions_screenshot_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserScreenshotRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserScreenshotResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/extract":{"post":{"tags":["Browser Sessions"],"summary":"Extract Elements","description":"Extract DOM elements from the browser session","operationId":"extract_elements_v1_browser_interactions_extract_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserExtractRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserExtractResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/content":{"post":{"tags":["Browser Sessions"],"summary":"Extract Content","description":"Extract LLM-friendly content from the current page","operationId":"extract_content_v1_browser_interactions_content_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserContentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserContentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/browser/interactions/fill-credential":{"post":{"tags":["Browser Sessions"],"summary":"Fill Credential Reference","operationId":"fill_credential_reference_v1_browser_interactions_fill_credential_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/computeruse/{session_id}/viewer-url":{"get":{"tags":["Computer Use","Computer Use"],"summary":"Get noVNC viewer URL","description":"Return the noVNC viewer URL and WebSocket URL so a frontend can embed the viewer.\n\nThe noVNC HTML is served from inside the VM via the existing preview proxy:\n  GET /v1/app/{session_id}/6080/vnc.html\n\nThe WebSocket relay runs at:\n  WS /v1/computeruse/{session_id}/vnc/websockify","operationId":"viewer_url_v1_computeruse__session_id__viewer_url_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/computeruse/{session_id}/vnc/websockify":{"get":{"tags":["Computer Use","Computer Use"],"summary":"WebSocket endpoint requires Upgrade","description":"Reject plain HTTP requests to the VNC endpoint with an explicit status.","operationId":"vnc_websockify_http_guard_v1_computeruse__session_id__vnc_websockify_get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/computeruse/{session_id}/{path}":{"options":{"tags":["Computer Use","Computer Use"],"summary":"Computer Use Proxy","description":"Authenticated reverse proxy to the in-VM Computer Use API.\n\nSupports all HTTP methods. Binary endpoints (screenshots, recording downloads)\nare streamed back; all others use a buffered response.\n\nRecording stop requests are intercepted: after proxying the stop to the VM,\na background task downloads the MP4 and uploads it to object storage.","operationId":"computer_use_proxy_v1_computeruse__session_id___path__options","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Computer Use","Computer Use"],"summary":"Computer Use Proxy","description":"Authenticated reverse proxy to the in-VM Computer Use API.\n\nSupports all HTTP methods. Binary endpoints (screenshots, recording downloads)\nare streamed back; all others use a buffered response.\n\nRecording stop requests are intercepted: after proxying the stop to the VM,\na background task downloads the MP4 and uploads it to object storage.","operationId":"computer_use_proxy_v1_computeruse__session_id___path__options","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Computer Use","Computer Use"],"summary":"Computer Use Proxy","description":"Authenticated reverse proxy to the in-VM Computer Use API.\n\nSupports all HTTP methods. Binary endpoints (screenshots, recording downloads)\nare streamed back; all others use a buffered response.\n\nRecording stop requests are intercepted: after proxying the stop to the VM,\na background task downloads the MP4 and uploads it to object storage.","operationId":"computer_use_proxy_v1_computeruse__session_id___path__options","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Computer Use","Computer Use"],"summary":"Computer Use Proxy","description":"Authenticated reverse proxy to the in-VM Computer Use API.\n\nSupports all HTTP methods. Binary endpoints (screenshots, recording downloads)\nare streamed back; all others use a buffered response.\n\nRecording stop requests are intercepted: after proxying the stop to the VM,\na background task downloads the MP4 and uploads it to object storage.","operationId":"computer_use_proxy_v1_computeruse__session_id___path__options","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"head":{"tags":["Computer Use","Computer Use"],"summary":"Computer Use Proxy","description":"Authenticated reverse proxy to the in-VM Computer Use API.\n\nSupports all HTTP methods. Binary endpoints (screenshots, recording downloads)\nare streamed back; all others use a buffered response.\n\nRecording stop requests are intercepted: after proxying the stop to the VM,\na background task downloads the MP4 and uploads it to object storage.","operationId":"computer_use_proxy_v1_computeruse__session_id___path__options","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Computer Use","Computer Use"],"summary":"Computer Use Proxy","description":"Authenticated reverse proxy to the in-VM Computer Use API.\n\nSupports all HTTP methods. Binary endpoints (screenshots, recording downloads)\nare streamed back; all others use a buffered response.\n\nRecording stop requests are intercepted: after proxying the stop to the VM,\na background task downloads the MP4 and uploads it to object storage.","operationId":"computer_use_proxy_v1_computeruse__session_id___path__options","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Computer Use","Computer Use"],"summary":"Computer Use Proxy","description":"Authenticated reverse proxy to the in-VM Computer Use API.\n\nSupports all HTTP methods. Binary endpoints (screenshots, recording downloads)\nare streamed back; all others use a buffered response.\n\nRecording stop requests are intercepted: after proxying the stop to the VM,\na background task downloads the MP4 and uploads it to object storage.","operationId":"computer_use_proxy_v1_computeruse__session_id___path__options","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/{session_id}/pty/sessions":{"post":{"tags":["PTY","PTY"],"summary":"Create Pty Session","description":"Create a PTY session inside the VM.","operationId":"create_pty_session_v1_sessions__session_id__pty_sessions_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["PTY","PTY"],"summary":"List Pty Sessions","description":"List all PTY sessions in the VM.","operationId":"list_pty_sessions_v1_sessions__session_id__pty_sessions_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/{session_id}/pty/sessions/{pty_id}":{"get":{"tags":["PTY","PTY"],"summary":"Get Pty Session","description":"Get info about a specific PTY session.","operationId":"get_pty_session_v1_sessions__session_id__pty_sessions__pty_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"pty_id","in":"path","required":true,"schema":{"type":"string","title":"Pty Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["PTY","PTY"],"summary":"Kill Pty Session","description":"Kill a PTY session in the VM.","operationId":"kill_pty_session_v1_sessions__session_id__pty_sessions__pty_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"pty_id","in":"path","required":true,"schema":{"type":"string","title":"Pty Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/{session_id}/pty/sessions/{pty_id}/resize":{"post":{"tags":["PTY","PTY"],"summary":"Resize Pty Session","description":"Resize a PTY session terminal.","operationId":"resize_pty_session_v1_sessions__session_id__pty_sessions__pty_id__resize_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"pty_id","in":"path","required":true,"schema":{"type":"string","title":"Pty Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/pty/sessions":{"post":{"tags":["PTY","PTY"],"summary":"Vm Create Pty Session","description":"Create a PTY session inside a specific VM.","operationId":"vm_create_pty_session_v1_vms__vm_id__pty_sessions_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["PTY","PTY"],"summary":"Vm List Pty Sessions","description":"List all PTY sessions in a specific VM.","operationId":"vm_list_pty_sessions_v1_vms__vm_id__pty_sessions_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/pty/sessions/{pty_id}":{"get":{"tags":["PTY","PTY"],"summary":"Vm Get Pty Session","description":"Get info about a specific PTY session in a VM.","operationId":"vm_get_pty_session_v1_vms__vm_id__pty_sessions__pty_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"pty_id","in":"path","required":true,"schema":{"type":"string","title":"Pty Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["PTY","PTY"],"summary":"Vm Kill Pty Session","description":"Kill a PTY session in a specific VM.","operationId":"vm_kill_pty_session_v1_vms__vm_id__pty_sessions__pty_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"pty_id","in":"path","required":true,"schema":{"type":"string","title":"Pty Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/pty/sessions/{pty_id}/resize":{"post":{"tags":["PTY","PTY"],"summary":"Vm Resize Pty Session","description":"Resize a PTY session terminal in a specific VM.","operationId":"vm_resize_pty_session_v1_vms__vm_id__pty_sessions__pty_id__resize_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"pty_id","in":"path","required":true,"schema":{"type":"string","title":"Pty Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/recordings":{"get":{"tags":["Recordings"],"summary":"List Recordings","description":"List user's recordings, optionally filtered by session or status.","operationId":"list_recordings_v1_recordings_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by session ID","title":"Session Id"},"description":"Filter by session ID"},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(uploading|ready|failed)$"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RecordingInfo"},"title":"Response List Recordings V1 Recordings Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/recordings/{recording_id}":{"get":{"tags":["Recordings"],"summary":"Get Recording","description":"Get recording metadata.","operationId":"get_recording_v1_recordings__recording_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"recording_id","in":"path","required":true,"schema":{"type":"string","title":"Recording Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordingInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Recordings"],"summary":"Delete Recording","description":"Delete a recording from object storage and mark as deleted in DB.","operationId":"delete_recording_v1_recordings__recording_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"recording_id","in":"path","required":true,"schema":{"type":"string","title":"Recording Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/recordings/{recording_id}/download":{"get":{"tags":["Recordings"],"summary":"Download Recording","description":"Download recording via a time-bounded object-storage URL redirect.","operationId":"download_recording_v1_recordings__recording_id__download_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"recording_id","in":"path","required":true,"schema":{"type":"string","title":"Recording Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sessions/{session_id}/tape/start":{"post":{"tags":["Tapes"],"summary":"Start Session Tape","operationId":"start_session_tape_v1_sessions__session_id__tape_start_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeStartRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/tape/start":{"post":{"tags":["Tapes"],"summary":"Start Vm Tape","operationId":"start_vm_tape_v1_vms__vm_id__tape_start_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeStartRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}/stop":{"post":{"tags":["Tapes"],"summary":"Stop Tape","operationId":"stop_tape_v1_tapes__tape_id__stop_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes":{"get":{"tags":["Tapes"],"summary":"List Tapes","operationId":"list_tapes_v1_tapes_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},{"name":"vm_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(recording|stopped|failed|expired)$"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TapeInfo"},"title":"Response List Tapes V1 Tapes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}":{"get":{"tags":["Tapes"],"summary":"Get Tape","operationId":"get_tape_v1_tapes__tape_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Tapes"],"summary":"Delete Tape","operationId":"delete_tape_v1_tapes__tape_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}/lanes":{"get":{"tags":["Tapes"],"summary":"Get Tape Lanes","operationId":"get_tape_lanes_v1_tapes__tape_id__lanes_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}/export":{"get":{"tags":["Tapes"],"summary":"Export Tape","description":"Return a metadata bundle for a tape.\n\nReal export-to-tarball + signed S3 URL is part of Phase 7. This endpoint\nis the stable contract: when storage is wired in, the response gains a\n``download_url`` field; until then callers receive metadata + events\ninline so SDKs/CLIs can persist a JSON snapshot today.\n\nThe inline payload is paginated (``limit`` + ``offset``) so large tapes\ndon't return multi-megabyte responses; clients should iterate while\n``len(events) == limit``.","operationId":"export_tape_v1_tapes__tape_id__export_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":1,"default":1000,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}/events":{"post":{"tags":["Tapes"],"summary":"Append Tape Event","operationId":"append_tape_event_v1_tapes__tape_id__events_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeEventCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeEventInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Tapes"],"summary":"List Tape Events","operationId":"list_tape_events_v1_tapes__tape_id__events_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"after_step","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"After Step"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"}},{"name":"kinds","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated kind filter","title":"Kinds"},"description":"Comma-separated kind filter"},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":200,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TapeEventInfo"},"title":"Response List Tape Events V1 Tapes  Tape Id  Events Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}/diff":{"get":{"tags":["Tapes"],"summary":"Get Tape Diff","operationId":"get_tape_diff_v1_tapes__tape_id__diff_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"from","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"From"}},{"name":"to","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"To"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}/branch":{"post":{"tags":["Tapes"],"summary":"Branch Tape","operationId":"branch_tape_v1_tapes__tape_id__branch_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TapeBranchRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}/checkpoint/{step_id}/branch":{"post":{"tags":["Tapes"],"summary":"Branch Tape Checkpoint","operationId":"branch_tape_checkpoint_v1_tapes__tape_id__checkpoint__step_id__branch_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"step_id","in":"path","required":true,"schema":{"type":"integer","title":"Step Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/TapeBranchRequest"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tapes/{tape_id}/share":{"post":{"tags":["Traces"],"summary":"Create Tape Share","description":"Mint (or return the existing) public share link for a tape.","operationId":"create_tape_share_v1_tapes__tape_id__share_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceShareInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Traces"],"summary":"Get Tape Share","description":"Return the active share for a tape, or null when none exists.","operationId":"get_tape_share_v1_tapes__tape_id__share_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/TraceShareInfo"},{"type":"null"}],"title":"Response Get Tape Share V1 Tapes  Tape Id  Share Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Traces"],"summary":"Revoke Tape Share","description":"Revoke every active share for a tape.","operationId":"revoke_tape_share_v1_tapes__tape_id__share_delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tape_id","in":"path","required":true,"schema":{"type":"string","title":"Tape Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/traces/{share_id}":{"get":{"tags":["Traces"],"summary":"Get Public Trace","operationId":"get_public_trace_v1_traces__share_id__get","parameters":[{"name":"share_id","in":"path","required":true,"schema":{"type":"string","title":"Share Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/traces/{share_id}/events":{"get":{"tags":["Traces"],"summary":"List Public Trace Events","description":"Time-ordered public events for a trace.\n\nClients page with ``offset``/``limit`` and should iterate while\n``len(events) == limit``. Only allowlisted kinds are ever returned.","operationId":"list_public_trace_events_v1_traces__share_id__events_get","parameters":[{"name":"share_id","in":"path","required":true,"schema":{"type":"string","title":"Share Id"}},{"name":"kinds","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated kind filter","title":"Kinds"},"description":"Comma-separated kind filter"},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":500,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/traces/{share_id}/cast":{"get":{"tags":["Traces"],"summary":"Get Public Trace Cast","description":"The trace's terminal lane as an asciinema v2 cast file.\n\nChunk timing comes from event timestamps relative to tape start, so the\ncast replays in the same clock as the trace event timeline.","operationId":"get_public_trace_cast_v1_traces__share_id__cast_get","parameters":[{"name":"share_id","in":"path","required":true,"schema":{"type":"string","title":"Share Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/egress/session/{session_id}":{"post":{"tags":["Egress"],"summary":"Set Session Egress Policy","operationId":"set_session_egress_policy_v1_egress_session__session_id__post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EgressPolicyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Egress"],"summary":"Get Session Egress Policy","operationId":"get_session_egress_policy_v1_egress_session__session_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/egress/vm/{vm_id}":{"post":{"tags":["Egress"],"summary":"Set Vm Egress Policy","operationId":"set_vm_egress_policy_v1_egress_vm__vm_id__post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EgressPolicyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Egress"],"summary":"Get Vm Egress Policy","operationId":"get_vm_egress_policy_v1_egress_vm__vm_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/shares":{"post":{"tags":["Shares"],"summary":"Create Share","operationId":"create_share_v1_shares_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShareCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/shares/{share_id}":{"patch":{"tags":["Shares"],"summary":"Update Share","operationId":"update_share_v1_shares__share_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"share_id","in":"path","required":true,"schema":{"type":"string","title":"Share Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShareUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/custom-domains":{"post":{"tags":["Custom Domains"],"summary":"Create Custom Domain","operationId":"create_custom_domain_v1_custom_domains_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomDomainCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Custom Domains"],"summary":"List Custom Domains","operationId":"list_custom_domains_v1_custom_domains_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/custom-domains/{domain_id}/verify":{"post":{"tags":["Custom Domains"],"summary":"Verify Custom Domain","operationId":"verify_custom_domain_v1_custom_domains__domain_id__verify_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"domain_id","in":"path","required":true,"schema":{"type":"integer","title":"Domain Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomDomainVerifyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/custom-domains/{domain_id}":{"get":{"tags":["Custom Domains"],"summary":"Get Custom Domain","operationId":"get_custom_domain_v1_custom_domains__domain_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"domain_id","in":"path","required":true,"schema":{"type":"integer","title":"Domain Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Custom Domains"],"summary":"Delete Custom Domain","operationId":"delete_custom_domain_v1_custom_domains__domain_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"domain_id","in":"path","required":true,"schema":{"type":"integer","title":"Domain Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/custom-domains/{domain_id}/health":{"get":{"tags":["Custom Domains"],"summary":"Custom Domain Health","operationId":"custom_domain_health_v1_custom_domains__domain_id__health_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"domain_id","in":"path","required":true,"schema":{"type":"integer","title":"Domain Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/snapshots":{"post":{"tags":["Snapshots"],"summary":"Create Snapshot","description":"Create a snapshot from an OCI image (async build via Celery).","operationId":"create_snapshot_v1_snapshots_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SnapshotCreateRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SnapshotInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Snapshots"],"summary":"List Snapshots","description":"List user's own snapshots plus public system snapshots.","operationId":"list_snapshots_v1_snapshots_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(user|system)$"},{"type":"null"}],"title":"Type"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SnapshotInfo"},"title":"Response List Snapshots V1 Snapshots Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/snapshots/{snapshot_id}":{"get":{"tags":["Snapshots"],"summary":"Get Snapshot","description":"Get snapshot details/build status.","operationId":"get_snapshot_v1_snapshots__snapshot_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"snapshot_id","in":"path","required":true,"schema":{"type":"string","title":"Snapshot Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SnapshotInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Snapshots"],"summary":"Delete Snapshot","description":"Delete a snapshot (owner only).\n\nSnapshot files are on shared S3 so any worker can handle deletion.","operationId":"delete_snapshot_v1_snapshots__snapshot_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"snapshot_id","in":"path","required":true,"schema":{"type":"string","title":"Snapshot Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/templates":{"get":{"tags":["Templates"],"summary":"List Templates","description":"Public catalog: only active + public templates. Cached ~60s in-process.","operationId":"list_templates_v1_templates_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/templates/{slug}":{"get":{"tags":["Templates"],"summary":"Get Template","description":"Public: full manifest for an active, public template. 404 otherwise.\n\nPublisher/status view: with valid admin credentials this returns the LATEST\nrow for the slug regardless of status, so a publisher can poll a draft\nthrough verification (``status`` + ``config[\"verify_error\"]``).","operationId":"get_template_v1_templates__slug__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/templates/{slug}/runs":{"post":{"tags":["Templates"],"summary":"Create Template Run","description":"Launch a VM from an active template and return the run manifest.\n\nAuth accepts guest *or* full-user tokens (guests can run templates). The VM\nis created through the same ``create_vm`` path the raw ``POST /vms`` route\nuses (snapshot restore, lifetime clamp, quota checks, share creation). The\nserver returns the manifest ``steps[]``/``terminal`` for the client to drive;\nit never executes runtime steps itself.","operationId":"create_template_run_v1_templates__slug__runs_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TemplateRunRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/guest/sessions":{"post":{"tags":["Guest"],"summary":"Create Guest Session","operationId":"create_guest_session_v1_guest_sessions_post","responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestSessionResponse"}}}}}}},"/v1/guest/claim":{"post":{"tags":["Guest"],"summary":"Claim Guest Session","description":"Adopt a guest's runs into the authenticated (full) user's account.\n\n``require_full_user`` blocks a guest-scoped *caller* token at the door; the\nservice layer also rejects a guest claimer defensively. The guest identity\nto claim is supplied in the body as its scope-restricted token.","operationId":"claim_guest_session_v1_guest_claim_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestClaimRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestClaimResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/workspace/tabs":{"get":{"tags":["Workspace"],"summary":"List Tabs","description":"List the caller's tabs ordered by position, with live derived status.","operationId":"list_tabs_v1_workspace_tabs_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Workspace"],"summary":"Create Tab","description":"Boot a template run and pin it as a new tab.\n\nReuses the A5 template-runs path so VM creation, plan-cap lifetime clamp,\negress and quota handling are not duplicated here. The run is booted with\n``vm_lifetime=\"max\"`` and ``auto_suspend=True`` per the workspace contract.\n\nWhen ``workspace_auto_volume_enabled`` is on, a persistent volume is\nprovisioned and boot-mounted at ``/workspace`` so the agent's files are\ntracked, branchable via the tape disk lineage, and durable beyond the VM.","operationId":"create_tab_v1_workspace_tabs_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TabCreateRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/workspace/tabs/{tab_id}":{"patch":{"tags":["Workspace"],"summary":"Update Tab","description":"Update a tab's title and/or position.","operationId":"update_tab_v1_workspace_tabs__tab_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tab_id","in":"path","required":true,"schema":{"type":"string","title":"Tab Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TabUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Workspace"],"summary":"Delete Tab","description":"Delete a tab and tear down its underlying run/VM via the existing kill path.","operationId":"delete_tab_v1_workspace_tabs__tab_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"tab_id","in":"path","required":true,"schema":{"type":"string","title":"Tab Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ssh-keys":{"post":{"tags":["SSH Keys"],"summary":"Add Ssh Key","operationId":"add_ssh_key_v1_ssh_keys_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SSHKeyCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["SSH Keys"],"summary":"List Ssh Keys","operationId":"list_ssh_keys_v1_ssh_keys_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ssh-keys/{key_id}":{"delete":{"tags":["SSH Keys"],"summary":"Delete Ssh Key","operationId":"delete_ssh_key_v1_ssh_keys__key_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"key_id","in":"path","required":true,"schema":{"type":"integer","title":"Key Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/creation-status/{session_id}":{"get":{"tags":["VMs"],"summary":"Get Creation Status","operationId":"get_creation_status_v1_vms_creation_status__session_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"operation_id","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"title":"Operation Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/termination-status/{session_id}":{"get":{"tags":["VMs"],"summary":"Get Termination Status","operationId":"get_termination_status_v1_vms_termination_status__session_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms":{"post":{"tags":["VMs"],"summary":"Create Vm","operationId":"create_vm_v1_vms_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"wait","in":"query","required":false,"schema":{"type":"boolean","description":"Wait for VM to be provisioned","default":true,"title":"Wait"},"description":"Wait for VM to be provisioned"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMCreateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["VMs"],"summary":"List Vms","operationId":"list_vms_v1_vms_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/VMInfoResponse"},"title":"Response List Vms V1 Vms Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}":{"patch":{"tags":["VMs"],"summary":"Update Vm","operationId":"update_vm_v1_vms__vm_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["VMs"],"summary":"Get Vm","operationId":"get_vm_v1_vms__vm_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMInfoResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["VMs"],"summary":"Delete Vm","operationId":"delete_vm_v1_vms__vm_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/volumes":{"post":{"tags":["VMs"],"summary":"Mount Vm Volume","operationId":"mount_vm_volume_v1_vms__vm_id__volumes_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"wait","in":"query","required":false,"schema":{"type":"boolean","description":"Wait for mount operation to finish","default":true,"title":"Wait"},"description":"Wait for mount operation to finish"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMVolumeMountRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMMountedVolumeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["VMs"],"summary":"List Vm Volumes","operationId":"list_vm_volumes_v1_vms__vm_id__volumes_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/VMMountedVolumeResponse"},"title":"Response List Vm Volumes V1 Vms  Vm Id  Volumes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/volumes/{volume_id}":{"delete":{"tags":["VMs"],"summary":"Unmount Vm Volume","operationId":"unmount_vm_volume_v1_vms__vm_id__volumes__volume_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"mount_path","in":"query","required":true,"schema":{"type":"string","description":"Mounted absolute path for this volume","title":"Mount Path"},"description":"Mounted absolute path for this volume"},{"name":"wait","in":"query","required":false,"schema":{"type":"boolean","description":"Wait for unmount operation to finish","default":true,"title":"Wait"},"description":"Wait for unmount operation to finish"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/snapshot":{"post":{"tags":["VMs"],"summary":"Snapshot Vm","operationId":"snapshot_vm_v1_vms__vm_id__snapshot_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"wait","in":"query","required":false,"schema":{"type":"boolean","description":"Wait for snapshot creation to finish","default":true,"title":"Wait"},"description":"Wait for snapshot creation to finish"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMSnapshotRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMSnapshotResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/suspend":{"post":{"tags":["VMs"],"summary":"Suspend Vm Endpoint","description":"Explicitly auto-suspend (Tier B) a running VM: snapshot to a managed\nsnapshot, free host resources, and park it as ``suspended``. It is restored\non the next request (share/execute/pty/ssh) only if the session opted into\n``auto_resume``; otherwise resume it explicitly via ``POST\n/vms/{vm_id}/resume``. Requires the auto-suspend feature to be enabled.","operationId":"suspend_vm_endpoint_v1_vms__vm_id__suspend_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/resume":{"post":{"tags":["VMs"],"summary":"Resume Vm Endpoint","description":"Resume a suspended VM from its managed snapshot. Resume mints a fresh\nvm_id, returned as ``vm_id`` in the response.","operationId":"resume_vm_endpoint_v1_vms__vm_id__resume_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"wait","in":"query","required":false,"schema":{"type":"boolean","description":"Wait for the VM to become live","default":true,"title":"Wait"},"description":"Wait for the VM to become live"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/clone":{"post":{"tags":["VMs"],"summary":"Clone Vm","operationId":"clone_vm_v1_vms__vm_id__clone_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"wait","in":"query","required":false,"schema":{"type":"boolean","description":"Wait for clone VM to be provisioned","default":true,"title":"Wait"},"description":"Wait for clone VM to be provisioned"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMCloneRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VMCloneResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vms/{vm_id}/stage-env":{"post":{"tags":["VMs"],"summary":"Stage Env","description":"Stage secret environment variables into a running VM's shell env.\n\nValues are SECRETS: they are shell-escaped and written straight into the\nVM's ``~/.instavm/env.sh`` (sourced by the shell) and the live tmux server.\nThey are NEVER logged, NEVER echoed back, and NEVER persisted to the DB —\nonly the env_NAMES are recorded on the owning Session so the guest-claim\nflow can report ``staged_env_names``. This handler must not log ``body``.\n\nNote: there is no request-body-logging middleware in this app (the audit\nmiddleware records method/path/status only, never the body — see\napp/main.py:audit_request_middleware), so nothing extra needs to be excluded;\nwe simply never log the values here.","operationId":"stage_env_v1_vms__vm_id__stage_env_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vm_id","in":"path","required":true,"schema":{"type":"string","title":"Vm Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StageEnvRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StageEnvResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/volumes":{"post":{"tags":["Volumes"],"summary":"Create Volume Endpoint","operationId":"create_volume_endpoint_v1_volumes_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Volumes"],"summary":"List Volumes Endpoint","operationId":"list_volumes_endpoint_v1_volumes_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"refresh_usage","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Refresh Usage"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/VolumeResponse"},"title":"Response List Volumes Endpoint V1 Volumes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/volumes/{volume_id}":{"get":{"tags":["Volumes"],"summary":"Get Volume Endpoint","operationId":"get_volume_endpoint_v1_volumes__volume_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"refresh_usage","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Refresh Usage"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Volumes"],"summary":"Update Volume Endpoint","operationId":"update_volume_endpoint_v1_volumes__volume_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Volumes"],"summary":"Delete Volume Endpoint","operationId":"delete_volume_endpoint_v1_volumes__volume_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/volumes/{volume_id}/checkpoints":{"post":{"tags":["Volumes"],"summary":"Create Volume Checkpoint Endpoint","operationId":"create_volume_checkpoint_endpoint_v1_volumes__volume_id__checkpoints_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeCheckpointCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeCheckpointResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Volumes"],"summary":"List Volume Checkpoints Endpoint","operationId":"list_volume_checkpoints_endpoint_v1_volumes__volume_id__checkpoints_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/VolumeCheckpointResponse"},"title":"Response List Volume Checkpoints Endpoint V1 Volumes  Volume Id  Checkpoints Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/volumes/{volume_id}/checkpoints/{checkpoint_id}":{"delete":{"tags":["Volumes"],"summary":"Delete Volume Checkpoint Endpoint","operationId":"delete_volume_checkpoint_endpoint_v1_volumes__volume_id__checkpoints__checkpoint_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"checkpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Checkpoint Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/volumes/{volume_id}/files/upload":{"post":{"tags":["Volumes"],"summary":"Upload Volume File Endpoint","operationId":"upload_volume_file_endpoint_v1_volumes__volume_id__files_upload_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_volume_file_endpoint_v1_volumes__volume_id__files_upload_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeFileUploadResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/volumes/{volume_id}/files/download":{"post":{"tags":["Volumes"],"summary":"Download Volume File Endpoint","operationId":"download_volume_file_endpoint_v1_volumes__volume_id__files_download_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeFileDownloadRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VolumeFileDownloadResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/volumes/{volume_id}/files":{"get":{"tags":["Volumes"],"summary":"List Volume Files Endpoint","operationId":"list_volume_files_endpoint_v1_volumes__volume_id__files_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"prefix","in":"query","required":false,"schema":{"type":"string","minLength":0,"default":"","title":"Prefix"}},{"name":"recursive","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Recursive"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":1000,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/VolumeFileListEntryResponse"},"title":"Response List Volume Files Endpoint V1 Volumes  Volume Id  Files Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Volumes"],"summary":"Delete Volume File Endpoint","operationId":"delete_volume_file_endpoint_v1_volumes__volume_id__files_delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"volume_id","in":"path","required":true,"schema":{"type":"string","title":"Volume Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","minLength":1,"title":"Path"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/audit/catalog":{"get":{"tags":["Audit"],"summary":"Audit Catalog","operationId":"audit_catalog_v1_audit_catalog_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditCatalogResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/audit/events":{"get":{"tags":["Audit"],"summary":"List Audit Events","operationId":"list_audit_events_v1_audit_events_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"event_group","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Group"}},{"name":"event_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Type"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"User Id"}},{"name":"vm_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"}},{"name":"session_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cursor"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditEventListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/audit/events/{event_id}":{"get":{"tags":["Audit"],"summary":"Get Audit Event","operationId":"get_audit_event_v1_audit_events__event_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"event_id","in":"path","required":true,"schema":{"type":"string","title":"Event Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditEventResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/endpoints":{"post":{"tags":["Webhooks"],"summary":"Create Endpoint","operationId":"create_endpoint_v1_webhooks_endpoints_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointCreateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Webhooks"],"summary":"List Endpoints","operationId":"list_endpoints_v1_webhooks_endpoints_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/WebhookEndpointResponse"},"title":"Response List Endpoints V1 Webhooks Endpoints Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/endpoints/{endpoint_id}":{"get":{"tags":["Webhooks"],"summary":"Get Endpoint","operationId":"get_endpoint_v1_webhooks_endpoints__endpoint_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"endpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Endpoint Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Webhooks"],"summary":"Patch Endpoint","operationId":"patch_endpoint_v1_webhooks_endpoints__endpoint_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"endpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Endpoint Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Webhooks"],"summary":"Delete Endpoint","operationId":"delete_endpoint_v1_webhooks_endpoints__endpoint_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"endpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Endpoint Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/endpoints/{endpoint_id}/verify":{"post":{"tags":["Webhooks"],"summary":"Verify Endpoint","operationId":"verify_endpoint_v1_webhooks_endpoints__endpoint_id__verify_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"endpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Endpoint Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookVerifyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/endpoints/{endpoint_id}/rotate-secret":{"post":{"tags":["Webhooks"],"summary":"Rotate Secret","operationId":"rotate_secret_v1_webhooks_endpoints__endpoint_id__rotate_secret_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"endpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Endpoint Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSecretRotateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/endpoints/{endpoint_id}/test":{"post":{"tags":["Webhooks"],"summary":"Send Test Event","operationId":"send_test_event_v1_webhooks_endpoints__endpoint_id__test_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"endpoint_id","in":"path","required":true,"schema":{"type":"string","title":"Endpoint Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookDeliveryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/deliveries":{"get":{"tags":["Webhooks"],"summary":"List Deliveries","operationId":"list_deliveries_v1_webhooks_deliveries_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"endpoint_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endpoint Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"event_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Type"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cursor"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookDeliveryListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/deliveries/{delivery_id}/replay":{"post":{"tags":["Webhooks"],"summary":"Replay Webhook Delivery","operationId":"replay_webhook_delivery_v1_webhooks_deliveries__delivery_id__replay_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"delivery_id","in":"path","required":true,"schema":{"type":"string","title":"Delivery Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookDeliveryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/integrations/users/provision":{"post":{"tags":["Integrations"],"summary":"Provision Integration User","operationId":"provision_integration_user_v1_integrations_users_provision_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":1,"maxLength":255,"title":"Idempotency-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProvisionUserRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ProvisionReadyResponse"},{"$ref":"#/components/schemas/LinkRequiredResponse"}],"title":"Response Provision Integration User V1 Integrations Users Provision Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/integrations/users/token":{"post":{"tags":["Integrations"],"summary":"Exchange Integration User Token","operationId":"exchange_integration_user_token_v1_integrations_users_token_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenExchangeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenExchangeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/integrations/vault/sealed-field":{"post":{"tags":["Integrations"],"summary":"Seal Integration Vault Field","operationId":"seal_integration_vault_field_v1_integrations_vault_sealed_field_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SealedVaultFieldRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SealedVaultFieldResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/webhooks/resend":{"post":{"tags":["Webhooks"],"summary":"Resend Webhook","operationId":"resend_webhook_v1_webhooks_resend_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/vaults/catalog":{"get":{"tags":["Vaults","vaults"],"summary":"Get Catalog","description":"Return prebuilt service templates (auth-type, host, suggested key).","operationId":"get_catalog_v1_vaults_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Get Catalog V1 Vaults Catalog Get"}}}}}}},"/v1/vaults":{"post":{"tags":["Vaults","vaults"],"summary":"Create Vault","operationId":"create_vault_v1_vaults_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__agents__api__routers__vaults__VaultCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Vaults","vaults"],"summary":"List Vaults","operationId":"list_vaults_v1_vaults_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}":{"get":{"tags":["Vaults","vaults"],"summary":"Get Vault","operationId":"get_vault_v1_vaults__vault_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Vaults","vaults"],"summary":"Update Vault","operationId":"update_vault_v1_vaults__vault_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__agents__api__routers__vaults__VaultUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Vaults","vaults"],"summary":"Delete Vault","operationId":"delete_vault_v1_vaults__vault_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}/discover":{"get":{"tags":["Vaults","vaults"],"summary":"Discover Vault","operationId":"discover_vault_v1_vaults__vault_id__discover_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}/credentials":{"post":{"tags":["Vaults","vaults"],"summary":"Store Credential","operationId":"store_credential_v1_vaults__vault_id__credentials_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__agents__api__routers__vaults__CredentialCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CredentialMeta"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Vaults","vaults"],"summary":"List Credentials","operationId":"list_credentials_v1_vaults__vault_id__credentials_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}/credentials/{credential_id}":{"get":{"tags":["Vaults","vaults"],"summary":"Get Credential","operationId":"get_credential_v1_vaults__vault_id__credentials__credential_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"credential_id","in":"path","required":true,"schema":{"type":"string","title":"Credential Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Vaults","vaults"],"summary":"Update Credential","operationId":"update_credential_v1_vaults__vault_id__credentials__credential_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"credential_id","in":"path","required":true,"schema":{"type":"string","title":"Credential Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CredentialUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Vaults","vaults"],"summary":"Delete Credential","operationId":"delete_credential_v1_vaults__vault_id__credentials__credential_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"credential_id","in":"path","required":true,"schema":{"type":"string","title":"Credential Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}/credentials/{credential_id}/rotate":{"post":{"tags":["Vaults","vaults"],"summary":"Rotate Credential","operationId":"rotate_credential_v1_vaults__vault_id__credentials__credential_id__rotate_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"credential_id","in":"path","required":true,"schema":{"type":"string","title":"Credential Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CredentialRotate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}/services":{"post":{"tags":["Vaults","vaults"],"summary":"Create Service","operationId":"create_service_v1_vaults__vault_id__services_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Vaults","vaults"],"summary":"List Services","operationId":"list_services_v1_vaults__vault_id__services_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}/services/{service_id}":{"patch":{"tags":["Vaults","vaults"],"summary":"Update Service","operationId":"update_service_v1_vaults__vault_id__services__service_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"service_id","in":"path","required":true,"schema":{"type":"string","title":"Service Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Vaults","vaults"],"summary":"Delete Service","operationId":"delete_service_v1_vaults__vault_id__services__service_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"service_id","in":"path","required":true,"schema":{"type":"string","title":"Service Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}/services:from_template":{"post":{"tags":["Vaults","vaults"],"summary":"Create Services From Template","operationId":"create_services_from_template_v1_vaults__vault_id__services_from_template_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServicesFromTemplates"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vaults/{vault_id}/request-logs":{"get":{"tags":["Vaults","vaults"],"summary":"List Request Logs","operationId":"list_request_logs_v1_vaults__vault_id__request_logs_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"before","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Before"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agents":{"post":{"tags":["Managed Agents","agents"],"summary":"Create Agent","operationId":"create_agent_v1_agents_api_agents_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Managed Agents","agents"],"summary":"List Agents","operationId":"list_agents_v1_agents_api_agents_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"page","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Page"}},{"name":"include_archived","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Archived"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agents/{agent_id}":{"get":{"tags":["Managed Agents","agents"],"summary":"Get Agent","operationId":"get_agent_v1_agents_api_agents__agent_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Managed Agents","agents"],"summary":"Update Agent","operationId":"update_agent_v1_agents_api_agents__agent_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Managed Agents","agents"],"summary":"Update Agent","operationId":"update_agent_v1_agents_api_agents__agent_id__post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agents/{agent_id}/archive":{"post":{"tags":["Managed Agents","agents"],"summary":"Archive Agent","operationId":"archive_agent_v1_agents_api_agents__agent_id__archive_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agents/{agent_id}/versions":{"get":{"tags":["Managed Agents","agents"],"summary":"List Versions","operationId":"list_versions_v1_agents_api_agents__agent_id__versions_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AgentVersionResponse"},"title":"Response List Versions V1 Agents Api Agents  Agent Id  Versions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions":{"post":{"tags":["Agent Sessions","sessions"],"summary":"Create Session","operationId":"create_session_v1_agents_api_sessions_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Agent Sessions","sessions"],"summary":"List Sessions","operationId":"list_sessions_v1_agents_api_sessions_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"page","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Page"}},{"name":"include_archived","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Archived"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}":{"get":{"tags":["Agent Sessions","sessions"],"summary":"Get Session Endpoint","operationId":"get_session_endpoint_v1_agents_api_sessions__session_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Agent Sessions","sessions"],"summary":"Update Session","operationId":"update_session_v1_agents_api_sessions__session_id__put","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Agent Sessions","sessions"],"summary":"Delete Session","operationId":"delete_session_v1_agents_api_sessions__session_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}/archive":{"post":{"tags":["Agent Sessions","sessions"],"summary":"Archive Session","operationId":"archive_session_v1_agents_api_sessions__session_id__archive_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}/transition":{"post":{"tags":["Agent Sessions","sessions"],"summary":"Transition Session","operationId":"transition_session_v1_agents_api_sessions__session_id__transition_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionTransition"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agents/{agent_id}/runs":{"get":{"tags":["Agent Sessions","sessions"],"summary":"List Runs","description":"Paginated run (session) history for an agent with duration and token usage.","operationId":"list_runs_v1_agents_api_agents__agent_id__runs_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agents/{agent_id}/runs/stats":{"get":{"tags":["Agent Sessions","sessions"],"summary":"Get Run Stats","description":"Aggregated run statistics for an agent.","operationId":"get_run_stats_v1_agents_api_agents__agent_id__runs_stats_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agent-usage":{"get":{"tags":["Agent Sessions","sessions"],"summary":"Get Agent Usage","description":"Get current agent run usage for the authenticated user.","operationId":"get_agent_usage_v1_agents_api_agent_usage_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}/events":{"post":{"tags":["Agent Events","events"],"summary":"Send Event","operationId":"send_event_v1_agents_api_sessions__session_id__events_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventSend"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Agent Events","events"],"summary":"List Session Events","description":"List events for a session with cursor-based pagination.","operationId":"list_session_events_v1_agents_api_sessions__session_id__events_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"after_sequence","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"After Sequence"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/environments":{"post":{"tags":["Agent Environments","environments"],"summary":"Create Environment","operationId":"create_environment_v1_agents_api_environments_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Agent Environments","environments"],"summary":"List Environments","operationId":"list_environments_v1_agents_api_environments_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"page","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Page"}},{"name":"include_archived","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Archived"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/environments/{environment_id}":{"get":{"tags":["Agent Environments","environments"],"summary":"Get Environment","operationId":"get_environment_v1_agents_api_environments__environment_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"environment_id","in":"path","required":true,"schema":{"type":"string","title":"Environment Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Agent Environments","environments"],"summary":"Update Environment","operationId":"update_environment_v1_agents_api_environments__environment_id__put","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"environment_id","in":"path","required":true,"schema":{"type":"string","title":"Environment Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Agent Environments","environments"],"summary":"Delete Environment","operationId":"delete_environment_v1_agents_api_environments__environment_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"environment_id","in":"path","required":true,"schema":{"type":"string","title":"Environment Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/environments/{environment_id}/archive":{"post":{"tags":["Agent Environments","environments"],"summary":"Archive Environment","operationId":"archive_environment_v1_agents_api_environments__environment_id__archive_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"environment_id","in":"path","required":true,"schema":{"type":"string","title":"Environment Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agent-builder/prompt":{"post":{"tags":["Agent Builder","agent-builder"],"summary":"Builder Prompt","description":"Parse a natural-language agent description and optionally deploy it.","operationId":"builder_prompt_v1_agents_api_agent_builder_prompt_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BuilderRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BuilderResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/agents/{agent_id}/invoke":{"post":{"tags":["Agent Triggers","triggers"],"summary":"Invoke Agent","description":"Fire a trigger for ``agent_id``. Returns ``{session_id, trigger_id}``.","operationId":"invoke_agent_v1_agents_api_agents__agent_id__invoke_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"trigger_type","in":"query","required":false,"schema":{"type":"string","default":"manual","title":"Trigger Type"}},{"name":"trigger_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trigger Id"}},{"name":"X-Trigger-Signature","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Trigger-Signature"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","title":"Response Invoke Agent V1 Agents Api Agents  Agent Id  Invoke Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/vaults":{"post":{"tags":["Agent Vaults","vaults"],"summary":"Create Vault","operationId":"create_vault_v1_agents_api_vaults_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__agents__api__routers__vaults__VaultCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Agent Vaults","vaults"],"summary":"List Vaults","operationId":"list_vaults_v1_agents_api_vaults_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/vaults/{vault_id}/credentials":{"post":{"tags":["Agent Vaults","vaults"],"summary":"Store Credential","operationId":"store_credential_v1_agents_api_vaults__vault_id__credentials_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__agents__api__routers__vaults__CredentialCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CredentialMeta"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Agent Vaults","vaults"],"summary":"List Credentials","operationId":"list_credentials_v1_agents_api_vaults__vault_id__credentials_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/vaults/{vault_id}/credentials/{credential_id}":{"delete":{"tags":["Agent Vaults","vaults"],"summary":"Delete Credential","operationId":"delete_credential_v1_agents_api_vaults__vault_id__credentials__credential_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"credential_id","in":"path","required":true,"schema":{"type":"string","title":"Credential Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/vaults/{vault_id}":{"get":{"tags":["Agent Vaults","vaults"],"summary":"Get Vault","operationId":"get_vault_v1_agents_api_vaults__vault_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Agent Vaults","vaults"],"summary":"Update Vault","operationId":"update_vault_v1_agents_api_vaults__vault_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__agents__api__routers__vaults__VaultUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VaultResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Agent Vaults","vaults"],"summary":"Delete Vault","operationId":"delete_vault_v1_agents_api_vaults__vault_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"vault_id","in":"path","required":true,"schema":{"type":"string","title":"Vault Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/skills/install":{"post":{"tags":["Agent Skills","skills"],"summary":"Install Skills","description":"Install skills from a GitHub repository containing SKILL.md files.","operationId":"install_skills_v1_agents_api_skills_install_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillInstall"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SkillResponse"},"title":"Response Install Skills V1 Agents Api Skills Install Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/skills":{"post":{"tags":["Agent Skills","skills"],"summary":"Create Skill","operationId":"create_skill_v1_agents_api_skills_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Agent Skills","skills"],"summary":"List Skills","operationId":"list_skills_v1_agents_api_skills_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/skills/{skill_id}":{"get":{"tags":["Agent Skills","skills"],"summary":"Get Skill","operationId":"get_skill_v1_agents_api_skills__skill_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Agent Skills","skills"],"summary":"Update Skill","operationId":"update_skill_v1_agents_api_skills__skill_id__patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Agent Skills","skills"],"summary":"Delete Skill","operationId":"delete_skill_v1_agents_api_skills__skill_id__delete","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}/config":{"get":{"tags":["Agent Internal","internal"],"summary":"Get Session Config","description":"Return agent config, skills, environment for the instagent runner.","operationId":"get_session_config_v1_agents_api_sessions__session_id__config_get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}/events/internal":{"post":{"tags":["Agent Internal","internal"],"summary":"Ingest Internal Event","description":"Store event from instagent runner (agent messages, tool use/results).","operationId":"ingest_internal_event_v1_agents_api_sessions__session_id__events_internal_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InternalEvent"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}/status":{"patch":{"tags":["Agent Internal","internal"],"summary":"Update Session Status","description":"Runner updates session status (running, idle, error, terminated).","operationId":"update_session_status_v1_agents_api_sessions__session_id__status_patch","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionStatusUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}/approvals":{"post":{"tags":["Agent Internal","internal"],"summary":"Create Approval","description":"Runner requests approval for a tool call.","operationId":"create_approval_v1_agents_api_sessions__session_id__approvals_post","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApprovalRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents-api/sessions/{session_id}/approvals/{approval_id}":{"get":{"tags":["Agent Internal","internal"],"summary":"Get Approval","description":"Runner polls for approval resolution.","operationId":"get_approval_v1_agents_api_sessions__session_id__approvals__approval_id__get","security":[{"OAuth2PasswordBearer":[]}],"parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"approval_id","in":"path","required":true,"schema":{"type":"string","title":"Approval Id"}},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"APIKeyRecordCreate":{"properties":{"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","title":"APIKeyRecordCreate"},"APIKeyRecordRead":{"properties":{"id":{"type":"integer","title":"Id"},"key_prefix":{"type":"string","title":"Key Prefix"},"user_id":{"type":"integer","title":"User Id"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"full_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Full Key"}},"type":"object","required":["id","key_prefix","user_id","status","created_at","expires_at","description"],"title":"APIKeyRecordRead"},"AgentCreate":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"model":{"$ref":"#/components/schemas/ModelConfig"},"system_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Prompt"},"tools":{"items":{},"type":"array","title":"Tools"},"mcp_servers":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Mcp Servers"},"skills":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Skills"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"input_guardrails":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Input Guardrails"},"output_guardrails":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Output Guardrails"},"output_schema":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Output Schema"},"handoffs":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Handoffs"},"hooks":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Hooks"},"instruction_template":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instruction Template"},"triggers":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Triggers"}},"type":"object","required":["name","model"],"title":"AgentCreate"},"AgentListResponse":{"properties":{"data":{"items":{"$ref":"#/components/schemas/AgentResponse"},"type":"array","title":"Data"},"next_page":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Page"}},"type":"object","required":["data","next_page"],"title":"AgentListResponse"},"AgentModelResponse":{"properties":{"id":{"type":"string","title":"Id"},"speed":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Speed"}},"type":"object","required":["id"],"title":"AgentModelResponse"},"AgentResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"model":{"$ref":"#/components/schemas/AgentModelResponse"},"system_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Prompt"},"tools":{"items":{},"type":"array","title":"Tools"},"mcp_servers":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Mcp Servers"},"skills":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Skills"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"input_guardrails":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Input Guardrails"},"output_guardrails":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Output Guardrails"},"output_schema":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Output Schema"},"handoffs":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Handoffs"},"hooks":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Hooks"},"instruction_template":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instruction Template"},"triggers":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Triggers"},"version":{"type":"integer","title":"Version"},"archived":{"type":"boolean","title":"Archived"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","name","description","model","system_prompt","tools","mcp_servers","skills","metadata","version","archived","created_at","updated_at"],"title":"AgentResponse"},"AgentUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"model":{"anyOf":[{"$ref":"#/components/schemas/ModelConfig"},{"type":"null"}]},"system_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Prompt"},"tools":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Tools"},"mcp_servers":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Mcp Servers"},"skills":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Skills"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"input_guardrails":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Input Guardrails"},"output_guardrails":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Output Guardrails"},"output_schema":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Output Schema"},"handoffs":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Handoffs"},"hooks":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Hooks"},"instruction_template":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instruction Template"},"triggers":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Triggers"},"version":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Version"}},"type":"object","title":"AgentUpdate"},"AgentVersionResponse":{"properties":{"id":{"type":"string","title":"Id"},"agent_id":{"type":"string","title":"Agent Id"},"version":{"type":"integer","title":"Version"},"snapshot":{"type":"object","title":"Snapshot"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","agent_id","version","snapshot","created_at"],"title":"AgentVersionResponse"},"AppURLResponse":{"properties":{"url":{"type":"string","title":"Url"},"direct_url":{"type":"string","title":"Direct Url"},"vm_ip":{"type":"string","title":"Vm Ip"},"port":{"type":"integer","title":"Port"},"vm_id":{"type":"string","title":"Vm Id"},"session_id":{"type":"string","title":"Session Id"},"status":{"type":"string","title":"Status"},"expires_in_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Expires In Seconds"}},"type":"object","required":["url","direct_url","vm_ip","port","vm_id","session_id","status"],"title":"AppURLResponse","description":"Response model for app URL generation."},"ApprovalRequest":{"properties":{"tool_call_id":{"type":"string","title":"Tool Call Id"},"tool_name":{"type":"string","title":"Tool Name"},"tool_arguments":{"type":"object","title":"Tool Arguments","default":{}},"context":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Context"}},"type":"object","required":["tool_call_id","tool_name"],"title":"ApprovalRequest"},"AuditCatalogResponse":{"properties":{"catalog":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","title":"Catalog"}},"type":"object","title":"AuditCatalogResponse"},"AuditEventListResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/AuditEventResponse"},"type":"array","title":"Items"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["items"],"title":"AuditEventListResponse"},"AuditEventResponse":{"properties":{"id":{"type":"string","title":"Id"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"User Id"},"actor_type":{"type":"string","title":"Actor Type"},"actor_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor Id"},"source":{"type":"string","title":"Source"},"event_group":{"type":"string","title":"Event Group"},"event_type":{"type":"string","title":"Event Type"},"status":{"type":"string","title":"Status"},"resource_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource Type"},"resource_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resource Id"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"},"task_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Task Id"},"request_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Request Id"},"correlation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Correlation Id"},"http_method":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Http Method"},"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"},"http_status":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Http Status"},"latency_ms":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Latency Ms"},"ip_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip Address"},"user_agent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Agent"},"node_ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Ip"},"worker_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Worker Id"},"event_payload":{"anyOf":[{},{"type":"null"}],"title":"Event Payload"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"}},"type":"object","required":["id","created_at","actor_type","source","event_group","event_type","status"],"title":"AuditEventResponse"},"BackupCodeRequest":{"properties":{"backup_code":{"type":"string","maxLength":14,"minLength":12,"title":"Backup Code","description":"Backup code in format XXXX-XXXX-XXXX"}},"type":"object","required":["backup_code"],"title":"BackupCodeRequest"},"BackupCodeStatusResponse":{"properties":{"total_codes":{"type":"integer","title":"Total Codes"},"used_codes":{"type":"integer","title":"Used Codes"},"unused_codes":{"type":"integer","title":"Unused Codes"},"has_backup_codes":{"type":"boolean","title":"Has Backup Codes"},"last_generated":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Generated"}},"type":"object","required":["total_codes","used_codes","unused_codes","has_backup_codes","last_generated"],"title":"BackupCodeStatusResponse"},"BackupCodesResponse":{"properties":{"backup_codes":{"items":{"type":"string"},"type":"array","title":"Backup Codes"},"generated_at":{"type":"string","format":"date-time","title":"Generated At"},"count":{"type":"integer","title":"Count"},"message":{"type":"string","title":"Message"}},"type":"object","required":["backup_codes","generated_at","count","message"],"title":"BackupCodesResponse"},"Body_login_v1_login_post":{"properties":{"grant_type":{"anyOf":[{"type":"string","pattern":"^password$"},{"type":"null"}],"title":"Grant Type"},"username":{"type":"string","title":"Username"},"password":{"type":"string","title":"Password"},"scope":{"type":"string","title":"Scope","default":""},"client_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client Id"},"client_secret":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client Secret"}},"type":"object","required":["username","password"],"title":"Body_login_v1_login_post"},"Body_upload_file_endpoint_upload_post":{"properties":{"file":{"type":"string","format":"binary","title":"File"},"remote_path":{"type":"string","title":"Remote Path"},"session_id":{"type":"string","title":"Session Id"},"recursive":{"type":"boolean","title":"Recursive","default":false},"api_key":{"type":"string","title":"Api Key"}},"type":"object","required":["file","remote_path","session_id"],"title":"Body_upload_file_endpoint_upload_post"},"Body_upload_file_endpoint_v1_upload_post":{"properties":{"file":{"type":"string","format":"binary","title":"File"},"remote_path":{"type":"string","title":"Remote Path"},"session_id":{"type":"string","title":"Session Id"},"recursive":{"type":"boolean","title":"Recursive","default":false},"api_key":{"type":"string","title":"Api Key"}},"type":"object","required":["file","remote_path","session_id"],"title":"Body_upload_file_endpoint_v1_upload_post"},"Body_upload_volume_file_endpoint_v1_volumes__volume_id__files_upload_post":{"properties":{"file":{"type":"string","format":"binary","title":"File"},"path":{"type":"string","title":"Path"},"overwrite":{"type":"boolean","title":"Overwrite","default":false}},"type":"object","required":["file","path"],"title":"Body_upload_volume_file_endpoint_v1_volumes__volume_id__files_upload_post"},"BrowserAuthTestRequest":{"properties":{"api_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"},"test_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Test Message","default":"test"}},"type":"object","title":"BrowserAuthTestRequest","description":"Request schema for testing browser API authentication"},"BrowserAuthTestResponse":{"properties":{"message":{"type":"string","title":"Message"},"status":{"type":"string","title":"Status"},"usage_info":{"$ref":"#/components/schemas/BrowserUsageResponse"}},"type":"object","required":["message","status","usage_info"],"title":"BrowserAuthTestResponse","description":"Response schema for auth test"},"BrowserClickRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"element_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Element Ref"},"expect":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Expect"},"coordinates":{"anyOf":[{"additionalProperties":{"type":"number"},"type":"object"},{"type":"null"}],"title":"Coordinates"},"observation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Observation Id"},"coordinate_space":{"type":"string","enum":["viewport_css_pixels","normalized_1000"],"title":"Coordinate Space","default":"viewport_css_pixels"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"force":{"type":"boolean","title":"Force","default":false},"timeout":{"type":"integer","maximum":30000.0,"minimum":1.0,"title":"Timeout","default":15000}},"type":"object","title":"BrowserClickRequest","description":"Exactly one target; coordinate clicks require a viewport observation."},"BrowserContentRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"include_interactive":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Include Interactive","default":true},"include_anchors":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Include Anchors","default":true},"max_anchors":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Anchors","default":50}},"type":"object","title":"BrowserContentRequest","description":"Request schema for extracting LLM-friendly content"},"BrowserContentResponse":{"properties":{"http_status":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Http Status"},"retry_after":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Retry After"},"challenge_action":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Challenge Action"},"targets_truncated":{"type":"boolean","title":"Targets Truncated","default":false},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"readable_content":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Readable Content"},"interactive_elements":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Interactive Elements"},"content_anchors":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Content Anchors"},"execution_time":{"type":"number","title":"Execution Time"},"session_id":{"type":"string","title":"Session Id"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"},"usage_info":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Usage Info"}},"type":"object","required":["execution_time","session_id"],"title":"BrowserContentResponse"},"BrowserCreditsAllocation":{"properties":{"allocated":{"type":"integer","title":"Allocated","description":"Total browser credits allocated for this period"},"used":{"type":"integer","title":"Used","description":"Browser credits consumed so far"},"remaining":{"type":"integer","title":"Remaining","description":"Browser credits remaining in current period"}},"type":"object","required":["allocated","used","remaining"],"title":"BrowserCreditsAllocation","description":"Browser automation credit allocation"},"BrowserExtractRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"attributes":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Attributes"}},"type":"object","title":"BrowserExtractRequest","description":"Request schema for extracting DOM elements"},"BrowserExtractResponse":{"properties":{"elements":{"items":{"type":"object"},"type":"array","title":"Elements"},"count":{"type":"integer","title":"Count"},"execution_time":{"type":"number","title":"Execution Time"},"session_id":{"type":"string","title":"Session Id"}},"type":"object","required":["elements","count","execution_time","session_id"],"title":"BrowserExtractResponse","description":"Response schema for DOM extraction"},"BrowserFillRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"element_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Element Ref"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"timeout":{"type":"integer","maximum":30000.0,"minimum":1.0,"title":"Timeout","default":15000},"value":{"type":"string","title":"Value"}},"type":"object","required":["value"],"title":"BrowserFillRequest"},"BrowserInteractionResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"},"execution_time":{"type":"number","title":"Execution Time"},"session_id":{"type":"string","title":"Session Id"},"data":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Data"}},"type":"object","required":["success","execution_time","session_id"],"title":"BrowserInteractionResponse","description":"Generic response for browser interactions"},"BrowserKeyPressRequest":{"properties":{"session_id":{"type":"string","title":"Session Id"},"key":{"type":"string","maxLength":80,"minLength":1,"title":"Key"},"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"element_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Element Ref"},"timeout":{"type":"integer","maximum":30000.0,"minimum":1.0,"title":"Timeout","default":15000}},"type":"object","required":["session_id","key"],"title":"BrowserKeyPressRequest"},"BrowserNavigateRequest":{"properties":{"url":{"type":"string","title":"Url"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"wait_timeout":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Wait Timeout","default":30000}},"type":"object","required":["url"],"title":"BrowserNavigateRequest","description":"Request schema for navigating to a URL"},"BrowserRenderRequest":{"properties":{"api_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"},"html":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Html"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Width","default":1920},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Height","default":1080},"wait_for_selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Wait For Selector"},"wait_timeout":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Wait Timeout","default":30000},"full_page":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Full Page","default":true},"clip":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Clip"},"format":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Format","default":"png"},"quality":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quality"},"actions":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Actions"},"return_html":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Return Html","default":false},"return_screenshot":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Return Screenshot","default":true}},"type":"object","title":"BrowserRenderRequest","description":"Request schema for browser rendering operations"},"BrowserRenderResponse":{"properties":{"screenshot":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Screenshot"},"html":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Html"},"dom_elements":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Dom Elements"},"execution_time":{"type":"number","title":"Execution Time"},"status":{"type":"string","title":"Status"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"},"usage_info":{"$ref":"#/components/schemas/BrowserUsageResponse"}},"type":"object","required":["execution_time","status","usage_info"],"title":"BrowserRenderResponse","description":"Response schema for browser render operations"},"BrowserScreenshotRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"full_page":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Full Page","default":true},"clip":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Clip"},"format":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Format","default":"png"},"quality":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quality"}},"type":"object","title":"BrowserScreenshotRequest","description":"Request schema for taking screenshots"},"BrowserScreenshotResponse":{"properties":{"observation":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Observation"},"screenshot":{"type":"string","title":"Screenshot"},"format":{"type":"string","title":"Format"},"execution_time":{"type":"number","title":"Execution Time"},"session_id":{"type":"string","title":"Session Id"},"usage_info":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Usage Info"}},"type":"object","required":["screenshot","format","execution_time","session_id"],"title":"BrowserScreenshotResponse"},"BrowserScrollRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"element_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Element Ref"},"x":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"X"},"y":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Y"},"delta_x":{"anyOf":[{"type":"integer","maximum":100000.0,"minimum":-100000.0},{"type":"null"}],"title":"Delta X"},"delta_y":{"anyOf":[{"type":"integer","maximum":100000.0,"minimum":-100000.0},{"type":"null"}],"title":"Delta Y"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"timeout":{"type":"integer","maximum":30000.0,"minimum":1.0,"title":"Timeout","default":15000}},"type":"object","title":"BrowserScrollRequest","description":"Target alone reveals it; x/y scroll to a position; delta_x/y scroll by pixels.\n\nA target with deltas scrolls that container; deltas alone scroll the page."},"BrowserSessionCreateRequest":{"properties":{"viewport_width":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Viewport Width","default":1920},"viewport_height":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Viewport Height","default":1080},"user_agent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Agent"}},"type":"object","title":"BrowserSessionCreateRequest","description":"Request schema for creating a browser session"},"BrowserSessionListResponse":{"properties":{"sessions":{"items":{"$ref":"#/components/schemas/BrowserSessionResponse"},"type":"array","title":"Sessions"},"total_count":{"type":"integer","title":"Total Count"}},"type":"object","required":["sessions","total_count"],"title":"BrowserSessionListResponse","description":"Response schema for listing browser sessions"},"BrowserSessionResponse":{"properties":{"session_id":{"type":"string","title":"Session Id"},"status":{"type":"string","title":"Status"},"viewport_width":{"type":"integer","title":"Viewport Width"},"viewport_height":{"type":"integer","title":"Viewport Height"},"user_agent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Agent"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"last_activity":{"type":"string","format":"date-time","title":"Last Activity"},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["session_id","status","viewport_width","viewport_height","user_agent","created_at","last_activity","expires_at"],"title":"BrowserSessionResponse","description":"Response schema for browser session information"},"BrowserTargetRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"element_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Element Ref"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"timeout":{"type":"integer","maximum":30000.0,"minimum":1.0,"title":"Timeout","default":15000}},"type":"object","title":"BrowserTargetRequest","description":"Exactly one current observed reference or unique selector."},"BrowserTypeRequest":{"properties":{"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"element_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Element Ref"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"timeout":{"type":"integer","maximum":30000.0,"minimum":1.0,"title":"Timeout","default":15000},"text":{"type":"string","title":"Text"},"delay":{"anyOf":[{"type":"integer","maximum":1000.0,"minimum":0.0},{"type":"null"}],"title":"Delay","default":100},"clear_first":{"type":"boolean","title":"Clear First","default":true}},"type":"object","required":["text"],"title":"BrowserTypeRequest"},"BrowserUsageResponse":{"properties":{"total_requests":{"type":"integer","title":"Total Requests"},"remaining_quota":{"type":"integer","title":"Remaining Quota"},"quota_limit":{"type":"integer","title":"Quota Limit"},"current_month_usage":{"type":"integer","title":"Current Month Usage"},"credits_consumed":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Credits Consumed"},"browser_credits_remaining":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Browser Credits Remaining"}},"type":"object","required":["total_requests","remaining_quota","quota_limit","current_month_usage"],"title":"BrowserUsageResponse","description":"Response schema showing user's browser API usage"},"BrowserWaitRequest":{"properties":{"condition":{"type":"string","title":"Condition"},"selector":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Selector"},"timeout":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Timeout","default":30000},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},"type":"object","required":["condition"],"title":"BrowserWaitRequest","description":"Request schema for waiting for conditions"},"BuilderRequest":{"properties":{"prompt":{"type":"string","minLength":3,"title":"Prompt"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model"},"create":{"type":"boolean","title":"Create","default":false},"dry_run_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dry Run Prompt"},"context":{"anyOf":[{"items":{"additionalProperties":{"type":"string"},"type":"object"},"type":"array"},{"type":"null"}],"title":"Context","description":"Q&A context from clarifying questions"},"skip_clarification":{"type":"boolean","title":"Skip Clarification","description":"Skip the clarification step","default":false}},"type":"object","required":["prompt"],"title":"BuilderRequest"},"BuilderResponse":{"properties":{"config":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Config"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"environment_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment Id"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"questions":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Questions"}},"type":"object","title":"BuilderResponse"},"CLIAuthApproveRequest":{"properties":{"pairing_id":{"type":"string","maxLength":128,"minLength":1,"title":"Pairing Id"}},"type":"object","required":["pairing_id"],"title":"CLIAuthApproveRequest"},"CLIAuthApproveResponse":{"properties":{"code":{"type":"string","title":"Code"},"redirect_uri":{"type":"string","title":"Redirect Uri"},"state":{"type":"string","title":"State"}},"type":"object","required":["code","redirect_uri","state"],"title":"CLIAuthApproveResponse"},"CLIAuthExchangeRequest":{"properties":{"pairing_id":{"type":"string","maxLength":128,"minLength":1,"title":"Pairing Id"},"code":{"type":"string","maxLength":128,"minLength":1,"title":"Code"},"code_verifier":{"type":"string","maxLength":128,"minLength":43,"title":"Code Verifier"}},"type":"object","required":["pairing_id","code","code_verifier"],"title":"CLIAuthExchangeRequest"},"CLIAuthExchangeResponse":{"properties":{"api_key":{"type":"string","title":"Api Key"},"expires_at":{"type":"string","title":"Expires At"},"user":{"$ref":"#/components/schemas/CLIAuthUser"}},"type":"object","required":["api_key","expires_at","user"],"title":"CLIAuthExchangeResponse"},"CLIAuthStartRequest":{"properties":{"state":{"type":"string","maxLength":512,"minLength":1,"title":"State"},"code_challenge":{"type":"string","maxLength":128,"minLength":43,"title":"Code Challenge"},"code_challenge_method":{"type":"string","title":"Code Challenge Method"},"redirect_uri":{"type":"string","maxLength":512,"minLength":1,"title":"Redirect Uri"},"cli_version":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Cli Version"},"hostname":{"anyOf":[{"type":"string","maxLength":255},{"type":"null"}],"title":"Hostname"}},"type":"object","required":["state","code_challenge","code_challenge_method","redirect_uri"],"title":"CLIAuthStartRequest"},"CLIAuthStartResponse":{"properties":{"pairing_id":{"type":"string","title":"Pairing Id"},"login_url":{"type":"string","title":"Login Url"}},"type":"object","required":["pairing_id","login_url"],"title":"CLIAuthStartResponse"},"CLIAuthUser":{"properties":{"id":{"type":"string","title":"Id"},"email":{"type":"string","title":"Email"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"}},"type":"object","required":["id","email"],"title":"CLIAuthUser"},"CancelSubscriptionRequest":{"properties":{"at_period_end":{"type":"boolean","title":"At Period End","description":"Whether to cancel at period end or immediately","default":true}},"type":"object","title":"CancelSubscriptionRequest","description":"Request model for canceling subscription."},"ChangeSubscriptionPlanRequest":{"properties":{"new_plan_name":{"type":"string","title":"New Plan Name","description":"Name of the new subscription plan"},"billing_cycle":{"anyOf":[{"type":"string","pattern":"^(monthly|annual)$"},{"type":"null"}],"title":"Billing Cycle","description":"New billing cycle"},"payment_method_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Payment Method Id","description":"Stripe payment method ID (required when upgrading from free plan)"},"promotion_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Promotion Code","description":"Optional Stripe promotion code (e.g. 'GODFATHER50')"}},"type":"object","required":["new_plan_name"],"title":"ChangeSubscriptionPlanRequest","description":"Request model for changing subscription plan."},"ClusterHealthResponse":{"properties":{"status":{"type":"string","title":"Status"},"timestamp":{"type":"string","title":"Timestamp"},"node_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Address"},"multinode_enabled":{"type":"boolean","title":"Multinode Enabled"},"cluster":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Cluster"},"nodes":{"anyOf":[{"items":{"$ref":"#/components/schemas/NodeInfo"},"type":"array"},{"type":"null"}],"title":"Nodes"}},"type":"object","required":["status","timestamp","multinode_enabled"],"title":"ClusterHealthResponse"},"CommandRequest":{"properties":{"command":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Command"},"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"},"api_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Language","default":"python"},"timeout":{"type":"integer","maximum":600.0,"minimum":1.0,"title":"Timeout","default":60},"vault_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Vault Ids"}},"type":"object","title":"CommandRequest"},"CompleteVerificationRequest":{"properties":{"temp_token":{"type":"string","title":"Temp Token"}},"type":"object","required":["temp_token"],"title":"CompleteVerificationRequest"},"ConfirmSubscriptionRequest":{"properties":{"payment_intent_id":{"type":"string","title":"Payment Intent Id","description":"Stripe payment intent ID"},"subscription_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Subscription Id","description":"Subscription ID for verification"}},"type":"object","required":["payment_intent_id"],"title":"ConfirmSubscriptionRequest","description":"Request model for confirming a subscription payment."},"ContentBlock":{"properties":{"type":{"type":"string","title":"Type"},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text"},"source":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Source"},"document":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Document"},"file_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Id"}},"type":"object","required":["type"],"title":"ContentBlock"},"CreatePaymentIntentRequest":{"properties":{"amount":{"type":"integer","title":"Amount"},"currency":{"type":"string","title":"Currency","default":"usd"},"payment_method_id":{"type":"string","title":"Payment Method Id"},"confirm":{"type":"boolean","title":"Confirm","default":false}},"type":"object","required":["amount"],"title":"CreatePaymentIntentRequest","description":"Request model for creating a payment intent."},"CreateSessionRequest":{"properties":{"api_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"},"vm_lifetime_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Vm Lifetime Seconds"},"memory_mb":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Memory Mb"},"vcpu_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Vcpu Count"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"env":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Env"},"prewarm":{"type":"boolean","title":"Prewarm","default":false}},"type":"object","title":"CreateSessionRequest"},"CreateSessionResponse":{"properties":{"session_id":{"type":"string","format":"uuid","title":"Session Id"}},"type":"object","required":["session_id"],"title":"CreateSessionResponse"},"CreateSetupIntentRequest":{"properties":{"payment_method_id":{"type":"string","title":"Payment Method Id"}},"type":"object","title":"CreateSetupIntentRequest","description":"Request model for creating a setup intent."},"CreateSubscriptionRequest":{"properties":{"plan_name":{"type":"string","title":"Plan Name","description":"Name of the subscription plan"},"billing_cycle":{"type":"string","pattern":"^(monthly|annual)$","title":"Billing Cycle","description":"Billing cycle"},"payment_method_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Payment Method Id","description":"Stripe payment method ID"},"trial_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Trial Days","description":"Number of trial days"},"promotion_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Promotion Code","description":"Optional Stripe promotion code (e.g. 'GODFATHER50')"}},"type":"object","required":["plan_name","billing_cycle"],"title":"CreateSubscriptionRequest","description":"Request model for creating a subscription."},"CredentialMeta":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"credential_type":{"type":"string","title":"Credential Type"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"injection_targets":{"anyOf":[{"items":{"$ref":"#/components/schemas/InjectionTarget"},"type":"array"},{"type":"null"}],"title":"Injection Targets"}},"type":"object","required":["id","name","credential_type","description","created_at"],"title":"CredentialMeta"},"CredentialRotate":{"properties":{"value":{"type":"string","minLength":1,"title":"Value"}},"type":"object","required":["value"],"title":"CredentialRotate"},"CredentialUpdate":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"}},"type":"object","title":"CredentialUpdate"},"CreditAllocation":{"properties":{"id":{"type":"integer","title":"Id","description":"Allocation ID"},"user_id":{"type":"integer","title":"User Id","description":"User ID"},"allocation_period_start":{"type":"string","format":"date-time","title":"Allocation Period Start","description":"Start of allocation period"},"allocation_period_end":{"type":"string","format":"date-time","title":"Allocation Period End","description":"End of allocation period"},"dollars":{"$ref":"#/components/schemas/DollarCreditsAllocation","description":"Pay-as-you-go dollar credits"},"browser_automation":{"$ref":"#/components/schemas/BrowserCreditsAllocation","description":"Browser automation credits"}},"type":"object","required":["id","user_id","allocation_period_start","allocation_period_end","dollars","browser_automation"],"title":"CreditAllocation","description":"User's current credit allocation across all types"},"CreditAllocationResponse":{"properties":{"id":{"type":"integer","title":"Id"},"user_id":{"type":"integer","title":"User Id"},"allocation_period_start":{"type":"string","format":"date-time","title":"Allocation Period Start"},"allocation_period_end":{"type":"string","format":"date-time","title":"Allocation Period End"},"dollars":{"type":"object","title":"Dollars"},"browser_automation":{"type":"object","title":"Browser Automation"}},"type":"object","required":["id","user_id","allocation_period_start","allocation_period_end","dollars","browser_automation"],"title":"CreditAllocationResponse","description":"Response model for credit allocation."},"CreditCheckResponse":{"properties":{"available":{"type":"boolean","title":"Available"},"required_credits":{"type":"integer","title":"Required Credits"},"remaining_credits":{"type":"integer","title":"Remaining Credits"},"shortage":{"type":"integer","title":"Shortage"},"allocation_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Allocation Id"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"}},"type":"object","required":["available","required_credits","remaining_credits","shortage","allocation_id"],"title":"CreditCheckResponse","description":"Response model for credit availability check."},"CreditSummaryResponse":{"properties":{"period":{"type":"string","title":"Period"},"dollars":{"type":"object","title":"Dollars"},"browser_automation":{"type":"object","title":"Browser Automation"},"total_credits_used":{"type":"integer","title":"Total Credits Used"},"current_allocation":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Current Allocation"}},"type":"object","required":["period","dollars","browser_automation","total_credits_used","current_allocation"],"title":"CreditSummaryResponse","description":"Response model for credit usage summary."},"CreditUsageResponse":{"properties":{"id":{"type":"integer","title":"Id"},"usage_type":{"type":"string","title":"Usage Type"},"credits_used":{"type":"integer","title":"Credits Used"},"resource_id":{"type":"string","title":"Resource Id"},"execution_duration_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Execution Duration Ms"},"api_call_details":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Api Call Details"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"allocation_id":{"type":"integer","title":"Allocation Id"}},"type":"object","required":["id","usage_type","credits_used","resource_id","execution_duration_ms","api_call_details","created_at","allocation_id"],"title":"CreditUsageResponse","description":"Response model for credit usage history."},"CustomDomainCreateRequest":{"properties":{"domain":{"type":"string","title":"Domain","description":"Custom domain to map (e.g., example.com)"},"share_id":{"type":"string","title":"Share Id","description":"Share ID to route this domain to"},"dns_provider":{"type":"string","title":"Dns Provider","description":"ACME DNS provider name (e.g., cloudflare) for lego"},"dns_credentials":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Dns Credentials","description":"DNS provider credentials as env var mapping (e.g., CLOUDFLARE_API_TOKEN)"}},"type":"object","required":["domain","share_id","dns_provider"],"title":"CustomDomainCreateRequest"},"CustomDomainRequest":{"properties":{"domain":{"type":"string","title":"Domain"},"dns_provider":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dns Provider"},"dns_credentials":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Dns Credentials"}},"type":"object","required":["domain"],"title":"CustomDomainRequest"},"CustomDomainVerifyResponse":{"properties":{"status":{"type":"string","title":"Status"}},"type":"object","required":["status"],"title":"CustomDomainVerifyResponse"},"DailyUsageBreakdown":{"properties":{"date":{"type":"string","title":"Date","description":"Date (ISO format)"},"cost_dollars":{"type":"number","title":"Cost Dollars","description":"Total cost for this day in dollars"},"cpu_cost_dollars":{"type":"number","title":"Cpu Cost Dollars","description":"CPU cost for this day in dollars"},"ram_cost_dollars":{"type":"number","title":"Ram Cost Dollars","description":"RAM cost for this day in dollars"},"cpu_hours":{"type":"number","title":"Cpu Hours","description":"CPU hours consumed (vCPU * time)"},"ram_gib_hours":{"type":"number","title":"Ram Gib Hours","description":"RAM GiB hours consumed (GiB * time)"},"sessions_count":{"type":"integer","title":"Sessions Count","description":"Number of sessions on this day"}},"type":"object","required":["date","cost_dollars","cpu_cost_dollars","ram_cost_dollars","cpu_hours","ram_gib_hours","sessions_count"],"title":"DailyUsageBreakdown","description":"Day-wise usage breakdown"},"DailyUsageResponse":{"properties":{"period_start":{"type":"string","title":"Period Start","description":"Period start (ISO format)"},"period_end":{"type":"string","title":"Period End","description":"Period end (ISO format)"},"total_days":{"type":"integer","title":"Total Days","description":"Number of days with usage"},"totals":{"$ref":"#/components/schemas/DailyUsageTotals","description":"Aggregated totals for period"},"daily_breakdown":{"items":{"$ref":"#/components/schemas/DailyUsageBreakdown"},"type":"array","title":"Daily Breakdown","description":"Day-wise breakdown"}},"type":"object","required":["period_start","period_end","total_days","totals","daily_breakdown"],"title":"DailyUsageResponse","description":"Day-wise usage breakdown response"},"DailyUsageTotals":{"properties":{"cost_dollars":{"type":"number","title":"Cost Dollars","description":"Total cost for period in dollars"},"cpu_hours":{"type":"number","title":"Cpu Hours","description":"Total CPU hours for period"},"ram_gib_hours":{"type":"number","title":"Ram Gib Hours","description":"Total RAM GiB hours for period"}},"type":"object","required":["cost_dollars","cpu_hours","ram_gib_hours"],"title":"DailyUsageTotals","description":"Totals for the period"},"DeploymentDrainRequest":{"properties":{"require_new":{"type":"boolean","title":"Require New","default":false},"boot_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Boot Id"},"deployment_epoch":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Deployment Epoch"},"instance_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instance Id"},"token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"},"vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"},"after_vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"After Vm Id"}},"type":"object","title":"DeploymentDrainRequest"},"DollarCredits":{"properties":{"allocated":{"type":"number","title":"Allocated","description":"Monthly free credit allocation in dollars"},"used":{"type":"number","title":"Used","description":"Amount used from free credits in dollars"},"remaining":{"type":"number","title":"Remaining","description":"Remaining free credits in dollars"},"overage":{"type":"number","title":"Overage","description":"Overage charges beyond free credits in dollars"},"total_spent":{"type":"number","title":"Total Spent","description":"Total spent (used + overage) in dollars"},"period_start":{"type":"string","title":"Period Start","description":"Current billing period start (ISO format)"},"period_end":{"type":"string","title":"Period End","description":"Current billing period end (ISO format)"},"plan_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Plan Name","description":"Current plan name"},"allows_overage":{"type":"boolean","title":"Allows Overage","description":"Whether plan allows pay-as-you-go overage"}},"type":"object","required":["allocated","used","remaining","overage","total_spent","period_start","period_end","allows_overage"],"title":"DollarCredits","description":"Pay-as-you-go dollar-based credit information"},"DollarCreditsAllocation":{"properties":{"allocated":{"type":"number","title":"Allocated","description":"Total dollars allocated for this period"},"used":{"type":"number","title":"Used","description":"Dollars consumed so far"},"remaining":{"type":"number","title":"Remaining","description":"Dollars remaining in current period"},"overage":{"type":"number","title":"Overage","description":"Overage charges beyond free credits"}},"type":"object","required":["allocated","used","remaining","overage"],"title":"DollarCreditsAllocation","description":"Pay-as-you-go dollar-based credit allocation"},"EgressPolicyRequest":{"properties":{"allow_public_repos":{"type":"boolean","title":"Allow Public Repos","default":true},"allow_http":{"type":"boolean","title":"Allow Http","default":true},"allow_https":{"type":"boolean","title":"Allow Https","default":true},"tls_interception":{"type":"boolean","title":"Tls Interception","default":true},"allowed_domains":{"items":{"type":"string"},"type":"array","title":"Allowed Domains"},"allowed_cidrs":{"items":{"type":"string"},"type":"array","title":"Allowed Cidrs"}},"type":"object","title":"EgressPolicyRequest"},"EmailPreferencesRequest":{"properties":{"payment_notifications":{"type":"boolean","title":"Payment Notifications","description":"Receive payment-related notifications","default":true},"invoice_notifications":{"type":"boolean","title":"Invoice Notifications","description":"Receive invoice notifications","default":true},"usage_notifications":{"type":"boolean","title":"Usage Notifications","description":"Receive usage alert notifications","default":true},"marketing":{"type":"boolean","title":"Marketing","description":"Receive marketing emails","default":false},"lifecycle_notifications":{"type":"boolean","title":"Lifecycle Notifications","description":"Receive onboarding and lifecycle emails (welcome, activation nudges)","default":true}},"type":"object","title":"EmailPreferencesRequest","description":"Request model for updating email preferences."},"EmailPreferencesResponse":{"properties":{"payment_notifications":{"type":"boolean","title":"Payment Notifications"},"invoice_notifications":{"type":"boolean","title":"Invoice Notifications"},"usage_notifications":{"type":"boolean","title":"Usage Notifications"},"marketing":{"type":"boolean","title":"Marketing"},"lifecycle_notifications":{"type":"boolean","title":"Lifecycle Notifications","default":true}},"type":"object","required":["payment_notifications","invoice_notifications","usage_notifications","marketing"],"title":"EmailPreferencesResponse","description":"Response model for email preferences."},"EnvironmentCreate":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"networking":{"$ref":"#/components/schemas/Networking","default":"unrestricted"},"network_policy":{"anyOf":[{"$ref":"#/components/schemas/NetworkPolicySchema"},{"type":"null"}]},"packages":{"anyOf":[{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object"},{"type":"null"}],"title":"Packages"},"snapshot_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Id"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["name"],"title":"EnvironmentCreate"},"EnvironmentListResponse":{"properties":{"data":{"items":{"$ref":"#/components/schemas/EnvironmentResponse"},"type":"array","title":"Data"},"next_page":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Page"}},"type":"object","required":["data"],"title":"EnvironmentListResponse"},"EnvironmentResponse":{"properties":{"id":{"type":"string","title":"Id"},"org_id":{"type":"string","title":"Org Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"networking":{"type":"string","title":"Networking"},"network_policy":{"anyOf":[{"$ref":"#/components/schemas/NetworkPolicySchema"},{"type":"null"}]},"packages":{"anyOf":[{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object"},{"type":"null"}],"title":"Packages"},"snapshot_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Id"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"archived":{"type":"boolean","title":"Archived"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","org_id","name","networking","archived","created_at","updated_at"],"title":"EnvironmentResponse"},"EnvironmentUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"networking":{"anyOf":[{"$ref":"#/components/schemas/Networking"},{"type":"null"}]},"network_policy":{"anyOf":[{"$ref":"#/components/schemas/NetworkPolicySchema"},{"type":"null"}]},"packages":{"anyOf":[{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object"},{"type":"null"}],"title":"Packages"},"snapshot_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Id"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","title":"EnvironmentUpdate"},"EstimatePlanChangeRequest":{"properties":{"new_plan_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"New Plan Name","description":"Name of the new subscription plan"},"target_plan":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Plan","description":"Target plan name (alternative field)"},"billing_cycle":{"anyOf":[{"type":"string","pattern":"^(monthly|annual)$"},{"type":"null"}],"title":"Billing Cycle","description":"New billing cycle"}},"type":"object","title":"EstimatePlanChangeRequest","description":"Request model for estimating plan change costs."},"EventSend":{"properties":{"type":{"type":"string","title":"Type"},"content":{"anyOf":[{"items":{"$ref":"#/components/schemas/ContentBlock"},"type":"array"},{"type":"null"}],"title":"Content"},"tool_use_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tool Use Id"},"result":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Result"},"confirmation":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Confirmation"},"idempotency_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idempotency Key"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["type"],"title":"EventSend"},"ExtendTrialRequest":{"properties":{"trial_days":{"type":"integer","maximum":90.0,"minimum":1.0,"title":"Trial Days","description":"Number of trial days to add","default":14}},"type":"object","title":"ExtendTrialRequest","description":"Request model for extending trial period."},"GuestClaimRequest":{"properties":{"guest_token":{"type":"string","title":"Guest Token"}},"type":"object","required":["guest_token"],"title":"GuestClaimRequest"},"GuestClaimResponse":{"properties":{"claimed_session_ids":{"items":{"type":"string"},"type":"array","title":"Claimed Session Ids"},"new_expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"New Expires At"},"staged_env_names":{"items":{"type":"string"},"type":"array","title":"Staged Env Names"}},"type":"object","required":["claimed_session_ids","new_expires_at","staged_env_names"],"title":"GuestClaimResponse"},"GuestSessionResponse":{"properties":{"access_token":{"type":"string","title":"Access Token"},"token_type":{"type":"string","title":"Token Type"},"expires_in":{"type":"integer","title":"Expires In"},"user_id":{"type":"integer","title":"User Id"},"guest":{"type":"boolean","title":"Guest"}},"type":"object","required":["access_token","token_type","expires_in","user_id","guest"],"title":"GuestSessionResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HealthResponse":{"properties":{"status":{"type":"string","title":"Status"},"timestamp":{"type":"string","title":"Timestamp"}},"type":"object","required":["status","timestamp"],"title":"HealthResponse"},"InjectionTarget":{"properties":{"host_pattern":{"type":"string","title":"Host Pattern"},"inject_as":{"type":"string","enum":["header","query","body_json","bearer","basic_auth","form_data"],"title":"Inject As"},"field":{"type":"string","title":"Field"},"format":{"type":"string","title":"Format","default":"{value}"}},"type":"object","required":["host_pattern","inject_as","field"],"title":"InjectionTarget","description":"One rule describing how/where to inject a credential into outbound requests.\n\nInjection modes:\n  header     — set a request header; ``field`` = header name, ``format`` = value template.\n  bearer     — shorthand for ``Authorization: Bearer <secret>``.  The proxy always\n               sets ``Authorization: Bearer {plaintext_secret}`` regardless of the\n               ``field`` or ``format`` values; both are ignored.\n  query      — append a URL query parameter; ``field`` = param name.\n  body_json  — merge a key into the JSON request body; ``field`` supports dot-notation\n               for nesting, e.g. ``\"config.api_key\"``.\n  basic_auth — set ``Authorization: Basic base64(<format>)`` where ``format`` is the\n               raw credentials string template, e.g. ``\"{value}:\"`` (key-as-username)\n               or ``\"user:{value}\"`` (key-as-password); ``field`` = header name\n               (almost always ``\"Authorization\"``).\n  form_data  — inject a field into an ``application/x-www-form-urlencoded`` body;\n               ``field`` = form field name, ``format`` = value template.\n\nFor all modes except ``bearer``, ``{value}`` in ``format`` is replaced with the\ndecrypted credential before injection."},"InternalEvent":{"properties":{"event_type":{"type":"string","title":"Event Type"},"payload":{"type":"object","title":"Payload","default":{}},"content_blocks":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Content Blocks"}},"type":"object","required":["event_type"],"title":"InternalEvent"},"KillVMRequest":{"properties":{"session_id":{"type":"string","title":"Session Id"}},"type":"object","required":["session_id"],"title":"KillVMRequest"},"LinkRequiredResponse":{"properties":{"status":{"type":"string","const":"link_required","title":"Status"},"issuer":{"type":"string","title":"Issuer"},"reason":{"type":"string","const":"existing_instavm_account","title":"Reason"}},"type":"object","required":["status","issuer","reason"],"title":"LinkRequiredResponse"},"ModelConfig":{"properties":{"id":{"type":"string","title":"Id"},"speed":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Speed"}},"type":"object","required":["id"],"title":"ModelConfig"},"NetworkPolicySchema":{"properties":{"mode":{"type":"string","enum":["unrestricted","allowlist","none"],"title":"Mode","default":"unrestricted"},"allowed_urls":{"items":{"type":"string"},"type":"array","title":"Allowed Urls"},"trusted_urls":{"items":{"type":"string"},"type":"array","title":"Trusted Urls"}},"type":"object","title":"NetworkPolicySchema"},"Networking":{"type":"string","enum":["unrestricted","limited"],"title":"Networking"},"NodeInfo":{"properties":{"node_address":{"type":"string","title":"Node Address"},"node_ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Ip"},"queue_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Queue Name"},"status":{"type":"string","title":"Status"},"active_vms":{"type":"integer","title":"Active Vms"},"pool_vms":{"type":"integer","title":"Pool Vms"},"verified_pool_vms":{"type":"integer","title":"Verified Pool Vms","default":0},"max_vms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Vms"},"last_heartbeat":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Heartbeat"},"boot_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Boot Id"},"deployment_epoch":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Deployment Epoch"},"draining":{"type":"boolean","title":"Draining","default":false},"inventory_fresh":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Inventory Fresh"},"inventory_observed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inventory Observed At"},"pool_vms_by_kind":{"additionalProperties":{"type":"integer"},"type":"object","title":"Pool Vms By Kind"},"verified_pool_vms_by_kind":{"additionalProperties":{"type":"integer"},"type":"object","title":"Verified Pool Vms By Kind"},"fresh_spawn_reserved_slots":{"type":"integer","title":"Fresh Spawn Reserved Slots","default":0},"standard_memory_capacity":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Standard Memory Capacity"},"deployment_drain_protocol":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Deployment Drain Protocol"}},"type":"object","required":["node_address","status","active_vms","pool_vms"],"title":"NodeInfo"},"OAuthLoginRequest":{"properties":{"provider":{"type":"string","title":"Provider"},"provider_access_token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Provider Access Token"}},"additionalProperties":false,"type":"object","required":["provider"],"title":"OAuthLoginRequest"},"PasskeyLoginOptionsRequest":{"properties":{"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"}},"type":"object","title":"PasskeyLoginOptionsRequest"},"PasskeyLoginVerifyRequest":{"properties":{"challenge_token":{"type":"string","title":"Challenge Token"},"authentication_response":{"type":"object","title":"Authentication Response"}},"type":"object","required":["challenge_token","authentication_response"],"title":"PasskeyLoginVerifyRequest"},"PasskeyOptionsRequest":{"properties":{"temp_token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Temp Token"}},"type":"object","title":"PasskeyOptionsRequest"},"PasskeyVerifyRequest":{"properties":{"temp_token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Temp Token"},"challenge_token":{"type":"string","title":"Challenge Token"},"attestation_response":{"type":"object","title":"Attestation Response"},"name":{"type":"string","title":"Name","default":"My Passkey"}},"type":"object","required":["challenge_token","attestation_response"],"title":"PasskeyVerifyRequest"},"PasswordResetCompleteResponse":{"properties":{"message":{"type":"string","title":"Message","description":"Success message"}},"type":"object","required":["message"],"title":"PasswordResetCompleteResponse"},"PasswordResetConfirm":{"properties":{"token":{"type":"string","title":"Token","description":"Reset token from email"},"new_password":{"type":"string","minLength":8,"title":"New Password","description":"New password"}},"type":"object","required":["token","new_password"],"title":"PasswordResetConfirm"},"PasswordResetRequest":{"properties":{"email":{"type":"string","title":"Email","description":"User's email address"}},"type":"object","required":["email"],"title":"PasswordResetRequest"},"PasswordResetResponse":{"properties":{"message":{"type":"string","title":"Message","description":"Success message"}},"type":"object","required":["message"],"title":"PasswordResetResponse"},"PaymentMethodRequest":{"properties":{"payment_method_id":{"type":"string","title":"Payment Method Id"}},"type":"object","required":["payment_method_id"],"title":"PaymentMethodRequest","description":"Request model for payment method operations."},"PlanResponse":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"display_name":{"type":"string","title":"Display Name"},"description":{"type":"string","title":"Description"},"monthly_price_cents":{"type":"integer","title":"Monthly Price Cents"},"annual_price_cents":{"type":"integer","title":"Annual Price Cents"},"credits_dollars":{"type":"number","title":"Credits Dollars"},"browser_automation_credits":{"type":"integer","title":"Browser Automation Credits"},"api_rate_limit_per_minute":{"type":"integer","title":"Api Rate Limit Per Minute"},"max_concurrent_vms":{"type":"integer","title":"Max Concurrent Vms"},"max_session_duration_minutes":{"type":"integer","title":"Max Session Duration Minutes"},"features":{"type":"object","title":"Features"},"is_active":{"type":"boolean","title":"Is Active"}},"type":"object","required":["id","name","display_name","description","monthly_price_cents","annual_price_cents","credits_dollars","browser_automation_credits","api_rate_limit_per_minute","max_concurrent_vms","max_session_duration_minutes","features","is_active"],"title":"PlanResponse","description":"Response model for subscription plan."},"PromoValidateRequest":{"properties":{"code":{"type":"string","maxLength":64,"minLength":1,"title":"Code","description":"Promotion code to validate"}},"type":"object","required":["code"],"title":"PromoValidateRequest","description":"Request model for validating a promotion code."},"PromoValidateResponse":{"properties":{"valid":{"type":"boolean","title":"Valid"},"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"},"promotion_code_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Promotion Code Id"},"coupon_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Coupon Id"},"percent_off":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Percent Off"},"amount_off":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Amount Off"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Currency"},"duration":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Duration"},"duration_in_months":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration In Months"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"}},"type":"object","required":["valid"],"title":"PromoValidateResponse","description":"Response model for a validated promotion code."},"ProvisionReadyResponse":{"properties":{"status":{"type":"string","const":"ready","title":"Status"},"issuer":{"type":"string","title":"Issuer"},"instavm_user_id":{"type":"integer","title":"Instavm User Id"},"default_vault_id":{"type":"string","title":"Default Vault Id"}},"type":"object","required":["status","issuer","instavm_user_id","default_vault_id"],"title":"ProvisionReadyResponse"},"ProvisionUserRequest":{"properties":{"subject":{"type":"string","maxLength":255,"minLength":1,"title":"Subject"},"email":{"type":"string","maxLength":320,"minLength":3,"title":"Email"},"email_verified":{"type":"boolean","const":true,"title":"Email Verified"},"name":{"type":"string","maxLength":255,"minLength":1,"title":"Name"}},"additionalProperties":false,"type":"object","required":["subject","email","email_verified","name"],"title":"ProvisionUserRequest"},"RecordingInfo":{"properties":{"id":{"type":"string","title":"Id"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"filename":{"type":"string","title":"Filename"},"status":{"type":"string","title":"Status"},"size_bytes":{"type":"integer","title":"Size Bytes","default":0},"duration_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Duration Seconds"},"content_type":{"type":"string","title":"Content Type","default":"video/mp4"},"download_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Download Url"},"created_at":{"type":"string","title":"Created At"},"updated_at":{"type":"string","title":"Updated At"}},"type":"object","required":["id","filename","status","created_at","updated_at"],"title":"RecordingInfo"},"RegenerateBackupCodesRequest":{"properties":{"totp_code":{"type":"string","maxLength":6,"minLength":6,"pattern":"^[0-9]{6}$","title":"Totp Code"}},"type":"object","required":["totp_code"],"title":"RegenerateBackupCodesRequest"},"SSHKeyCreateRequest":{"properties":{"public_key":{"type":"string","title":"Public Key","description":"OpenSSH public key string"}},"type":"object","required":["public_key"],"title":"SSHKeyCreateRequest"},"SealedVaultFieldRequest":{"properties":{"subject":{"type":"string","maxLength":255,"minLength":1,"title":"Subject"},"vault_id":{"type":"string","maxLength":64,"minLength":1,"title":"Vault Id"},"credential_id":{"type":"string","maxLength":128,"minLength":1,"title":"Credential Id"},"field":{"type":"string","enum":["username","password","address"],"title":"Field"},"origin":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Origin"},"recipient_key":{"type":"string","maxLength":44,"minLength":44,"title":"Recipient Key"},"challenge":{"type":"string","maxLength":24,"minLength":24,"title":"Challenge"}},"additionalProperties":false,"type":"object","required":["subject","vault_id","credential_id","field","recipient_key","challenge"],"title":"SealedVaultFieldRequest"},"SealedVaultFieldResponse":{"properties":{"origin":{"type":"string","title":"Origin"},"sender_key":{"type":"string","title":"Sender Key"},"nonce":{"type":"string","title":"Nonce"},"ciphertext":{"type":"string","title":"Ciphertext"}},"type":"object","required":["origin","sender_key","nonce","ciphertext"],"title":"SealedVaultFieldResponse"},"ServiceCreate":{"properties":{"host":{"type":"string","maxLength":255,"title":"Host"},"auth_config":{"type":"object","title":"Auth Config"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"enabled":{"type":"boolean","title":"Enabled","default":true}},"type":"object","required":["host","auth_config"],"title":"ServiceCreate"},"ServiceUpdate":{"properties":{"host":{"anyOf":[{"type":"string","maxLength":255},{"type":"null"}],"title":"Host"},"auth_config":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Auth Config"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"}},"type":"object","title":"ServiceUpdate"},"ServicesFromTemplates":{"properties":{"template_ids":{"items":{"type":"string"},"type":"array","minItems":1,"title":"Template Ids"},"credential_overrides":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Credential Overrides"}},"type":"object","required":["template_ids"],"title":"ServicesFromTemplates"},"SessionCreate":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"environment_id":{"type":"string","title":"Environment Id"},"vault_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Vault Ids"},"resources":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Resources"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"instruction_context":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Instruction Context"}},"type":"object","required":["agent_id","environment_id"],"title":"SessionCreate"},"SessionListResponse":{"properties":{"data":{"items":{"$ref":"#/components/schemas/SessionResponse"},"type":"array","title":"Data"},"next_page":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Page"}},"type":"object","required":["data"],"title":"SessionListResponse"},"SessionResponse":{"properties":{"id":{"type":"string","title":"Id"},"org_id":{"type":"string","title":"Org Id"},"agent_id":{"type":"string","title":"Agent Id"},"agent_version":{"type":"integer","title":"Agent Version"},"environment_id":{"type":"string","title":"Environment Id"},"status":{"type":"string","title":"Status"},"wait_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Wait Reason"},"stop_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stop Reason"},"error_info":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Error Info"},"vault_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Vault Ids"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"instruction_context":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Instruction Context"},"stats":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Stats"},"usage":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Usage"},"archived":{"type":"boolean","title":"Archived"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","org_id","agent_id","agent_version","environment_id","status","archived","created_at","updated_at"],"title":"SessionResponse"},"SessionStatusResponse":{"properties":{"session_id":{"type":"string","title":"Session Id"},"exists":{"type":"boolean","title":"Exists"},"vm_assigned":{"type":"boolean","title":"Vm Assigned"},"vm_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Status"},"vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"},"vm_alive":{"type":"boolean","title":"Vm Alive","default":false},"uptime_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Uptime Seconds"},"expires_in_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Expires In Seconds"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"env_status":{"type":"string","title":"Env Status","default":"none"},"env_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Env Error"}},"type":"object","required":["session_id","exists","vm_assigned"],"title":"SessionStatusResponse","description":"Response model for session status check."},"SessionStatusUpdate":{"properties":{"status":{"type":"string","title":"Status"},"error_info":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Error Info"},"run_state":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Run State"},"usage":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Usage"}},"type":"object","required":["status"],"title":"SessionStatusUpdate"},"SessionTransition":{"properties":{"status":{"type":"string","title":"Status"},"wait_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Wait Reason"},"stop_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stop Reason"},"error_info":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Error Info"}},"type":"object","required":["status"],"title":"SessionTransition"},"SessionUpdate":{"properties":{"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","title":"SessionUpdate"},"ShareCreateRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"},"port":{"type":"integer","maximum":65535.0,"minimum":1.0,"title":"Port"},"is_public":{"type":"boolean","title":"Is Public","default":false}},"type":"object","required":["port"],"title":"ShareCreateRequest"},"ShareRequest":{"properties":{"port":{"type":"integer","maximum":65535.0,"minimum":1.0,"title":"Port"},"is_public":{"type":"boolean","title":"Is Public","default":false}},"type":"object","required":["port"],"title":"ShareRequest"},"ShareUpdateRequest":{"properties":{"is_public":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Public"},"revoke":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Revoke"}},"type":"object","title":"ShareUpdateRequest"},"SkillCreate":{"properties":{"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"instructions":{"type":"string","title":"Instructions","default":""},"tools":{"items":{"type":"string"},"type":"array","title":"Tools","default":[]},"config_schema":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Config Schema"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["name","description"],"title":"SkillCreate"},"SkillInstall":{"properties":{"source":{"type":"string","title":"Source"},"ref":{"type":"string","title":"Ref","default":"main"},"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"}},"type":"object","required":["source"],"title":"SkillInstall"},"SkillResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"version":{"type":"integer","title":"Version"},"instructions":{"type":"string","title":"Instructions"},"tools":{"items":{},"type":"array","title":"Tools"},"config_schema":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Config Schema"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id","name","description","version","instructions","tools","config_schema","metadata","created_at","updated_at"],"title":"SkillResponse"},"SkillUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"instructions":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instructions"},"tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tools"},"config_schema":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Config Schema"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","title":"SkillUpdate"},"SnapshotBuildArgs":{"properties":{"extra_apt_packages":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Extra Apt Packages","description":"Space-separated apt packages"},"extra_pip_packages":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Extra Pip Packages","description":"Space-separated pip packages"},"extra_npm_packages":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Extra Npm Packages","description":"Space-separated npm packages"},"git_clone_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Git Clone Url","description":"Git repository URL to clone into /app/repo"},"git_clone_branch":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Git Clone Branch","description":"Branch to clone (default: repo default)"},"disk_size_gb":{"anyOf":[{"type":"integer","maximum":16.0,"minimum":1.0},{"type":"null"}],"title":"Disk Size Gb","description":"Root filesystem size in GB (1-16). Optional override; if omitted, the worker auto-sizes based on extracted rootfs + headroom (minimum 3GB, maximum 16GB). If provided but smaller than required, the build fails with the required minimum."},"envs":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Envs","description":"Environment variables as key-value pairs"},"post_build_cmd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Post Build Cmd","description":"Shell command to run after all packages are installed"},"template_app_cmd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Template App Cmd","description":"Devbox template app command autostarted at VM boot (baked into the snapshot)"},"template_app_cwd":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Template App Cwd","description":"Working directory for the autostarted template app command"}},"type":"object","title":"SnapshotBuildArgs"},"SnapshotCreateRequest":{"properties":{"oci_image":{"type":"string","title":"Oci Image","description":"OCI image reference, e.g. 'python:3.12-slim'"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"vcpu_count":{"type":"integer","maximum":8.0,"minimum":1.0,"title":"Vcpu Count","default":2},"memory_mb":{"type":"integer","maximum":8192.0,"minimum":128.0,"title":"Memory Mb","default":512},"build_args":{"anyOf":[{"$ref":"#/components/schemas/SnapshotBuildArgs"},{"type":"null"}]},"type":{"type":"string","pattern":"^(user|system)$","title":"Type","default":"user"}},"type":"object","required":["oci_image"],"title":"SnapshotCreateRequest"},"SnapshotInfo":{"properties":{"id":{"type":"string","title":"Id"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"status":{"type":"string","title":"Status"},"source_vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Vm Id"},"snapshot_type":{"type":"string","title":"Snapshot Type"},"type":{"type":"string","title":"Type","default":"user"},"oci_image":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Oci Image"},"vcpu_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Vcpu Count"},"memory_mb":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Memory Mb"},"size_bytes":{"type":"integer","title":"Size Bytes","default":0},"is_public":{"type":"boolean","title":"Is Public","default":false},"last_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Error"},"created_at":{"type":"string","title":"Created At"},"updated_at":{"type":"string","title":"Updated At"}},"type":"object","required":["id","status","snapshot_type","created_at","updated_at"],"title":"SnapshotInfo"},"StageEnvEntry":{"properties":{"env_name":{"type":"string","title":"Env Name"},"value":{"type":"string","title":"Value"}},"type":"object","required":["env_name","value"],"title":"StageEnvEntry"},"StageEnvRequest":{"properties":{"entries":{"items":{"$ref":"#/components/schemas/StageEnvEntry"},"type":"array","title":"Entries"}},"type":"object","required":["entries"],"title":"StageEnvRequest"},"StageEnvResponse":{"properties":{"staged":{"items":{"type":"string"},"type":"array","title":"Staged"}},"type":"object","required":["staged"],"title":"StageEnvResponse"},"SubscriptionResponse":{"properties":{"plan_details":{"type":"object","title":"Plan Details"},"status":{"type":"string","title":"Status"},"billing_cycle":{"type":"string","title":"Billing Cycle"},"current_period_start":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Current Period Start"},"current_period_end":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Current Period End"},"cancel_at_period_end":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Cancel At Period End"},"stripe_subscription_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stripe Subscription Id"},"requires_action":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Requires Action"},"client_secret":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client Secret"}},"type":"object","required":["plan_details","status","billing_cycle","current_period_start","current_period_end","cancel_at_period_end","stripe_subscription_id"],"title":"SubscriptionResponse","description":"Response model for subscription information."},"TOTPVerifyRequest":{"properties":{"token":{"type":"string","title":"Token"}},"type":"object","required":["token"],"title":"TOTPVerifyRequest"},"TabCreateRequest":{"properties":{"template_slug":{"type":"string","title":"Template Slug"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"}},"type":"object","required":["template_slug"],"title":"TabCreateRequest"},"TabUpdateRequest":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position"}},"type":"object","title":"TabUpdateRequest"},"TapeBranchRequest":{"properties":{"at_step":{"type":"integer","minimum":0.0,"title":"At Step"},"mode":{"type":"string","pattern":"^(live|replay)$","title":"Mode","default":"live"}},"type":"object","required":["at_step"],"title":"TapeBranchRequest"},"TapeEventCreateRequest":{"properties":{"kind":{"type":"string","maxLength":64,"minLength":1,"title":"Kind"},"payload":{"type":"object","title":"Payload"},"step_id":{"anyOf":[{"type":"integer","minimum":0.0},{"type":"null"}],"title":"Step Id"},"parent_step_id":{"anyOf":[{"type":"integer","minimum":0.0},{"type":"null"}],"title":"Parent Step Id"},"checkpoint_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Checkpoint Id"}},"type":"object","required":["kind"],"title":"TapeEventCreateRequest"},"TapeEventInfo":{"properties":{"id":{"type":"string","title":"Id"},"tape_id":{"type":"string","title":"Tape Id"},"step_id":{"type":"integer","title":"Step Id"},"parent_step_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Step Id"},"kind":{"type":"string","title":"Kind"},"ts":{"type":"string","title":"Ts"},"payload":{"type":"object","title":"Payload"},"checkpoint_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Checkpoint Id"}},"type":"object","required":["id","tape_id","step_id","kind","ts","payload"],"title":"TapeEventInfo"},"TapeInfo":{"properties":{"id":{"type":"string","title":"Id"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"},"parent_tape_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Tape Id"},"parent_step_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Parent Step Id"},"status":{"type":"string","title":"Status"},"started_at":{"type":"string","title":"Started At"},"stopped_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stopped At"},"total_steps":{"type":"integer","title":"Total Steps","default":0},"total_size_bytes":{"type":"integer","title":"Total Size Bytes","default":0},"record_egress_content":{"type":"boolean","title":"Record Egress Content","default":false},"record_fs":{"type":"boolean","title":"Record Fs","default":true},"retention_until":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Retention Until"},"s3_prefix":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"S3 Prefix"},"workspace_volume_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Workspace Volume Id"}},"type":"object","required":["id","status","started_at"],"title":"TapeInfo"},"TapeStartRequest":{"properties":{"record_egress_content":{"type":"boolean","title":"Record Egress Content","default":false},"record_fs":{"type":"boolean","title":"Record Fs","default":true},"retention_days":{"type":"integer","maximum":365.0,"minimum":0.0,"title":"Retention Days","default":7}},"type":"object","title":"TapeStartRequest"},"TemplateRunRequest":{"properties":{"vm_lifetime":{"anyOf":[{"type":"integer"},{"type":"string","const":"max"},{"type":"null"}],"title":"Vm Lifetime","description":"VM lifetime seconds, or \"max\" for the caller plan cap."},"auto_suspend":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Suspend"},"auto_resume":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Resume"},"vault_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Vault Ids"},"name":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Name"},"volumes":{"anyOf":[{"items":{"$ref":"#/components/schemas/VMVolumeMountRequest"},"type":"array"},{"type":"null"}],"title":"Volumes"}},"type":"object","title":"TemplateRunRequest"},"TokenExchangeRequest":{"properties":{"subject":{"type":"string","maxLength":255,"minLength":1,"title":"Subject"}},"additionalProperties":false,"type":"object","required":["subject"],"title":"TokenExchangeRequest"},"TokenExchangeResponse":{"properties":{"access_token":{"type":"string","title":"Access Token"},"token_type":{"type":"string","const":"bearer","title":"Token Type"},"expires_in":{"type":"integer","title":"Expires In"},"instavm_user_id":{"type":"integer","title":"Instavm User Id"}},"type":"object","required":["access_token","token_type","expires_in","instavm_user_id"],"title":"TokenExchangeResponse"},"TokenVerificationResponse":{"properties":{"valid":{"type":"boolean","title":"Valid","description":"Whether token is valid"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email","description":"User email if token is valid"},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At","description":"Token expiration time"}},"type":"object","required":["valid"],"title":"TokenVerificationResponse"},"TraceShareInfo":{"properties":{"share_id":{"type":"string","title":"Share Id"},"tape_id":{"type":"string","title":"Tape Id"},"url":{"type":"string","title":"Url"},"created_at":{"type":"string","title":"Created At"},"revoked_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Revoked At"}},"type":"object","required":["share_id","tape_id","url","created_at"],"title":"TraceShareInfo"},"TwoFactorLoginRequest":{"properties":{"temp_token":{"type":"string","title":"Temp Token"},"totp_code":{"type":"string","title":"Totp Code"}},"type":"object","required":["temp_token","totp_code"],"title":"TwoFactorLoginRequest"},"UserCreate":{"properties":{"name":{"type":"string","title":"Name"},"is_guest":{"type":"boolean","title":"Is Guest"},"claimed_by_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Claimed By User Id"},"claimed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Claimed At"},"last_active_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Active At"},"last_login_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Login At"},"marketing_consent":{"type":"boolean","title":"Marketing Consent"},"marketing_consent_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Marketing Consent At"},"marketing_consent_source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Marketing Consent Source"},"email_preferences":{"type":"object","title":"Email Preferences"},"resend_contact_synced_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Resend Contact Synced At"}},"type":"object","required":["name"],"title":"UserCreate"},"UserRead":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"email":{"type":"string","title":"Email"},"credits":{"type":"integer","title":"Credits"},"is_verified":{"type":"boolean","title":"Is Verified"},"is_admin":{"type":"boolean","title":"Is Admin"},"is_guest":{"type":"boolean","title":"Is Guest"},"claimed_by_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Claimed By User Id"},"claimed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Claimed At"},"is_disabled":{"type":"boolean","title":"Is Disabled"},"disabled_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Disabled At"},"disabled_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Disabled Reason"},"oauth_provider":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Oauth Provider"},"oauth_provider_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Oauth Provider Id"},"github_username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Github Username"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar Url"},"is_totp_enabled":{"type":"boolean","title":"Is Totp Enabled"},"snapshot_storage_bytes":{"type":"integer","title":"Snapshot Storage Bytes"},"volume_storage_bytes":{"type":"integer","title":"Volume Storage Bytes"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"first_vm_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"First Vm At"},"last_active_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Active At"},"last_login_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Login At"},"marketing_consent":{"type":"boolean","title":"Marketing Consent"},"marketing_consent_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Marketing Consent At"},"marketing_consent_source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Marketing Consent Source"},"email_preferences":{"type":"object","title":"Email Preferences"},"resend_contact_synced_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Resend Contact Synced At"}},"type":"object","required":["id","name","email","credits","is_verified","is_admin","is_guest","claimed_by_user_id","claimed_at","is_disabled","disabled_at","disabled_reason","oauth_provider","oauth_provider_id","github_username","avatar_url","is_totp_enabled","snapshot_storage_bytes","volume_storage_bytes","created_at","first_vm_at","last_active_at","last_login_at","marketing_consent","marketing_consent_at","marketing_consent_source","email_preferences","resend_contact_synced_at"],"title":"UserRead"},"UserSubscription":{"properties":{"id":{"type":"integer","title":"Id","description":"Subscription ID"},"plan_name":{"type":"string","title":"Plan Name","description":"Plan name (free, pro, enterprise)"},"display_name":{"type":"string","title":"Display Name","description":"Human-readable plan name"},"status":{"type":"string","title":"Status","description":"Subscription status (active, canceled, etc.)"},"billing_cycle":{"type":"string","title":"Billing Cycle","description":"Billing cycle (monthly, annual)"},"current_period_start":{"type":"string","format":"date-time","title":"Current Period Start","description":"Current billing period start"},"current_period_end":{"type":"string","format":"date-time","title":"Current Period End","description":"Current billing period end"},"cancel_at_period_end":{"type":"boolean","title":"Cancel At Period End","description":"Whether subscription cancels at period end"}},"type":"object","required":["id","plan_name","display_name","status","billing_cycle","current_period_start","current_period_end","cancel_at_period_end"],"title":"UserSubscription","description":"User's current subscription information"},"UserWithUsageResponse":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"email":{"type":"string","title":"Email"},"is_verified":{"type":"boolean","title":"Is Verified"},"is_admin":{"type":"boolean","title":"Is Admin"},"is_disabled":{"type":"boolean","title":"Is Disabled","description":"Whether the account is disabled by ops","default":false},"account_disabled_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Disabled Message","description":"User-facing message when account is disabled"},"is_totp_enabled":{"type":"boolean","title":"Is Totp Enabled","description":"Whether TOTP-based 2FA is enabled"},"oauth_provider":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Oauth Provider"},"oauth_provider_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Oauth Provider Id"},"github_username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Github Username"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar Url"},"browser_usage":{"type":"object","title":"Browser Usage","description":"Browser API usage statistics"},"total_executions":{"type":"integer","title":"Total Executions","description":"Total code executions by user"},"current_month_executions":{"type":"integer","title":"Current Month Executions","description":"Code executions this month"},"credit_allocation":{"anyOf":[{"$ref":"#/components/schemas/CreditAllocation"},{"type":"null"}],"description":"Current credit allocation with detailed breakdown"},"subscription":{"anyOf":[{"$ref":"#/components/schemas/UserSubscription"},{"type":"null"}],"description":"Current subscription details"},"vm_usage":{"anyOf":[{"$ref":"#/components/schemas/VMUsage"},{"type":"null"}],"description":"Current VM usage and limits"},"credit_dollars":{"anyOf":[{"$ref":"#/components/schemas/DollarCredits"},{"type":"null"}],"description":"Pay-as-you-go credit balance in dollars"},"snapshot_storage_bytes":{"type":"integer","title":"Snapshot Storage Bytes","description":"Total snapshot storage usage in bytes"},"snapshot_count":{"type":"integer","title":"Snapshot Count","description":"Total snapshots owned by user"}},"type":"object","required":["id","name","email","is_verified","is_admin","is_totp_enabled","browser_usage","total_executions","current_month_executions","snapshot_storage_bytes","snapshot_count"],"title":"UserWithUsageResponse","description":"Extended user response with usage statistics and billing information"},"VMCloneRequest":{"properties":{"snapshot_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Name"}},"type":"object","title":"VMCloneRequest"},"VMCloneResponse":{"properties":{"vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"},"session_id":{"type":"string","title":"Session Id"},"status":{"type":"string","title":"Status"},"snapshot_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Id"},"snapshot_deleted":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Snapshot Deleted"}},"type":"object","required":["session_id","status"],"title":"VMCloneResponse"},"VMCreateRequest":{"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"vm_lifetime_seconds":{"anyOf":[{"type":"integer"},{"type":"string","const":"max"},{"type":"null"}],"title":"Vm Lifetime Seconds","description":"VM lifetime in seconds, or \"max\" to use the caller plan cap."},"memory_mb":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Memory Mb"},"vcpu_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Vcpu Count"},"metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Metadata"},"env":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Env"},"egress_policy":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Egress Policy"},"snapshot_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Id"},"snapshot_on_terminate":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Snapshot On Terminate"},"snapshot_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Name"},"auto_suspend":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Suspend"},"auto_resume":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Resume"},"share":{"anyOf":[{"$ref":"#/components/schemas/ShareRequest"},{"type":"null"}]},"custom_domain":{"anyOf":[{"$ref":"#/components/schemas/CustomDomainRequest"},{"type":"null"}]},"image_variant":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Image Variant"},"volumes":{"anyOf":[{"items":{"$ref":"#/components/schemas/VMVolumeMountRequest"},"type":"array"},{"type":"null"}],"title":"Volumes"},"vault_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Vault Ids"}},"type":"object","title":"VMCreateRequest"},"VMCreateResponse":{"properties":{"vm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vm Id"},"session_id":{"type":"string","title":"Session Id"},"status":{"type":"string","title":"Status"},"share":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Share"},"custom_domain":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Custom Domain"},"env_status":{"type":"string","title":"Env Status","default":"none"},"env_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Env Error"}},"type":"object","required":["session_id","status"],"title":"VMCreateResponse"},"VMInfoResponse":{"properties":{"vm_id":{"type":"string","title":"Vm Id"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"start_time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Time"},"end_time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Time"},"ssh_host":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ssh Host"},"metadata":{"type":"object","title":"Metadata"},"image_variant":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Image Variant"},"auto_suspend":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Suspend"},"auto_resume":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Resume"},"suspended_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Suspended At"},"devbox_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Devbox Name"},"devbox_template_slug":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Devbox Template Slug"},"vm_lifetime_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Vm Lifetime Seconds"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"}},"type":"object","required":["vm_id"],"title":"VMInfoResponse"},"VMMountedVolumeResponse":{"properties":{"volume_id":{"type":"string","title":"Volume Id"},"mount_path":{"type":"string","title":"Mount Path"},"mode":{"type":"string","title":"Mode"},"checkpoint_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Checkpoint Id"},"status":{"type":"string","title":"Status"}},"type":"object","required":["volume_id","mount_path","mode","status"],"title":"VMMountedVolumeResponse"},"VMSandboxInfo":{"properties":{"sandbox_id":{"type":"string","title":"Sandbox Id"},"template_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Template Id"},"name":{"type":"string","title":"Name"},"metadata":{"type":"object","title":"Metadata"},"started_at":{"type":"string","title":"Started At"},"end_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End At"},"status":{"type":"string","title":"Status"}},"type":"object","required":["sandbox_id","name","metadata","started_at","status"],"title":"VMSandboxInfo","description":"Response model matching E2B's SandboxInfo structure."},"VMSnapshotRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"}},"type":"object","title":"VMSnapshotRequest"},"VMSnapshotResponse":{"properties":{"snapshot_id":{"type":"string","title":"Snapshot Id"},"status":{"type":"string","title":"Status"}},"type":"object","required":["snapshot_id","status"],"title":"VMSnapshotResponse"},"VMUpdateRequest":{"properties":{"memory_mb":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Memory Mb"},"egress_policy":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Egress Policy"},"snapshot_on_terminate":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Snapshot On Terminate"},"snapshot_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Name"},"auto_suspend":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Suspend"},"auto_resume":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Resume"},"vault_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Vault Ids"}},"type":"object","title":"VMUpdateRequest"},"VMUsage":{"properties":{"active_vms":{"type":"integer","title":"Active Vms","description":"Number of currently active VMs"},"max_concurrent_vms":{"type":"integer","title":"Max Concurrent Vms","description":"Maximum allowed concurrent VMs based on subscription"},"remaining_slots":{"type":"integer","title":"Remaining Slots","description":"Number of additional VMs user can spawn"},"active_devboxes":{"type":"integer","title":"Active Devboxes","default":0},"max_active_devboxes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Active Devboxes"},"max_concurrent_vm_startups":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Concurrent Vm Startups"}},"type":"object","required":["active_vms","max_concurrent_vms","remaining_slots"],"title":"VMUsage","description":"User's VM usage information"},"VMVolumeMountRequest":{"properties":{"volume_id":{"type":"string","title":"Volume Id"},"mount_path":{"type":"string","title":"Mount Path"},"mode":{"type":"string","title":"Mode","default":"rw"},"checkpoint_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Checkpoint Id"}},"type":"object","required":["volume_id","mount_path"],"title":"VMVolumeMountRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VaultResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","name","description","created_at"],"title":"VaultResponse"},"VerifyPasskeyResponse":{"properties":{"access_token":{"type":"string","title":"Access Token"},"token_type":{"type":"string","title":"Token Type","default":"bearer"},"user_id":{"type":"integer","title":"User Id"}},"type":"object","required":["access_token","user_id"],"title":"VerifyPasskeyResponse"},"VolumeCheckpointCreateRequest":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":128},{"type":"null"}],"title":"Name"}},"type":"object","title":"VolumeCheckpointCreateRequest"},"VolumeCheckpointResponse":{"properties":{"id":{"type":"string","title":"Id"},"volume_id":{"type":"string","title":"Volume Id"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"status":{"type":"string","title":"Status"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","volume_id","status"],"title":"VolumeCheckpointResponse"},"VolumeCreateRequest":{"properties":{"name":{"type":"string","maxLength":128,"minLength":1,"title":"Name"},"quota_bytes":{"type":"integer","minimum":1.0,"title":"Quota Bytes"}},"type":"object","required":["name","quota_bytes"],"title":"VolumeCreateRequest"},"VolumeFileDownloadRequest":{"properties":{"path":{"type":"string","minLength":1,"title":"Path"}},"type":"object","required":["path"],"title":"VolumeFileDownloadRequest"},"VolumeFileDownloadResponse":{"properties":{"path":{"type":"string","title":"Path"},"filename":{"type":"string","title":"Filename"},"size":{"type":"integer","title":"Size"},"content":{"type":"string","title":"Content"}},"type":"object","required":["path","filename","size","content"],"title":"VolumeFileDownloadResponse"},"VolumeFileListEntryResponse":{"properties":{"path":{"type":"string","title":"Path"},"filename":{"type":"string","title":"Filename"},"size":{"type":"integer","title":"Size"}},"type":"object","required":["path","filename","size"],"title":"VolumeFileListEntryResponse"},"VolumeFileUploadResponse":{"properties":{"path":{"type":"string","title":"Path"},"filename":{"type":"string","title":"Filename"},"size":{"type":"integer","title":"Size"}},"type":"object","required":["path","filename","size"],"title":"VolumeFileUploadResponse"},"VolumeResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"quota_bytes":{"type":"integer","title":"Quota Bytes"},"used_bytes":{"type":"integer","title":"Used Bytes"},"status":{"type":"string","title":"Status"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id","name","quota_bytes","used_bytes","status"],"title":"VolumeResponse"},"VolumeUpdateRequest":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":128,"minLength":1},{"type":"null"}],"title":"Name"},"quota_bytes":{"anyOf":[{"type":"integer","minimum":1.0},{"type":"null"}],"title":"Quota Bytes"}},"type":"object","title":"VolumeUpdateRequest"},"WebhookDeliveryListResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/WebhookDeliveryResponse"},"type":"array","title":"Items"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["items"],"title":"WebhookDeliveryListResponse"},"WebhookDeliveryResponse":{"properties":{"id":{"type":"string","title":"Id"},"endpoint_id":{"type":"string","title":"Endpoint Id"},"user_id":{"type":"integer","title":"User Id"},"event_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Id"},"event_type":{"type":"string","title":"Event Type"},"event_group":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Group"},"status":{"type":"string","title":"Status"},"scheduled_attempt":{"type":"integer","title":"Scheduled Attempt"},"next_retry_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Next Retry At"},"last_attempt_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Attempt At"},"delivered_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Delivered At"},"final_http_status":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Final Http Status"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"replay_of_delivery_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Replay Of Delivery Id"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","endpoint_id","user_id","event_type","status","scheduled_attempt","created_at","updated_at"],"title":"WebhookDeliveryResponse"},"WebhookEndpointCreateRequest":{"properties":{"url":{"type":"string","title":"Url"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"event_patterns":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Event Patterns"},"timeout_seconds":{"type":"integer","maximum":60.0,"minimum":3.0,"title":"Timeout Seconds","default":10},"max_retries":{"type":"integer","maximum":7.0,"minimum":1.0,"title":"Max Retries","default":7}},"type":"object","required":["url"],"title":"WebhookEndpointCreateRequest"},"WebhookEndpointCreateResponse":{"properties":{"endpoint":{"$ref":"#/components/schemas/WebhookEndpointResponse"},"secret":{"type":"string","title":"Secret"}},"type":"object","required":["endpoint","secret"],"title":"WebhookEndpointCreateResponse"},"WebhookEndpointResponse":{"properties":{"id":{"type":"string","title":"Id"},"user_id":{"type":"integer","title":"User Id"},"url":{"type":"string","title":"Url"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"status":{"type":"string","title":"Status"},"enabled":{"type":"boolean","title":"Enabled"},"subscribed_event_patterns":{"items":{"type":"string"},"type":"array","title":"Subscribed Event Patterns"},"signing_version":{"type":"string","title":"Signing Version"},"secret_hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Secret Hint"},"timeout_seconds":{"type":"integer","title":"Timeout Seconds"},"max_retries":{"type":"integer","title":"Max Retries"},"consecutive_failures":{"type":"integer","title":"Consecutive Failures"},"last_verified_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Verified At"},"last_delivery_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Delivery At"},"last_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Error"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","user_id","url","status","enabled","signing_version","timeout_seconds","max_retries","consecutive_failures","created_at","updated_at"],"title":"WebhookEndpointResponse"},"WebhookEndpointUpdateRequest":{"properties":{"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"},"event_patterns":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Event Patterns"},"timeout_seconds":{"anyOf":[{"type":"integer","maximum":60.0,"minimum":3.0},{"type":"null"}],"title":"Timeout Seconds"},"max_retries":{"anyOf":[{"type":"integer","maximum":7.0,"minimum":1.0},{"type":"null"}],"title":"Max Retries"}},"type":"object","title":"WebhookEndpointUpdateRequest"},"WebhookSecretRotateResponse":{"properties":{"endpoint_id":{"type":"string","title":"Endpoint Id"},"secret":{"type":"string","title":"Secret"}},"type":"object","required":["endpoint_id","secret"],"title":"WebhookSecretRotateResponse"},"WebhookVerifyResponse":{"properties":{"endpoint_id":{"type":"string","title":"Endpoint Id"},"verified":{"type":"boolean","title":"Verified"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"}},"type":"object","required":["endpoint_id","verified"],"title":"WebhookVerifyResponse"},"abc__TaskRead__1":{"properties":{"id":{"type":"integer","title":"Id"},"microvm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Microvm Id"},"session_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Session Id"},"is_complete":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Complete"},"cpu_time":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Cpu Time"},"execution_time":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Execution Time"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","microvm_id","session_id","is_complete","cpu_time","execution_time","created_at"],"title":"TaskRead"},"abc__TaskRead__2":{"properties":{"id":{"type":"integer","title":"Id"},"serialized_task":{"type":"string","format":"binary","title":"Serialized Task"},"serialized_stdout":{"anyOf":[{"type":"string","format":"binary"},{"type":"null"}],"title":"Serialized Stdout"},"serialized_stderr":{"anyOf":[{"type":"string","format":"binary"},{"type":"null"}],"title":"Serialized Stderr"},"microvm_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Microvm Id"},"session_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Session Id"},"is_complete":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Complete"},"cpu_time":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Cpu Time"},"execution_time":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Execution Time"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","serialized_task","serialized_stdout","serialized_stderr","microvm_id","session_id","is_complete","cpu_time","execution_time","created_at"],"title":"TaskRead"},"app__agents__api__routers__vaults__CredentialCreate":{"properties":{"name":{"type":"string","title":"Name"},"credential_type":{"type":"string","title":"Credential Type","default":"api_key"},"value":{"type":"string","title":"Value"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"injection_targets":{"anyOf":[{"items":{"$ref":"#/components/schemas/InjectionTarget"},"type":"array"},{"type":"null"}],"title":"Injection Targets"}},"type":"object","required":["name","value"],"title":"CredentialCreate"},"app__agents__api__routers__vaults__VaultCreate":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","required":["name"],"title":"VaultCreate"},"app__agents__api__routers__vaults__VaultUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","title":"VaultUpdate"},"app__api__routes__vaults__CredentialCreate":{"properties":{"name":{"type":"string","maxLength":64,"title":"Name"},"value":{"type":"string","minLength":1,"title":"Value"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"credential_type":{"type":"string","maxLength":32,"title":"Credential Type","default":"api_key"}},"type":"object","required":["name","value"],"title":"CredentialCreate"},"app__api__routes__vaults__VaultCreate":{"properties":{"name":{"type":"string","maxLength":256,"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","required":["name"],"title":"VaultCreate"},"app__api__routes__vaults__VaultUpdate":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":256},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","title":"VaultUpdate"}},"securitySchemes":{"OAuth2PasswordBearer":{"type":"oauth2","flows":{"password":{"scopes":{},"tokenUrl":"v1/login"}}},"HTTPBearer":{"type":"http","scheme":"bearer"}}}}