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

# Download a video by ID.



## OpenAPI

````yaml get /v1/videos/{id}/download
openapi: 3.0.0
info:
  description: >-
    The Magnific API is your gateway to a vast collection of high-quality
    digital resources for your applications and projects. As a leading platform,
    it offers a wide range of graphics, including vectors, photos,
    illustrations, icons, PSD templates, and more, all curated by talented
    designers from around the world.
  title: Magnific API
  version: 1.0.0
servers:
  - description: B2B API Production V1
    url: https://api.magnific.com
security:
  - magnificApiKey: []
paths:
  /v1/videos/{id}/download:
    get:
      tags:
        - Videos
      summary: Download a video by ID.
      parameters:
        - description: >
            Specifies the search query language using the ISO 639-1 (2-letter

            language code) and the ISO 3166-1 (2-letter country code) for
            language variants.

            The API will use "en-US" as a default language for processing if a
            code is not

            provided, or does not exist.
          example: en-US
          in: header
          name: Accept-Language
          required: false
          schema:
            type: string
        - description: Video id
          example: 30955
          in: path
          name: id
          required: true
          schema:
            minimum: 1
            type: integer
      responses:
        '200':
          content:
            application/json:
              examples:
                response_download_200:
                  $ref: '#/components/examples/200-b2b-get-download-video-response'
              schema:
                $ref: '#/components/schemas/_v1_videos__id__download_get_200_response'
          description: OK
        '400':
          content:
            application/json:
              examples:
                invalid_page:
                  summary: Parameter 'page' is not valid
                  value:
                    message: Parameter 'page' must be greater than 0
                invalid_query:
                  summary: Parameter 'query' is not valid
                  value:
                    message: Parameter 'query' must not be empty
                invalid_filter:
                  summary: Parameter 'filter' is not valid
                  value:
                    message: Parameter 'filter' is not valid
                generic_bad_request:
                  summary: Bad Request
                  value:
                    message: Parameter ':attribute' is not valid
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
            application/problem+json:
              examples:
                invalid_page:
                  summary: Parameter 'page' is not valid
                  value:
                    message: Validation error
                    invalid_params:
                      - field: page
                        reason: Parameter 'page' must be greater than 0
                      - field: per_page
                        reason: Parameter 'per_page' must be greater than 0
              schema:
                $ref: >-
                  #/components/schemas/get_all_style_transfer_tasks_400_response_1
          description: >-
            Bad Request - The server could not understand the request due to
            invalid syntax.
        '401':
          content:
            application/json:
              examples:
                invalid_api_key:
                  summary: API key is not valid
                  value:
                    message: Invalid API key
                missing_api_key:
                  summary: API key is not provided
                  value:
                    message: Missing API key
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
          description: >-
            Unauthorized - The client must authenticate itself to get the
            requested response.
        '403':
          content:
            application/json:
              examples:
                user_not_authorized:
                  summary: User has not privileges to access some resource
                  value:
                    message: User is not authorized to access this resource
                user_not_owner:
                  summary: Collection author id is different from current user's id
                  value:
                    message: User is not owner of requested collection
                item_is_premium:
                  summary: The user cannot download this item because it is premium
                  value:
                    message: The user cannot download this item because it is premium
                creator_not_authorized:
                  summary: Creator has not privileges to access some resource
                  value:
                    message: Creator is not authorized to access this resource
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
          description: >-
            Forbidden - The client does not have permission to access the
            requested resource.
        '404':
          content:
            application/json:
              examples:
                ai_resource_not_found:
                  summary: AI resource with provided id does not exist
                  value:
                    message: AI resource not found
                collection_not_found:
                  summary: Collection with provided id does not exist
                  value:
                    message: Collection not found
                resource_not_found:
                  summary: Resource with provided id does not exist
                  value:
                    message: Resource not found
                resources_not_found:
                  summary: Resources not found
                  value:
                    message: Resources not found
                user_not_found:
                  summary: User with provided id does not exist
                  value:
                    message: User not found
                video_not_found:
                  summary: Video with provided id does not exist
                  value:
                    message: Video not found
                video_assets_not_found:
                  summary: Video with provided id has not associated assets
                  value:
                    message: Video not found
                icon_not_found:
                  summary: Icon with provided id does not exist
                  value:
                    message: Icon not found
                author_not_found:
                  summary: Author with provided id does not exist
                  value:
                    message: Author not found
                developer_not_found:
                  summary: Developer with provided email does not exist
                  value:
                    message: Developer not found
                country_not_found:
                  summary: Country with provided code does not exist
                  value:
                    message: Country not found
                generic_not_found:
                  summary: Not Found
                  value:
                    message: Not found
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
          description: Not Found - The server can not find the requested resource.
        '429':
          content:
            application/json:
              examples:
                generic:
                  summary: Generic message for 429 errors
                  value:
                    message: Too many requests
                download_limit_reached:
                  summary: The download limits has been reached.
                  value:
                    message: >-
                      The user can't download more items because the download
                      limits has been reached.
                edit_limit_reached:
                  summary: Free user icon edit limits has been reached.
                  value:
                    message: Limit for free users reached.
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
          description: >-
            Too Many Requests - The client has sent too many requests in a given
            amount of time.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_500_response'
          description: >-
            Internal Server Error - The server has encountered a situation it
            doesn't know how to handle.
        '503':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_503_response'
          description: Service Unavailable
