Skip to content

List videos a course can be made from

GET/v1/organization/{orgId}/learning/media

US Region: https://public-api.sessionboard.com · EU Region: https://public-api-eu.sessionboard.com

Media-section recordings, uploads and clips, newest first. A course is written from what is said, so only items with has_transcript: true can be used (a clip uses its recording's transcript). Requires read:learning. Also served at GET /v1/learning/media with the organization taken from the token.

Request example

Terminal window
curl --request GET \
--url 'https://public-api.sessionboard.com/v1/organization/{orgId}/learning/media' \
--header 'x-access-token: <api-token>'

Try it

Authorization

Your token stays in this page. It is sent only to the region above and is never saved; it is gone when you leave or reload the page.

Path parameters
Query parameters
GET

Authorizations

  • x-access-tokenstringheader

    Organization API token. Generate from Organization Settings → API Tokens.

  • AuthorizationBearer <token>headeror

    OAuth 2.1 access token. Obtained via the OAuth PKCE flow at /oauth/token.

Send one of these. See Authentication.

Path parameters

  • orgIdstringpathrequired

    Your organization ID. Any other organization returns 404.

Query parameters

  • kindstringquery

    video for recordings and uploads, clip for clips cut from them. Omit for both.

    Allowed values
    "video", "clip"
  • qstringquery

    Words from the title.

    Max length
    200
  • limitintegerquery
    Default
    50
    Minimum
    1
    Maximum
    200

Responses

200application/json

OK

  • payloadobject
    Show child attributes
    • mediaLearningMedia[]
      Show child attributes
      • idstring<uuid>
      • kindstring
        Allowed values
        "recording", "audio", "clip"
      • titlestring | null
      • duration_secondsinteger | null
      • has_transcriptboolean
      • chapter_countinteger
      • clip_countinteger

        Clips cut from this recording.

      • parentobject | null

        A clip's recording.

        Show child attributes
        • idstring<uuid>
        • titlestring | null
      • can_make_courseboolean
      • created_atstring<date-time>

403

  • SCOPE_REQUIRED — the token lacks read:learning (reads) or write:learning (writes). Legacy tokens with no scopes cannot write.
  • FORBIDDEN — Learning is not on for the organization, or the token's user lacks the Lessons permission.

Response examples

{
"payload": {
"media": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "recording",
"title": "<string>",
"duration_seconds": 123,
"has_transcript": true,
"chapter_count": 123,
"clip_count": 123,
"parent": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>"
},
"can_make_course": true,
"created_at": "2026-01-15T09:30:00Z"
}
]
}
}

Get release notes by email

A short digest on the days something new goes live — each change with a link to its note in the release notes. No marketing, and one click to stop.

Company email addresses only. We’ll send one email to confirm it’s you. Already use Sessionboard? You can also turn this on under Community → What’s new.