> ## Documentation Index
> Fetch the complete documentation index at: https://hedra.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# List 



## OpenAPI

````yaml openapi.json get /generations
openapi: 3.1.0
info:
  title: Hedra Web API
  version: 0.1.0
servers:
  - url: https://api.hedra.com/web-app/public
    description: Hedra Public API
security: []
paths:
  /generations:
    get:
      tags:
        - Public
      summary: 'List '
      operationId: list__public_generations_get
      parameters:
        - name: type
          in: query
          required: false
          schema:
            anyOf:
              - $ref: '#/components/schemas/AssetType'
              - $ref: '#/components/schemas/GenerationType'
              - type: 'null'
            title: Type
        - name: created_before
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date-time
              - type: 'null'
            title: Created Before
        - name: created_after
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date-time
              - type: 'null'
            title: Created After
        - name: prompt_query
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Prompt Query
        - name: agent_thread_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: uuid
              - type: 'null'
            title: Agent Thread Id
        - name: ids
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Ids
        - name: paging_params
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/PagingParams'
            default:
              limit: 100
              offset: 0
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedResponse_Generation_'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - APIKeyHeader: []
components:
  schemas:
    AssetType:
      type: string
      enum:
        - text
        - image
        - audio
        - video
        - voice
      title: AssetType
    GenerationType:
      type: string
      enum:
        - image
        - video
        - text_to_speech
        - speech_to_speech
        - voice_clone
        - audio_isolation
        - video_stitching
        - video_upscale
        - video_to_video
        - image_upscale
        - agent_response
        - audio_from_video
        - text_to_sound
        - assets_to_image_text_prompt
        - assets_to_audio_text_prompt
      title: GenerationType
      description: >-
        Generation type enum


        NOTE: this enum is used to determine the type of generation and is used
        to determine

        the type of asset that will be generated.
    PagingParams:
      properties:
        limit:
          type: integer
          title: Limit
          description: Number of items returned in the page.
          default: 100
        offset:
          type: integer
          title: Offset
          description: Number of records skipped.
          default: 0
      type: object
      title: PagingParams
    PagedResponse_Generation_:
      properties:
        page_info:
          $ref: '#/components/schemas/PageInfo'
          description: Paging information.
        data:
          items:
            $ref: '#/components/schemas/Generation'
          type: array
          title: Data
          description: Page data.
      type: object
      required:
        - page_info
        - data
      title: PagedResponse[Generation]
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    PageInfo:
      properties:
        limit:
          type: integer
          title: Limit
          description: Number of items returned in the page.
        offset:
          type: integer
          title: Offset
          description: Number of records skipped.
      type: object
      required:
        - limit
        - offset
      title: PageInfo
    Generation:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: ID of the generation and associated asset.
        type:
          $ref: '#/components/schemas/AssetType'
          description: Type of generation.
        input:
          oneOf:
            - $ref: '#/components/schemas/GenerateVideoRequest-Output'
            - $ref: '#/components/schemas/GenerateTextToSpeechRequest'
            - $ref: '#/components/schemas/GenerateTextToSoundRequest'
            - $ref: '#/components/schemas/GenerateImageRequest'
            - $ref: '#/components/schemas/GenerateImageUpscaleRequest'
            - $ref: '#/components/schemas/GenerateVideoUpscaleRequest'
            - $ref: '#/components/schemas/GenerateIsolatedAudioRequest'
            - $ref: '#/components/schemas/GenerateSpeechToSpeechRequest'
            - $ref: '#/components/schemas/GenerateVoiceCloneRequest'
            - $ref: '#/components/schemas/GenerateAudioFromVideoRequest'
            - $ref: '#/components/schemas/GenerateVideoWithAudioRequest'
            - $ref: '#/components/schemas/GenerateVideoToVideoRequest'
            - $ref: '#/components/schemas/GenerateMotionControlRequest-Output'
          title: Input
          description: Inputs for the generation
          discriminator:
            propertyName: type
            mapping:
              audio_from_video:
                $ref: '#/components/schemas/GenerateAudioFromVideoRequest'
              audio_isolation:
                $ref: '#/components/schemas/GenerateIsolatedAudioRequest'
              image:
                $ref: '#/components/schemas/GenerateImageRequest'
              image_to_image:
                $ref: '#/components/schemas/GenerateImageRequest'
              image_upscale:
                $ref: '#/components/schemas/GenerateImageUpscaleRequest'
              motion_control:
                $ref: '#/components/schemas/GenerateMotionControlRequest-Output'
              speech_to_speech:
                $ref: '#/components/schemas/GenerateSpeechToSpeechRequest'
              text_to_sound:
                $ref: '#/components/schemas/GenerateTextToSoundRequest'
              text_to_speech:
                $ref: '#/components/schemas/GenerateTextToSpeechRequest'
              video:
                $ref: '#/components/schemas/GenerateVideoRequest-Output'
              video_to_video:
                $ref: '#/components/schemas/GenerateVideoToVideoRequest'
              video_upscale:
                $ref: '#/components/schemas/GenerateVideoUpscaleRequest'
              video_with_audio:
                $ref: '#/components/schemas/GenerateVideoWithAudioRequest'
              voice_clone:
                $ref: '#/components/schemas/GenerateVoiceCloneRequest'
        status:
          $ref: '#/components/schemas/GenerationStatus'
          description: Status of the generation
        progress:
          type: number
          title: Progress
          description: Current progress to completion. Between 0-1
        eta_sec:
          anyOf:
            - type: integer
            - type: 'null'
          title: Eta Sec
          description: Estimated time remaining in seconds until generation completes.
        created_at:
          type: string
          title: Created At
          description: Date the generation was submitted.
        credit_cost:
          anyOf:
            - type: integer
            - type: 'null'
          title: Credit Cost
          description: Credits consumed (debits) for this generation.
        batch_generation_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Batch Generation Id
          description: Unique identifier linking all generations in a batch.
        asset:
          anyOf:
            - $ref: '#/components/schemas/Asset'
            - type: 'null'
          description: >-
            The generated asset. Value is not present unless the status of the
            generation is 'complete'
        error:
          anyOf:
            - $ref: '#/components/schemas/GenerationError'
            - type: 'null'
          description: >-
            Generation error if any. Value is not present unless the status of
            the generation is 'error' and error_message field is not present.
        error_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Error Message
          description: >-
            Error message. Value is not present unless the status of the
            generation is 'error' and error field is not present.
      type: object
      required:
        - id
        - type
        - input
        - status
        - progress
        - created_at
      title: Generation
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    GenerateVideoRequest-Output:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: video
          title: Type
          default: video
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: ID of the model to use for the generation.
          default: d1dd37a3-e39a-4854-a298-6510289f9cf2
        start_keyframe_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Start Keyframe Id
          description: >-
            The id of the Image asset to use as the start keyframe. This will be
            ignored if reference_image_ids is provided.
        start_keyframe_url:
          anyOf:
            - type: string
              maxLength: 2083
              minLength: 1
              format: uri
            - type: 'null'
          title: Start Keyframe Url
          description: The URL of the image to use as the start keyframe.
        end_keyframe_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: End Keyframe Id
          description: >-
            The id of the Image asset to use as the end keyframe. This will be
            ignored if reference_image_ids is provided.
        end_keyframe_url:
          anyOf:
            - type: string
              maxLength: 2083
              minLength: 1
              format: uri
            - type: 'null'
          title: End Keyframe Url
          description: The URL of the image to use as the end keyframe.
        audio_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Audio Id
          description: The id of the Audio asset to use.
        audio_generation:
          anyOf:
            - $ref: '#/components/schemas/GenerateTextToSpeechRequest'
            - type: 'null'
          description: >-
            Optional TTS parameters for server-side audio generation. If
            provided (and audio_id is not), audio will be generated from these
            params before video generation.
        audio_start_ms:
          anyOf:
            - type: integer
            - type: 'null'
          title: Audio Start Ms
          description: >-
            Audio start offset in milliseconds. Negative values prepend silence
            (e.g., -1000 adds 1s silence before audio). Positive values crop
            from the beginning of the source audio (e.g., 2000 skips the first
            2s). Use with generated_video_inputs.duration_ms to control total
            output length.
        reference_image_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Reference Image Ids
          description: >-
            The id(s) of the image(s) to reference in the generation. Only used
            for multi-image video generation and will supersede
            start_keyframe_id.
        video_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Video Id
          description: >-
            The id of the Video asset to use as motion input for V2V (motion
            control) models.
        generated_video_inputs:
          $ref: '#/components/schemas/GeneratedVideoInputs'
          description: Inputs for generating the video.
        batch_size:
          type: integer
          maximum: 8
          minimum: 1
          title: Batch Size
          description: >-
            Number of video variations to generate (1-8). When > 1,
            batch_results will contain all generation results.
          default: 1
      type: object
      required:
        - generated_video_inputs
      title: GenerateVideoRequest
    GenerateTextToSpeechRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: text_to_speech
          title: Type
          default: text_to_speech
        voice_id:
          type: string
          format: uuid
          title: Voice Id
          description: The id of the Voice to use.
        model_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Model Id
          description: The id of the model to use.
        text:
          type: string
          title: Text
          description: The text to convert to speech.
        stability:
          type: number
          maximum: 1
          minimum: 0
          title: Stability
          description: >-
            Stability should be between 0-1, where 0 is the most stable and 1 is
            the most unstable. This varies the consistency between your outputs.
          default: 1
        speed:
          type: number
          maximum: 1.2
          minimum: 0.7
          title: Speed
          description: >-
            Speed should be between 0.7 and 1.2, where 0.7 is the slowest and
            1.2 is the fastest. This varies the speed of the generated speech.
          default: 1
        language:
          $ref: '#/components/schemas/SupportedLanguage'
          description: >-
            Language for TTS. See SupportedLanguage enum for valid values.
            Defaults to 'auto'.
          default: auto
      type: object
      required:
        - voice_id
        - text
      title: GenerateTextToSpeechRequest
    GenerateTextToSoundRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: text_to_sound
          title: Type
          default: text_to_sound
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: The id of the model to use for sound effect generation.
        text:
          type: string
          title: Text
          description: The text description of the sound effect to generate.
        duration_seconds:
          anyOf:
            - type: number
              maximum: 30
              minimum: 0.5
            - type: 'null'
          title: Duration Seconds
          description: >-
            The duration of the sound effect in seconds (0.5-30). If not
            specified, duration is automatically determined from the prompt.
        prompt_influence:
          anyOf:
            - type: number
              maximum: 1
              minimum: 0
            - type: 'null'
          title: Prompt Influence
          description: >-
            Controls how strictly the model follows the prompt (0-1). Higher
            values mean more literal interpretation. Defaults to 0.3.
        loop:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Loop
          description: >-
            Whether to create a sound effect that loops smoothly. Only available
            for the eleven_text_to_sound_v2 model.
        output_format:
          anyOf:
            - type: string
            - type: 'null'
          title: Output Format
          description: >-
            Output format of the generated audio. Formatted as
            codec_sample_rate_bitrate (e.g., mp3_22050_32, mp3_44100_128,
            pcm_44100). If not specified, defaults to mp3_44100_128.
          default: mp3_44100_128
      type: object
      required:
        - ai_model_id
        - text
      title: GenerateTextToSoundRequest
    GenerateImageRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          enum:
            - image
            - image_to_image
          title: Type
          default: image
        text_prompt:
          type: string
          title: Text Prompt
          description: The text prompt for image generation or image editing.
        aspect_ratio:
          anyOf:
            - type: string
            - type: 'null'
          title: Aspect Ratio
          description: The aspect ratio to use.
        resolution:
          anyOf:
            - type: string
            - type: 'null'
          title: Resolution
          description: >-
            The resolution to use formatted like '540p', '1080p', '1440p (2K
            QHD)', etc.
        start_keyframe_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Start Keyframe Id
          description: >-
            The id of the Image asset to use as the start keyframe. This will be
            ignored if reference_image_ids is provided.
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: The model to use.
        reference_image_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Reference Image Ids
          description: >-
            The id(s) of the image(s) to reference in the generation. This is
            only used for image-to-image generation and will supersede
            start_keyframe_id.
        batch_size:
          type: integer
          maximum: 8
          minimum: 1
          title: Batch Size
          description: >-
            Number of image variations to generate (1-8). When > 1,
            batch_results will contain all generation results.
          default: 1
        enhance_prompt:
          type: boolean
          title: Enhance Prompt
          description: If true, automatically enhance the prompt before generation.
          default: false
      type: object
      required:
        - text_prompt
        - ai_model_id
      title: GenerateImageRequest
    GenerateImageUpscaleRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: image_upscale
          title: Type
          default: image_upscale
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: The model to use for upscaling.
        image_id:
          type: string
          format: uuid
          title: Image Id
          description: The id of the Image asset to use as the basis for upscaling.
        upscale_factor:
          anyOf:
            - type: number
            - type: 'null'
          title: Upscale Factor
          description: Optional upscale factor to pass to the model (e.g. 2.0 for 2x).
      type: object
      required:
        - ai_model_id
        - image_id
      title: GenerateImageUpscaleRequest
    GenerateVideoUpscaleRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: video_upscale
          title: Type
          default: video_upscale
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: The model to use for upscaling.
        video_id:
          type: string
          format: uuid
          title: Video Id
          description: The id of the Video asset to upscale.
        upscale_factor:
          type: number
          maximum: 4
          exclusiveMinimum: 0
          title: Upscale Factor
          description: >-
            Scale factor for upscaling (e.g., 1.5 for 1.5x, 2.0 for 2x).
            Default: 1.5
          default: 1.5
      type: object
      required:
        - ai_model_id
        - video_id
      title: GenerateVideoUpscaleRequest
    GenerateIsolatedAudioRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: audio_isolation
          title: Type
          default: audio_isolation
        audio_id:
          type: string
          format: uuid
          title: Audio Id
          description: The id of the audio asset requiring sound isolation.
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: The id of the model to use for audio isolation.
      type: object
      required:
        - audio_id
        - ai_model_id
      title: GenerateIsolatedAudioRequest
    GenerateSpeechToSpeechRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: speech_to_speech
          title: Type
          default: speech_to_speech
        audio_id:
          type: string
          format: uuid
          title: Audio Id
          description: The id of the audio asset requiring sound isolation.
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: The id of the model to use for audio isolation.
        voice_id:
          type: string
          format: uuid
          title: Voice Id
          description: The id of the Voice to use.
      type: object
      required:
        - audio_id
        - ai_model_id
        - voice_id
      title: GenerateSpeechToSpeechRequest
    GenerateVoiceCloneRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: voice_clone
          title: Type
          default: voice_clone
        audio_id:
          type: string
          format: uuid
          title: Audio Id
          description: The id of the Audio asset to use as the basis for the clone.
        name:
          type: string
          title: Name
          description: >-
            The name of the new voice. Required by ElevenLabs to create a new
            voice.
      type: object
      required:
        - audio_id
        - name
      title: GenerateVoiceCloneRequest
    GenerateAudioFromVideoRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: audio_from_video
          title: Type
          default: audio_from_video
        audio_generation_model_id:
          type: string
          format: uuid
          title: Audio Generation Model Id
          description: >-
            ID of the model to use for video-to-audio generation (Mirelo
            Studio).
        video_id:
          type: string
          format: uuid
          title: Video Id
          description: The id of the video asset to generate audio from.
        prompt:
          anyOf:
            - type: string
            - type: 'null'
          title: Prompt
          description: Optional prompt to guide the audio generation.
      type: object
      required:
        - audio_generation_model_id
        - video_id
      title: GenerateAudioFromVideoRequest
      description: >-
        Audio generation request that extracts sound effects from video using
        Mirelo Studio.
    GenerateVideoWithAudioRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: video_with_audio
          title: Type
          default: video_with_audio
        video_generation_model_id:
          type: string
          format: uuid
          title: Video Generation Model Id
          description: >-
            ID of the model to use for video-to-video with audio generation
            (Mirelo Studio).
        video_id:
          type: string
          format: uuid
          title: Video Id
          description: The id of the video asset to add sound effects to.
        prompt:
          anyOf:
            - type: string
            - type: 'null'
          title: Prompt
          description: Optional prompt to guide the audio generation for the video.
      type: object
      required:
        - video_generation_model_id
        - video_id
      title: GenerateVideoWithAudioRequest
      description: >-
        Video generation request that adds synchronized sound effects to video
        using Mirelo Studio.
    GenerateVideoToVideoRequest:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: video_to_video
          title: Type
          default: video_to_video
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: The id of the model to use for video-to-video generation.
        video_id:
          type: string
          format: uuid
          title: Video Id
          description: The id of the video asset to transform.
        prompt:
          type: string
          title: Prompt
          description: >-
            Natural language transformation instructions. Use @Element1, @Image1
            syntax to reference elements and images.
        reference_image_asset_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Reference Image Asset Ids
          description: >-
            Optional ids of reference image assets for style transfer. Reference
            as @Image1, @Image2, etc. in prompt.
        elements:
          anyOf:
            - items:
                $ref: '#/components/schemas/KlingO1EditElement'
              type: array
            - type: 'null'
          title: Elements
          description: >-
            Optional elements for character tracking. Reference as @Element1,
            @Element2, etc. in prompt.
        keep_audio:
          type: boolean
          title: Keep Audio
          description: Whether to preserve the original audio from the input video.
          default: false
      type: object
      required:
        - ai_model_id
        - video_id
        - prompt
      title: GenerateVideoToVideoRequest
      description: |-
        Video-to-video edit request for Kling O1 Edit model.
        Transforms videos using natural language while preserving motion.
    GenerateMotionControlRequest-Output:
      properties:
        workspace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workspace Id
        agent_thread_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Thread Id
          description: Optional agent thread ID to associate this generation with.
        generation_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Generation Id
          description: >-
            Optional pre-reserved generation ID. If provided, this ID will be
            used instead of generating a new one. For batch operations
            (batch_size > 1), use generation_ids instead.
        generation_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Generation Ids
          description: >-
            Optional list of pre-reserved generation IDs for batch operations.
            Length must match batch_size. Mutually exclusive with generation_id.
        type:
          type: string
          const: motion_control
          title: Type
          default: motion_control
        ai_model_id:
          type: string
          format: uuid
          title: Ai Model Id
          description: The id of the Motion Control model to use.
        video_id:
          type: string
          format: uuid
          title: Video Id
          description: The id of the video asset to use as motion reference.
        start_keyframe_id:
          type: string
          format: uuid
          title: Start Keyframe Id
          description: >-
            The id of the character image asset to animate with the motion from
            the video.
        generated_video_inputs:
          $ref: '#/components/schemas/GeneratedVideoInputs'
          description: >-
            Video generation parameters including text_prompt and
            character_orientation.
      type: object
      required:
        - ai_model_id
        - video_id
        - start_keyframe_id
        - generated_video_inputs
      title: GenerateMotionControlRequest
      description: >-
        Motion Control request for transferring motion from a reference video to
        a character image.

        Processed through V2V infrastructure internally.
    GenerationStatus:
      type: string
      enum:
        - complete
        - error
        - processing
        - queued
        - finalizing
      title: GenerationStatus
    Asset:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: The id of the asset.
        type:
          $ref: '#/components/schemas/AssetType'
          description: The type of the asset.
        name:
          type: string
          title: Name
          description: Name of the asset. Default to user-provided file name.
        thumbnail_url:
          type: string
          title: Thumbnail Url
          description: URL of the thumbnail image.
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          description: Optional description of the asset.
        is_favorite:
          type: boolean
          title: Is Favorite
          description: Whether the asset is favorited by the user.
          default: false
        recent:
          type: boolean
          title: Recent
          description: Whether this asset was recently used by the user.
          default: false
        created_at:
          type: string
          title: Created At
          description: Date the asset was created.
        favorited_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Favorited At
          description: Date the asset was favorited.
        asset:
          oneOf:
            - $ref: '#/components/schemas/UploadedImage'
            - $ref: '#/components/schemas/UploadedAudio'
            - $ref: '#/components/schemas/UploadedVideo'
            - $ref: '#/components/schemas/GeneratedAudio'
            - $ref: '#/components/schemas/GeneratedImage'
            - $ref: '#/components/schemas/GeneratedVideo'
            - $ref: '#/components/schemas/Voice'
          title: Asset
          description: The asset itself.
          discriminator:
            propertyName: type
            mapping:
              generated_audio:
                $ref: '#/components/schemas/GeneratedAudio'
              generated_image:
                $ref: '#/components/schemas/GeneratedImage'
              generated_video:
                $ref: '#/components/schemas/GeneratedVideo'
              uploaded_audio:
                $ref: '#/components/schemas/UploadedAudio'
              uploaded_image:
                $ref: '#/components/schemas/UploadedImage'
              uploaded_video:
                $ref: '#/components/schemas/UploadedVideo'
              voice:
                $ref: '#/components/schemas/Voice'
      type: object
      required:
        - id
        - type
        - name
        - thumbnail_url
        - created_at
        - asset
      title: Asset
    GenerationError:
      properties:
        type:
          $ref: '#/components/schemas/GenerationErrorType'
          description: The class of error encountered.
        message:
          type: string
          title: Message
          description: The error message.
      type: object
      required:
        - type
        - message
      title: GenerationError
    GeneratedVideoInputs:
      properties:
        text_prompt:
          type: string
          title: Text Prompt
          description: Prompt for video generation.
        ai_model_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Ai Model Id
          description: The id of the model used for generation.
        resolution:
          anyOf:
            - type: string
            - type: 'null'
          title: Resolution
          description: Resolution for the video.
        aspect_ratio:
          anyOf:
            - type: string
            - type: 'null'
          title: Aspect Ratio
          description: Aspect ratio for the video.
        duration_ms:
          anyOf:
            - type: integer
            - type: 'null'
          title: Duration Ms
          description: Duration of the video in milliseconds.
        bounding_box_target:
          anyOf:
            - $ref: '#/components/schemas/NormalizedPoint'
            - type: 'null'
          description: >-
            Normalized coordinates for primary speaker position (Character3
            only)
        character_orientation:
          anyOf:
            - type: string
              enum:
                - video
                - image
            - type: 'null'
          title: Character Orientation
          description: >-
            For motion control models: 'video' matches reference video
            orientation (better for complex motions, max 30s), 'image' preserves
            character image orientation (better for camera movements, max 10s).
        enhance_prompt:
          type: boolean
          title: Enhance Prompt
          description: If true, automatically enhance the prompt before generation.
          default: false
      type: object
      required:
        - text_prompt
      title: GeneratedVideoInputs
    SupportedLanguage:
      type: string
      enum:
        - Chinese
        - Chinese,Yue
        - English
        - Arabic
        - Russian
        - Spanish
        - French
        - Portuguese
        - German
        - Turkish
        - Dutch
        - Ukrainian
        - Vietnamese
        - Indonesian
        - Japanese
        - Italian
        - Korean
        - Thai
        - Polish
        - Romanian
        - Greek
        - Czech
        - Finnish
        - Hindi
        - Bulgarian
        - Danish
        - Hebrew
        - Malay
        - Persian
        - Slovak
        - Swedish
        - Croatian
        - Filipino
        - Hungarian
        - Norwegian
        - Slovenian
        - Catalan
        - Nynorsk
        - Tamil
        - Afrikaans
        - auto
      title: SupportedLanguage
    KlingO1EditElement:
      properties:
        frontal_image_asset_id:
          type: string
          format: uuid
          title: Frontal Image Asset Id
          description: ID of the frontal image asset for this element.
        reference_image_asset_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Reference Image Asset Ids
          description: >-
            Optional IDs of additional reference image assets (different
            angles).
      type: object
      required:
        - frontal_image_asset_id
      title: KlingO1EditElement
      description: |-
        Element for character tracking in Kling O1 Edit.

        Reference as @Element1, @Element2, etc. in prompt.
    UploadedImage:
      properties:
        type:
          type: string
          const: uploaded_image
          title: Type
          default: uploaded_image
        width:
          type: integer
          title: Width
          description: Width of the image.
        height:
          type: integer
          title: Height
          description: Height of the image.
        url:
          type: string
          title: Url
          description: URL of the image.
      type: object
      required:
        - width
        - height
        - url
      title: UploadedImage
    UploadedAudio:
      properties:
        type:
          type: string
          const: uploaded_audio
          title: Type
          default: uploaded_audio
        duration_ms:
          type: integer
          title: Duration Ms
          description: Duration of the audio in seconds.
        url:
          type: string
          title: Url
          description: URL of the audio.
        transcriptions:
          anyOf:
            - items:
                additionalProperties: true
                type: object
              type: array
            - type: 'null'
          title: Transcriptions
          description: Transcriptions of the audio.
      type: object
      required:
        - duration_ms
        - url
      title: UploadedAudio
    UploadedVideo:
      properties:
        type:
          type: string
          const: uploaded_video
          title: Type
          default: uploaded_video
        width:
          type: integer
          title: Width
          description: Width of the video.
        height:
          type: integer
          title: Height
          description: Height of the video.
        duration_ms:
          type: integer
          title: Duration Ms
          description: Duration of the video in milliseconds.
        url:
          type: string
          title: Url
          description: URL of the video.
        download_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Download Url
          description: URL to download the video.
        streaming_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Streaming Url
          description: URL to stream the video.
        poster_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Poster Url
          description: URL of the poster image.
      type: object
      required:
        - width
        - height
        - duration_ms
        - url
      title: UploadedVideo
    GeneratedAudio:
      properties:
        type:
          type: string
          const: generated_audio
          title: Type
          default: generated_audio
        duration_ms:
          type: integer
          title: Duration Ms
          description: Duration of the audio in seconds.
        url:
          type: string
          title: Url
          description: URL of the audio.
        generated_audio_inputs:
          $ref: '#/components/schemas/GeneratedAudioInputs'
          description: Inputs for generating the audio.
        transcriptions:
          anyOf:
            - items:
                additionalProperties: true
                type: object
              type: array
            - type: 'null'
          title: Transcriptions
          description: Transcriptions of the audio.
      type: object
      required:
        - duration_ms
        - url
        - generated_audio_inputs
      title: GeneratedAudio
    GeneratedImage:
      properties:
        type:
          type: string
          const: generated_image
          title: Type
          default: generated_image
        width:
          type: integer
          title: Width
          description: Width of the image.
        height:
          type: integer
          title: Height
          description: Height of the image.
        url:
          type: string
          title: Url
          description: URL of the image.
        generated_image_inputs:
          $ref: '#/components/schemas/GeneratedImageInputs'
          description: Inputs for generating the image.
      type: object
      required:
        - width
        - height
        - url
        - generated_image_inputs
      title: GeneratedImage
    GeneratedVideo:
      properties:
        type:
          type: string
          const: generated_video
          title: Type
          default: generated_video
        width:
          type: integer
          title: Width
          description: Width of the image.
        height:
          type: integer
          title: Height
          description: Height of the image.
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
          description: URL of the image.
        download_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Download Url
          description: URL to download the video
        streaming_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Streaming Url
          description: URL to stream the video
        poster_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Poster Url
          description: URL of the poster image
        duration_ms:
          type: integer
          title: Duration Ms
          description: Duration of the video.
        preview_url:
          type: string
          title: Preview Url
          description: URL of the preview for animated thumbnails.
        generated_video_inputs:
          $ref: '#/components/schemas/GeneratedVideoInputs'
          description: Inputs for generating the video.
        keyframe_start:
          anyOf:
            - $ref: '#/components/schemas/Asset'
            - type: 'null'
          description: URL of the Image asset used as the start keyframe.
        keyframe_end:
          anyOf:
            - $ref: '#/components/schemas/Asset'
            - type: 'null'
          description: URL of the Image asset used as the end keyframe.
        audio:
          anyOf:
            - $ref: '#/components/schemas/Asset'
            - type: 'null'
          description: URL of the Audio asset used as the basis for the video.
        reference_image_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Reference Image Ids
          description: The id(s) of the image(s) referenced in the generation.
        source_video_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Source Video Id
          description: >-
            The id of the Video asset used as source input for motion
            control/video-to-video generation.
      type: object
      required:
        - width
        - height
        - duration_ms
        - preview_url
        - generated_video_inputs
        - keyframe_start
        - audio
      title: GeneratedVideo
    Voice:
      properties:
        type:
          type: string
          const: voice
          title: Type
          default: voice
        external_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Id
          description: External ID of the Voice.
        labels:
          items:
            $ref: '#/components/schemas/VoiceLabel'
          type: array
          title: Labels
          description: Labels that help identify the characteristics of the Voice.
        preview_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Preview Url
          description: Preview URL of the Voice.
        source:
          anyOf:
            - type: string
            - type: 'null'
          title: Source
          description: Source of the Voice.
      type: object
      title: Voice
    GenerationErrorType:
      type: string
      enum:
        - UNKNOWN
        - MODERATION_FAILED
        - MISSING_CREDITS
        - RESOURCE_EXHAUSTED
        - INVALID_ARGUMENT
        - UNAVAILABLE
      title: GenerationErrorType
      description: >-
        Generation error type


        NOTE: The backend will try to map any error happening during generation
        to one of these classes.
            If it fails to do so it will map onto UNKNOWN.

        NOTE: The semantic meaning of these errors types is roughly mapped from
        the semantic of the gRPC
            status codes: see https://grpc.io/docs/guides/status-codes/ for details. Not all the gGRPC
            status codes are mapped here (not needed at the moment).
    NormalizedPoint:
      prefixItems:
        - type: number
          maximum: 1
          minimum: 0
          title: X
          description: Normalized x coordinate.
        - type: number
          maximum: 1
          minimum: 0
          title: 'Y'
          description: Normalized y coordinate.
      type: array
      maxItems: 2
      minItems: 2
    GeneratedAudioInputs:
      properties:
        text_prompt:
          type: string
          title: Text Prompt
          description: Prompt for audio generation.
        ai_model_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Ai Model Id
          description: The id of the model used for generation.
        voice_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Voice Id
          description: The id of the voice used for generation.
        stability:
          anyOf:
            - type: number
            - type: 'null'
          title: Stability
          description: Stability setting used for generation (0-1).
        speed:
          anyOf:
            - type: number
            - type: 'null'
          title: Speed
          description: Speed setting used for generation (0.7-1.2).
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
          description: Language used for generation.
      type: object
      required:
        - text_prompt
      title: GeneratedAudioInputs
    GeneratedImageInputs:
      properties:
        text_prompt:
          type: string
          title: Text Prompt
          description: Prompt for image generation.
        ai_model_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Ai Model Id
          description: The id of the model used for generation.
        aspect_ratio:
          anyOf:
            - type: string
            - type: 'null'
          title: Aspect Ratio
          description: Aspect ratio used for generation.
        resolution:
          anyOf:
            - type: string
            - type: 'null'
          title: Resolution
          description: Resolution used for generation.
        start_keyframe_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Start Keyframe Id
          description: The id of the Image asset used as the start keyframe.
        reference_image_ids:
          anyOf:
            - items:
                type: string
                format: uuid
              type: array
            - type: 'null'
          title: Reference Image Ids
          description: The id(s) of the image(s) referenced in the generation.
      type: object
      required:
        - text_prompt
      title: GeneratedImageInputs
    VoiceLabel:
      properties:
        name:
          type: string
          title: Name
          description: Label name.
        value:
          type: string
          title: Value
          description: Label value.
      type: object
      required:
        - name
        - value
      title: VoiceLabel
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: X-API-Key

````