Warner Bros. Discovery Deliveries API

Media content delivery management

OpenAPI Specification

warner-bros-discovery-deliveries-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Warner Bros. Discovery Content Partner Assets Deliveries API
  description: The Warner Bros. Discovery Content Partner API enables content partners to deliver media assets and metadata to WBD's media supply chain. The API supports Automated Content Delivery (ACD) for high-volume media ingest using the MovieLabs Media Manifest Core (MMC) specification, metadata validation, and delivery status tracking. Partners use this API to submit content for distribution across Max, HBO, Warner Bros., Discovery, CNN, and other WBD brands.
  version: 1.0.0
  contact:
    name: Warner Bros. Discovery Content Partner Support
    url: https://partnerhub.warnermedia.com/
  termsOfService: https://www.wbd.com/terms-of-service
servers:
- url: https://api.warnermediasupplychain.com
  description: WBD Media Supply Chain API
security:
- OAuth2:
  - content:read
tags:
- name: Deliveries
  description: Media content delivery management
paths:
  /v1/deliveries:
    get:
      operationId: listDeliveries
      summary: List Deliveries
      description: List all media content deliveries submitted by the partner. Supports filtering by status, date range, and content type.
      tags:
      - Deliveries
      parameters:
      - name: status
        in: query
        required: false
        schema:
          type: string
          enum:
          - pending
          - processing
          - completed
          - failed
          - rejected
        description: Filter deliveries by status
      - name: startDate
        in: query
        required: false
        schema:
          type: string
          format: date
        description: Filter deliveries created on or after this date
      - name: endDate
        in: query
        required: false
        schema:
          type: string
          format: date
        description: Filter deliveries created before or on this date
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 50
          maximum: 200
        description: Maximum number of results to return
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          default: 0
        description: Pagination offset
      responses:
        '200':
          description: List of deliveries returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeliveryListResponse'
        '401':
          description: Unauthorized - invalid or missing credentials
        '403':
          description: Forbidden - insufficient permissions
    post:
      operationId: createDelivery
      summary: Create Delivery
      description: Submit a new content delivery to Warner Bros. Discovery's media supply chain. The delivery contains references to media assets and a MovieLabs MMC manifest with metadata.
      tags:
      - Deliveries
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDeliveryRequest'
      responses:
        '201':
          description: Delivery created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeliveryResponse'
        '400':
          description: Invalid request payload
        '401':
          description: Unauthorized
  /v1/deliveries/{deliveryId}:
    get:
      operationId: getDelivery
      summary: Get Delivery
      description: Retrieve the details and current status of a specific delivery.
      tags:
      - Deliveries
      parameters:
      - name: deliveryId
        in: path
        required: true
        schema:
          type: string
        description: Unique delivery identifier
      responses:
        '200':
          description: Delivery details returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeliveryResponse'
        '401':
          description: Unauthorized
        '404':
          description: Delivery not found
components:
  schemas:
    DeliveryResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Delivery'
    CreateDeliveryRequest:
      type: object
      required:
      - title
      - contentType
      - manifestPath
      properties:
        title:
          type: string
          description: Content title
        contentType:
          type: string
          enum:
          - feature
          - series
          - episode
          - short
          - documentary
          - promotional
        manifestPath:
          type: string
          description: Path to the MMC manifest file in Aspera
        notes:
          type: string
          description: Optional delivery notes
    Delivery:
      type: object
      properties:
        id:
          type: string
          description: Unique delivery identifier
        status:
          type: string
          enum:
          - pending
          - processing
          - completed
          - failed
          - rejected
          description: Current delivery status
        title:
          type: string
          description: Content title for this delivery
        contentType:
          type: string
          enum:
          - feature
          - series
          - episode
          - short
          - documentary
          - promotional
          description: Type of content being delivered
        manifestPath:
          type: string
          description: Path to the MMC manifest file
        createdAt:
          type: string
          format: date-time
          description: Delivery creation timestamp
        updatedAt:
          type: string
          format: date-time
          description: Last update timestamp
        assets:
          type: array
          items:
            $ref: '#/components/schemas/Asset'
          description: List of media assets in this delivery
    Asset:
      type: object
      properties:
        id:
          type: string
          description: Asset identifier
        type:
          type: string
          enum:
          - video
          - audio
          - subtitle
          - image
          - document
          description: Asset type
        filename:
          type: string
          description: Asset filename
        size:
          type: integer
          description: File size in bytes
        checksum:
          type: string
          description: MD5 checksum for integrity verification
        languageCode:
          type: string
          description: BCP-47 language code if applicable
        uploadedAt:
          type: string
          format: date-time
    DeliveryListResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Delivery'
        total:
          type: integer
          description: Total number of deliveries matching the filter
        limit:
          type: integer
        offset:
          type: integer
  securitySchemes:
    OAuth2:
      type: oauth2
      description: OAuth 2.0 client credentials flow for partner authentication
      flows:
        clientCredentials:
          tokenUrl: https://auth.warnermedia.com/oauth/token
          scopes:
            content:read: Read content delivery information
            content:write: Submit content deliveries
            metadata:read: Read metadata submissions
            metadata:write: Submit metadata