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

# Get AI task result

> This is the single method to check the execution status of an AI task, and obtain the result of any type of AI task.


Based on the results of processing, the “result” field will contain an answer corresponding to the type of the initially created task:
- ASR: Transcribe video
- ASR: Translate subtitles
- CM: Sports detection
- CM: Not Safe For Work (NSFW) content detection
- CM: Soft nudity detection
- CM: Hard nudity detection
- CM: Objects recognition (soon)
- etc... (see other methods from /ai/ domain)

  


A queue is used to process videos. The waiting time depends on the total number of requests in the system, so sometimes you will have to wait.

Statuses:
- PENDING – the task is received and it is pending for available resources
- STARTED – processing has started
- SUCCESS – processing has completed successfully
- FAILURE – processing failed
- REVOKED – processing was cancelled by the user (or the system)
- RETRY – the task execution failed due to internal reasons, the task is queued for re-execution (up to 3 times)

Each task is processed in sub-stages, for example, original language is first determined in a video, and then transcription is performed. In such cases, the video processing status may change from "STARTED" to "PENDING", and back. This is due to waiting for resources for a specific processing sub-stage. In this case, the overall percentage "progress" of video processing will reflect the full picture.

  


The result data is stored for 1 month, after which it is deleted.

  


For billing conditions see the corresponding methods in /ai/ domain. The task is billed only after successful completion of the task and transition to "SUCCESS" status.



## OpenAPI

````yaml /api-reference/services_documented/streaming_api.yaml get /streaming/ai/tasks/{task_id}
openapi: 3.1.0
info:
  title: Gcore OpenAPI – Streaming API
  description: >-
    This OpenAPI is an aggregated OpenAPI specification that unifies all Gcore
    products into a single file. It covers Cloud, CDN, DNS, WAAP, DDoS
    Protection, Object Storage, Streaming, and FastEdge services.
  version: '2026-05-14T07:00:22.640261+00:00'
servers:
  - url: https://api.gcore.com
security:
  - APIKey: []
tags:
  - name: AI
    x-displayName: AI
  - name: Broadcasts
    x-displayName: Broadcasts
  - name: Directories
    x-displayName: Directories
  - name: Overlays
    x-displayName: Overlays
  - name: Players
    x-displayName: Players
  - name: Playlists
    x-displayName: Playlists
  - name: QualitySets
    x-displayName: QualitySets
  - name: Restreams
    x-displayName: Restreams
  - name: Streaming Statistics
    x-displayName: Statistics
  - name: Streams
    x-displayName: Streams
  - name: Subtitles
    x-displayName: Subtitles
  - name: Videos
    x-displayName: Videos
paths:
  /streaming/ai/tasks/{task_id}:
    get:
      tags:
        - AI
      summary: Get AI task result
      description: >-
        This is the single method to check the execution status of an AI task,
        and obtain the result of any type of AI task.



        Based on the results of processing, the “result” field will contain an
        answer corresponding to the type of the initially created task:

        - ASR: Transcribe video

        - ASR: Translate subtitles

        - CM: Sports detection

        - CM: Not Safe For Work (NSFW) content detection

        - CM: Soft nudity detection

        - CM: Hard nudity detection

        - CM: Objects recognition (soon)

        - etc... (see other methods from /ai/ domain)

          


        A queue is used to process videos. The waiting time depends on the total
        number of requests in the system, so sometimes you will have to wait.


        Statuses:

        - PENDING – the task is received and it is pending for available
        resources

        - STARTED – processing has started

        - SUCCESS – processing has completed successfully

        - FAILURE – processing failed

        - REVOKED – processing was cancelled by the user (or the system)

        - RETRY – the task execution failed due to internal reasons, the task is
        queued for re-execution (up to 3 times)


        Each task is processed in sub-stages, for example, original language is
        first determined in a video, and then transcription is performed. In
        such cases, the video processing status may change from "STARTED" to
        "PENDING", and back. This is due to waiting for resources for a specific
        processing sub-stage. In this case, the overall percentage "progress" of
        video processing will reflect the full picture.

          


        The result data is stored for 1 month, after which it is deleted.

          


        For billing conditions see the corresponding methods in /ai/ domain. The
        task is billed only after successful completion of the task and
        transition to "SUCCESS" status.
      operationId: get_ai_task
      parameters:
        - name: task_id
          in: path
          required: true
          schema:
            type: string
          description: >-
            ID of the task to get status of execution or result. This value is
            taken from the response of the initial AI task creation method.
      responses:
        '200':
          description: Result of AI task execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ai_results'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/notfound'
        '422':
          description: >-
            This is advanced functionality; to enable it, contact your manager
            or the Support Team.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/upgraderequired'
      x-codeSamples:
        - lang: Python
          source: |-
            import os
            from gcore import Gcore

            client = Gcore(
                api_key=os.environ.get("GCORE_API_KEY"),  # This is the default and can be omitted
            )
            ai_task = client.streaming.ai_tasks.get(
                "task_id",
            )
            print(ai_task)
        - lang: Go
          source: "package main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"github.com/G-Core/gcore-go\"\n\t\"github.com/G-Core/gcore-go/option\"\n)\n\nfunc main() {\n\tclient := gcore.NewClient(\n\t\toption.WithAPIKey(\"My API Key\"),\n\t)\n\taiTask, err := client.Streaming.AITasks.Get(context.TODO(), \"task_id\")\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\tfmt.Printf(\"%+v\\n\", aiTask)\n}\n"