components:
  examples:
    200-b2b-get-download-video-response:
      summary: Download video response
      value:
        data:
          filename: _import_61490450321f37.49858282.mov
          url: >-
            https://joy1.videvo.net/verify_download_video.php?path=video/free/video0466&vid=_import_61490450321f37.49858282.mov&source=freepik&videvo_id=1109082&filename=1109082_1080p_4k_2k_4096x2160.mov&verify=lkdadslfjads3434
  schemas:
    _v1_videos__id__download_get_200_response:
      example:
        data:
          filename: blackboard-template.zip
          url: https://downloadscdn5.freepik.com/d/1137445/blackboard-template.zip
      properties:
        data:
          $ref: '#/components/schemas/download_b2b'
      required:
        - data
      type: object
    get_all_style_transfer_tasks_400_response:
      example:
        message: message
      properties:
        message:
          type: string
      type: object
    get_all_style_transfer_tasks_400_response_1:
      properties:
        problem:
          $ref: >-
            #/components/schemas/get_all_style_transfer_tasks_400_response_1_problem
      type: object
    get_all_style_transfer_tasks_500_response:
      example:
        message: Internal Server Error
      properties:
        message:
          example: Internal Server Error
          type: string
      type: object
    get_all_style_transfer_tasks_503_response:
      example:
        message: Service Unavailable. Please try again later.
      properties:
        message:
          example: Service Unavailable. Please try again later.
          type: string
      type: object
    download_b2b:
      example:
        filename: blackboard-template.zip
        url: https://downloadscdn5.freepik.com/d/1137445/blackboard-template.zip
      properties:
        filename:
          description: Filename of the resource
          example: blackboard-template.zip
          minLength: 1
          type: string
        url:
          example: https://downloadscdn5.freepik.com/d/1137445/blackboard-template.zip
          format: uri
          minLength: 1
          type: string
      required:
        - filename
        - url
      type: object
    get_all_style_transfer_tasks_400_response_1_problem:
      properties:
        message:
          example: Validation error
          type: string
        invalid_params:
          items:
            $ref: >-
              #/components/schemas/get_all_style_transfer_tasks_400_response_1_problem_invalid_params_inner
          type: array
      required:
        - invalid_params
        - message
      type: object
    get_all_style_transfer_tasks_400_response_1_problem_invalid_params_inner:
      properties:
        name:
          description: Name of the invalid parameter.
          example: page
          type: string
        field:
          description: Field of the invalid parameter. Mirrors `name`.
          example: page
          type: string
        reason:
          example: Parameter 'page' must be greater than 0
          type: string
      required:
        - field
        - name
        - reason
      type: object
  securitySchemes:
    magnificApiKey:
      description: >
        Your Magnific API key. Required for authentication. [Learn how to obtain
        an API key](https://docs.magnific.com/quickstart)
      in: header
      name: x-magnific-api-key
      type: apiKey

````