Gumlet Video Collections API

Manage video collections (sources) and organization.

OpenAPI Specification

gumlet-video-collections-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Gumlet Analytics Video Collections API
  version: '1.0'
  description: Representative OpenAPI description of the Gumlet REST API for video hosting, streaming, and image optimization. Covers video assets, video collections (sources), live streaming, image sources, analytics, and direct uploads. All requests are authenticated with a bearer API key in the Authorization header and are served from https://api.gumlet.com/v1. Endpoint shapes follow the public documentation at https://docs.gumlet.com/reference; request and response schemas are simplified representative models.
  contact:
    name: Gumlet
    url: https://www.gumlet.com/
  license:
    name: Proprietary
    url: https://www.gumlet.com/terms/
servers:
- url: https://api.gumlet.com/v1
  description: Gumlet production API
security:
- bearerAuth: []
tags:
- name: Video Collections
  description: Manage video collections (sources) and organization.
paths:
  /video/sources:
    get:
      tags:
      - Video Collections
      summary: List Collections
      description: List the video collections (sources) available to the token.
      operationId: listCollections
      responses:
        '200':
          description: A list of collections.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Collection'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      tags:
      - Video Collections
      summary: Create Collection
      description: Create a new video collection (source).
      operationId: createCollection
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateCollectionRequest'
      responses:
        '200':
          description: Collection created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Collection'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /video/sources/{video_source_id}:
    get:
      tags:
      - Video Collections
      summary: Get Collection
      description: Retrieve the full details of a video collection.
      operationId: getCollection
      parameters:
      - name: video_source_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Collection details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Collection'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  responses:
    NotFound:
      description: Resource not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Missing or invalid API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    CreateCollectionRequest:
      type: object
      required:
      - name
      properties:
        name:
          type: string
        type:
          type: string
    Collection:
      type: object
      properties:
        collection_id:
          type: string
        name:
          type: string
        type:
          type: string
        created_at:
          type: string
          format: date-time
    Error:
      type: object
      properties:
        status:
          type: integer
        message:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Pass your Gumlet API key as a bearer token in the Authorization header: `Authorization: Bearer <API_KEY>`.'