Panopto Streams API

Stream API

Operations 1

POST /api/v1/streams/{id}/captions Upload a caption file (in SRT or VTT format) to this stream #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/panopto-streams-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

panopto-streams-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Panopto Public Accessibility Streams API
  description: The public API for Panopto. OpenID & OAuth information can be found at Panopto/oauth2/.well-known/openid-configuration
  version: '1'
servers:
- url: https://<PanoptoServerURL>(i.e. example.hosted.panopto.com)/Panopto
tags:
- name: Streams
  description: Stream API
paths:
  /api/v1/streams/{id}/captions:
    post:
      tags:
      - Streams
      summary: Upload a caption file (in SRT or VTT format) to this stream
      description: Content should be sent as 'multipart/form-data', with the caption file attached as part of the multi-part data. This endpoint is used to upload captions for a single stream, and timestamps should be based on the un-edited stream. Please verify that the timestamps in your caption file are correlated to the unedited time for this stream.
      operationId: Streams_UploadCaptionsToStream
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
        '403':
          description: User does not have permission to access this function
        '401':
          description: The user is not authorized to perform the requested action
        '404':
          description: The requested stream was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                language:
                  enum:
                  - English_USA
                  - English_GBR
                  - Spanish_MEX
                  - Spanish_ESP
                  - German
                  - French
                  - Dutch
                  - Thai
                  - Chinese_Simplified
                  - Chinese_Traditional
                  - Korean
                  - Japanese
                  - Russian
                  - Portuguese
                  - Polish
                  - English_AUS
                  - Danish
                  - Finnish
                  - Hungarian
                  - Norwegian
                  - Swedish
                  - Italian
                  - Welsh
                  - Catalan
                  - Galician
                  - Basque
                  - Arabic
                  - Hindi
                  - French_CAN
                  - Hebrew
                  - Vietnamese
components:
  schemas:
    APIErrorInternal:
      type: object
      required:
      - Success
      properties:
        ErrorCode:
          type: string
          description: Internal error code
        Message:
          type: string
        Success:
          type: boolean
          description: If true the call succeed and this is a partial failure (or warning). If false the call failed overall
        ErrorSource:
          type: string
          description: Unique identifier of what caused this error
    APIError:
      type: object
      properties:
        Error:
          description: Error result returned if an error occurs in Panopto, otherwise null or missing
          $ref: '#/components/schemas/APIErrorInternal'
x-generator: NSwag v13.18.2.0 (NJsonSchema v10.8.0.0 (Newtonsoft.Json v13.0.0.0))