openapi: 3.1.0
info:
    contact:
        email: rich@quantumencoding.io
        name: Quantum Encoding Ltd
    description: Unified AI services API — 10 providers, 110+ endpoints, one API key.
    title: Quantum AI API
    version: 1.0.0
servers:
    - description: Production
      url: https://api.quantumencoding.ai
security:
    - apiKey: []
    - bearerAuth: []
tags:
    - name: Account
    - name: Agent
    - name: Audio
    - name: Auth
    - name: Batch
    - name: Chat
    - name: Compute
    - name: Contact
    - name: Credits
    - name: Documents
    - name: Embeddings
    - name: Images
    - name: Jobs
    - name: Keys
    - name: Models
    - name: Other
    - name: RAG
    - name: Realtime
    - name: Scanner
    - name: Scraper
    - name: Search
    - name: Twilio
    - name: Video
    - name: Voices
    - name: Webhooks
paths:
    /admin/audit:
        get:
            summary: Admin Audit
            tags:
                - Other
    /admin/batch/jobs:
        get:
            summary: Batch List
            tags:
                - Other
        post:
            summary: Batch Add
            tags:
                - Other
    /admin/batch/jobs/{id}/cancel:
        post:
            summary: Batch Cancel
            tags:
                - Other
    /admin/batch/load:
        post:
            summary: Batch Load J S O N L
            tags:
                - Other
    /admin/batch/run-next:
        post:
            summary: Batch Run Next
            tags:
                - Other
    /admin/batch/stats:
        get:
            summary: Batch Stats
            tags:
                - Other
    /admin/compute:
        get:
            summary: Admin Compute
            tags:
                - Other
    /admin/dev-applications:
        get:
            summary: Admin Dev Applications
            tags:
                - Other
    /admin/keys:
        get:
            summary: Admin Keys
            tags:
                - Other
    /admin/keys/{id}:
        delete:
            summary: Admin Revoke Key
            tags:
                - Other
    /admin/requests/errors:
        get:
            summary: Admin Errors
            tags:
                - Other
    /admin/requests/recent:
        get:
            summary: Admin Recent Requests
            tags:
                - Other
    /admin/stats/overview:
        get:
            summary: Admin Stats Overview
            tags:
                - Other
    /admin/stats/usage/daily:
        get:
            summary: Admin Usage Daily
            tags:
                - Other
    /admin/stats/usage/endpoints:
        get:
            summary: Admin Usage By Endpoint
            tags:
                - Other
    /admin/stats/usage/models:
        get:
            summary: Admin Usage By Model
            tags:
                - Other
    /admin/stats/usage/providers:
        get:
            summary: Admin Usage By Provider
            tags:
                - Other
    /admin/stats/usage/providers/daily:
        get:
            summary: Admin Usage By Provider Daily
            tags:
                - Other
    /admin/stats/usage/top-users:
        get:
            summary: Admin Usage Top Users
            tags:
                - Other
    /admin/system/health:
        get:
            summary: Admin System Health
            tags:
                - Other
    /admin/users:
        get:
            summary: Admin Users
            tags:
                - Other
    /admin/users/{id}:
        get:
            summary: Admin User Detail
            tags:
                - Other
    /admin/users/{id}/ban:
        post:
            summary: Admin User Ban
            tags:
                - Other
    /admin/users/{id}/credits:
        post:
            summary: Admin User Credits
            tags:
                - Other
    /admin/users/{id}/freeze:
        post:
            summary: Admin User Freeze
            tags:
                - Other
    /admin/users/{id}/tier:
        post:
            summary: Admin Set Tier
            tags:
                - Other
    /docs:
        get:
            summary: Docs
            tags:
                - Other
    /health:
        get:
            summary: Health
            tags:
                - Other
    /internal/compute/check-teardown:
        post:
            summary: Compute Check Teardown
            tags:
                - Other
    /internal/deployments/poll:
        post:
            summary: Deployment Poll
            tags:
                - Other
    /internal/deployments/teardown:
        post:
            summary: Deployment Teardown
            tags:
                - Other
    /internal/process-job:
        post:
            summary: Process Job
            tags:
                - Other
    /llms.txt:
        get:
            summary: L L Ms Txt
            tags:
                - Other
    /openapi.yaml:
        get:
            summary: Open A P I
            tags:
                - Other
    /qai/v1/account/balance:
        get:
            summary: Account Balance
            tags:
                - Account
    /qai/v1/account/service/usage:
        get:
            summary: Service Usage By Ref
            tags:
                - Account
    /qai/v1/account/usage:
        get:
            summary: Account Usage
            tags:
                - Account
    /qai/v1/account/usage/summary:
        get:
            summary: Account Usage Summary
            tags:
                - Account
    /qai/v1/cloudrun:
        post:
            summary: Cloud Run Agent (server-executed sandbox)
            tags:
                - Agent
    /qai/v1/audio/align:
        post:
            summary: Force Align
            tags:
                - Audio
    /qai/v1/audio/dialogue:
        post:
            summary: Dialogue
            tags:
                - Audio
    /qai/v1/audio/dub:
        post:
            summary: Dub
            tags:
                - Audio
    /qai/v1/audio/finetunes:
        get:
            summary: List Finetunes
            tags:
                - Audio
        post:
            summary: Create Finetune
            tags:
                - Audio
    /qai/v1/audio/finetunes/{id}:
        delete:
            summary: Delete Finetune
            tags:
                - Audio
    /qai/v1/audio/isolate:
        post:
            summary: Isolate Voice
            tags:
                - Audio
    /qai/v1/audio/music:
        post:
            summary: Music Generate
            tags:
                - Audio
    /qai/v1/audio/music/advanced:
        post:
            summary: Music Advanced
            tags:
                - Audio
    /qai/v1/audio/remix:
        post:
            summary: Remix Voice
            tags:
                - Audio
    /qai/v1/audio/sound-effects:
        post:
            summary: Sound Effects
            tags:
                - Audio
    /qai/v1/audio/speech-to-speech:
        post:
            summary: Speech To Speech
            tags:
                - Audio
    /qai/v1/audio/starfish-tts:
        post:
            summary: Starfish T T S
            tags:
                - Audio
    /qai/v1/audio/stt:
        post:
            summary: S T T
            tags:
                - Audio
    /qai/v1/audio/tts:
        post:
            summary: T T S
            tags:
                - Audio
    /qai/v1/audio/voice-design:
        post:
            summary: Voice Design
            tags:
                - Audio
    /qai/v1/auth/apple:
        post:
            summary: Auth Apple
            tags:
                - Auth
    /qai/v1/auth/google:
        post:
            summary: Auth Google
            tags:
                - Auth
    /qai/v1/batch:
        post:
            summary: User Batch Submit
            tags:
                - Batch
    /qai/v1/batch/jobs:
        get:
            summary: User Batch Jobs
            tags:
                - Batch
    /qai/v1/batch/jobs/{id}:
        get:
            summary: User Batch Result
            tags:
                - Batch
    /qai/v1/batch/jsonl:
        post:
            summary: User Batch J S O N L
            tags:
                - Batch
    /qai/v1/chat:
        post:
            summary: Chat
            tags:
                - Chat
    /qai/v1/chat/session:
        post:
            summary: Session Chat
            tags:
                - Chat
    /qai/v1/compute/catalog:
        get:
            summary: Catalog
            tags:
                - Compute
    /qai/v1/compute/deploy-model:
        post:
            summary: Deploy Model
            tags:
                - Compute
    /qai/v1/compute/deployments:
        get:
            summary: Deployment List
            tags:
                - Compute
    /qai/v1/compute/deployments/{id}:
        delete:
            summary: Deployment Delete
            tags:
                - Compute
        get:
            summary: Deployment Get
            tags:
                - Compute
    /qai/v1/compute/deployments/{id}/extend:
        post:
            summary: Deployment Extend
            tags:
                - Compute
    /qai/v1/compute/instance/{id}:
        delete:
            summary: Compute Delete
            tags:
                - Compute
        get:
            summary: Compute Instance
            tags:
                - Compute
    /qai/v1/compute/instance/{id}/keepalive:
        post:
            summary: Compute Keepalive
            tags:
                - Compute
    /qai/v1/compute/instance/{id}/ssh-key:
        post:
            summary: Compute S S H Key
            tags:
                - Compute
    /qai/v1/compute/instances:
        get:
            summary: Compute Instances
            tags:
                - Compute
    /qai/v1/compute/provision:
        post:
            summary: Compute Provision
            tags:
                - Compute
    /qai/v1/compute/templates:
        get:
            summary: Compute Templates
            tags:
                - Compute
    /qai/v1/contact:
        post:
            summary: Contact
            tags:
                - Contact
    /qai/v1/credits/balance:
        get:
            summary: Credit Balance
            tags:
                - Credits
    /qai/v1/credits/dev-program:
        post:
            summary: Dev Program Apply
            tags:
                - Credits
    /qai/v1/credits/lifetime:
        get:
            summary: Lifetime Plans
            tags:
                - Credits
        post:
            summary: Lifetime Purchase
            tags:
                - Credits
    /qai/v1/credits/packs:
        get:
            summary: Credit Packs
            tags:
                - Credits
    /qai/v1/credits/purchase:
        post:
            summary: Credit Purchase
            tags:
                - Credits
    /qai/v1/credits/tiers:
        get:
            summary: Dev Tiers
            tags:
                - Credits
    /qai/v1/documents/chunk:
        post:
            summary: Document Chunk
            tags:
                - Documents
    /qai/v1/documents/extract:
        post:
            summary: Document Extract
            tags:
                - Documents
    /qai/v1/documents/process:
        post:
            summary: Document Process
            tags:
                - Documents
    /qai/v1/embeddings:
        post:
            summary: Embeddings
            tags:
                - Embeddings
    /qai/v1/images/edit:
        post:
            summary: Image Edit
            tags:
                - Images
    /qai/v1/images/generate:
        post:
            summary: Image Generate
            tags:
                - Images
    /qai/v1/inference/{id}:
        post:
            summary: Inference
            tags:
                - Other
    /qai/v1/jobs:
        get:
            summary: Job List
            tags:
                - Jobs
        post:
            summary: Job Create
            tags:
                - Jobs
    /qai/v1/jobs/{id}:
        get:
            summary: Job Status
            tags:
                - Jobs
    /qai/v1/jobs/{id}/stream:
        get:
            summary: Job Stream
            tags:
                - Jobs
    /qai/v1/keys:
        get:
            summary: List A P I Keys
            tags:
                - Keys
        post:
            summary: Create A P I Key
            tags:
                - Keys
    /qai/v1/keys/{id}:
        delete:
            summary: Revoke A P I Key
            tags:
                - Keys
    /qai/v1/keys/ephemeral:
        post:
            summary: Create Ephemeral Key
            tags:
                - Keys
    /qai/v1/missions:
        post:
            summary: Mission
            tags:
                - Agent
    /qai/v1/models:
        get:
            summary: Models
            tags:
                - Models
    /qai/v1/pricing:
        get:
            summary: Pricing
            tags:
                - Models
    /qai/v1/rag/collections:
        get:
            summary: R A G Collections List
            tags:
                - RAG
        post:
            summary: R A G Collections Create
            tags:
                - RAG
    /qai/v1/rag/collections/{id}:
        delete:
            summary: R A G Collections Delete
            tags:
                - RAG
        get:
            summary: R A G Collections Get
            tags:
                - RAG
    /qai/v1/rag/collections/{id}/upload:
        post:
            summary: R A G Collections Upload
            tags:
                - RAG
    /qai/v1/rag/collections/search:
        post:
            summary: R A G Collections Search
            tags:
                - RAG
    /qai/v1/rag/corpora:
        get:
            summary: R A G Corpora
            tags:
                - RAG
    /qai/v1/rag/search:
        post:
            summary: R A G Search
            tags:
                - RAG
    /qai/v1/rag/surreal/providers:
        get:
            summary: Surreal R A G Providers
            tags:
                - RAG
    /qai/v1/rag/surreal/search:
        post:
            summary: Surreal R A G Search
            tags:
                - RAG
    /qai/v1/realtime/end:
        post:
            summary: Realtime End
            tags:
                - Realtime
    /qai/v1/realtime/refresh:
        post:
            summary: Realtime Refresh
            tags:
                - Realtime
    /qai/v1/realtime/session:
        post:
            summary: Realtime Session
            tags:
                - Realtime
    /qai/v1/scanner/diff:
        post:
            summary: Scanner Diff
            tags:
                - Scanner
    /qai/v1/scanner/query:
        post:
            summary: Scanner Query
            tags:
                - Scanner
    /qai/v1/scanner/scan:
        post:
            summary: Scanner Scan
            tags:
                - Scanner
    /qai/v1/scanner/scans:
        get:
            summary: Scanner List
            tags:
                - Scanner
    /qai/v1/scanner/scans/{id}:
        delete:
            summary: Scanner Delete
            tags:
                - Scanner
        get:
            summary: Scanner Get
            tags:
                - Scanner
    /qai/v1/scanner/scans/{id}/graph.svg:
        get:
            summary: Scanner Graph S V G
            tags:
                - Scanner
    /qai/v1/scanner/scans/{id}/types:
        get:
            summary: Scanner Type List
            tags:
                - Scanner
    /qai/v1/scanner/scans/{id}/types/{name}:
        get:
            summary: Scanner Type Query
            tags:
                - Scanner
    /qai/v1/scanner/upload:
        post:
            summary: Scanner Upload
            tags:
                - Scanner
    /qai/v1/scanner/verify:
        post:
            summary: Scanner Verify
            tags:
                - Scanner
    /qai/v1/scraper/scrape:
        post:
            summary: Scraper Scrape
            tags:
                - Scraper
    /qai/v1/scraper/screenshot:
        post:
            summary: Scraper Screenshot
            tags:
                - Scraper
    /qai/v1/search/answer:
        post:
            summary: Search Answer
            tags:
                - Search
    /qai/v1/search/context:
        post:
            summary: L L M Context
            tags:
                - Search
    /qai/v1/search/web:
        post:
            summary: Web Search
            tags:
                - Search
    /qai/v1/twilio/status:
        post:
            summary: Twilio Status
            tags:
                - Twilio
    /qai/v1/twilio/voice:
        post:
            summary: Twilio Voice
            tags:
                - Twilio
    /qai/v1/video/avatars:
        get:
            summary: Hey Gen Avatars
            tags:
                - Video
    /qai/v1/video/digital-twin:
        post:
            summary: Digital Twin
            tags:
                - Video
    /qai/v1/video/generate:
        post:
            summary: Video Generate
            tags:
                - Video
    /qai/v1/video/heygen-voices:
        get:
            summary: Hey Gen Voices
            tags:
                - Video
    /qai/v1/video/photo-avatar:
        post:
            summary: Photo Avatar
            tags:
                - Video
    /qai/v1/video/studio:
        post:
            summary: Studio Video
            tags:
                - Video
    /qai/v1/video/templates:
        get:
            summary: Hey Gen Templates
            tags:
                - Video
    /qai/v1/video/translate:
        post:
            summary: Video Translate
            tags:
                - Video
    /qai/v1/voices:
        get:
            summary: List Voices
            tags:
                - Voices
    /qai/v1/voices/{id}:
        delete:
            summary: Delete Voice
            tags:
                - Voices
    /qai/v1/voices/clone:
        post:
            summary: Clone Voice
            tags:
                - Voices
    /qai/v1/voices/library:
        get:
            summary: Shared Voices
            tags:
                - Voices
    /qai/v1/voices/library/add:
        post:
            summary: Add Shared Voice
            tags:
                - Voices
    /qai/v1/webhooks/stripe:
        post:
            summary: Stripe Webhook
            tags:
                - Webhooks
    /qai/v1/workers/heartbeat:
        post:
            summary: Worker Heartbeat
            tags:
                - Other
    /qai/v1/workers/jobs/{id}/result:
        post:
            summary: Worker Result
            tags:
                - Other
    /qai/v1/workers/pull:
        get:
            summary: Worker Pull
            tags:
                - Other
    /ready:
        get:
            summary: Health
            tags:
                - Other
    /reference:
        get:
            summary: Docs
            tags:
                - Other
