VersusGame Autogame API

The autogame API from VersusGame — 27 operation(s) for autogame.

OpenAPI Specification

versusgame-autogame-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Versusgame Autogame API
  description: APIs for Versusgame Application
  version: '1.0'
  contact: {}
tags:
- name: autogame
paths:
  /autogame/upload:
    post:
      operationId: AutogameController_createUpload
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUploadDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Upload'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/polly/voice:
    post:
      operationId: PollyController_voice
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SynthesizeSpeechDto'
      responses:
        '200':
          description: ''
          content:
            audio/mp3:
              schema:
                type: string
                format: binary
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/polly/voice-asset:
    post:
      operationId: PollyController_voiceAsset
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreatePollyAssetDto'
      responses:
        '200':
          description: ''
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/polly/speech_marks:
    post:
      operationId: PollyController_speechMarks
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SynthesizeSpeechDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListSpeechMark'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/polly:
    get:
      operationId: PollyController_describeVoices
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListVoices'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/google_search:
    get:
      operationId: GoogleSearchController_search
      parameters:
      - name: c2coff
        required: false
        in: query
        description: 'Enables or disables [Simplified and Traditional Chinese Search](https://developers.google.com/custom-search/docs/json_api_reference#chineseSearch).
          The default value for this parameter is 0 (zero), meaning that the feature is enabled. Supported
          values are: * `1`: Disabled * `0`: Enabled (default)'
        schema:
          type: string
      - name: cr
        required: false
        in: query
        description: 'Restricts search results to documents originating in a particular country. You may
          use [Boolean operators](https://developers.google.com/custom-search/docs/json_api_reference#booleanOperators)
          in the cr parameter''s value. Google Search determines the country of a document by analyzing:
          * the top-level domain (TLD) of the document''s URL * the geographic location of the Web server''s
          IP address See the [Country Parameter Values](https://developers.google.com/custom-search/docs/json_api_reference#countryCollections)
          page for a list of valid values for this parameter.'
        schema:
          type: string
      - name: cx
        required: false
        in: query
        description: The Programmable Search Engine ID to use for this request.
        schema:
          type: string
      - name: dateRestrict
        required: false
        in: query
        description: 'Restricts results to URLs based on date. Supported values include: * `d[number]`:
          requests results from the specified number of past days. * `w[number]`: requests results from
          the specified number of past weeks. * `m[number]`: requests results from the specified number
          of past months. * `y[number]`: requests results from the specified number of past years.'
        schema:
          type: string
      - name: exactTerms
        required: false
        in: query
        description: Identifies a phrase that all documents in the search results must contain.
        schema:
          type: string
      - name: excludeTerms
        required: false
        in: query
        description: Identifies a word or phrase that should not appear in any documents in the search
          results.
        schema:
          type: string
      - name: fileType
        required: false
        in: query
        description: Restricts results to files of a specified extension. A list of file types indexable
          by Google can be found in Search Console [Help Center](https://support.google.com/webmasters/answer/35287).
        schema:
          type: string
      - name: filter
        required: false
        in: query
        description: 'Controls turning on or off the duplicate content filter. * See [Automatic Filtering](https://developers.google.com/custom-search/docs/json_api_reference#automaticFiltering)
          for more information about Google''s search results filters. Note that host crowding filtering
          applies only to multi-site searches. * By default, Google applies filtering to all search results
          to improve the quality of those results. Acceptable values are: * `0`: Turns off duplicate content
          filter. * `1`: Turns on duplicate content filter.'
        schema:
          type: string
      - name: gl
        required: false
        in: query
        description: Geolocation of end user. * The `gl` parameter value is a two-letter country code.
          The `gl` parameter boosts search results whose country of origin matches the parameter value.
          See the [Country Codes](https://developers.google.com/custom-search/docs/json_api_reference#countryCodes)
          page for a list of valid values. * Specifying a `gl` parameter value should lead to more relevant
          results. This is particularly true for international customers and, even more specifically,
          for customers in English- speaking countries other than the United States.
        schema:
          type: string
      - name: googlehost
        required: false
        in: query
        description: '**Deprecated**. Use the `gl` parameter for a similar effect. The local Google domain
          (for example, google.com, google.de, or google.fr) to use to perform the search.'
        schema:
          type: string
      - name: highRange
        required: false
        in: query
        description: Specifies the ending value for a search range. * Use `lowRange` and `highRange` to
          append an inclusive search range of `lowRange...highRange` to the query.
        schema:
          type: string
      - name: hl
        required: false
        in: query
        description: Sets the user interface language. * Explicitly setting this parameter improves the
          performance and the quality of your search results. * See the [Interface Languages](https://developers.google.com/custom-search/docs/json_api_reference#wsInterfaceLanguages)
          section of [Internationalizing Queries and Results Presentation](https://developers.google.com/custom-search/docs/json_api_reference#wsInternationalizing)
          for more information, and [Supported Interface Languages](https://developers.google.com/custom-search/docs/json_api_reference#interfaceLanguages)
          for a list of supported languages.
        schema:
          type: string
      - name: hq
        required: false
        in: query
        description: Appends the specified query terms to the query, as if they were combined with a logical
          AND operator.
        schema:
          type: string
      - name: imgColorType
        required: false
        in: query
        description: 'Returns black and white, grayscale, transparent, or color images. Acceptable values
          are: * `"color"` * `"gray"` * `"mono"`: black and white * `"trans"`: transparent background'
        schema:
          type: string
      - name: imgDominantColor
        required: false
        in: query
        description: 'Returns images of a specific dominant color. Acceptable values are: * `"black"`
          * `"blue"` * `"brown"` * `"gray"` * `"green"` * `"orange"` * `"pink"` * `"purple"` * `"red"`
          * `"teal"` * `"white"` * `"yellow"`'
        schema:
          type: string
      - name: imgSize
        required: false
        in: query
        description: 'Returns images of a specified size. Acceptable values are: * `"huge"` * `"icon"`
          * `"large"` * `"medium"` * `"small"` * `"xlarge"` * `"xxlarge"`'
        schema:
          type: string
      - name: imgType
        required: false
        in: query
        description: 'Returns images of a type. Acceptable values are: * `"clipart"` * `"face"` * `"lineart"`
          * `"stock"` * `"photo"` * `"animated"`'
        schema:
          type: string
      - name: linkSite
        required: false
        in: query
        description: Specifies that all search results should contain a link to a particular URL.
        schema:
          type: string
      - name: lowRange
        required: false
        in: query
        description: Specifies the starting value for a search range. Use `lowRange` and `highRange` to
          append an inclusive search range of `lowRange...highRange` to the query.
        schema:
          type: string
      - name: lr
        required: false
        in: query
        description: 'Restricts the search to documents written in a particular language (e.g., `lr=lang_ja`).
          Acceptable values are: * `"lang_ar"`: Arabic * `"lang_bg"`: Bulgarian * `"lang_ca"`: Catalan
          * `"lang_cs"`: Czech * `"lang_da"`: Danish * `"lang_de"`: German * `"lang_el"`: Greek * `"lang_en"`:
          English * `"lang_es"`: Spanish * `"lang_et"`: Estonian * `"lang_fi"`: Finnish * `"lang_fr"`:
          French * `"lang_hr"`: Croatian * `"lang_hu"`: Hungarian * `"lang_id"`: Indonesian * `"lang_is"`:
          Icelandic * `"lang_it"`: Italian * `"lang_iw"`: Hebrew * `"lang_ja"`: Japanese * `"lang_ko"`:
          Korean * `"lang_lt"`: Lithuanian * `"lang_lv"`: Latvian * `"lang_nl"`: Dutch * `"lang_no"`:
          Norwegian * `"lang_pl"`: Polish * `"lang_pt"`: Portuguese * `"lang_ro"`: Romanian * `"lang_ru"`:
          Russian * `"lang_sk"`: Slovak * `"lang_sl"`: Slovenian * `"lang_sr"`: Serbian * `"lang_sv"`:
          Swedish * `"lang_tr"`: Turkish * `"lang_zh-CN"`: Chinese (Simplified) * `"lang_zh-TW"`: Chinese
          (Traditional)'
        schema:
          type: string
      - name: num
        required: false
        in: query
        description: Number of search results to return. * Valid values are integers between 1 and 10,
          inclusive.
        schema:
          type: number
      - name: orTerms
        required: false
        in: query
        description: Provides additional search terms to check for in a document, where each document
          in the search results must contain at least one of the additional search terms.
        schema:
          type: string
      - name: q
        required: true
        in: query
        description: Query
        schema:
          type: string
      - name: relatedSite
        required: false
        in: query
        description: Specifies that all search results should be pages that are related to the specified
          URL.
        schema:
          type: string
      - name: rights
        required: false
        in: query
        description: 'Filters based on licensing. Supported values include: `cc_publicdomain`, `cc_attribute`,
          `cc_sharealike`, `cc_noncommercial`, `cc_nonderived` and combinations of these. See [typical
          combinations](https://wiki.creativecommons.org/wiki/CC_Search_integration).'
        schema:
          type: string
      - name: safe
        required: false
        in: query
        description: 'Search safety level. Acceptable values are: * `"active"`: Enables SafeSearch filtering.
          * `"off"`: Disables SafeSearch filtering. (default)'
        schema:
          type: string
      - name: searchType
        required: false
        in: query
        description: 'Specifies the search type: `image`. If unspecified, results are limited to webpages.
          Acceptable values are: * `"image"`: custom image search.'
        schema:
          type: string
      - name: siteSearch
        required: false
        in: query
        description: Specifies a given site which should always be included or excluded from results (see
          `siteSearchFilter` parameter, below).
        schema:
          type: string
      - name: siteSearchFilter
        required: false
        in: query
        description: 'Controls whether to include or exclude results from the site named in the `siteSearch`
          parameter. Acceptable values are: * `"e"`: exclude * `"i"`: include'
        schema:
          type: string
      - name: sort
        required: false
        in: query
        description: 'The sort expression to apply to the results. The sort parameter specifies that the
          results be sorted according to the specified expression i.e. sort by date. [Example: sort=date](https://developers.google.com/custom-search/docs/structured_search#sort-by-attribute).'
        schema:
          type: string
      - name: start
        required: false
        in: query
        description: 'The index of the first result to return. The default number of results per page
          is 10, so `&start=11` would start at the top of the second page of results. **Note**: The JSON
          API will never return more than 100 results, even if more than 100 documents match the query,
          so setting the sum of `start + num` to a number greater than 100 will produce an error. Also
          note that the maximum value for `num` is 10.'
        schema:
          type: number
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleSearch'
      security:
      - access-token: []
      tags:
      - autogame
    post:
      operationId: GoogleSearchController_insert
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InsertRawSearchDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleSearch'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/google_search/{id}:
    get:
      operationId: GoogleSearchController_byId
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleSearch'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/openai/chat_completions:
    post:
      operationId: OpenAIController_chatCompletionCreate
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChatCompletionsDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/scraper:
    get:
      operationId: ScraperController_scrape
      parameters:
      - name: url
        required: true
        in: query
        schema:
          format: uri
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParsedDocument'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/proxy:
    get:
      operationId: ProxyController_proxy
      parameters:
      - name: url
        required: true
        in: query
        schema:
          format: uri
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: string
                format: binary
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/remotion/render:
    post:
      operationId: RemotionController_render
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RenderDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Asset'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/chat-history:
    post:
      operationId: ChatHistoryController_createChatHistory
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateChatHistoryDto'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatHistory'
      security:
      - access-token: []
      tags:
      - autogame
    get:
      operationId: ChatHistoryController_listChatHistories
      parameters:
      - name: creatorId
        required: true
        in: query
        schema:
          type: string
      - name: gameCreated
        required: false
        in: query
        schema:
          type: boolean
      - name: limit
        required: false
        in: query
        schema:
          type: number
      - name: offset
        required: false
        in: query
        schema:
          type: number
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatHistoryList'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/chat-history/{id}:
    get:
      operationId: ChatHistoryController_GetChatHistoryById
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatHistory'
      security:
      - access-token: []
      tags:
      - autogame
    patch:
      operationId: ChatHistoryController_updateChatHistory
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateChatHistoryDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatHistory'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article:
    post:
      operationId: ArticleController_createArticle
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateArticleDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Article'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article/drafts/{id}/game_index/{gameIndex}:
    get:
      operationId: ArticleController_draftById
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: gameIndex
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GameDraft'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article/drafts:
    get:
      operationId: ArticleController_listGameDrafts
      parameters:
      - name: state
        required: true
        in: query
        schema:
          $ref: '#/components/schemas/GameDraftState'
      - name: gameType
        required: false
        in: query
        schema:
          $ref: '#/components/schemas/GameType'
      - name: id
        required: false
        in: query
        schema:
          type: string
      - name: text
        required: false
        in: query
        schema:
          type: string
      - name: gameIndex
        required: false
        in: query
        schema:
          type: string
      - name: userId
        required: false
        in: query
        schema:
          type: string
      - name: systemMessageNames
        required: false
        in: query
        schema:
          type: array
          items:
            type: string
      - name: lock
        required: false
        in: query
        schema:
          type: boolean
      - name: asc
        required: false
        in: query
        schema:
          type: boolean
      - name: start
        required: false
        in: query
        schema:
          type: string
      - name: limit
        required: false
        in: query
        schema:
          type: number
      - name: articleId
        required: false
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGameDraft'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article/drafts/versions:
    get:
      operationId: ArticleController_listGameDraftVersions
      parameters:
      - name: id
        required: false
        in: query
        schema:
          type: string
      - name: userId
        required: false
        in: query
        schema:
          type: string
      - name: asc
        required: false
        in: query
        schema:
          type: boolean
      - name: start
        required: false
        in: query
        schema:
          type: string
      - name: limit
        required: false
        in: query
        schema:
          type: number
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGameDraftVersion'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article/drafts/{id}:
    post:
      operationId: ArticleController_createDraft
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: version
        required: true
        in: query
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDraftDto'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GameDraft'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article/drafts/{id}/game_index/{gameIndex}/set_state:
    post:
      operationId: ArticleController_setState
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: gameIndex
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetStateDto'
      responses:
        '204':
          description: ''
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article/drafts/{id}/game_index/{gameIndex}/version:
    post:
      operationId: ArticleController_newVersion
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: gameIndex
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewVersionDto'
      responses:
        '204':
          description: ''
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article/{id}:
    get:
      operationId: ArticleController_articleById
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Article'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/article/drafts/{id}/game_index/{gameIndex}/game:
    post:
      operationId: ArticleController_createGame
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: gameIndex
        required: true
        in: path
        schema:
          type: string
      - name: x-idempotency-key
        in: header
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGameDto'
      responses:
        '201':
          description: Creates a new game
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GameEntity'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/game:
    post:
      operationId: AutogameGameController_createGame
      parameters:
      - name: creatorId
        required: true
        in: query
        schema:
          type: string
      - name: idempotencyKey
        required: true
        in: query
        schema:
          type: string
      - name: skipRelevanceCheck
        required: false
        in: query
        schema:
          type: boolean
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGameDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Upload'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/elevenlabs/voice:
    post:
      operationId: ElevenLabsController_voice
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VoiceGenerationDto'
      responses:
        '200':
          description: ''
          content:
            audio/mp3:
              schema:
                type: string
                format: binary
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/elevenlabs/voice-asset:
    post:
      operationId: ElevenLabsController_voiceAsset
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVoiceAssetDto'
      responses:
        '200':
          description: ''
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/elevenlabs/speech_marks:
    post:
      operationId: ElevenLabsController_speechMarks
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VoiceGenerationDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AudioResponse'
      security:
      - access-token: []
      tags:
      - autogame
  /autogame/elevenlabs:
    get:
      operationId: ElevenLabsController_describeVoices
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ElevenLabsVoiceList'
      security:
      - access-token: []
      tags:
      - autogame
components:
  schemas:
    CreateDraftDto:
      type: object
      properties:
        gameType:
          allOf:
          - $ref: '#/components/schemas/GameType'
        gameDetail:
          $ref: '#/components/schemas/GameDetail'
        systemMessage:
          type: string
        systemMessageName:
          type: string
        url:
          type: string
      required:
      - gameType
      - gameDetail
      - systemMessage
      - systemMessageName
      - url
    GameDraftState:
      type: string
      enum:
      - sqa-to-review
      - video-to-review
      - video-ready
      - approved
      - rejected
      - published
    StatsEntity:
      type: object
      properties:
        sideA:
          $ref: '#/components/schemas/SideStatsEntity'
        sideB:
          $ref: '#/components/schemas/SideStatsEntity'
      required:
      - sideA
      - sideB
    RenderDto:
      type: object
      properties:
        compositionId:
          type: string
        inputProps:
          type: object
        fps:
          type: number
          minimum: 30
          maximum: 60
        durationInFrames:
          type: number
          minimum: 1
        width:
          type: number
          minimum: 1
        height:
          type: number
          minimum: 1
        bundleBuildId:
          type: string
      required:
      - compositionId
      - inputProps
      - fps
      - durationInFrames
      - width
      - height
      - bundleBuildId
    CreateVoiceAssetDto:
      type: object
      properties:
        syntesizedSpeech:
          $ref: '#/components/schemas/VoiceGenerationDto'
        name:
          type: string
        userId:
          type: string
      required:
      - syntesizedSpeech
      - name
      - userId
    Overlay:
      type: object
      properties:
        start_chunk:
          type: number
        end_chunk:
          type: number
        images_query:
          type: string
        image_type:
          type: string
        image_search:
          $ref: '#/components/schemas/ImageSearch'
      required:
      - start_chunk
      - end_chunk
      - images_query
      - image_type
      - image_search
    Question:
      type: object
      properties:
        text:
          type: string
        images_query:
          type: string
        image_type:
          type: string
        image_search:
          $ref: '#/components/schemas/ImageSearch'
      required:
      - text
      - images_query
      - image_type
      - image_search
    VideoUrls:
      type: object
      properties:
        hls:
          type: string
        mp4360:
          type: string
        mp4540:
          type: string
        mp4720:
          type: string
        poster:
          type: string
      required:
      - hls
      - mp4360
      - mp4540
      - mp4720
      - poster
    Synopsis:
      type: object
      properties:
        text:
          type: string
        images_query:
          type: string
   

# --- truncated at 32 KB (55 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/versusgame/refs/heads/main/openapi/versusgame-autogame-api-openapi.yml