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

# Get current project state



## OpenAPI

````yaml /openapi.json get /projects/{projectId}
openapi: 3.1.0
info:
  title: Youka REST API
  version: v1
  description: REST API for project-based karaoke creation, styling, media, and exports.
servers:
  - url: https://api.youka.io/api/v1
    description: Production
  - url: http://localhost:3003/api/v1
    description: Local development
security:
  - bearerAuth: []
tags:
  - name: Account
    description: Inspect the API key's account identity.
  - name: Uploads
    description: Upload source audio or video before creating a project.
  - name: Credits
    description: Inspect available credit balance.
  - name: Billing
    description: Create checkout sessions and manage billing.
  - name: Projects
    description: Create projects and read the long-lived project state.
  - name: Tasks
    description: Poll async task progress until it reaches a terminal state.
  - name: Exports
    description: Create exports and fetch fresh download URLs.
  - name: Presets
    description: Manage reusable karaoke styling presets.
  - name: Media
    description: Manage uploaded reusable media.
  - name: Project Settings
    description: Read and update a project's active settings.
paths:
  /projects/{projectId}:
    get:
      tags:
        - Projects
      summary: Get current project state
      operationId: getProject
      parameters:
        - in: path
          name: projectId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Project state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Project'
components:
  schemas:
    Project:
      $schema: https://json-schema.org/draft/2020-12/schema
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        artists:
          type: array
          items:
            type: string
        lyrics:
          anyOf:
            - type: string
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
        duration:
          anyOf:
            - type: number
            - type: 'null'
        stems:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              type:
                type: string
                enum:
                  - original
                  - vocals
                  - instrumental
                  - backing_vocals
              model:
                type: string
              url:
                type: string
                format: uri
              duration:
                anyOf:
                  - type: number
                  - type: 'null'
            required:
              - id
              - type
              - model
              - url
            additionalProperties: false
        alignments:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              model:
                type: string
              alignment: {}
              createdAt:
                type: string
            required:
              - id
              - model
              - alignment
              - createdAt
            additionalProperties: false
        exports:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              status:
                type: string
                enum:
                  - created
                  - queued
                  - in-progress
                  - completed
                  - failed
                  - cancelled
                  - timed-out
                  - finalized
              fileId:
                anyOf:
                  - type: string
                  - type: 'null'
              fileKey:
                anyOf:
                  - type: string
                  - type: 'null'
              fileSize:
                anyOf:
                  - type: number
                  - type: 'null'
              createdAt:
                type: string
              updatedAt:
                type: string
              resolution:
                type: string
              quality:
                type: string
              fps:
                anyOf:
                  - type: number
                    const: 25
                  - type: number
                    const: 30
                  - type: number
                    const: 60
              transparent:
                type: boolean
              renderMode:
                type: string
                enum:
                  - standard
                  - fast
              renderBackend:
                type: string
                enum:
                  - batch
                  - lambda
            required:
              - id
              - status
              - createdAt
              - updatedAt
            additionalProperties: false
        task:
          anyOf:
            - type: object
              properties:
                id:
                  type: string
                type:
                  type: string
                  enum:
                    - create-karaoke
                    - sync-lyrics
                    - stem-separation
                    - generate-video
                    - generate-chords
                    - export-stem-audio
                    - export-project
                status:
                  type: string
                  enum:
                    - created
                    - queued
                    - in-progress
                    - completed
                    - failed
                    - cancelled
                    - timed-out
                    - finalized
                error:
                  anyOf:
                    - type: string
                    - type: 'null'
              required:
                - id
                - type
                - status
              additionalProperties: false
            - type: 'null'
        settings:
          type: object
          properties:
            presetId:
              type: string
            preset:
              type: object
              properties:
                aspectRatio:
                  default: '16:9'
                  type: string
                  enum:
                    - '16:9'
                    - '9:16'
                    - '4:3'
                    - '1:1'
                layout:
                  default:
                    type: karaoke
                    autoSplitLongLines: true
                    linesPerScreen: 2
                    alignment: bottom
                    paddingHorizontal: 0
                    paddingVertical: 5
                    languageSpacing: 5
                    containerHeight: 100
                    scrollingFadeStrength: 0.5
                    lineTransition: fade
                    anticipationBuffer: 3
                  type: object
                  properties:
                    type:
                      default: karaoke
                      type: string
                      enum:
                        - single
                        - duet
                        - karaoke
                        - scrolling
                        - multilingual
                        - chords
                    autoSplitLongLines:
                      default: true
                      type: boolean
                    linesPerScreen:
                      default: 2
                      anyOf:
                        - type: number
                          const: 2
                        - type: number
                          const: 3
                        - type: number
                          const: 4
                        - type: number
                          const: 5
                        - type: number
                          const: 6
                        - type: number
                          const: 7
                        - type: number
                          const: 8
                    alignment:
                      default: bottom
                      type: string
                      enum:
                        - top
                        - center
                        - bottom
                    paddingHorizontal:
                      default: 0
                      type: number
                    paddingVertical:
                      default: 5
                      type: number
                    languageSpacing:
                      default: 5
                      type: number
                      minimum: 0
                      maximum: 10
                    containerHeight:
                      default: 100
                      type: number
                      minimum: 20
                      maximum: 100
                    scrollingFadeStrength:
                      default: 0.5
                      type: number
                      minimum: 0
                      maximum: 1
                    lineTransition:
                      default: fade
                      type: string
                      enum:
                        - none
                        - fade
                        - slide
                        - dim
                    duetSettings:
                      type: object
                      properties:
                        overlapBehavior:
                          default: all-style
                          type: string
                          enum:
                            - both
                            - all-style
                      required:
                        - overlapBehavior
                      additionalProperties: false
                    multilingualSettings:
                      type: object
                      properties: {}
                      additionalProperties: false
                    anticipationBuffer:
                      default: 3
                      type: number
                      minimum: 0
                      maximum: 10
                  required:
                    - type
                    - autoSplitLongLines
                    - linesPerScreen
                    - alignment
                    - paddingHorizontal
                    - paddingVertical
                    - languageSpacing
                    - containerHeight
                    - scrollingFadeStrength
                    - lineTransition
                    - anticipationBuffer
                  additionalProperties: false
                background:
                  default:
                    type: auto
                  oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          const: auto
                      required:
                        - type
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          const: color
                        color:
                          default: '#000000'
                          type: string
                      required:
                        - type
                        - color
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          const: gradient
                        angle:
                          default: 0
                          type: number
                        colors:
                          default:
                            - '#000000'
                            - '#333333'
                          type: array
                          items:
                            type: string
                      required:
                        - type
                        - angle
                        - colors
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          const: image
                        url:
                          type: string
                        objectFit:
                          default: cover
                          type: string
                          enum:
                            - contain
                            - cover
                            - fill
                        blur:
                          type: number
                        dim:
                          type: number
                      required:
                        - type
                        - url
                        - objectFit
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          const: video
                        url:
                          type: string
                        objectFit:
                          default: cover
                          type: string
                          enum:
                            - contain
                            - cover
                            - fill
                        dim:
                          type: number
                      required:
                        - type
                        - url
                        - objectFit
                      additionalProperties: false
                singerTextStyles:
                  default: {}
                  type: object
                  propertyNames:
                    type: number
                  additionalProperties:
                    type: object
                    properties:
                      fontFamily:
                        default: Arimo
                        type: string
                      fontSize:
                        default: 96
                        type: number
                      fontWeight:
                        default: 700
                        type: number
                      textColor:
                        default: '#FFFFFF'
                        type: string
                      outlineColor:
                        default: '#000000'
                        type: string
                      outlineWidth:
                        default: 20
                        type: number
                      textEffect:
                        default: karaoke
                        type: string
                        enum:
                          - none
                          - karaoke
                          - highlight
                      activeLineColor:
                        default: '#fff09a'
                        type: string
                      effectColor:
                        default: '#2185D0'
                        type: string
                      backgroundColor:
                        default: transparent
                        type: string
                      letterSpacing:
                        default: 0
                        type: number
                      lineSpacing:
                        default: 1.2
                        type: number
                      textCase:
                        default: none
                        type: string
                        enum:
                          - none
                          - uppercase
                          - lowercase
                          - capitalize
                      textDirection:
                        default: auto
                        type: string
                        enum:
                          - auto
                          - ltr
                          - rtl
                      shadowColor:
                        default: rgba(0,0,0,0.5)
                        type: string
                      shadowBlur:
                        default: 4
                        type: number
                      shadowOffsetX:
                        default: 0
                        type: number
                      shadowOffsetY:
                        default: 0
                        type: number
                      shadowOpacity:
                        type: number
                      duetPosition:
                        default: center
                        type: string
                        enum:
                          - top
                          - center
                          - bottom
                    required:
                      - fontFamily
                      - fontSize
                      - fontWeight
                      - textColor
                      - outlineColor
                      - outlineWidth
                      - textEffect
                      - activeLineColor
                      - effectColor
                      - backgroundColor
                      - letterSpacing
                      - lineSpacing
                      - textCase
                      - textDirection
                      - shadowColor
                      - shadowBlur
                      - shadowOffsetX
                      - shadowOffsetY
                      - duetPosition
                    additionalProperties: false
                languageTextStyles:
                  default: {}
                  type: object
                  propertyNames:
                    type: string
                  additionalProperties:
                    type: object
                    properties:
                      fontFamily:
                        default: Arimo
                        type: string
                      fontSize:
                        default: 96
                        type: number
                      fontWeight:
                        default: 700
                        type: number
                      textColor:
                        default: '#FFFFFF'
                        type: string
                      outlineColor:
                        default: '#000000'
                        type: string
                      outlineWidth:
                        default: 20
                        type: number
                      textEffect:
                        default: karaoke
                        type: string
                        enum:
                          - none
                          - karaoke
                          - highlight
                      activeLineColor:
                        default: '#fff09a'
                        type: string
                      effectColor:
                        default: '#2185D0'
                        type: string
                      backgroundColor:
                        default: transparent
                        type: string
                      letterSpacing:
                        default: 0
                        type: number
                      lineSpacing:
                        default: 1.2
                        type: number
                      textCase:
                        default: none
                        type: string
                        enum:
                          - none
                          - uppercase
                          - lowercase
                          - capitalize
                      textDirection:
                        default: auto
                        type: string
                        enum:
                          - auto
                          - ltr
                          - rtl
                      shadowColor:
                        default: rgba(0,0,0,0.5)
                        type: string
                      shadowBlur:
                        default: 4
                        type: number
                      shadowOffsetX:
                        default: 0
                        type: number
                      shadowOffsetY:
                        default: 0
                        type: number
                      shadowOpacity:
                        type: number
                      duetPosition:
                        default: center
                        type: string
                        enum:
                          - top
                          - center
                          - bottom
                    required:
                      - fontFamily
                      - fontSize
                      - fontWeight
                      - textColor
                      - outlineColor
                      - outlineWidth
                      - textEffect
                      - activeLineColor
                      - effectColor
                      - backgroundColor
                      - letterSpacing
                      - lineSpacing
                      - textCase
                      - textDirection
                      - shadowColor
                      - shadowBlur
                      - shadowOffsetX
                      - shadowOffsetY
                      - duetPosition
                    additionalProperties: false
                chordTextStyle:
                  type: object
                  properties:
                    fontFamily:
                      default: Arimo
                      type: string
                    fontSize:
                      default: 96
                      type: number
                    fontWeight:
                      default: 700
                      type: number
                    textColor:
                      default: '#FFFFFF'
                      type: string
                    outlineColor:
                      default: '#000000'
                      type: string
                    outlineWidth:
                      default: 20
                      type: number
                    textEffect:
                      default: karaoke
                      type: string
                      enum:
                        - none
                        - karaoke
                        - highlight
                    activeLineColor:
                      default: '#fff09a'
                      type: string
                    effectColor:
                      default: '#2185D0'
                      type: string
                    backgroundColor:
                      default: transparent
                      type: string
                    letterSpacing:
                      default: 0
                      type: number
                    lineSpacing:
                      default: 1.2
                      type: number
                    textCase:
                      default: none
                      type: string
                      enum:
                        - none
                        - uppercase
                        - lowercase
                        - capitalize
                    textDirection:
                      default: auto
                      type: string
                      enum:
                        - auto
                        - ltr
                        - rtl
                    shadowColor:
                      default: rgba(0,0,0,0.5)
                      type: string
                    shadowBlur:
                      default: 4
                      type: number
                    shadowOffsetX:
                      default: 0
                      type: number
                    shadowOffsetY:
                      default: 0
                      type: number
                    shadowOpacity:
                      type: number
                    duetPosition:
                      default: center
                      type: string
                      enum:
                        - top
                        - center
                        - bottom
                  required:
                    - fontFamily
                    - fontSize
                    - fontWeight
                    - textColor
                    - outlineColor
                    - outlineWidth
                    - textEffect
                    - activeLineColor
                    - effectColor
                    - backgroundColor
                    - letterSpacing
                    - lineSpacing
                    - textCase
                    - textDirection
                    - shadowColor
                    - shadowBlur
                    - shadowOffsetX
                    - shadowOffsetY
                    - duetPosition
                  additionalProperties: false
                overlays:
                  default:
                    branding:
                      logo:
                        enabled: false
                        position: bottom-right
                        paddingX: 20
                        paddingY: 20
                        scale: 0.1
                        opacity: 1
                      intro:
                        enabled: false
                        durationSeconds: 0
                        effect: fade
                        effectDuration: 0.5
                      outro:
                        enabled: false
                        durationSeconds: 0
                        effect: fade
                        effectDuration: 0.5
                    titleCard:
                      enabled: true
                      duration: 5
                      autoHideBeforeLyrics: true
                      titleStyle:
                        fontFamily: Arimo
                        fontSize: 200
                        fontWeight: 700
                        textColor: '#2185D0'
                        outlineColor: '#000000'
                        outlineWidth: 30
                      artistStyle:
                        fontFamily: Arimo
                        fontSize: 150
                        fontWeight: 700
                        textColor: '#FFFFFF'
                        outlineColor: '#000000'
                        outlineWidth: 30
                    leadIn:
                      enabled: true
                      beats: 4
                      minGap: 3
                      useNextSingerStyle: true
                      style:
                        color: '#2185D0'
                        outlineColor: '#000000'
                        outlineWidth: 3
                      width: 0.2
                      height: 1
                      offsetX: -2
                      offsetY: 0
                    instrumentalBreak:
                      hideLyrics: true
                      minGap: 5
                      displayDuration: 3
                    breakCountdown:
                      enabled: true
                      maxDuration: 3
                      animation: fade
                      useNextSingerStyle: false
                      style:
                        color: '#FFFFFF'
                        outlineColor: '#000000'
                        outlineWidth: 14.5
                      textSize: 80
                      hideBeforeEnd: 0
                    breakProgressBar:
                      enabled: true
                      maxDuration: 10
                      useNextSingerStyle: false
                      style:
                        color: '#2185D0'
                        outlineColor: '#000000'
                        outlineWidth: 5
                        backgroundColor: '#FFFFFF'
                        fillColor: '#2185D0'
                      width: 47
                      height: 7.5
                      position: center
                      cornerRadius: 0
                      hideBeforeEnd: 0
                  type: object
                  properties:
                    branding:
                      default:
                        logo:
                          enabled: false
                          position: bottom-right
                          paddingX: 20
                          paddingY: 20
                          scale: 0.1
                          opacity: 1
                        intro:
                          enabled: false
                          durationSeconds: 0
                          effect: fade
                          effectDuration: 0.5
                        outro:
                          enabled: false
                          durationSeconds: 0
                          effect: fade
                          effectDuration: 0.5
                      type: object
                      properties:
                        logo:
                          default:
                            enabled: false
                            position: bottom-right
                            paddingX: 20
                            paddingY: 20
                            scale: 0.1
                            opacity: 1
                          type: object
                          properties:
                            enabled:
                              default: false
                              type: boolean
                            url:
                              type: string
                            position:
                              default: bottom-right
                              type: string
                              enum:
                                - top-left
                                - top-right
                                - bottom-left
                                - bottom-right
                            paddingX:
                              default: 20
                              type: number
                            paddingY:
                              default: 20
                              type: number
                            scale:
                              default: 0.1
                              type: number
                            opacity:
                              default: 1
                              type: number
                          required:
                            - enabled
                            - position
                            - paddingX
                            - paddingY
                            - scale
                            - opacity
                          additionalProperties: false
                        intro:
                          default:
                            enabled: false
                            durationSeconds: 0
                            effect: fade
                            effectDuration: 0.5
                          type: object
                          properties:
                            enabled:
                              default: false
                              type: boolean
                            url:
                              type: string
                            durationSeconds:
                              default: 0
                              type: number
                            effect:
                              default: fade
                              type: string
                              enum:
                                - fade
                                - crossfade
                                - slide-left
                                - slide-right
                                - slide-up
                                - slide-down
                                - zoom-in
                                - zoom-out
                                - blur
                            effectDuration:
                              default: 0.5
                              type: number
                          required:
                            - enabled
                            - durationSeconds
                            - effect
                            - effectDuration
                          additionalProperties: false
                        outro:
                          default:
                            enabled: false
                            durationSeconds: 0
                            effect: fade
                            effectDuration: 0.5
                          type: object
                          properties:
                            enabled:
                              default: false
                              type: boolean
                            url:
                              type: string
                            durationSeconds:
                              default: 0
                              type: number
                            effect:
                              default: fade
                              type: string
                              enum:
                                - fade
                                - crossfade
                                - slide-left
                                - slide-right
                                - slide-up
                                - slide-down
                                - zoom-in
                                - zoom-out
                                - blur
                            effectDuration:
                              default: 0.5
                              type: number
                          required:
                            - enabled
                            - durationSeconds
                            - effect
                            - effectDuration
                          additionalProperties: false
                      required:
                        - logo
                        - intro
                        - outro
                      additionalProperties: false
                    titleCard:
                      default:
                        enabled: true
                        duration: 5
                        autoHideBeforeLyrics: true
                        titleStyle:
                          fontFamily: Arimo
                          fontSize: 200
                          fontWeight: 700
                          textColor: '#2185D0'
                          outlineColor: '#000000'
                          outlineWidth: 30
                        artistStyle:
                          fontFamily: Arimo
                          fontSize: 150
                          fontWeight: 700
                          textColor: '#FFFFFF'
                          outlineColor: '#000000'
                          outlineWidth: 30
                      type: object
                      properties:
                        enabled:
                          default: true
                          type: boolean
                        duration:
                          default: 5
                          type: number
                        autoHideBeforeLyrics:
                          default: true
                          type: boolean
                        titleStyle:
                          default:
                            fontFamily: Arimo
                            fontSize: 200
                            fontWeight: 700
                            textColor: '#2185D0'
                            outlineColor: '#000000'
                            outlineWidth: 30
                          type: object
                          properties:
                            fontFamily:
                              default: Arimo
                              type: string
                            fontSize:
                              default: 150
                              type: number
                            fontWeight:
                              default: 700
                              type: number
                            textColor:
                              default: '#FFFFFF'
                              type: string
                            outlineColor:
                              default: '#000000'
                              type: string
                            outlineWidth:
                              default: 4
                              type: number
                          required:
                            - fontFamily
                            - fontSize
                            - fontWeight
                            - textColor
                            - outlineColor
                            - outlineWidth
                          additionalProperties: false
                        artistStyle:
                          default:
                            fontFamily: Arimo
                            fontSize: 150
                            fontWeight: 700
                            textColor: '#FFFFFF'
                            outlineColor: '#000000'
                            outlineWidth: 30
                          type: object
                          properties:
                            fontFamily:
                              default: Arimo
                              type: string
                            fontSize:
                              default: 150
                              type: number
                            fontWeight:
                              default: 700
                              type: number
                            textColor:
                              default: '#FFFFFF'
                              type: string
                            outlineColor:
                              default: '#000000'
                              type: string
                            outlineWidth:
                              default: 4
                              type: number
                          required:
                            - fontFamily
                            - fontSize
                            - fontWeight
                            - textColor
                            - outlineColor
                            - outlineWidth
                          additionalProperties: false
                      required:
                        - enabled
                        - duration
                        - autoHideBeforeLyrics
                        - titleStyle
                        - artistStyle
                      additionalProperties: false
                    leadIn:
                      default:
                        enabled: true
                        beats: 4
                        minGap: 3
                        useNextSingerStyle: true
                        style:
                          color: '#2185D0'
                          outlineColor: '#000000'
                          outlineWidth: 3
                        width: 0.2
                        height: 1
                        offsetX: -2
                        offsetY: 0
                      type: object
                      properties:
                        enabled:
                          default: true
                          type: boolean
                        beats:
                          default: 4
                          type: number
                        minGap:
                          default: 3
                          type: number
                        useNextSingerStyle:
                          default: true
                          type: boolean
                        style:
                          default:
                            color: '#2185D0'
                            outlineColor: '#000000'
                            outlineWidth: 3
                          type: object
                          properties:
                            color:
                              default: '#2185D0'
                              type: string
                            outlineColor:
                              default: '#000000'
                              type: string
                            outlineWidth:
                              default: 3
                              type: number
                          required:
                            - color
                            - outlineColor
                            - outlineWidth
                          additionalProperties: false
                        width:
                          default: 0.2
                          type: number
                        height:
                          default: 1
                          type: number
                        offsetX:
                          default: -2
                          type: number
                        offsetY:
                          default: 0
                          type: number
                      required:
                        - enabled
                        - beats
                        - minGap
                        - useNextSingerStyle
                        - style
                        - width
                        - height
                        - offsetX
                        - offsetY
                      additionalProperties: false
                    instrumentalBreak:
                      default:
                        hideLyrics: true
                        minGap: 5
                        displayDuration: 3
                      type: object
                      properties:
                        hideLyrics:
                          default: true
                          type: boolean
                        minGap:
                          default: 5
                          type: number
                        displayDuration:
                          default: 3
                          type: number
                      required:
                        - hideLyrics
                        - minGap
                        - displayDuration
                      additionalProperties: false
                    breakCountdown:
                      default:
                        enabled: true
                        maxDuration: 3
                        animation: fade
                        useNextSingerStyle: false
                        style:
                          color: '#FFFFFF'
                          outlineColor: '#000000'
                          outlineWidth: 14.5
                        textSize: 80
                        hideBeforeEnd: 0
                      type: object
                      properties:
                        enabled:
                          default: true
                          type: boolean
                        maxDuration:
                          default: 3
                          type: number
                        animation:
                          default: spring
                          type: string
                          enum:
                            - spring
                            - fade
                        useNextSingerStyle:
                          default: false
                          type: boolean
                        style:
                          default:
                            color: '#FFFFFF'
                            outlineColor: '#000000'
                            outlineWidth: 3
                          type: object
                          properties:
                            color:
                              default: '#FFFFFF'
                              type: string
                            outlineColor:
                              default: '#000000'
                              type: string
                            outlineWidth:
                              default: 3
                              type: number
                          required:
                            - color
                            - outlineColor
                            - outlineWidth
                          additionalProperties: false
                        textSize:
                          default: 80
                          type: number
                        hideBeforeEnd:
                          default: 1
                          type: number
                      required:
                        - enabled
                        - maxDuration
                        - animation
                        - useNextSingerStyle
                        - style
                        - textSize
                        - hideBeforeEnd
                      additionalProperties: false
                    breakProgressBar:
                      default:
                        enabled: true
                        maxDuration: 10
                        useNextSingerStyle: false
                        style:
                          color: '#2185D0'
                          outlineColor: '#000000'
                          outlineWidth: 5
                          backgroundColor: '#FFFFFF'
                          fillColor: '#2185D0'
                        width: 47
                        height: 7.5
                        position: center
                        cornerRadius: 0
                        hideBeforeEnd: 0
                      type: object
                      properties:
                        enabled:
                          default: true
                          type: boolean
                        maxDuration:
                          default: 10
                          type: number
                        useNextSingerStyle:
                          default: false
                          type: boolean
                        style:
                          default:
                            color: '#2185D0'
                            backgroundColor: '#FFFFFF'
                            fillColor: '#2185D0'
                            outlineColor: '#000000'
                            outlineWidth: 5
                          type: object
                          properties:
                            color:
                              default: '#2185D0'
                              type: string
                            outlineColor:
                              default: '#000000'
                              type: string
                            outlineWidth:
                              default: 5
                              type: number
                            backgroundColor:
                              default: rgba(255, 255, 255, 0.2)
                              type: string
                            fillColor:
                              default: '#2185D0'
                              type: string
                          required:
                            - color
                            - outlineColor
                            - outlineWidth
                            - backgroundColor
                            - fillColor
                          additionalProperties: false
                        width:
                          default: 47
                          type: number
                        height:
                          default: 7.5
                          type: number
                        position:
                          default: center
                          type: string
                          enum:
                            - top
                            - center
                            - bottom
                        cornerRadius:
                          default: 0
                          type: number
                          minimum: 0
                          maximum: 50
                        hideBeforeEnd:
                          default: 0
                          type: number
                      required:
                        - enabled
                        - maxDuration
                        - useNextSingerStyle
                        - style
                        - width
                        - height
                        - position
                        - cornerRadius
                        - hideBeforeEnd
                      additionalProperties: false
                  required:
                    - branding
                    - titleCard
                    - leadIn
                    - instrumentalBreak
                    - breakCountdown
                    - breakProgressBar
                  additionalProperties: false
                trim:
                  default:
                    startSeconds: 0
                    endSeconds: 0
                  type: object
                  properties:
                    startSeconds:
                      default: 0
                      type: number
                    endSeconds:
                      default: 0
                      type: number
                  required:
                    - startSeconds
                    - endSeconds
                  additionalProperties: false
              required:
                - aspectRatio
                - layout
                - background
                - singerTextStyles
                - overlays
                - trim
              additionalProperties: false
            settings:
              type: object
              properties:
                style:
                  type: object
                  properties:
                    aspectRatio:
                      default: '16:9'
                      type: string
                      enum:
                        - '16:9'
                        - '9:16'
                        - '4:3'
                        - '1:1'
                    layout:
                      default:
                        type: karaoke
                        autoSplitLongLines: true
                        linesPerScreen: 2
                        alignment: bottom
                        paddingHorizontal: 0
                        paddingVertical: 5
                        languageSpacing: 5
                        containerHeight: 100
                        scrollingFadeStrength: 0.5
                        lineTransition: fade
                        anticipationBuffer: 3
                      type: object
                      properties:
                        type:
                          default: karaoke
                          type: string
                          enum:
                            - single
                            - duet
                            - karaoke
                            - scrolling
                            - multilingual
                            - chords
                        autoSplitLongLines:
                          default: true
                          type: boolean
                        linesPerScreen:
                          default: 2
                          anyOf:
                            - type: number
                              const: 2
                            - type: number
                              const: 3
                            - type: number
                              const: 4
                            - type: number
                              const: 5
                            - type: number
                              const: 6
                            - type: number
                              const: 7
                            - type: number
                              const: 8
                        alignment:
                          default: bottom
                          type: string
                          enum:
                            - top
                            - center
                            - bottom
                        paddingHorizontal:
                          default: 0
                          type: number
                        paddingVertical:
                          default: 5
                          type: number
                        languageSpacing:
                          default: 5
                          type: number
                          minimum: 0
                          maximum: 10
                        containerHeight:
                          default: 100
                          type: number
                          minimum: 20
                          maximum: 100
                        scrollingFadeStrength:
                          default: 0.5
                          type: number
                          minimum: 0
                          maximum: 1
                        lineTransition:
                          default: fade
                          type: string
                          enum:
                            - none
                            - fade
                            - slide
                            - dim
                        duetSettings:
                          type: object
                          properties:
                            overlapBehavior:
                              default: all-style
                              type: string
                              enum:
                                - both
                                - all-style
                          required:
                            - overlapBehavior
                          additionalProperties: false
                        multilingualSettings:
                          type: object
                          properties: {}
                          additionalProperties: false
                        anticipationBuffer:
                          default: 3
                          type: number
                          minimum: 0
                          maximum: 10
                      required:
                        - type
                        - autoSplitLongLines
                        - linesPerScreen
                        - alignment
                        - paddingHorizontal
                        - paddingVertical
                        - languageSpacing
                        - containerHeight
                        - scrollingFadeStrength
                        - lineTransition
                        - anticipationBuffer
                      additionalProperties: false
                    background:
                      default:
                        type: auto
                      oneOf:
                        - type: object
                          properties:
                            type:
                              type: string
                              const: auto
                          required:
                            - type
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: color
                            color:
                              default: '#000000'
                              type: string
                          required:
                            - type
                            - color
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: gradient
                            angle:
                              default: 0
                              type: number
                            colors:
                              default:
                                - '#000000'
                                - '#333333'
                              type: array
                              items:
                                type: string
                          required:
                            - type
                            - angle
                            - colors
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: image
                            url:
                              type: string
                            objectFit:
                              default: cover
                              type: string
                              enum:
                                - contain
                                - cover
                                - fill
                            blur:
                              type: number
                            dim:
                              type: number
                          required:
                            - type
                            - url
                            - objectFit
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: video
                            url:
                              type: string
                            objectFit:
                              default: cover
                              type: string
                              enum:
                                - contain
                                - cover
                                - fill
                            dim:
                              type: number
                          required:
                            - type
                            - url
                            - objectFit
                          additionalProperties: false
                    singerTextStyles:
                      default: {}
                      type: object
                      propertyNames:
                        type: number
                      additionalProperties:
                        type: object
                        properties:
                          fontFamily:
                            default: Arimo
                            type: string
                          fontSize:
                            default: 96
                            type: number
                          fontWeight:
                            default: 700
                            type: number
                          textColor:
                            default: '#FFFFFF'
                            type: string
                          outlineColor:
                            default: '#000000'
                            type: string
                          outlineWidth:
                            default: 20
                            type: number
                          textEffect:
                            default: karaoke
                            type: string
                            enum:
                              - none
                              - karaoke
                              - highlight
                          activeLineColor:
                            default: '#fff09a'
                            type: string
                          effectColor:
                            default: '#2185D0'
                            type: string
                          backgroundColor:
                            default: transparent
                            type: string
                          letterSpacing:
                            default: 0
                            type: number
                          lineSpacing:
                            default: 1.2
                            type: number
                          textCase:
                            default: none
                            type: string
                            enum:
                              - none
                              - uppercase
                              - lowercase
                              - capitalize
                          textDirection:
                            default: auto
                            type: string
                            enum:
                              - auto
                              - ltr
                              - rtl
                          shadowColor:
                            default: rgba(0,0,0,0.5)
                            type: string
                          shadowBlur:
                            default: 4
                            type: number
                          shadowOffsetX:
                            default: 0
                            type: number
                          shadowOffsetY:
                            default: 0
                            type: number
                          shadowOpacity:
                            type: number
                          duetPosition:
                            default: center
                            type: string
                            enum:
                              - top
                              - center
                              - bottom
                        required:
                          - fontFamily
                          - fontSize
                          - fontWeight
                          - textColor
                          - outlineColor
                          - outlineWidth
                          - textEffect
                          - activeLineColor
                          - effectColor
                          - backgroundColor
                          - letterSpacing
                          - lineSpacing
                          - textCase
                          - textDirection
                          - shadowColor
                          - shadowBlur
                          - shadowOffsetX
                          - shadowOffsetY
                          - duetPosition
                        additionalProperties: false
                    languageTextStyles:
                      default: {}
                      type: object
                      propertyNames:
                        type: string
                      additionalProperties:
                        type: object
                        properties:
                          fontFamily:
                            default: Arimo
                            type: string
                          fontSize:
                            default: 96
                            type: number
                          fontWeight:
                            default: 700
                            type: number
                          textColor:
                            default: '#FFFFFF'
                            type: string
                          outlineColor:
                            default: '#000000'
                            type: string
                          outlineWidth:
                            default: 20
                            type: number
                          textEffect:
                            default: karaoke
                            type: string
                            enum:
                              - none
                              - karaoke
                              - highlight
                          activeLineColor:
                            default: '#fff09a'
                            type: string
                          effectColor:
                            default: '#2185D0'
                            type: string
                          backgroundColor:
                            default: transparent
                            type: string
                          letterSpacing:
                            default: 0
                            type: number
                          lineSpacing:
                            default: 1.2
                            type: number
                          textCase:
                            default: none
                            type: string
                            enum:
                              - none
                              - uppercase
                              - lowercase
                              - capitalize
                          textDirection:
                            default: auto
                            type: string
                            enum:
                              - auto
                              - ltr
                              - rtl
                          shadowColor:
                            default: rgba(0,0,0,0.5)
                            type: string
                          shadowBlur:
                            default: 4
                            type: number
                          shadowOffsetX:
                            default: 0
                            type: number
                          shadowOffsetY:
                            default: 0
                            type: number
                          shadowOpacity:
                            type: number
                          duetPosition:
                            default: center
                            type: string
                            enum:
                              - top
                              - center
                              - bottom
                        required:
                          - fontFamily
                          - fontSize
                          - fontWeight
                          - textColor
                          - outlineColor
                          - outlineWidth
                          - textEffect
                          - activeLineColor
                          - effectColor
                          - backgroundColor
                          - letterSpacing
                          - lineSpacing
                          - textCase
                          - textDirection
                          - shadowColor
                          - shadowBlur
                          - shadowOffsetX
                          - shadowOffsetY
                          - duetPosition
                        additionalProperties: false
                    chordTextStyle:
                      type: object
                      properties:
                        fontFamily:
                          default: Arimo
                          type: string
                        fontSize:
                          default: 96
                          type: number
                        fontWeight:
                          default: 700
                          type: number
                        textColor:
                          default: '#FFFFFF'
                          type: string
                        outlineColor:
                          default: '#000000'
                          type: string
                        outlineWidth:
                          default: 20
                          type: number
                        textEffect:
                          default: karaoke
                          type: string
                          enum:
                            - none
                            - karaoke
                            - highlight
                        activeLineColor:
                          default: '#fff09a'
                          type: string
                        effectColor:
                          default: '#2185D0'
                          type: string
                        backgroundColor:
                          default: transparent
                          type: string
                        letterSpacing:
                          default: 0
                          type: number
                        lineSpacing:
                          default: 1.2
                          type: number
                        textCase:
                          default: none
                          type: string
                          enum:
                            - none
                            - uppercase
                            - lowercase
                            - capitalize
                        textDirection:
                          default: auto
                          type: string
                          enum:
                            - auto
                            - ltr
                            - rtl
                        shadowColor:
                          default: rgba(0,0,0,0.5)
                          type: string
                        shadowBlur:
                          default: 4
                          type: number
                        shadowOffsetX:
                          default: 0
                          type: number
                        shadowOffsetY:
                          default: 0
                          type: number
                        shadowOpacity:
                          type: number
                        duetPosition:
                          default: center
                          type: string
                          enum:
                            - top
                            - center
                            - bottom
                      required:
                        - fontFamily
                        - fontSize
                        - fontWeight
                        - textColor
                        - outlineColor
                        - outlineWidth
                        - textEffect
                        - activeLineColor
                        - effectColor
                        - backgroundColor
                        - letterSpacing
                        - lineSpacing
                        - textCase
                        - textDirection
                        - shadowColor
                        - shadowBlur
                        - shadowOffsetX
                        - shadowOffsetY
                        - duetPosition
                      additionalProperties: false
                    overlays:
                      default:
                        branding:
                          logo:
                            enabled: false
                            position: bottom-right
                            paddingX: 20
                            paddingY: 20
                            scale: 0.1
                            opacity: 1
                          intro:
                            enabled: false
                            durationSeconds: 0
                            effect: fade
                            effectDuration: 0.5
                          outro:
                            enabled: false
                            durationSeconds: 0
                            effect: fade
                            effectDuration: 0.5
                        titleCard:
                          enabled: true
                          duration: 5
                          autoHideBeforeLyrics: true
                          titleStyle:
                            fontFamily: Arimo
                            fontSize: 200
                            fontWeight: 700
                            textColor: '#2185D0'
                            outlineColor: '#000000'
                            outlineWidth: 30
                          artistStyle:
                            fontFamily: Arimo
                            fontSize: 150
                            fontWeight: 700
                            textColor: '#FFFFFF'
                            outlineColor: '#000000'
                            outlineWidth: 30
                        leadIn:
                          enabled: true
                          beats: 4
                          minGap: 3
                          useNextSingerStyle: true
                          style:
                            color: '#2185D0'
                            outlineColor: '#000000'
                            outlineWidth: 3
                          width: 0.2
                          height: 1
                          offsetX: -2
                          offsetY: 0
                        instrumentalBreak:
                          hideLyrics: true
                          minGap: 5
                          displayDuration: 3
                        breakCountdown:
                          enabled: true
                          maxDuration: 3
                          animation: fade
                          useNextSingerStyle: false
                          style:
                            color: '#FFFFFF'
                            outlineColor: '#000000'
                            outlineWidth: 14.5
                          textSize: 80
                          hideBeforeEnd: 0
                        breakProgressBar:
                          enabled: true
                          maxDuration: 10
                          useNextSingerStyle: false
                          style:
                            color: '#2185D0'
                            outlineColor: '#000000'
                            outlineWidth: 5
                            backgroundColor: '#FFFFFF'
                            fillColor: '#2185D0'
                          width: 47
                          height: 7.5
                          position: center
                          cornerRadius: 0
                          hideBeforeEnd: 0
                      type: object
                      properties:
                        branding:
                          default:
                            logo:
                              enabled: false
                              position: bottom-right
                              paddingX: 20
                              paddingY: 20
                              scale: 0.1
                              opacity: 1
                            intro:
                              enabled: false
                              durationSeconds: 0
                              effect: fade
                              effectDuration: 0.5
                            outro:
                              enabled: false
                              durationSeconds: 0
                              effect: fade
                              effectDuration: 0.5
                          type: object
                          properties:
                            logo:
                              default:
                                enabled: false
                                position: bottom-right
                                paddingX: 20
                                paddingY: 20
                                scale: 0.1
                                opacity: 1
                              type: object
                              properties:
                                enabled:
                                  default: false
                                  type: boolean
                                url:
                                  type: string
                                position:
                                  default: bottom-right
                                  type: string
                                  enum:
                                    - top-left
                                    - top-right
                                    - bottom-left
                                    - bottom-right
                                paddingX:
                                  default: 20
                                  type: number
                                paddingY:
                                  default: 20
                                  type: number
                                scale:
                                  default: 0.1
                                  type: number
                                opacity:
                                  default: 1
                                  type: number
                              required:
                                - enabled
                                - position
                                - paddingX
                                - paddingY
                                - scale
                                - opacity
                              additionalProperties: false
                            intro:
                              default:
                                enabled: false
                                durationSeconds: 0
                                effect: fade
                                effectDuration: 0.5
                              type: object
                              properties:
                                enabled:
                                  default: false
                                  type: boolean
                                url:
                                  type: string
                                durationSeconds:
                                  default: 0
                                  type: number
                                effect:
                                  default: fade
                                  type: string
                                  enum:
                                    - fade
                                    - crossfade
                                    - slide-left
                                    - slide-right
                                    - slide-up
                                    - slide-down
                                    - zoom-in
                                    - zoom-out
                                    - blur
                                effectDuration:
                                  default: 0.5
                                  type: number
                              required:
                                - enabled
                                - durationSeconds
                                - effect
                                - effectDuration
                              additionalProperties: false
                            outro:
                              default:
                                enabled: false
                                durationSeconds: 0
                                effect: fade
                                effectDuration: 0.5
                              type: object
                              properties:
                                enabled:
                                  default: false
                                  type: boolean
                                url:
                                  type: string
                                durationSeconds:
                                  default: 0
                                  type: number
                                effect:
                                  default: fade
                                  type: string
                                  enum:
                                    - fade
                                    - crossfade
                                    - slide-left
                                    - slide-right
                                    - slide-up
                                    - slide-down
                                    - zoom-in
                                    - zoom-out
                                    - blur
                                effectDuration:
                                  default: 0.5
                                  type: number
                              required:
                                - enabled
                                - durationSeconds
                                - effect
                                - effectDuration
                              additionalProperties: false
                          required:
                            - logo
                            - intro
                            - outro
                          additionalProperties: false
                        titleCard:
                          default:
                            enabled: true
                            duration: 5
                            autoHideBeforeLyrics: true
                            titleStyle:
                              fontFamily: Arimo
                              fontSize: 200
                              fontWeight: 700
                              textColor: '#2185D0'
                              outlineColor: '#000000'
                              outlineWidth: 30
                            artistStyle:
                              fontFamily: Arimo
                              fontSize: 150
                              fontWeight: 700
                              textColor: '#FFFFFF'
                              outlineColor: '#000000'
                              outlineWidth: 30
                          type: object
                          properties:
                            enabled:
                              default: true
                              type: boolean
                            duration:
                              default: 5
                              type: number
                            autoHideBeforeLyrics:
                              default: true
                              type: boolean
                            titleStyle:
                              default:
                                fontFamily: Arimo
                                fontSize: 200
                                fontWeight: 700
                                textColor: '#2185D0'
                                outlineColor: '#000000'
                                outlineWidth: 30
                              type: object
                              properties:
                                fontFamily:
                                  default: Arimo
                                  type: string
                                fontSize:
                                  default: 150
                                  type: number
                                fontWeight:
                                  default: 700
                                  type: number
                                textColor:
                                  default: '#FFFFFF'
                                  type: string
                                outlineColor:
                                  default: '#000000'
                                  type: string
                                outlineWidth:
                                  default: 4
                                  type: number
                              required:
                                - fontFamily
                                - fontSize
                                - fontWeight
                                - textColor
                                - outlineColor
                                - outlineWidth
                              additionalProperties: false
                            artistStyle:
                              default:
                                fontFamily: Arimo
                                fontSize: 150
                                fontWeight: 700
                                textColor: '#FFFFFF'
                                outlineColor: '#000000'
                                outlineWidth: 30
                              type: object
                              properties:
                                fontFamily:
                                  default: Arimo
                                  type: string
                                fontSize:
                                  default: 150
                                  type: number
                                fontWeight:
                                  default: 700
                                  type: number
                                textColor:
                                  default: '#FFFFFF'
                                  type: string
                                outlineColor:
                                  default: '#000000'
                                  type: string
                                outlineWidth:
                                  default: 4
                                  type: number
                              required:
                                - fontFamily
                                - fontSize
                                - fontWeight
                                - textColor
                                - outlineColor
                                - outlineWidth
                              additionalProperties: false
                          required:
                            - enabled
                            - duration
                            - autoHideBeforeLyrics
                            - titleStyle
                            - artistStyle
                          additionalProperties: false
                        leadIn:
                          default:
                            enabled: true
                            beats: 4
                            minGap: 3
                            useNextSingerStyle: true
                            style:
                              color: '#2185D0'
                              outlineColor: '#000000'
                              outlineWidth: 3
                            width: 0.2
                            height: 1
                            offsetX: -2
                            offsetY: 0
                          type: object
                          properties:
                            enabled:
                              default: true
                              type: boolean
                            beats:
                              default: 4
                              type: number
                            minGap:
                              default: 3
                              type: number
                            useNextSingerStyle:
                              default: true
                              type: boolean
                            style:
                              default:
                                color: '#2185D0'
                                outlineColor: '#000000'
                                outlineWidth: 3
                              type: object
                              properties:
                                color:
                                  default: '#2185D0'
                                  type: string
                                outlineColor:
                                  default: '#000000'
                                  type: string
                                outlineWidth:
                                  default: 3
                                  type: number
                              required:
                                - color
                                - outlineColor
                                - outlineWidth
                              additionalProperties: false
                            width:
                              default: 0.2
                              type: number
                            height:
                              default: 1
                              type: number
                            offsetX:
                              default: -2
                              type: number
                            offsetY:
                              default: 0
                              type: number
                          required:
                            - enabled
                            - beats
                            - minGap
                            - useNextSingerStyle
                            - style
                            - width
                            - height
                            - offsetX
                            - offsetY
                          additionalProperties: false
                        instrumentalBreak:
                          default:
                            hideLyrics: true
                            minGap: 5
                            displayDuration: 3
                          type: object
                          properties:
                            hideLyrics:
                              default: true
                              type: boolean
                            minGap:
                              default: 5
                              type: number
                            displayDuration:
                              default: 3
                              type: number
                          required:
                            - hideLyrics
                            - minGap
                            - displayDuration
                          additionalProperties: false
                        breakCountdown:
                          default:
                            enabled: true
                            maxDuration: 3
                            animation: fade
                            useNextSingerStyle: false
                            style:
                              color: '#FFFFFF'
                              outlineColor: '#000000'
                              outlineWidth: 14.5
                            textSize: 80
                            hideBeforeEnd: 0
                          type: object
                          properties:
                            enabled:
                              default: true
                              type: boolean
                            maxDuration:
                              default: 3
                              type: number
                            animation:
                              default: spring
                              type: string
                              enum:
                                - spring
                                - fade
                            useNextSingerStyle:
                              default: false
                              type: boolean
                            style:
                              default:
                                color: '#FFFFFF'
                                outlineColor: '#000000'
                                outlineWidth: 3
                              type: object
                              properties:
                                color:
                                  default: '#FFFFFF'
                                  type: string
                                outlineColor:
                                  default: '#000000'
                                  type: string
                                outlineWidth:
                                  default: 3
                                  type: number
                              required:
                                - color
                                - outlineColor
                                - outlineWidth
                              additionalProperties: false
                            textSize:
                              default: 80
                              type: number
                            hideBeforeEnd:
                              default: 1
                              type: number
                          required:
                            - enabled
                            - maxDuration
                            - animation
                            - useNextSingerStyle
                            - style
                            - textSize
                            - hideBeforeEnd
                          additionalProperties: false
                        breakProgressBar:
                          default:
                            enabled: true
                            maxDuration: 10
                            useNextSingerStyle: false
                            style:
                              color: '#2185D0'
                              outlineColor: '#000000'
                              outlineWidth: 5
                              backgroundColor: '#FFFFFF'
                              fillColor: '#2185D0'
                            width: 47
                            height: 7.5
                            position: center
                            cornerRadius: 0
                            hideBeforeEnd: 0
                          type: object
                          properties:
                            enabled:
                              default: true
                              type: boolean
                            maxDuration:
                              default: 10
                              type: number
                            useNextSingerStyle:
                              default: false
                              type: boolean
                            style:
                              default:
                                color: '#2185D0'
                                backgroundColor: '#FFFFFF'
                                fillColor: '#2185D0'
                                outlineColor: '#000000'
                                outlineWidth: 5
                              type: object
                              properties:
                                color:
                                  default: '#2185D0'
                                  type: string
                                outlineColor:
                                  default: '#000000'
                                  type: string
                                outlineWidth:
                                  default: 5
                                  type: number
                                backgroundColor:
                                  default: rgba(255, 255, 255, 0.2)
                                  type: string
                                fillColor:
                                  default: '#2185D0'
                                  type: string
                              required:
                                - color
                                - outlineColor
                                - outlineWidth
                                - backgroundColor
                                - fillColor
                              additionalProperties: false
                            width:
                              default: 47
                              type: number
                            height:
                              default: 7.5
                              type: number
                            position:
                              default: center
                              type: string
                              enum:
                                - top
                                - center
                                - bottom
                            cornerRadius:
                              default: 0
                              type: number
                              minimum: 0
                              maximum: 50
                            hideBeforeEnd:
                              default: 0
                              type: number
                          required:
                            - enabled
                            - maxDuration
                            - useNextSingerStyle
                            - style
                            - width
                            - height
                            - position
                            - cornerRadius
                            - hideBeforeEnd
                          additionalProperties: false
                      required:
                        - branding
                        - titleCard
                        - leadIn
                        - instrumentalBreak
                        - breakCountdown
                        - breakProgressBar
                      additionalProperties: false
                    trim:
                      default:
                        startSeconds: 0
                        endSeconds: 0
                      type: object
                      properties:
                        startSeconds:
                          default: 0
                          type: number
                        endSeconds:
                          default: 0
                          type: number
                      required:
                        - startSeconds
                        - endSeconds
                      additionalProperties: false
                  required:
                    - aspectRatio
                    - layout
                    - background
                    - singerTextStyles
                    - overlays
                    - trim
                  additionalProperties: false
                trim:
                  type: object
                  properties:
                    startSeconds:
                      default: 0
                      type: number
                    endSeconds:
                      default: 0
                      type: number
                  required:
                    - startSeconds
                    - endSeconds
                  additionalProperties: false
                displayLanguages:
                  type: array
                  items:
                    type: string
                chordSettings:
                  type: object
                  properties:
                    displayMode:
                      default: inline
                      type: string
                      enum:
                        - inline
                        - grid
                    notation:
                      default: chord_simple_pop
                      type: string
                      enum:
                        - chord_complex_pop
                        - chord_simple_pop
                        - chord_basic_pop
                        - chord_complex_jazz
                        - chord_simple_jazz
                        - chord_basic_jazz
                        - chord_complex_nashville
                        - chord_simple_nashville
                        - chord_basic_nashville
                        - chord_majmin
                    transpose:
                      default: 0
                      type: integer
                      minimum: -12
                      maximum: 12
                    capo:
                      default: 0
                      type: integer
                      minimum: 0
                      maximum: 12
                    showLayer:
                      default: true
                      type: boolean
                  required:
                    - displayMode
                    - notation
                    - transpose
                    - capo
                    - showLayer
                  additionalProperties: false
                duetSingerFilter:
                  type: object
                  properties:
                    enabled:
                      default: false
                      type: boolean
                    selectedSingerIds:
                      default: []
                      type: array
                      items:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                    includeSharedLines:
                      default: true
                      type: boolean
                  required:
                    - enabled
                    - selectedSingerIds
                    - includeSharedLines
                  additionalProperties: false
              additionalProperties: false
          required:
            - presetId
            - preset
            - settings
          additionalProperties: false
      required:
        - id
        - title
        - artists
        - stems
        - alignments
        - exports
        - settings
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API key

````