components:
    schemas:
        AddVoiceFromLibraryRequest:
            properties:
                name:
                    type: string
                public_owner_id:
                    type: string
                voice_id:
                    type: string
            required:
                - public_owner_id
                - voice_id
            type: object
        AddVoiceFromLibraryResponse:
            properties:
                voice_id:
                    type: string
            required:
                - voice_id
            type: object
        AgentRequest:
            properties:
                conductor_model:
                    type: string
                max_steps:
                    type: integer
                session_id:
                    type: string
                system_prompt:
                    type: string
                task:
                    type: string
                workers:
                    type: array
            required:
                - task
            type: object
        AgentStream:
            properties:
                inner:
                    type: object
            required:
                - inner
            type: object
        AgentStreamEvent:
            properties:
                data:
                    type: object
                event_type:
                    type: string
            required:
                - event_type
                - data
            type: object
        AgentWorker:
            properties:
                description:
                    type: string
                model:
                    type: string
                name:
                    type: string
                tier:
                    type: string
            required:
                - name
            type: object
        AlignRequest:
            properties:
                audio_base64:
                    type: string
                language:
                    type: string
                text:
                    type: string
            required:
                - audio_base64
                - text
            type: object
        AlignResponse:
            properties:
                alignment:
                    type: array
                cost_ticks:
                    type: integer
                model:
                    type: string
                request_id:
                    type: string
                segments:
                    type: array
            required:
                - segments
                - alignment
                - model
                - cost_ticks
                - request_id
            type: object
        AlignedWord:
            properties:
                confidence:
                    type: number
                end_time:
                    type: number
                start_time:
                    type: number
                text:
                    type: string
            required:
                - text
                - start_time
                - end_time
                - confidence
            type: object
        AlignmentSegment:
            properties:
                end:
                    type: number
                start:
                    type: number
                text:
                    type: string
            required:
                - text
                - start
                - end
            type: object
        AnimateRequest:
            properties:
                action_id:
                    type: integer
                post_process:
                    type: object
                rig_task_id:
                    type: string
            required:
                - rig_task_id
                - action_id
            type: object
        AnimationPostProcess:
            properties:
                fps:
                    type: integer
                operation_type:
                    type: string
            required:
                - operation_type
            type: object
        ApiError:
            properties:
                code:
                    type: string
                message:
                    type: string
                request_id:
                    type: string
                status_code:
                    type: object
            required:
                - status_code
                - code
                - message
                - request_id
            type: object
        ApiErrorBody:
            properties:
                error:
                    type: object
            required:
                - error
            type: object
        ApiErrorInner:
            properties:
                code:
                    type: string
                error_type:
                    type: string
                message:
                    type: string
            required:
                - message
                - code
                - error_type
            type: object
        AudioResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                extra:
                    type: object
                format:
                    type: string
                model:
                    type: string
                request_id:
                    type: string
                size_bytes:
                    type: integer
            required:
                - cost_ticks
                - request_id
                - extra
            type: object
        AuthAppleRequest:
            properties:
                id_token:
                    type: string
                name:
                    type: string
            required:
                - id_token
            type: object
        AuthResponse:
            properties:
                token:
                    type: string
                user:
                    type: object
            required:
                - token
                - user
            type: object
        AuthUser:
            properties:
                avatar_url:
                    type: string
                email:
                    type: string
                id:
                    type: string
                name:
                    type: string
            required:
                - id
            type: object
        Avatar:
            properties:
                avatar_id:
                    type: string
                extra:
                    type: object
                gender:
                    type: string
                name:
                    type: string
                preview_url:
                    type: string
            required:
                - avatar_id
                - extra
            type: object
        AvatarsResponse:
            properties:
                avatars:
                    type: array
            required:
                - avatars
            type: object
        BalanceResponse:
            properties:
                balance_ticks:
                    type: integer
                balance_usd:
                    type: number
                ticks_per_usd:
                    type: integer
                user_id:
                    type: string
            required:
                - balance_ticks
                - balance_usd
                - ticks_per_usd
            type: object
        BasicAnimations:
            properties:
                idle_fbx:
                    type: string
                idle_glb:
                    type: string
                running_fbx:
                    type: string
                running_glb:
                    type: string
                walking_fbx:
                    type: string
                walking_glb:
                    type: string
            required:
                - walking_glb
                - walking_fbx
                - running_glb
                - running_fbx
                - idle_glb
                - idle_fbx
            type: object
        BatchJob:
            properties:
                max_tokens:
                    type: integer
                model:
                    type: string
                prompt:
                    type: string
                system_prompt:
                    type: string
                title:
                    type: string
            required:
                - model
                - prompt
            type: object
        BatchJobInfo:
            properties:
                completed_at:
                    type: string
                cost_ticks:
                    type: integer
                created_at:
                    type: string
                error:
                    type: string
                job_id:
                    type: string
                model:
                    type: string
                result:
                    type: object
                status:
                    type: string
                title:
                    type: string
            required:
                - job_id
                - status
                - cost_ticks
            type: object
        BatchJobsResponse:
            properties:
                jobs:
                    type: array
            required:
                - jobs
            type: object
        BatchJsonlResponse:
            properties:
                job_ids:
                    type: array
            required:
                - job_ids
            type: object
        BatchSubmitRequest:
            properties:
                jobs:
                    type: array
            required:
                - jobs
            type: object
        BatchSubmitResponse:
            properties:
                job_ids:
                    type: array
                status:
                    type: string
            required:
                - job_ids
                - status
            type: object
        BillingEntry:
            properties:
                cost_usd:
                    type: number
                end_time:
                    type: string
                instance_id:
                    type: string
                instance_name:
                    type: string
                sku_description:
                    type: string
                start_time:
                    type: string
                usage_hours:
                    type: number
            required:
                - instance_id
                - cost_usd
            type: object
        BillingRequest:
            properties:
                end_date:
                    type: string
                instance_id:
                    type: string
                start_date:
                    type: string
            type: object
        BillingResponse:
            properties:
                entries:
                    type: array
                total_cost_usd:
                    type: number
            required:
                - entries
                - total_cost_usd
            type: object
        ChatMessage:
            properties:
                content:
                    type: string
                content_blocks:
                    type: array
                is_error:
                    type: boolean
                role:
                    type: string
                tool_call_id:
                    type: string
            required:
                - role
            type: object
        ChatRequest:
            properties:
                max_tokens:
                    type: integer
                messages:
                    type: array
                model:
                    type: string
                provider_options:
                    type: object
                stream:
                    type: boolean
                temperature:
                    type: number
                tools:
                    type: array
            required:
                - model
                - messages
            type: object
        ChatResponse:
            properties:
                citations:
                    type: array
                content:
                    type: array
                cost_ticks:
                    type: integer
                id:
                    type: string
                model:
                    type: string
                request_id:
                    type: string
                stop_reason:
                    type: string
                usage:
                    type: object
            required:
                - id
                - model
                - content
                - stop_reason
                - citations
                - cost_ticks
                - request_id
            type: object
        ChatStream:
            properties:
                inner:
                    type: object
            required:
                - inner
            type: object
        ChatTool:
            properties:
                description:
                    type: string
                name:
                    type: string
                parameters:
                    type: object
            required:
                - name
                - description
            type: object
        ChatUsage:
            properties:
                cost_ticks:
                    type: integer
                input_tokens:
                    type: integer
                output_tokens:
                    type: integer
            required:
                - input_tokens
                - output_tokens
                - cost_ticks
            type: object
        ChunkDocumentRequest:
            properties:
                file_base64:
                    type: string
                filename:
                    type: string
                max_chunk_tokens:
                    type: integer
                overlap_tokens:
                    type: integer
            required:
                - file_base64
                - filename
            type: object
        ChunkDocumentResponse:
            properties:
                chunks:
                    type: array
                cost_ticks:
                    type: integer
                request_id:
                    type: string
                total_chunks:
                    type: integer
            required:
                - chunks
                - cost_ticks
                - request_id
            type: object
        Citation:
            properties:
                index:
                    type: integer
                text:
                    type: string
                title:
                    type: string
                url:
                    type: string
            required:
                - title
                - url
                - text
                - index
            type: object
        Client:
            properties:
                inner:
                    type: object
            required:
                - inner
            type: object
        ClientBuilder:
            properties:
                api_key:
                    type: string
                base_url:
                    type: string
                timeout:
                    type: object
            required:
                - api_key
                - base_url
                - timeout
            type: object
        CloneVoiceFile:
            properties:
                data:
                    type: array
                filename:
                    type: string
                mime_type:
                    type: string
            required:
                - filename
                - data
                - mime_type
            type: object
        CloneVoiceRequest:
            properties:
                audio_samples:
                    type: array
                description:
                    type: string
                name:
                    type: string
            required:
                - name
                - audio_samples
            type: object
        CloneVoiceResponse:
            properties:
                name:
                    type: string
                status:
                    type: string
                voice_id:
                    type: string
            required:
                - voice_id
                - name
            type: object
        Collection:
            properties:
                created_at:
                    type: string
                description:
                    type: string
                document_count:
                    type: integer
                id:
                    type: string
                name:
                    type: string
                owner:
                    type: string
                provider:
                    type: string
            required:
                - id
                - name
            type: object
        CollectionDocument:
            properties:
                content_type:
                    type: string
                created_at:
                    type: string
                document_status:
                    type: string
                file_id:
                    type: string
                indexed:
                    type: boolean
                name:
                    type: string
                processing_status:
                    type: string
                size_bytes:
                    type: integer
            required:
                - file_id
                - name
            type: object
        CollectionSearchRequest:
            properties:
                collection_ids:
                    type: array
                max_results:
                    type: integer
                mode:
                    type: string
                query:
                    type: string
            required:
                - query
                - collection_ids
            type: object
        CollectionSearchResult:
            properties:
                collection_id:
                    type: string
                content:
                    type: string
                file_id:
                    type: string
                metadata:
                    type: object
                score:
                    type: number
            required:
                - content
            type: object
        CollectionUploadResult:
            properties:
                bytes:
                    type: integer
                file_id:
                    type: string
                filename:
                    type: string
            required:
                - file_id
                - filename
            type: object
        ComputeInstance:
            properties:
                auto_teardown_minutes:
                    type: integer
                created_at:
                    type: string
                id:
                    type: string
                price_per_hour_usd:
                    type: number
                ssh_address:
                    type: string
                status:
                    type: string
                template:
                    type: string
                zone:
                    type: string
            required:
                - id
                - status
            type: object
        ComputeInstanceInfo:
            properties:
                auto_teardown_minutes:
                    type: integer
                cost_usd:
                    type: number
                created_at:
                    type: string
                error_message:
                    type: string
                external_ip:
                    type: string
                gcp_status:
                    type: string
                gpu_count:
                    type: integer
                gpu_type:
                    type: string
                hourly_usd:
                    type: number
                instance_id:
                    type: string
                last_active_at:
                    type: string
                machine_type:
                    type: string
                spot:
                    type: boolean
                ssh_username:
                    type: string
                status:
                    type: string
                template:
                    type: string
                terminated_at:
                    type: string
                uptime_minutes:
                    type: integer
                zone:
                    type: string
            required:
                - instance_id
                - template
                - status
                - zone
                - spot
                - hourly_usd
                - cost_usd
                - uptime_minutes
                - auto_teardown_minutes
            type: object
        ComputeTemplate:
            properties:
                gpu:
                    type: string
                gpu_count:
                    type: integer
                id:
                    type: string
                name:
                    type: string
                price_per_hour_usd:
                    type: number
                ram_gb:
                    type: integer
                vcpus:
                    type: integer
                vram_gb:
                    type: integer
                zones:
                    type: array
            required:
                - id
            type: object
        ContactRequest:
            properties:
                email:
                    type: string
                message:
                    type: string
                name:
                    type: string
                subject:
                    type: string
            required:
                - name
                - email
                - message
            type: object
        ContactResponse:
            properties:
                message:
                    type: string
                status:
                    type: string
            required:
                - status
            type: object
        ContentBlock:
            properties:
                id:
                    type: string
                input:
                    type: object
                name:
                    type: string
                text:
                    type: string
                thought_signature:
                    type: string
                type:
                    type: string
            required:
                - type
            type: object
        ContextChunk:
            properties:
                content:
                    type: string
                content_type:
                    type: string
                score:
                    type: number
                title:
                    type: string
                url:
                    type: string
            required:
                - content
                - url
                - title
                - score
            type: object
        ContextConfig:
            properties:
                auto_compact:
                    type: boolean
                max_tokens:
                    type: integer
            type: object
        ContextMetadata:
            properties:
                compacted:
                    type: boolean
                compaction_note:
                    type: string
                estimated_tokens:
                    type: integer
                tools_cleared:
                    type: integer
                turn_count:
                    type: integer
            required:
                - turn_count
                - estimated_tokens
                - compacted
            type: object
        ContextOptions:
            properties:
                count:
                    type: integer
                country:
                    type: string
                freshness:
                    type: string
                language:
                    type: string
            type: object
        CreateCollectionRequest:
            properties:
                name:
                    type: string
            required:
                - name
            type: object
        CreateKeyRequest:
            properties:
                endpoints:
                    type: array
                name:
                    type: string
                rate_limit:
                    type: integer
                spend_cap_usd:
                    type: number
            required:
                - name
            type: object
        CreateKeyResponse:
            properties:
                details:
                    type: object
                key:
                    type: string
            required:
                - key
                - details
            type: object
        CreditBalanceResponse:
            properties:
                balance_ticks:
                    type: integer
                balance_usd:
                    type: number
            required:
                - balance_ticks
                - balance_usd
            type: object
        CreditPack:
            properties:
                amount_usd:
                    type: number
                description:
                    type: string
                id:
                    type: string
                label:
                    type: string
                ticks:
                    type: integer
            required:
                - id
                - label
                - amount_usd
                - ticks
            type: object
        CreditPacksResponse:
            properties:
                packs:
                    type: array
            required:
                - packs
            type: object
        CreditPurchaseRequest:
            properties:
                cancel_url:
                    type: string
                pack_id:
                    type: string
                success_url:
                    type: string
            required:
                - pack_id
            type: object
        CreditPurchaseResponse:
            properties:
                checkout_url:
                    type: string
            required:
                - checkout_url
            type: object
        CreditTier:
            properties:
                discount_percent:
                    type: number
                extra:
                    type: object
                min_balance:
                    type: integer
                name:
                    type: string
            required:
                - min_balance
                - discount_percent
                - extra
            type: object
        CreditTiersResponse:
            properties:
                tiers:
                    type: array
            required:
                - tiers
            type: object
        DeleteResponse:
            properties:
                instance_id:
                    type: string
                status:
                    type: string
            required:
                - status
            type: object
        DevProgramApplyRequest:
            properties:
                company:
                    type: string
                expected_usd:
                    type: number
                use_case:
                    type: string
                website:
                    type: string
            required:
                - use_case
            type: object
        DevProgramApplyResponse:
            properties:
                status:
                    type: string
            required:
                - status
            type: object
        DialogueRequest:
            properties:
                model:
                    type: string
                output_format:
                    type: string
                seed:
                    type: integer
                text:
                    type: string
                voices:
                    type: array
            required:
                - text
                - voices
            type: object
        DialogueResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                format:
                    type: string
                model:
                    type: string
                request_id:
                    type: string
                size_bytes:
                    type: integer
            required:
                - audio_base64
                - format
                - size_bytes
                - model
                - cost_ticks
                - request_id
            type: object
        DialogueTurn:
            properties:
                speaker:
                    type: string
                text:
                    type: string
                voice:
                    type: string
            required:
                - speaker
                - text
            type: object
        DialogueVoice:
            properties:
                name:
                    type: string
                voice_id:
                    type: string
            required:
                - voice_id
                - name
            type: object
        DigitalTwinRequest:
            properties:
                aspect_ratio:
                    type: string
                avatar_id:
                    type: string
                script:
                    type: string
                voice_id:
                    type: string
            required:
                - avatar_id
                - script
            type: object
        Discussion:
            properties:
                age:
                    type: string
                description:
                    type: string
                forum:
                    type: string
                title:
                    type: string
                url:
                    type: string
            required:
                - title
                - url
                - description
            type: object
        DocumentChunk:
            properties:
                index:
                    type: integer
                text:
                    type: string
                token_count:
                    type: integer
            required:
                - index
                - text
            type: object
        DocumentRequest:
            properties:
                file_base64:
                    type: string
                filename:
                    type: string
                output_format:
                    type: string
            required:
                - file_base64
                - filename
            type: object
        DocumentResponse:
            properties:
                content:
                    type: string
                cost_ticks:
                    type: integer
                format:
                    type: string
                meta:
                    type: object
                request_id:
                    type: string
            required:
                - content
                - format
                - cost_ticks
                - request_id
            type: object
        DubRequest:
            properties:
                audio_base64:
                    type: string
                filename:
                    type: string
                source_language:
                    type: string
                target_language:
                    type: string
            required:
                - audio_base64
                - target_language
            type: object
        DubResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                dubbing_id:
                    type: string
                format:
                    type: string
                processing_time_seconds:
                    type: number
                request_id:
                    type: string
                status:
                    type: string
                target_lang:
                    type: string
            required:
                - dubbing_id
                - audio_base64
                - format
                - target_lang
                - status
                - processing_time_seconds
                - cost_ticks
                - request_id
            type: object
        ElevenMusicClip:
            properties:
                base64:
                    type: string
                format:
                    type: string
                size:
                    type: integer
            required:
                - base64
                - format
                - size
            type: object
        ElevenMusicRequest:
            properties:
                duration_seconds:
                    type: integer
                edit_instruction:
                    type: string
                edit_reference_id:
                    type: string
                finetune_id:
                    type: string
                language:
                    type: string
                model:
                    type: string
                prompt:
                    type: string
                sections:
                    type: array
                style:
                    type: string
                style_exclude:
                    type: string
                vocals:
                    type: boolean
            required:
                - model
                - prompt
            type: object
        ElevenMusicResponse:
            properties:
                clips:
                    type: array
                cost_ticks:
                    type: integer
                model:
                    type: string
                request_id:
                    type: string
            required:
                - clips
                - model
                - cost_ticks
                - request_id
            type: object
        EmbedRequest:
            properties:
                input:
                    type: array
                model:
                    type: string
            required:
                - model
                - input
            type: object
        EmbedResponse:
            properties:
                cost_ticks:
                    type: integer
                embeddings:
                    type: array
                model:
                    type: string
                request_id:
                    type: string
            required:
                - embeddings
                - model
                - cost_ticks
                - request_id
            type: object
        FinetuneInfo:
            properties:
                created_at:
                    type: string
                finetune_id:
                    type: string
                name:
                    type: string
                status:
                    type: string
            required:
                - finetune_id
                - name
                - status
            type: object
        GeneratedImage:
            properties:
                base64:
                    type: string
                format:
                    type: string
                index:
                    type: integer
            required:
                - base64
                - format
                - index
            type: object
        GeneratedVideo:
            properties:
                base64:
                    type: string
                format:
                    type: string
                index:
                    type: integer
                size_bytes:
                    type: integer
            required:
                - base64
                - format
                - size_bytes
                - index
            type: object
        HeyGenAvatarsResponse:
            properties:
                avatars:
                    type: array
                request_id:
                    type: string
            required:
                - avatars
                - request_id
            type: object
        HeyGenTemplatesResponse:
            properties:
                request_id:
                    type: string
                templates:
                    type: array
            required:
                - templates
                - request_id
            type: object
        HeyGenVoice:
            properties:
                extra:
                    type: object
                gender:
                    type: string
                language:
                    type: string
                name:
                    type: string
                voice_id:
                    type: string
            required:
                - voice_id
                - extra
            type: object
        HeyGenVoicesResponse:
            properties:
                voices:
                    type: array
            required:
                - voices
            type: object
        ImageEditRequest:
            properties:
                count:
                    type: integer
                input_images:
                    type: array
                model:
                    type: string
                prompt:
                    type: string
                size:
                    type: string
            required:
                - model
                - prompt
                - input_images
            type: object
        ImageRequest:
            properties:
                aspect_ratio:
                    type: string
                background:
                    type: string
                count:
                    type: integer
                enable_pbr:
                    type: boolean
                image_url:
                    type: string
                model:
                    type: string
                output_format:
                    type: string
                pose_mode:
                    type: string
                prompt:
                    type: string
                quality:
                    type: string
                size:
                    type: string
                style:
                    type: string
                symmetry_mode:
                    type: string
                target_polycount:
                    type: integer
                topology:
                    type: string
            required:
                - model
                - prompt
            type: object
        ImageResponse:
            properties:
                cost_ticks:
                    type: integer
                images:
                    type: array
                model:
                    type: string
                request_id:
                    type: string
            required:
                - images
                - model
                - cost_ticks
                - request_id
            type: object
        Infobox:
            properties:
                description:
                    type: string
                title:
                    type: string
                url:
                    type: string
            required:
                - title
                - description
            type: object
        InstanceResponse:
            properties:
                instance:
                    type: object
            required:
                - instance
            type: object
        InstancesResponse:
            properties:
                instances:
                    type: array
            required:
                - instances
            type: object
        IsolateVoiceRequest:
            properties:
                audio_base64:
                    type: string
                output_format:
                    type: string
            required:
                - audio_base64
            type: object
        IsolateVoiceResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                format:
                    type: string
                request_id:
                    type: string
                size_bytes:
                    type: integer
            required:
                - audio_base64
                - format
                - size_bytes
                - cost_ticks
                - request_id
            type: object
        JobAcceptedResponse:
            properties:
                job_id:
                    type: string
                job_type:
                    type: string
                request_id:
                    type: string
                status:
                    type: string
            required:
                - job_id
                - status
            type: object
        JobCreateRequest:
            properties:
                params:
                    type: object
                type:
                    type: string
            required:
                - type
                - params
            type: object
        JobCreateResponse:
            properties:
                job_id:
                    type: string
                status:
                    type: string
            required:
                - job_id
                - status
            type: object
        JobListEntry:
            properties:
                completed_at:
                    type: string
                cost_ticks:
                    type: integer
                created_at:
                    type: string
                error:
                    type: string
                job_id:
                    type: string
                job_type:
                    type: string
                request_id:
                    type: string
                result:
                    type: object
                started_at:
                    type: string
                status:
                    type: string
            required:
                - job_id
                - status
                - cost_ticks
            type: object
        JobListResponse:
            properties:
                jobs:
                    type: array
                request_id:
                    type: string
            required:
                - jobs
            type: object
        JobResponse:
            properties:
                cost_ticks:
                    type: integer
                extra:
                    type: object
                job_id:
                    type: string
                status:
                    type: string
            required:
                - job_id
                - status
                - cost_ticks
                - extra
            type: object
        JobStatusResponse:
            properties:
                cost_ticks:
                    type: integer
                error:
                    type: string
                job_id:
                    type: string
                result:
                    type: object
                status:
                    type: string
            required:
                - job_id
                - status
                - cost_ticks
            type: object
        JobStreamEvent:
            properties:
                completed_at:
                    type: string
                cost_ticks:
                    type: integer
                error:
                    type: string
                event_type:
                    type: string
                job_id:
                    type: string
                result:
                    type: object
                status:
                    type: string
            required:
                - event_type
                - cost_ticks
            type: object
        JobSummary:
            properties:
                completed_at:
                    type: string
                cost_ticks:
                    type: integer
                created_at:
                    type: string
                job_id:
                    type: string
                job_type:
                    type: string
                status:
                    type: string
            required:
                - job_id
                - status
                - cost_ticks
            type: object
        KeyDetails:
            properties:
                created_at:
                    type: string
                id:
                    type: string
                key_prefix:
                    type: string
                last_used:
                    type: string
                name:
                    type: string
                revoked:
                    type: boolean
                scope:
                    type: object
                spent_ticks:
                    type: integer
            required:
                - id
                - name
                - key_prefix
                - spent_ticks
                - revoked
            type: object
        LLMContextResponse:
            properties:
                chunks:
                    type: array
                query:
                    type: string
                sources:
                    type: array
            required:
                - query
                - chunks
                - sources
            type: object
        ListFinetunesResponse:
            properties:
                finetunes:
                    type: array
            required:
                - finetunes
            type: object
        ListJobsResponse:
            properties:
                jobs:
                    type: array
            required:
                - jobs
            type: object
        ListKeysResponse:
            properties:
                keys:
                    type: array
            required:
                - keys
            type: object
        MissionRequest:
            properties:
                auto_plan:
                    type: boolean
                build_command:
                    type: string
                conductor_model:
                    type: string
                context_config:
                    type: object
                deployment_id:
                    type: string
                goal:
                    type: string
                max_steps:
                    type: integer
                session_id:
                    type: string
                strategy:
                    type: string
                system_prompt:
                    type: string
                worker_model:
                    type: string
                workers:
                    type: object
                workspace_path:
                    type: string
            required:
                - goal
            type: object
        MissionWorker:
            properties:
                description:
                    type: string
                model:
                    type: string
                tier:
                    type: string
            type: object
        ModelInfo:
            properties:
                display_name:
                    type: string
                id:
                    type: string
                input_per_million:
                    type: number
                output_per_million:
                    type: number
                provider:
                    type: string
            required:
                - id
                - provider
                - display_name
                - input_per_million
                - output_per_million
            type: object
        ModelUrls:
            properties:
                blend:
                    type: string
                fbx:
                    type: string
                glb:
                    type: string
                obj:
                    type: string
                stl:
                    type: string
                usdz:
                    type: string
            required:
                - glb
                - fbx
                - obj
                - usdz
                - stl
                - blend
            type: object
        MusicAdvancedClip:
            properties:
                base64:
                    type: string
                format:
                    type: string
                size:
                    type: integer
            required:
                - base64
                - format
                - size
            type: object
        MusicAdvancedRequest:
            properties:
                duration_seconds:
                    type: integer
                finetune_id:
                    type: string
                model:
                    type: string
                prompt:
                    type: string
            required:
                - prompt
            type: object
        MusicAdvancedResponse:
            properties:
                clips:
                    type: array
                cost_ticks:
                    type: integer
                model:
                    type: string
                request_id:
                    type: string
            required:
                - clips
                - model
                - cost_ticks
                - request_id
            type: object
        MusicClip:
            properties:
                base64:
                    type: string
                format:
                    type: string
                index:
                    type: integer
                size_bytes:
                    type: integer
            required:
                - base64
                - format
                - size_bytes
                - index
            type: object
        MusicFinetuneCreateRequest:
            properties:
                description:
                    type: string
                name:
                    type: string
                samples:
                    type: array
            required:
                - name
                - samples
            type: object
        MusicFinetuneInfo:
            properties:
                created_at:
                    type: string
                description:
                    type: string
                finetune_id:
                    type: string
                model_id:
                    type: string
                name:
                    type: string
                status:
                    type: string
            required:
                - finetune_id
                - name
                - status
            type: object
        MusicFinetuneListResponse:
            properties:
                finetunes:
                    type: array
            required:
                - finetunes
            type: object
        MusicRequest:
            properties:
                duration_seconds:
                    type: integer
                model:
                    type: string
                prompt:
                    type: string
            required:
                - model
                - prompt
            type: object
        MusicResponse:
            properties:
                audio_clips:
                    type: array
                cost_ticks:
                    type: integer
                model:
                    type: string
                request_id:
                    type: string
            required:
                - audio_clips
                - model
                - cost_ticks
                - request_id
            type: object
        MusicSection:
            properties:
                lyrics:
                    type: string
                section_type:
                    type: string
                style:
                    type: string
                style_exclude:
                    type: string
            required:
                - section_type
            type: object
        NewsResult:
            properties:
                age:
                    type: string
                description:
                    type: string
                source:
                    type: string
                title:
                    type: string
                url:
                    type: string
            required:
                - title
                - url
                - description
            type: object
        PhotoAvatarRequest:
            properties:
                aspect_ratio:
                    type: string
                photo_base64:
                    type: string
                script:
                    type: string
                voice_id:
                    type: string
            required:
                - photo_base64
                - script
            type: object
        PricingEntry:
            properties:
                cached_per_million:
                    type: number
                display_name:
                    type: string
                input_per_million:
                    type: number
                model:
                    type: string
                output_per_million:
                    type: number
                provider:
                    type: string
            required:
                - provider
                - model
                - display_name
                - input_per_million
                - output_per_million
                - cached_per_million
            type: object
        PricingInfo:
            properties:
                display_name:
                    type: string
                id:
                    type: string
                input_per_million:
                    type: number
                output_per_million:
                    type: number
                provider:
                    type: string
            required:
                - id
                - provider
                - display_name
                - input_per_million
                - output_per_million
            type: object
        ProcessDocumentRequest:
            properties:
                file_base64:
                    type: string
                filename:
                    type: string
                model:
                    type: string
                prompt:
                    type: string
            required:
                - file_base64
                - filename
            type: object
        ProcessDocumentResponse:
            properties:
                content:
                    type: string
                cost_ticks:
                    type: integer
                model:
                    type: string
                request_id:
                    type: string
            required:
                - content
                - cost_ticks
                - request_id
            type: object
        ProvisionRequest:
            properties:
                auto_teardown_minutes:
                    type: integer
                spot:
                    type: boolean
                ssh_public_key:
                    type: string
                template:
                    type: string
                zone:
                    type: string
            required:
                - template
            type: object
        ProvisionResponse:
            properties:
                instance_id:
                    type: string
                price_per_hour_usd:
                    type: number
                ssh_address:
                    type: string
                status:
                    type: string
                template:
                    type: string
                zone:
                    type: string
            required:
                - instance_id
                - status
            type: object
        RagCorpus:
            properties:
                description:
                    type: string
                displayName:
                    type: string
                name:
                    type: string
                state:
                    type: string
            required:
                - name
                - displayName
                - description
                - state
            type: object
        RagResult:
            properties:
                distance:
                    type: number
                score:
                    type: number
                source_name:
                    type: string
                source_uri:
                    type: string
                text:
                    type: string
            required:
                - source_uri
                - source_name
                - text
                - score
                - distance
            type: object
        RagSearchRequest:
            properties:
                corpus:
                    type: string
                query:
                    type: string
                top_k:
                    type: integer
            required:
                - query
            type: object
        RagSearchResponse:
            properties:
                corpora:
                    type: array
                cost_ticks:
                    type: integer
                query:
                    type: string
                request_id:
                    type: string
                results:
                    type: array
            required:
                - results
                - query
                - cost_ticks
                - request_id
            type: object
        RealtimeConfig:
            properties:
                instructions:
                    type: string
                model:
                    type: string
                sample_rate:
                    type: integer
                tools:
                    type: array
                voice:
                    type: string
            required:
                - voice
                - instructions
                - sample_rate
                - tools
                - model
            type: object
        RealtimeReceiver:
            properties:
                stream:
                    type: object
            required:
                - stream
            type: object
        RealtimeSender:
            properties:
                sink:
                    type: object
            required:
                - sink
            type: object
        RealtimeSession:
            properties:
                ephemeral_token:
                    type: string
                provider:
                    type: string
                session_id:
                    type: string
                signed_url:
                    type: string
                url:
                    type: string
            required:
                - ephemeral_token
                - url
                - signed_url
                - session_id
                - provider
            type: object
        RemeshRequest:
            properties:
                convert_format_only:
                    type: boolean
                input_task_id:
                    type: string
                model_url:
                    type: string
                origin_at:
                    type: string
                resize_height:
                    type: number
                target_formats:
                    type: array
                target_polycount:
                    type: integer
                topology:
                    type: string
            type: object
        RemixVoiceRequest:
            properties:
                audio_base64:
                    type: string
                model:
                    type: string
                output_format:
                    type: string
                voice:
                    type: string
            required:
                - audio_base64
            type: object
        RemixVoiceResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                format:
                    type: string
                request_id:
                    type: string
                size_bytes:
                    type: integer
                voice_id:
                    type: string
            required:
                - format
                - size_bytes
                - cost_ticks
                - request_id
            type: object
        ResponseMeta:
            properties:
                cost_ticks:
                    type: integer
                model:
                    type: string
                request_id:
                    type: string
            required:
                - cost_ticks
                - request_id
                - model
            type: object
        RetextureRequest:
            properties:
                ai_model:
                    type: string
                enable_pbr:
                    type: boolean
                input_task_id:
                    type: string
                model_url:
                    type: string
                prompt:
                    type: string
            required:
                - prompt
            type: object
        RigRequest:
            properties:
                height_meters:
                    type: number
                input_task_id:
                    type: string
                model_url:
                    type: string
            type: object
        SSHKeyRequest:
            properties:
                ssh_public_key:
                    type: string
            required:
                - ssh_public_key
            type: object
        ScrapeRequest:
            properties:
                targets:
                    type: array
            required:
                - targets
            type: object
        ScrapeResponse:
            properties:
                job_id:
                    type: string
                request_id:
                    type: string
                status:
                    type: string
                targets:
                    type: integer
            required:
                - job_id
                - status
                - targets
                - request_id
            type: object
        ScrapeTarget:
            properties:
                content:
                    type: string
                delay_ms:
                    type: integer
                ingest:
                    type: string
                max_pages:
                    type: integer
                name:
                    type: string
                notebook:
                    type: string
                recursive:
                    type: boolean
                selector:
                    type: string
                target_type:
                    type: string
                url:
                    type: string
            required:
                - name
                - url
            type: object
        ScreenshotJobResponse:
            properties:
                job_id:
                    type: string
                request_id:
                    type: string
                status:
                    type: string
                urls:
                    type: integer
            required:
                - job_id
                - status
                - urls
                - request_id
            type: object
        ScreenshotRequest:
            properties:
                urls:
                    type: array
            required:
                - urls
            type: object
        ScreenshotResponse:
            properties:
                count:
                    type: integer
                screenshots:
                    type: array
            required:
                - screenshots
                - count
            type: object
        ScreenshotResult:
            properties:
                base64:
                    type: string
                error:
                    type: string
                format:
                    type: string
                height:
                    type: integer
                url:
                    type: string
                width:
                    type: integer
            required:
                - url
                - base64
                - format
                - width
                - height
            type: object
        ScreenshotURL:
            properties:
                delay_ms:
                    type: integer
                full_page:
                    type: boolean
                height:
                    type: integer
                url:
                    type: string
                width:
                    type: integer
            required:
                - url
            type: object
        SearchAnswerChoice:
            properties:
                finish_reason:
                    type: string
                index:
                    type: integer
                message:
                    type: object
            required:
                - index
                - message
            type: object
        SearchAnswerCitation:
            properties:
                snippet:
                    type: string
                title:
                    type: string
                url:
                    type: string
            required:
                - url
                - title
            type: object
        SearchAnswerMessage:
            properties:
                content:
                    type: string
                role:
                    type: string
            required:
                - role
                - content
            type: object
        SearchAnswerRequest:
            properties:
                messages:
                    type: array
                model:
                    type: string
            required:
                - messages
            type: object
        SearchAnswerResponse:
            properties:
                choices:
                    type: array
                citations:
                    type: array
                id:
                    type: string
                model:
                    type: string
            required:
                - choices
                - model
                - id
                - citations
            type: object
        SearchContextChunk:
            properties:
                content:
                    type: string
                content_type:
                    type: string
                score:
                    type: number
                title:
                    type: string
                url:
                    type: string
            required:
                - content
                - url
                - title
                - score
            type: object
        SearchContextRequest:
            properties:
                count:
                    type: integer
                country:
                    type: string
                freshness:
                    type: string
                language:
                    type: string
                query:
                    type: string
            required:
                - query
            type: object
        SearchContextResponse:
            properties:
                chunks:
                    type: array
                query:
                    type: string
                sources:
                    type: array
            required:
                - chunks
                - sources
                - query
            type: object
        SearchContextSource:
            properties:
                title:
                    type: string
                url:
                    type: string
            required:
                - url
                - title
            type: object
        SearchMessage:
            properties:
                content:
                    type: string
                role:
                    type: string
            required:
                - role
                - content
            type: object
        SearchOptions:
            properties:
                count:
                    type: integer
                country:
                    type: string
                freshness:
                    type: string
                language:
                    type: string
                offset:
                    type: integer
                safe_search:
                    type: string
            type: object
        SessionChatRequest:
            properties:
                context_config:
                    type: object
                message:
                    type: string
                model:
                    type: string
                provider_options:
                    type: object
                session_id:
                    type: string
                stream:
                    type: boolean
                system_prompt:
                    type: string
                tool_results:
                    type: array
                tools:
                    type: array
            required:
                - message
            type: object
        SessionChatResponse:
            properties:
                context:
                    type: object
                response:
                    type: object
                session_id:
                    type: string
            required:
                - session_id
                - response
                - context
            type: object
        SessionContext:
            properties:
                compacted:
                    type: boolean
                compaction_note:
                    type: string
                estimated_tokens:
                    type: integer
                turn_count:
                    type: integer
            required:
                - turn_count
                - estimated_tokens
                - compacted
            type: object
        SessionToolResult:
            properties:
                content:
                    type: string
                is_error:
                    type: boolean
                tool_call_id:
                    type: string
            required:
                - tool_call_id
                - content
            type: object
        SharedVoice:
            properties:
                accent:
                    type: string
                age:
                    type: string
                category:
                    type: string
                cloned_by_count:
                    type: integer
                description:
                    type: string
                free_users_allowed:
                    type: boolean
                gender:
                    type: string
                language:
                    type: string
                name:
                    type: string
                preview_url:
                    type: string
                public_owner_id:
                    type: string
                rate:
                    type: number
                use_case:
                    type: string
                voice_id:
                    type: string
            required:
                - public_owner_id
                - voice_id
                - name
            type: object
        SharedVoicesResponse:
            properties:
                has_more:
                    type: boolean
                next_cursor:
                    type: string
                voices:
                    type: array
            required:
                - voices
                - has_more
            type: object
        SoundEffectRequest:
            properties:
                duration_seconds:
                    type: number
                prompt:
                    type: string
            required:
                - prompt
            type: object
        SoundEffectResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                format:
                    type: string
                model:
                    type: string
                request_id:
                    type: string
                size_bytes:
                    type: integer
            required:
                - audio_base64
                - format
                - size_bytes
                - model
                - cost_ticks
                - request_id
            type: object
        SpeechToSpeechRequest:
            properties:
                audio_base64:
                    type: string
                model:
                    type: string
                output_format:
                    type: string
                voice:
                    type: string
            required:
                - audio_base64
            type: object
        SpeechToSpeechResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                format:
                    type: string
                model:
                    type: string
                request_id:
                    type: string
                size_bytes:
                    type: integer
            required:
                - audio_base64
                - format
                - size_bytes
                - model
                - cost_ticks
                - request_id
            type: object
        SpeechToTextRequest:
            properties:
                audio_base64:
                    type: string
                filename:
                    type: string
                language:
                    type: string
                model:
                    type: string
            required:
                - model
                - audio_base64
            type: object
        SpeechToTextResponse:
            properties:
                cost_ticks:
                    type: integer
                model:
                    type: string
                request_id:
                    type: string
                text:
                    type: string
            required:
                - text
                - model
                - cost_ticks
                - request_id
            type: object
        StarfishTTSRequest:
            properties:
                output_format:
                    type: string
                speed:
                    type: number
                text:
                    type: string
                voice:
                    type: string
            required:
                - text
            type: object
        StarfishTTSResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                duration:
                    type: number
                format:
                    type: string
                model:
                    type: string
                request_id:
                    type: string
                size_bytes:
                    type: integer
                url:
                    type: string
            required:
                - format
                - size_bytes
                - duration
                - model
                - cost_ticks
                - request_id
            type: object
        StatusResponse:
            properties:
                message:
                    type: string
                status:
                    type: string
            required:
                - status
            type: object
        StreamDelta:
            properties:
                text:
                    type: string
            required:
                - text
            type: object
        StreamEvent:
            properties:
                delta:
                    type: object
                done:
                    type: boolean
                error:
                    type: string
                event_type:
                    type: string
                tool_use:
                    type: object
                usage:
                    type: object
            required:
                - event_type
                - done
            type: object
        StreamToolUse:
            properties:
                id:
                    type: string
                input:
                    type: object
                name:
                    type: string
            required:
                - id
                - name
                - input
            type: object
        StudioClip:
            properties:
                avatar_id:
                    type: string
                background:
                    type: object
                script:
                    type: string
                voice_id:
                    type: string
            type: object
        SurrealRagProviderInfo:
            properties:
                chunk_count:
                    type: integer
                provider:
                    type: string
            required:
                - provider
            type: object
        SurrealRagProvidersResponse:
            properties:
                providers:
                    type: array
            required:
                - providers
            type: object
        SurrealRagResult:
            properties:
                content:
                    type: string
                heading:
                    type: string
                provider:
                    type: string
                score:
                    type: number
                source_file:
                    type: string
                title:
                    type: string
            required:
                - provider
                - title
                - heading
                - source_file
                - content
                - score
            type: object
        SurrealRagSearchRequest:
            properties:
                limit:
                    type: integer
                provider:
                    type: string
                query:
                    type: string
            required:
                - query
            type: object
        SurrealRagSearchResponse:
            properties:
                cost_ticks:
                    type: integer
                provider:
                    type: string
                query:
                    type: string
                request_id:
                    type: string
                results:
                    type: array
            required:
                - results
                - query
                - cost_ticks
                - request_id
            type: object
        TemplatesResponse:
            properties:
                templates:
                    type: array
            required:
                - templates
            type: object
        TextToSpeechRequest:
            properties:
                model:
                    type: string
                output_format:
                    type: string
                speed:
                    type: number
                text:
                    type: string
                voice:
                    type: string
            required:
                - model
                - text
            type: object
        TextToSpeechResponse:
            properties:
                audio_base64:
                    type: string
                cost_ticks:
                    type: integer
                format:
                    type: string
                model:
                    type: string
                request_id:
                    type: string
                size_bytes:
                    type: integer
            required:
                - audio_base64
                - format
                - size_bytes
                - model
                - cost_ticks
                - request_id
            type: object
        ToolResult:
            properties:
                content:
                    type: string
                is_error:
                    type: boolean
                tool_call_id:
                    type: string
            required:
                - tool_call_id
                - content
            type: object
        UsageEntry:
            properties:
                balance_after:
                    type: integer
                created_at:
                    type: string
                delta_ticks:
                    type: integer
                endpoint:
                    type: string
                id:
                    type: string
                input_tokens:
                    type: integer
                model:
                    type: string
                output_tokens:
                    type: integer
                provider:
                    type: string
                request_id:
                    type: string
            required:
                - id
            type: object
        UsageQuery:
            properties:
                limit:
                    type: integer
                start_after:
                    type: string
            type: object
        UsageResponse:
            properties:
                entries:
                    type: array
                has_more:
                    type: boolean
                next_cursor:
                    type: string
            required:
                - entries
                - has_more
            type: object
        UsageSummaryMonth:
            properties:
                by_provider:
                    type: array
                month:
                    type: string
                total_cost_usd:
                    type: number
                total_input_tokens:
                    type: integer
                total_margin_usd:
                    type: number
                total_output_tokens:
                    type: integer
                total_requests:
                    type: integer
            required:
                - month
                - total_requests
                - total_input_tokens
                - total_output_tokens
                - total_cost_usd
                - total_margin_usd
                - by_provider
            type: object
        UsageSummaryResponse:
            properties:
                months:
                    type: array
            required:
                - months
            type: object
        VideoRequest:
            properties:
                aspect_ratio:
                    type: string
                duration_seconds:
                    type: integer
                model:
                    type: string
                prompt:
                    type: string
            required:
                - model
                - prompt
            type: object
        VideoResponse:
            properties:
                cost_ticks:
                    type: integer
                model:
                    type: string
                request_id:
                    type: string
                videos:
                    type: array
            required:
                - videos
                - model
                - cost_ticks
                - request_id
            type: object
        VideoResult:
            properties:
                age:
                    type: string
                description:
                    type: string
                thumbnail:
                    type: string
                title:
                    type: string
                url:
                    type: string
            required:
                - title
                - url
                - description
            type: object
        VideoStudioRequest:
            properties:
                aspect_ratio:
                    type: string
                clips:
                    type: array
                dimension:
                    type: string
                title:
                    type: string
            required:
                - clips
            type: object
        VideoTemplate:
            properties:
                extra:
                    type: object
                name:
                    type: string
                preview_url:
                    type: string
                template_id:
                    type: string
            required:
                - template_id
                - extra
            type: object
        VideoTemplatesResponse:
            properties:
                templates:
                    type: array
            required:
                - templates
            type: object
        VideoTranslateRequest:
            properties:
                source_language:
                    type: string
                target_language:
                    type: string
                video_base64:
                    type: string
                video_url:
                    type: string
            required:
                - target_language
            type: object
        Voice:
            properties:
                gender:
                    type: string
                is_cloned:
                    type: boolean
                languages:
                    type: array
                name:
                    type: string
                preview_url:
                    type: string
                provider:
                    type: string
                voice_id:
                    type: string
            required:
                - voice_id
                - name
            type: object
        VoiceDesignRequest:
            properties:
                output_format:
                    type: string
                sample_text:
                    type: string
                voice_description:
                    type: string
            required:
                - voice_description
                - sample_text
            type: object
        VoiceDesignResponse:
            properties:
                cost_ticks:
                    type: integer
                previews:
                    type: array
                request_id:
                    type: string
            required:
                - previews
                - cost_ticks
                - request_id
            type: object
        VoiceInfo:
            properties:
                category:
                    type: string
                description:
                    type: string
                name:
                    type: string
                preview_url:
                    type: string
                voice_id:
                    type: string
            required:
                - voice_id
                - name
                - category
            type: object
        VoiceLibraryQuery:
            properties:
                cursor:
                    type: string
                gender:
                    type: string
                language:
                    type: string
                page_size:
                    type: integer
                query:
                    type: string
                use_case:
                    type: string
            type: object
        VoicePreview:
            properties:
                audio_base64:
                    type: string
                format:
                    type: string
                generated_voice_id:
                    type: string
            required:
                - generated_voice_id
                - audio_base64
                - format
            type: object
        VoicesResponse:
            properties:
                voices:
                    type: array
            required:
                - voices
            type: object
        WebResult:
            properties:
                age:
                    type: string
                description:
                    type: string
                favicon:
                    type: string
                title:
                    type: string
                url:
                    type: string
            required:
                - title
                - url
                - description
            type: object
        WebSearchRequest:
            properties:
                count:
                    type: integer
                country:
                    type: string
                freshness:
                    type: string
                language:
                    type: string
                offset:
                    type: integer
                query:
                    type: string
                safesearch:
                    type: string
            required:
                - query
            type: object
        WebSearchResponse:
            properties:
                discussions:
                    type: array
                infobox:
                    type: array
                news:
                    type: array
                query:
                    type: string
                videos:
                    type: array
                web:
                    type: array
            required:
                - query
                - web
                - news
                - videos
                - infobox
                - discussions
            type: object
    securitySchemes:
        apiKey:
            in: header
            name: X-API-Key
            type: apiKey
        bearerAuth:
            scheme: bearer
            type: http
