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

# Download TikTok video media

> Use this operation to download the media file of a tiktok video. This is separately billed. The response contains a persistent storage URL that stays valid for the selected TTL plus the direct playback URL.



## OpenAPI

````yaml /api-reference/openapi.json post /v1/tiktok/video/download
openapi: 3.1.0
info:
  description: >-
    Direct authenticated APIs for public social data, people data, transcripts,
    documents, text, and SEO. Send an API key as a Bearer token. Responses never
    include provider credentials or raw provider payloads.
  license:
    name: Proprietary
    url: https://agentbody.io
  title: AgentBody API
  version: '2026-08-19'
servers:
  - url: https://api.agentbody.io
security:
  - bearerAuth: []
paths:
  /v1/tiktok/video/download:
    post:
      tags:
        - tiktok
      summary: Download TikTok video media
      description: >-
        Use this operation to download the media file of a tiktok video. This is
        separately billed. The response contains a persistent storage URL that
        stays valid for the selected TTL plus the direct playback URL.
      operationId: post_v1_tiktok_video_download
      parameters:
        - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VideoDownloadRequest'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/VideoDownloadSuccess'
        '400':
          content:
            application/json:
              example:
                error:
                  code: INVALID_ARGUMENT
                  message: example error
              schema:
                additionalProperties: false
                properties:
                  error:
                    additionalProperties: false
                    properties:
                      code:
                        const: INVALID_ARGUMENT
                        type: string
                      message:
                        type: string
                    required:
                      - code
                      - message
                    type: object
                required:
                  - error
                type: object
          description: Correct the input; do not retry unchanged.
          headers:
            X-Request-Id:
              description: Gateway request identifier for support and audit.
              schema:
                format: uuid
                type: string
        '401':
          content:
            application/json:
              example:
                error:
                  code: UNAUTHENTICATED
                  message: example error
              schema:
                additionalProperties: false
                properties:
                  error:
                    additionalProperties: false
                    properties:
                      code:
                        const: UNAUTHENTICATED
                        type: string
                      message:
                        type: string
                    required:
                      - code
                      - message
                    type: object
                required:
                  - error
                type: object
          description: Configure a valid API key; do not retry unchanged.
          headers:
            X-Request-Id:
              description: Gateway request identifier for support and audit.
              schema:
                format: uuid
                type: string
        '409':
          content:
            application/json:
              example:
                error:
                  code: CONFLICT
                  message: example error
              schema:
                additionalProperties: false
                properties:
                  error:
                    additionalProperties: false
                    properties:
                      code:
                        const: CONFLICT
                        type: string
                      message:
                        type: string
                    required:
                      - code
                      - message
                    type: object
                required:
                  - error
                type: object
          description: Follow the documented Idempotency-Key behavior before retrying.
          headers:
            X-Request-Id:
              description: Gateway request identifier for support and audit.
              schema:
                format: uuid
                type: string
        '502':
          content:
            application/json:
              example:
                error:
                  code: UPSTREAM_INVALID_RESPONSE
                  message: example error
              schema:
                additionalProperties: false
                properties:
                  error:
                    additionalProperties: false
                    properties:
                      code:
                        const: UPSTREAM_INVALID_RESPONSE
                        type: string
                      message:
                        type: string
                    required:
                      - code
                      - message
                    type: object
                required:
                  - error
                type: object
          description: Retry with backoff, then report temporary unavailability.
          headers:
            X-Request-Id:
              description: Gateway request identifier for support and audit.
              schema:
                format: uuid
                type: string
        '503':
          content:
            application/json:
              example:
                error:
                  code: UPSTREAM_UNAVAILABLE
                  message: example error
              schema:
                additionalProperties: false
                properties:
                  error:
                    additionalProperties: false
                    properties:
                      code:
                        const: UPSTREAM_UNAVAILABLE
                        type: string
                      message:
                        type: string
                    required:
                      - code
                      - message
                    type: object
                required:
                  - error
                type: object
          description: Retry with backoff, then report temporary unavailability.
          headers:
            X-Request-Id:
              description: Gateway request identifier for support and audit.
              schema:
                format: uuid
                type: string
        '504':
          content:
            application/json:
              example:
                error:
                  code: UPSTREAM_TIMEOUT
                  message: example error
              schema:
                additionalProperties: false
                properties:
                  error:
                    additionalProperties: false
                    properties:
                      code:
                        const: UPSTREAM_TIMEOUT
                        type: string
                      message:
                        type: string
                    required:
                      - code
                      - message
                    type: object
                required:
                  - error
                type: object
          description: Retry with backoff, then report temporary unavailability.
          headers:
            X-Request-Id:
              description: Gateway request identifier for support and audit.
              schema:
                format: uuid
                type: string
components:
  parameters:
    IdempotencyKey:
      description: Optional key for safely retrying a billable write request.
      example: request-20260819-001
      in: header
      name: Idempotency-Key
      required: false
      schema:
        maxLength: 255
        minLength: 1
        type: string
  schemas:
    VideoDownloadRequest:
      additionalProperties: false
      properties:
        ttl:
          default: 1w
          enum:
            - 1d
            - 3d
            - 1w
            - 1m
            - 1y
            - 5y
          type: string
        url:
          format: uri
          type: string
      required:
        - url
      type: object
    VideoDownloadResult:
      additionalProperties: false
      properties:
        expires_at:
          format: date-time
          type: string
        file_size_mb:
          type: number
        play_url:
          format: uri
          type: string
        storage_url:
          format: uri
          type: string
        ttl:
          type: string
        video_id:
          type: string
      required:
        - video_id
        - play_url
        - storage_url
        - ttl
      type: object
  responses:
    VideoDownloadSuccess:
      content:
        application/json:
          example:
            expires_at: '2026-01-08T00:00:00Z'
            file_size_mb: 15.2
            play_url: https://example.com/play.mp4
            storage_url: https://example.com/storage/video.mp4
            ttl: 1w
            video_id: '7050551461734042926'
          schema:
            $ref: '#/components/schemas/VideoDownloadResult'
      description: Downloaded TikTok media links with persistent storage.
      headers:
        X-Request-Id:
          description: Gateway request identifier for support and audit.
          schema:
            format: uuid
            type: string
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http

````