components:
  schemas:
    ai_results:
      allOf:
        - $ref: '#/components/schemas/ai_task_base'
      properties:
        processing_time:
          type: object
          properties:
            started_at:
              type: string
              description: Video processing start time. Format is date time in ISO 8601
            completed_at:
              type: string
              description: Video processing end time. Format is date time in ISO 8601
              default: null
            total_time_sec:
              type: number
              format: decimal
              description: Duration of video processing in seconds
              default: null
        result:
          oneOf:
            - $ref: '#/components/schemas/ai_results_transcribe'
            - $ref: '#/components/schemas/ai_results_contentmoderation_sport'
            - $ref: '#/components/schemas/ai_results_contentmoderation_nsfw'
            - $ref: '#/components/schemas/ai_results_contentmoderation_hardnudity'
            - $ref: '#/components/schemas/ai_results_contentmoderation_softnudity'
            - $ref: '#/components/schemas/ai_results_failure'
          default: null
      example:
        task_id: aafe70c6-0000-0000-0000-327b65f7670f
        task_data: {}
        progress: 100
        status: SUCCESS
        processing_time:
          started_at: '2024-07-13T12:30:00.000Z'
          completed_at: '2024-07-13T12:31:02.900Z'
          total_time_sec: 62.901
        result: {}
    notfound:
      allOf:
        - $ref: '#/components/schemas/badrequest'
        - example:
            status: 404
            error: >-
              Not Found. Entity you are looking for was not found, please check
              the initial parameters
    upgraderequired:
      type: object
      properties:
        error:
          type: string
          description: >-
            This is advanced functionality; to enable it, contact your manager
            or support service.
      example:
        error: Feature is disabled. Contact support to enable.
    ai_task_base:
      type: object
      properties:
        task_id:
          type: string
          format: uuid
          description: ID of the AI task
        status:
          type: string
          description: >-
            Status of processing the AI task. See GET /ai/results method for
            description.
          enum:
            - PENDING
            - STARTED
            - SUCCESS
            - FAILURE
            - REVOKED
            - RETRY
        progress:
          type: integer
          default: null
          description: >-
            Percentage of task completed. A value greater than 0 means that it
            has been taken into operation and is being processed.
        task_name:
          type: string
          description: Type of AI task
          enum:
            - content-moderation
            - transcription
        task_data:
          oneOf:
            - $ref: '#/components/schemas/ai_transcribe'
            - $ref: '#/components/schemas/ai_contentmoderation_nsfw'
            - $ref: '#/components/schemas/ai_contentmoderation_hardnudity'
            - $ref: '#/components/schemas/ai_contentmoderation_softnudity'
            - $ref: '#/components/schemas/ai_contentmoderation_sport'
          description: >-
            The object will correspond to the task type that was specified in
            the original request. There will be one object for transcription,
            another for searching for nudity, and so on.
    ai_results_transcribe:
      type: object
      properties:
        speech_detected:
          type: boolean
          description: >-
            Determines whether speech was detected or not.


            Please note: If the task is in "SUCCESS" status and speech was not
            found in the entire file, then "false" will be indicated here and
            the ```subtitles``` field will be empty.
        concatenated_text:
          type: string
          description: >-
            Full text of the analyzed video. The value is unstructured,
            unformatted text.
        subtitles:
          type: array
          items:
            type: object
            properties:
              start_time:
                type: string
                description: >-
                  Start time of the phrase when it is heard in the video. Format
                  is "HH:mm:ss.fff".
              end_time:
                type: string
                description: >-
                  End time of the phrase, when it ends in the video. Format is
                  "HH:mm:ss.fff".
              text:
                type: string
                description: >-
                  A complete phrase that sounds during a specified period of
                  time.
          description: >-
            An array of phrases divided into time intervals, in the format
            "json". Suitable when you need to display the result in chronometric
            form, or transfer the text for further processing.
        vttContent:
          type: string
          description: Auto generated subtitles in WebVTT format.
        languages:
          type: array
          items:
            type: string
          description: >-
            An array of language codes that were discovered and/or used in
            transcription. If the audio or subtitle language was explicitly
            specified in the initial parameters, it will be copied here. For
            automatic detection the identified languages will be displayed here.
            Also please note that for multilingual audio, the first 5 languages
            are displayed in order of frequency of use.
      example:
        concatenated_text: >-
          Come on team, we mustn't dilly dally when there's so much nature to
          see!  I was thinking, we should call our class project, Fungi in a
          Forest!
        subtitles:
          - start_time: '00:00:00.009'
            end_time: '00:00:03.689'
            text: >-
              Come on team, we mustn't dilly dally when there's so much nature
              to see!
          - start_time: '00:00:04.129'
            end_time: '00:00:08.169'
            text: >-
              I was thinking, we should call our class project, Fungi in a
              Forest!
        vttContent: >+
          WEBVTT


          1

          00:00:00.009 --> 00:00:03.689

          Come on team, we mustn't dilly dally when there's so much nature to
          see!


          2

          00:00:04.129 --> 00:00:08.169

          I was thinking, we should call our class project, Fungi in a Forest!

        languages:
          - eng
    ai_results_contentmoderation_sport:
      type: object
      properties:
        sport_detected:
          type: boolean
          description: A boolean value whether any sports were detected
        detection_results:
          type: array
          items:
            type: string
            description: Array of detected sports
            enum:
              - archery
              - arm wrestling
              - playing badminton
              - playing baseball
              - basketball dunk
              - bowling
              - boxing punch
              - boxing speed bag
              - catching or throwing baseball
              - catching or throwing softball
              - cricket
              - curling
              - disc golfing
              - dodgeball
              - fencing
              - football
              - golf chipping
              - golf driving
              - golf putting
              - hitting baseball
              - hockey stop
              - ice skating
              - javelin throw
              - juggling soccer ball
              - kayaking
              - kicking field goal
              - kicking soccer ball
              - playing cricket
              - playing field hockey
              - playing ice hockey
              - playing kickball
              - playing lacrosse
              - playing ping pong
              - playing polo
              - playing squash or racquetball
              - playing tennis
              - playing volleyball
              - pole vault
              - riding a bike
              - riding or walking with horse
              - roller skating
              - rowing
              - sailing
              - shooting goal (soccer)
              - skateboarding
              - skiing
        frames:
          type: array
          items:
            type: object
            properties:
              frame-number:
                type: integer
                description: Video frame number where activity was found
              label:
                type: string
                description: Type of detected activity
              confidence:
                type: number
                format: decimal
                description: Percentage of probability of identifying the activity
      example:
        sport_detected: true
        detection_results:
          - football
          - playing tennis
        frames:
          - frame-number: 4
            label: football
            score: 0.95
          - frame-number: 100
            label: playing tennis
            score: 0.5
    ai_results_contentmoderation_nsfw:
      type: object
      properties:
        nsfw_detected:
          type: boolean
          description: A boolean value whether any Not Safe For Work content was detected
        detection_results:
          type: array
          items:
            type: string
            description: Array of detected category
            enum:
              - nsfw
        frames:
          type: array
          items:
            type: object
            properties:
              frame-number:
                type: integer
                description: Video frame number where object was found
              label:
                type: string
                description: Type of detected object
              confidence:
                type: number
                format: decimal
                description: Percentage of probability of identifying the object
      example:
        porn_detected: true
        detection_results:
          - nsfw
        frames:
          - frame-number: 4
            label: nsfw
            score: '1.0'
          - frame-number: 100
            label: nsfw
            score: 0.51
    ai_results_contentmoderation_hardnudity:
      type: object
      properties:
        porn_detected:
          type: boolean
          description: A boolean value whether any nudity was detected
        detection_results:
          type: array
          items:
            type: string
            description: Array of detected nudity category
            enum:
              - ANUS_EXPOSED
              - BUTTOCKS_EXPOSED
              - FEMALE_BREAST_EXPOSED
              - FEMALE_GENITALIA_EXPOSED
              - MALE_BREAST_EXPOSED
              - MALE_GENITALIA_EXPOSED
        frames:
          type: array
          items:
            type: object
            properties:
              frame-number:
                type: integer
                description: Video frame number where object was found
              label:
                type: string
                description: Type of detected object
              confidence:
                type: number
                format: decimal
                description: Percentage of probability of identifying the object
      example:
        porn_detected: true
        detection_results:
          - FEMALE_BREAST_EXPOSED
          - MALE_GENITALIA_EXPOSED
        frames:
          - frame-number: 4
            label: FEMALE_BREAST_EXPOSED
            score: 0.95
          - frame-number: 100
            label: MALE_GENITALIA_EXPOSED
            score: 0.51
    ai_results_contentmoderation_softnudity:
      type: object
      properties:
        porn_detected:
          type: boolean
          description: A boolean value whether any nudity and other body part was detected
        detection_results:
          type: array
          items:
            type: string
            description: Array of detected nudity or body part category
            enum:
              - ANUS_COVERED
              - ANUS_EXPOSED
              - ARMPITS_COVERED
              - ARMPITS_EXPOSED
              - BELLY_COVERED
              - BELLY_EXPOSED
              - BUTTOCKS_COVERED
              - BUTTOCKS_EXPOSED
              - FACE_FEMALE
              - FACE_MALE
              - FEET_COVERED
              - FEET_EXPOSED
              - FEMALE_BREAST_COVERED
              - FEMALE_BREAST_EXPOSED
              - FEMALE_GENITALIA_COVERED
              - FEMALE_GENITALIA_EXPOSED
              - MALE_BREAST_EXPOSED
              - MALE_GENITALIA_EXPOSED
        frames:
          type: array
          items:
            type: object
            properties:
              frame-number:
                type: integer
                description: Video frame number where object was found
              label:
                type: string
                description: Type of detected object
              confidence:
                type: number
                format: decimal
                description: Percentage of probability of identifying the object
      example:
        porn_detected: true
        detection_results:
          - FACE_FEMALE
          - FACE_MALE
        frames:
          - frame-number: 4
            label: FACE_FEMALE
            score: 0.95
          - frame-number: 100
            label: FACE_MALE
            score: 0.51
    ai_results_failure:
      type: object
      required:
        - error
      properties:
        error:
          type: string
      example:
        error: 'Unsupported file type: https://domain.com/video.zip'
    badrequest:
      type: object
      properties:
        status:
          type: integer
          description: Error number
        error:
          type: string
          description: Error message
      example:
        status: 400
        error: >-
          Bad Request response status code indicates that the server cannot or
          will not process the request due to something that is perceived to be
          a client error (for example, malformed request syntax, invalid request
          message framing, or deceptive request routing).
    ai_transcribe:
      type: object
      required:
        - url
        - task_name
      properties:
        task_name:
          type: string
          description: Name of the task to be performed
          enum:
            - transcription
        url:
          type: string
          description: >-
            URL to the MP4 file to analyse. File must be publicly accessible via
            HTTP/HTTPS.
        audio_language:
          type: string
          description: >-
            Language in original audio (transcription only). This value is used
            to determine the language from which to transcribe.


            If this is not set, the system will run auto language identification
            and the subtitles will be in the detected language. The method also
            works based on AI analysis. It's fairly accurate, but if it's wrong,
            then set the language explicitly.


            Additionally, when this is not set, we also support recognition of
            alternate languages in the video (language code-switching).


            Language is set by 3-letter language code according to ISO-639-2
            (bibliographic code). 


            We can process languages:

            - 'afr': Afrikaans

            - 'alb': Albanian

            - 'amh': Amharic

            - 'ara': Arabic

            - 'arm': Armenian

            - 'asm': Assamese

            - 'aze': Azerbaijani

            - 'bak': Bashkir

            - 'baq': Basque

            - 'bel': Belarusian

            - 'ben': Bengali

            - 'bos': Bosnian

            - 'bre': Breton

            - 'bul': Bulgarian

            - 'bur': Myanmar

            - 'cat': Catalan

            - 'chi': Chinese

            - 'cze': Czech

            - 'dan': Danish

            - 'dut': Nynorsk

            - 'eng': English

            - 'est': Estonian

            - 'fao': Faroese

            - 'fin': Finnish

            - 'fre': French

            - 'geo': Georgian

            - 'ger': German

            - 'glg': Galician

            - 'gre': Greek

            - 'guj': Gujarati

            - 'hat': Haitian creole

            - 'hau': Hausa

            - 'haw': Hawaiian

            - 'heb': Hebrew

            - 'hin': Hindi

            - 'hrv': Croatian

            - 'hun': Hungarian

            - 'ice': Icelandic

            - 'ind': Indonesian

            - 'ita': Italian

            - 'jav': Javanese

            - 'jpn': Japanese

            - 'kan': Kannada

            - 'kaz': Kazakh

            - 'khm': Khmer

            - 'kor': Korean

            - 'lao': Lao

            - 'lat': Latin

            - 'lav': Latvian

            - 'lin': Lingala

            - 'lit': Lithuanian

            - 'ltz': Luxembourgish

            - 'mac': Macedonian

            - 'mal': Malayalam

            - 'mao': Maori

            - 'mar': Marathi

            - 'may': Malay

            - 'mlg': Malagasy

            - 'mlt': Maltese

            - 'mon': Mongolian

            - 'nep': Nepali

            - 'dut': Dutch

            - 'nor': Norwegian

            - 'oci': Occitan

            - 'pan': Punjabi

            - 'per': Persian

            - 'pol': Polish

            - 'por': Portuguese

            - 'pus': Pashto

            - 'rum': Romanian

            - 'rus': Russian

            - 'san': Sanskrit

            - 'sin': Sinhala

            - 'slo': Slovak

            - 'slv': Slovenian

            - 'sna': Shona

            - 'snd': Sindhi

            - 'som': Somali

            - 'spa': Spanish

            - 'srp': Serbian

            - 'sun': Sundanese

            - 'swa': Swahili

            - 'swe': Swedish

            - 'tam': Tamil

            - 'tat': Tatar

            - 'tel': Telugu

            - 'tgk': Tajik

            - 'tgl': Tagalog

            - 'tha': Thai

            - 'tib': Tibetan

            - 'tuk': Turkmen

            - 'tur': Turkish

            - 'ukr': Ukrainian

            - 'urd': Urdu

            - 'uzb': Uzbek

            - 'vie': Vietnamese

            - 'wel': Welsh

            - 'yid': Yiddish

            - 'yor': Yoruba
          default: null
        subtitles_language:
          type: string
          description: >-
            Indicates which language it is clearly necessary to translate into.

            If this is not set, the original language will be used from
            attribute "audio_language".


            Please note that:

            - transcription into the original language is a free procedure,

            - and translation from the original language into any other
            languages is a "translation" procedure and is paid. More details in
            [POST
            /streaming/ai/tasks#transcribe](/docs/api-reference/streaming/ai/create-ai-asr-task).

            Language is set by 3-letter language code according to ISO-639-2
            (bibliographic code).
          default: null
        client_user_id:
          type: string
          maxLength: 256
          default: null
          description: >-
            Meta parameter, designed to store your own identifier. Can be used
            by you to tag requests from different end-users. It is not used in
            any way in video processing.
        client_entity_data:
          type: string
          maxLength: 4096
          default: null
          description: >-
            Meta parameter, designed to store your own extra information about a
            video entity: video source, video id, etc. It is not used in any way
            in video processing.


            For example, if an AI-task was created automatically when you
            uploaded a video with the AI auto-processing option (transcribing,
            translationing), then the ID of the associated video for which the
            task was performed will be explicitly indicated here.
      example:
        url: https://demo-files.gvideo.io/apidocs/spritefright-blender-cut30sec.mp4
        task_name: transcription
        audio_language: ger
    ai_contentmoderation_nsfw:
      allOf:
        - $ref: '#/components/schemas/ai_contentmoderation_general'
      required:
        - category
      properties:
        category:
          type: string
          enum:
            - nsfw
          description: AI content moderation with NSFW detection algorithm
      example:
        url: https://demo-files.gvideo.io/ai_demo_subtitles_nudity_detection.mp4
        task_name: content-moderation
        category: nsfw
    ai_contentmoderation_hardnudity:
      allOf:
        - $ref: '#/components/schemas/ai_contentmoderation_general'
      required:
        - category
      properties:
        category:
          type: string
          enum:
            - hard_nudity
          description: AI content moderation with "hard_nudity" algorithm
        stop_objects:
          type: string
          enum:
            - ANUS_EXPOSED
            - BUTTOCKS_EXPOSED
            - FEMALE_BREAST_EXPOSED
            - FEMALE_GENITALIA_EXPOSED
            - MALE_BREAST_EXPOSED
            - MALE_GENITALIA_EXPOSED
          description: >-
            Comma separated objects, and probabilities, that will cause the
            processing to stop immediatelly after finding.
      example:
        url: https://demo-files.gvideo.io/ai_demo_subtitles_nudity_detection.mp4
        task_name: content-moderation
        category: hard_nudity
        stop_objects: >-
          FEMALE_GENITALIA_EXPOSED,FEMALE_BREAST_EXPOSED:0.50,BUTTOCKS_EXPOSED:0.90
    ai_contentmoderation_softnudity:
      allOf:
        - $ref: '#/components/schemas/ai_contentmoderation_general'
      required:
        - category
      properties:
        category:
          type: string
          enum:
            - soft_nudity
          description: AI content moderation with "soft_nudity" algorithm
        stop_objects:
          type: string
          enum:
            - ANUS_COVERED
            - ANUS_EXPOSED
            - ARMPITS_COVERED
            - ARMPITS_EXPOSED
            - BELLY_COVERED
            - BELLY_EXPOSED
            - BUTTOCKS_COVERED
            - BUTTOCKS_EXPOSED
            - FACE_FEMALE
            - FACE_MALE
            - FEET_COVERED
            - FEET_EXPOSED
            - FEMALE_BREAST_COVERED
            - FEMALE_BREAST_EXPOSED
            - FEMALE_GENITALIA_COVERED
            - FEMALE_GENITALIA_EXPOSED
            - MALE_BREAST_EXPOSED
            - MALE_GENITALIA_EXPOSED
          description: >-
            Comma separated objects, and probabilities, that will cause the
            processing to stop immediatelly after finding.
      example:
        url: https://demo-files.gvideo.io/ai_demo_subtitles_nudity_detection.mp4
        task_name: content-moderation
        category: soft_nudity
        stop_objects: BELLY_COVERED:0.9,FEMALE_GENITALIA_COVERED
    ai_contentmoderation_sport:
      allOf:
        - $ref: '#/components/schemas/ai_contentmoderation_general'
      required:
        - category
      properties:
        category:
          type: string
          enum:
            - sport
          description: AI content moderation with types of sports activity detection
      example:
        url: >-
          https://demo-files.gvideo.io/ai_demo_soccer_players_passing_the_ball.mp4
        task_name: content-moderation
        category: sport
    ai_contentmoderation_general:
      type: object
      required:
        - url
        - task_name
      properties:
        task_name:
          type: string
          description: Name of the task to be performed
          enum:
            - content-moderation
        url:
          type: string
          description: >-
            URL to the MP4 file to analyse. File must be publicly accessible via
            HTTP/HTTPS.
        category:
          type: string
          description: >-
            Model for analysis (content-moderation only). Determines what
            exactly needs to be found in the video.
          enum:
            - sport
            - nsfw
            - hard_nudity
            - soft_nudity
        client_user_id:
          type: string
          maxLength: 256
          default: null
          description: >-
            Meta parameter, designed to store your own identifier. Can be used
            by you to tag requests from different end-users. It is not used in
            any way in video processing.
        client_entity_data:
          type: string
          maxLength: 4096
          default: null
          description: >-
            Meta parameter, designed to store your own extra information about a
            video entity: video source, video id, etc. It is not used in any way
            in video processing.


            For example, if an AI-task was created automatically when you
            uploaded a video with the AI auto-processing option (nudity
            detection, etc), then the ID of the associated video for which the
            task was performed will be explicitly indicated here.
      example:
        url: https://demo-files.gvideo.io/ai_demo_subtitles_nudity_detection.mp4
        task_name: content-moderation
        category: nsfw
  securitySchemes:
    APIKey:
      description: >-
        API key for authentication. Make sure to include the word `apikey`,
        followed by a single space and then your token.

        Example: `apikey 1234$abcdef`
      type: apiKey
      in: header
      name: Authorization

````