Panopto Sessions API

Session API

Operations 19

GET /api/v1/sessions/{id} Get a session by Id #
PUT /api/v1/sessions/{id} Update a session #
DELETE /api/v1/sessions/{id} Delete a session #
GET /api/v1/sessions/search Search for sessions based on a keyword #
GET /api/v1/sessions/inProgress/webcast Get a list of webcasts (live sessions) that are currently in progress. #
GET /api/v1/sessions/inProgress/recording Get a list of recordings that are currently in progress. #
GET /api/v1/sessions/{id}/viewers Get a list of users who have viewed this session #
GET /api/v1/sessions/{id}/tags Get a list of tags associated with the given session #
PUT /api/v1/sessions/{id}/tags Update the tags associated with the given session #
POST /api/v1/sessions/{id}/captions Upload a caption file (in SRT or VTT format) to this session #
DELETE /api/v1/sessions/{id}/captions Deletes all captions for this session #
DELETE /api/v1/sessions/{id}/captions/languages/{language} Deletes all captions for this session in the specified language. #
GET /api/v1/sessions/{id}/settings/access Get the access settings for the given session #
PUT /api/v1/sessions/{id}/settings/access Update the access settings for the given session #
GET /api/v1/sessions/{id}/permissions Get the user and group permissions for the given session #
POST /api/v1/sessions/{id}/permissions Create a session permission by assigning a role to a user or group #
DELETE /api/v1/sessions/{id}/permissions Remove permission from the session #
GET /api/v1/sessions/{id}/manage/scorm Download a SCORM manifest by session ID #
POST /api/v1/sessions/{id}/sessioncopy Perform a session copy #

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-sessions-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-sessions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Panopto Public Accessibility Sessions 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: Sessions
  description: Session API
