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

# Update a video thumbnail

> Uploads or deletes a custom thumbnail. Uploaded images must be JPEG or PNG and no larger than 1600 by 1200 pixels.

Thumbnail uploads are limited to three attempts per minute per account. The current backend source requires a deployment fix before the upload action can run.




## OpenAPI

````yaml /openapi.yaml post /v1/videos/thumbnail
openapi: 3.1.0
info:
  title: Videobase API
  version: 1.0.0
  description: >
    Manage Videobase accounts, uploads, folders, videos, thumbnails, and
    subtitles.


    All operations require a Videobase API key. Header authentication is
    recommended.
servers:
  - url: https://api.videobase.com
    description: Production
security:
  - ApiKeyHeader: []
  - ApiKeyQuery: []
tags:
  - name: Account
    description: Account details and reports.
  - name: Uploads
    description: Direct and remote upload workflows.
  - name: Folders
    description: Folder organization.
  - name: Videos
    description: Video metadata and presentation settings.
  - name: Subtitles
    description: Video subtitle tracks.
paths:
  /v1/videos/thumbnail:
    post:
      tags:
        - Videos
      summary: Update a video thumbnail
      description: >
        Uploads or deletes a custom thumbnail. Uploaded images must be JPEG or
        PNG and no larger than 1600 by 1200 pixels.


        Thumbnail uploads are limited to three attempts per minute per account.
        The current backend source requires a deployment fix before the upload
        action can run.
      operationId: updateVideoThumbnail
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
                - id
                - action
              properties:
                id:
                  $ref: '#/components/schemas/VideoId'
                action:
                  type: string
                  enum:
                    - update
                    - delete
                file:
                  type: string
                  format: binary
                  description: Required for `update`. JPEG or PNG image.
      responses:
        '200':
          description: Thumbnail update or deletion result.
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    required:
                      - url
                      - message
                    properties:
                      url:
                        type: string
                        format: uri
                      message:
                        type: string
                  - type: object
                    required:
                      - message
                    properties:
                      message:
                        type: string
        '500':
          $ref: '#/components/responses/Error'
components:
  schemas:
    VideoId:
      type: string
      pattern: ^\w{12}$
      minLength: 12
      maxLength: 12
      description: Twelve-character Videobase video or remote-upload identifier.
      example: a1b2c3d4e5f6
    Error:
      type: object
      required:
        - message
        - status
      properties:
        message:
          type: string
          description: Human-readable failure reason. Do not treat it as a stable enum.
        status:
          type: integer
          const: 500
  responses:
    Error:
      description: >-
        Application error. The current API uses HTTP 500 for authentication,
        validation, missing-resource, rate-limit, and server failures.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: File not found
            status: 500
  securitySchemes:
    ApiKeyHeader:
      type: apiKey
      in: header
      name: X-Api-Key
      description: Recommended. Your 16-character Videobase API key.
    ApiKeyQuery:
      type: apiKey
      in: query
      name: key
      description: >-
        Legacy alternative. Prefer `X-Api-Key` because query strings are
        commonly logged.

````