paths:
  /api/v1/sessions/{id}:
    get:
      tags:
      - Sessions
      summary: Get a session by Id
      operationId: Sessions_GetSessionById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Session'
        '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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
    put:
      tags:
      - Sessions
      summary: Update a session
      description: Update the session's name, description, or parent folder.
      operationId: Sessions_UpdateSessionMetadata
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Session'
        '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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SessionUpdate'
    delete:
      tags:
      - Sessions
      summary: Delete a session
      description: Deletes a session based on the retention policies
      operationId: Sessions_DeleteSession
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: string
                format: guid
        '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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
  /api/v1/sessions/search:
    get:
      tags:
      - Sessions
      summary: Search for sessions based on a keyword
      description: 'To fetch all elements, this endpoint can be called multiple times, starting at pageNumber = 0 and incrementing the page number until no results are returned.


        **Note:** The Session Search API does not return all available properties for a session. The CreatedBy and Urls properties (except the ViewerUrl and ThumbnailUrl) are not returned when searching for a session. To get these properties, you can get the specific session by Id.'
      operationId: Sessions_SearchForSessions
      parameters:
      - name: searchQuery
        in: query
        required: true
        schema:
          type: string
      - name: includeFields
        in: query
        description: Comma delimited list of optional fields to include in search results.  Currently this is limited to 'Context'
        schema:
          type: string
          default: ''
      - name: sortField
        in: query
        x-schema:
          $ref: '#/components/schemas/SessionSortFields'
        schema:
          type: string
          enum:
          - Name
          - CreatedDate
          - Relevance
          default: Name
      - name: sortOrder
        in: query
        x-schema:
          $ref: '#/components/schemas/SortOrder'
        schema:
          type: string
          enum:
          - Asc
          - Desc
          default: Asc
      - name: pageNumber
        in: query
        description: Page numbering starts at 0
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponseOfSession'
        '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
  /api/v1/sessions/inProgress/webcast:
    get:
      tags:
      - Sessions
      summary: Get a list of webcasts (live sessions) that are currently in progress.
      description: 'To fetch all elements, this endpoint can be called multiple times, starting at pageNumber = 0 and incrementing the page number until no results are returned.


        **Note:** This endpoint does not return all available properties for a session. The CreatedBy and Urls properties (except the ViewerUrl and ThumbnailUrl) are not returned when searching for a session. To get these properties, you can get the specific session by Id.'
      operationId: Sessions_GetInProgressWebcasts
      parameters:
      - name: sortField
        in: query
        x-schema:
          $ref: '#/components/schemas/SessionSortFields'
        schema:
          type: string
          enum:
          - Name
          - CreatedDate
          - Relevance
          default: Name
      - name: sortOrder
        in: query
        x-schema:
          $ref: '#/components/schemas/SortOrder'
        schema:
          type: string
          enum:
          - Asc
          - Desc
          default: Asc
      - name: pageNumber
        in: query
        description: Page numbering starts at 0
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponseOfSession'
        '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
  /api/v1/sessions/inProgress/recording:
    get:
      tags:
      - Sessions
      summary: Get a list of recordings that are currently in progress.
      description: 'To fetch all elements, this endpoint can be called multiple times, starting at pageNumber = 0 and incrementing the page number until no results are returned.


        **Note:** This endpoint does not return all available properties for a session. The CreatedBy and Urls properties (except the ViewerUrl and ThumbnailUrl) are not returned when searching for a session. To get these properties, you can get the specific session by Id.'
      operationId: Sessions_GetInProgressRecordings
      parameters:
      - name: sortField
        in: query
        x-schema:
          $ref: '#/components/schemas/SessionSortFields'
        schema:
          type: string
          enum:
          - Name
          - CreatedDate
          - Relevance
          default: Name
      - name: sortOrder
        in: query
        x-schema:
          $ref: '#/components/schemas/SortOrder'
        schema:
          type: string
          enum:
          - Asc
          - Desc
          default: Asc
      - name: pageNumber
        in: query
        description: Page numbering starts at 0
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponseOfSession'
        '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
  /api/v1/sessions/{id}/viewers:
    get:
      tags:
      - Sessions
      summary: Get a list of users who have viewed this session
      description: Gets a list of all users who have viewed this session, and how much of the session they have viewed
      operationId: Sessions_GetSessionViewingStats
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      - name: sortField
        in: query
        x-schema:
          $ref: '#/components/schemas/SessionViewerStatsSortFields'
        schema:
          type: string
          enum:
          - UserName
          - LastViewedDateTime
          default: UserName
      - name: sortOrder
        in: query
        x-schema:
          $ref: '#/components/schemas/SortOrder'
        schema:
          type: string
          enum:
          - Asc
          - Desc
          default: Asc
      - name: pageNumber
        in: query
        description: Page numbering starts at 0
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponseOfSessionViewerStats'
        '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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
  /api/v1/sessions/{id}/tags:
    get:
      tags:
      - Sessions
      summary: Get a list of tags associated with the given session
      operationId: Sessions_GetTagsForSession
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      - name: sortField
        in: query
        x-schema:
          $ref: '#/components/schemas/TagSortFields'
        schema:
          type: string
          enum:
          - CreateDate
          - UsageCount
          - Content
          - Creator
          - MostRecentUseDate
          default: CreateDate
      - name: sortOrder
        in: query
        x-schema:
          $ref: '#/components/schemas/SortOrder'
        schema:
          type: string
          enum:
          - Asc
          - Desc
          default: Asc
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponseOfTag'
        '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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
    put:
      tags:
      - Sessions
      summary: Update the tags associated with the given session
      description: Replaces the tags currently associated with the session with the provided tags.
      operationId: Sessions_UpdateTagsForSession
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponseOfTag'
        '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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SessionTagUpdate'
  /api/v1/sessions/{id}/captions:
    post:
      tags:
      - Sessions
      summary: Upload a caption file (in SRT or VTT format) to this session
      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 an entire session, based off of the edited times. Please verify that the timestamps in your caption file are correlated to the session times, and not an individual stream.
      operationId: Sessions_UploadCaptionsToSession
      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 session 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
    delete:
      tags:
      - Sessions
      summary: Deletes all captions for this session
      description: This operation is not reversible. Please be very careful before deleting captions. They cannot be recovered once deleted.
      operationId: Sessions_DeleteSessionCaptions
      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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
  /api/v1/sessions/{id}/captions/languages/{language}:
    delete:
      tags:
      - Sessions
      summary: Deletes all captions for this session in the specified language.
      description: This operation is not reversible. Please be very careful before deleting captions. They cannot be recovered once deleted. To delete "Default" captions, set "null" for the language parameter in the URL.
      operationId: Sessions_DeleteSessionCaptionsForLanguage
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      - name: language
        in: path
        required: true
        x-schema:
          $ref: '#/components/schemas/ContentLanguage'
        schema:
          type: string
          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
      - name: language
        in: query
        schema:
          title: ContentLanguage
          type: string
          description: Language of content such as sessions, streams, or captions.
          x-enumNames:
          - 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
          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
      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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
  /api/v1/sessions/{id}/settings/access:
    get:
      tags:
      - Sessions
      summary: Get the access settings for the given session
      operationId: Sessions_GetAccessSettings
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessSettings'
        '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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
    put:
      tags:
      - Sessions
      summary: Update the access settings for the given session
      description: IsInherited is readonly and indicates whether or not access is being inherited from a parent folder. If AccessLevel is set to a more restrictive value than that inherited, the inherited value will take precedence.
      operationId: Sessions_UpdateAccessSettings
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessSettings'
        '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 session was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccessSettings'
  /api/v1/sessions/{id}/permissions:
    get:
      tags:
      - Sessions
      summary: Get the user and group permissions for the given session
      description: To fetch all elements, this endpoint can be called multiple times, starting at pageNumber = 0 and incrementing the page number until no results are returned.
      operationId: Sessions_GetPermissions
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      - name: pageNumber
        in: query
        description: Page numbering starts at 0
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponseOfPermission'
        '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
    post:
      tags:
      - Sessions
      summary: Create a session permission by assigning a role to a user or group
      operationId: Sessions_CreatePermission
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Permission'
        '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
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionCreate'
    delete:
      tags:
      - Sessions
      summary: Remove permission from the session
      description: This operation is only valid for non-inherited permissions. If role type and role id are omitted, all non-inherited permissions for the principal will be removed.
      operationId: Sessions_DeletePermission
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      - name: RoleId
        in: query
        description: Id of the role to remove from the user or group. Required when RoleType is null or None.
        schema:
          type: string
          format: guid
      - name: RoleType
        in: query
        description: Type of the role to remove from the user or group. Required when RoleId is null.
        x-schema:
          $ref: '#/components/schemas/BuiltInRoleType'
        schema:
          type: string
          enum:
          - None
          - Viewer
          - Creator
          - Publisher
      - name: PrincipalId
        in: query
        description: Id of the user or group from which the role is being removed.
        schema:
          type: string
          format: guid
      - name: PrincipalType
        in: query
        description: Type of principal, either a user or group.
        x-schema:
          $ref: '#/components/schemas/PrincipalType'
        schema:
          type: string
          enum:
          - User
          - Group
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionDelete'
        '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 session or permission was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
  /api/v1/sessions/{id}/manage/scorm:
    get:
      tags:
      - Sessions
      summary: Download a SCORM manifest by session ID
      description: This endpoint fetches the SCORM manifest for the specified session ID and returns it as a ZIP file attachment.
      operationId: Sessions_GetScormManifestById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      - name: type
        in: query
        required: true
        x-schema:
          $ref: '#/components/schemas/SessionScormManifestType'
        schema:
          type: string
          enum:
          - Interactive
          - Embed
      responses:
        '200':
          description: The SCORM manifest ZIP file in the response body
          content:
            application/json:
              schema:
                type: string
                format: byte
        '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 SCORM manifest was not found or cannot be fetched
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
  /api/v1/sessions/{id}/sessioncopy:
    post:
      tags:
      - Sessions
      summary: Perform a session copy
      operationId: Sessions_Copy
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: guid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionCopyResponse'
        '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
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SessionCopyCreate'
components:
  schemas:
    AccessSettings:
      type: object
      required:
      - IsInherited
      - Level
      properties:
        IsInherited:
          type: boolean
          description: Indicates whether or not the access settings are inherited.
        Level:
          description: Indicates the level of access set for this item.
          $ref: '#/components/schemas/AccessLevel'
    SortOrder:
      type: string
      description: ''
      x-enumNames:
      - Asc
      - Desc
      enum:
      - Asc
      - Desc
    AccessLevel:
      type: string
      description: ''
      x-enumNames:
      - Restricted
      - OrganizationUnlisted
      - Organization
      - PublicUnlisted
      - Public
      enum:
      - Restricted
      - OrganizationUnlisted
      - Organization
      - PublicUnlisted
      - Public
    SessionUrls:
      type: object
      properties:
        ViewerUrl:
          type: string
          description: The URL to view this session in Panopto
        EmbedUrl:
          type: string
          description: The URL to an embedded version of this session
        ShareSettingsUrl:
          type: string
        DownloadUrl:
          type: string
          description: The URL to download this session. This URL is intended for one-time download only, and is not appropriate for direct streaming or playback. May be blank if not allowed.
        AudioDescriptionDownloadUrl:
          type: string
        CaptionDownloadUrl:
          type: string
          description: The URL to download captions for this session, if available.
        EditorUrl:
          type: string
          description: The URL to edit this session in Panopto, if you are a creator.
        ThumbnailUrl:
          type: string
          description: The URL to retrieve the thumbnail for this session
    PrincipalType:
      type: string
      description: ''
      x-enumNames:
      - User
      - Group
      enum:
      - 

# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/panopto/refs/heads/main/openapi/panopto-sessions-api-openapi.yml