LogoLogo
WherebyStatusCommunity
  • 📹Whereby 101
    • Create Your Video Experience
      • Get started in 3 steps
      • Embedding Whereby in a web app
        • Using Whereby's Web Component & Pre-built UI
          • Script Tags
          • With Low Code
            • Embedding in Squarespace or Wordpress
            • No code video conferencing in Bubble
        • Using Whereby's Browser SDK with React Hooks for a fully custom UI
      • Embedding Whereby in a mobile app
        • Embedding Whereby in iOS
          • Using Whereby's Native iOS SDK
        • Embedding Whereby in Android
          • Using Whereby's Native SDK
        • Using Flutter
        • Using React Native
      • Github SDK Examples
      • Meeting scheduling with Cronofy
    • Generating Room URLs
      • Name prefixes
      • Using “Create a room”
      • Using Postman
    • Customize Your Video Experience
      • During room creation
      • Using Attributes/URL Params
      • Global preferences
      • Branding elements
      • Dial-In
      • File sharing
      • Breakout Groups with Embedded
      • Waiting Rooms
    • User roles & Meeting Permissions
    • FAQ
      • Accessibility
      • Whereby Words
      • Firewall & Security
      • HIPAA compliant setup
      • Allowed Domains & Localhost
      • Whereby Embedded Feature Comparison
  • 🔍Meeting Content & Quality
    • Recording
      • Cloud Recording
      • Local Recording
    • Transcribing
      • Session Transcription
      • Recording Transcription
    • Live Captions
    • Session summaries
    • Live streaming RTMP
    • Quality Insights
      • Real-time troubleshooting
      • Using the Insights dashboard
      • Improving call quality
      • Tracking room events with Webhooks
  • 🤷End User
    • End User Support Guides
      • Supported Browsers & Devices
      • Screen Sharing Setup & Usage
      • Using Breakout Groups
      • Troubleshooting & Basics
  • 🚚Developer Guides
    • Quickly deploy Whereby to your domain
    • Tracking Customer Usage
    • Migrating from Twilio
      • Twilio JS SDK Quick Migration
      • Twilio JS SDK Direct Migration
  • 🖥️Reference
    • REST API Reference
      • /meetings
      • /insights
      • /recordings
      • /transcriptions
      • /summaries
      • /rooms
    • Web Component Reference
    • React Hooks Reference
      • Quick Start
        • Getting started with the Browser SDK
      • Guides & Tutorials
        • Migrate from version 2.x to 3
        • Grid logic
        • Custom Video Tiles with React
        • Usage with Next.js
        • How to customize the toolbar
      • API Reference
        • WherebyProvider
        • VideoView
        • VideoGrid
        • useLocalMedia
        • useRoomConnection
      • Types
    • React Native Reference
      • Quick Start
      • WherebyEmbed
    • Webhooks Reference
Powered by GitBook
On this page

Was this helpful?

Edit on GitHub
  1. Reference
  2. REST API Reference

/transcriptions

Last updated 5 months ago

Was this helpful?

🖥️

Get transcription

get

Returns the specified transcription metadata.

Path parameters
transcriptionIdstringRequired

Transcription ID.

Example: b438fda0-83e2-4835-92f9-c845ee3d5ea7
Responses
200
A JSON object representing the transcription.
application/json
401
Access token is missing or invalid
404
The requested resource doesn't exist
429
You are rate limited
application/json
get
GET /v1/transcriptions/{transcriptionId} HTTP/1.1
Host: api.whereby.dev
Accept: */*
{
  "transcriptionId": "b438fda0-83e2-4835-92f9-c845ee3d5ea7",
  "roomSessionId": "e2f29530-46ec-4cee-8b27-e565cb5bb2e9",
  "roomName": "/room-prefix-793e9ec1-c686-423d-9043-9b7a10c553fd",
  "createdAt": "2025-01-01T00:00:00.000Z",
  "startDate": "2025-01-01T00:00:00.000Z",
  "endDate": "2025-01-01T00:01:00.000Z",
  "state": "ready",
  "durationInSeconds": 60,
  "type": "LIVE_TRANSCRIPTION",
  "filename": "room-prefix-793e9ec1-c686-423d-9043-9b7a10c553fd-2025-01-01T00:00:00.000Z.md",
  "storageType": "WHEREBY_HOSTED"
}

Get transcription access link

get

Returns a URL that can be used to download the specified transcription. Available for Whereby-hosted transcriptions only.

Path parameters
transcriptionIdstringRequired

Transcription ID.

Example: b438fda0-83e2-4835-92f9-c845ee3d5ea7
Query parameters
validForSecondsinteger · min: 1 · max: 43200Optional

The number of seconds the access link is valid for.

Default: 3600
Responses
200
A JSON object representing the access link.
application/json
401
Access token is missing or invalid
403
Not allowed to perform action
404
The requested resource doesn't exist
429
You are rate limited
application/json
get
GET /v1/transcriptions/{transcriptionId}/access-link HTTP/1.1
Host: api.whereby.dev
Accept: */*
{
  "accessLink": "https://s3.eu-central-1.amazonaws.com/recordings/1.mp4?AWSAccessKeyId=AKIAJ...",
  "expires": 1740819600000
}

Delete transcription

delete

Deletes the specified transcription. The endpoint is idempotent, meaning it will return the same response even if the transcription has already been deleted.

Path parameters
transcriptionIdstringRequired

Transcription ID.

Example: b438fda0-83e2-4835-92f9-c845ee3d5ea7
Responses
204
The resource was deleted successfully.
401
Access token is missing or invalid
429
You are rate limited
application/json
delete
DELETE /v1/transcriptions/{transcriptionId} HTTP/1.1
Host: api.whereby.dev
Accept: */*

No content

  • POSTCreate transcription
  • GETGet transcriptions
  • GETGet transcription
  • GETGet transcription access link
  • POSTBulk delete transcriptions
  • DELETEDelete transcription

Get transcriptions

get

Returns a list of transcriptions

Query parameters
roomNamestringOptional

The name of the room

cursorstringOptional

The cursor for paginating through the results. To fetch the next page, set the cursor to the cursor returned by the previous request.

Example: 8f4031bfc7640c5f267b11b6fe0c2507
limitinteger · min: 1 · max: 100Optional

The limit for the pagination - the maximum number of results that will be returned within a single API response.

Default: 50
sortByanyOptional

Sort results by a field. Accepted fields are: roomName, startDate and durationInSeconds. Accepted sort values are 'asc' and 'desc'.

Example: roomName:asc
Responses
200
A JSON array representing the transcriptions.
application/json
401
Access token is missing or invalid
429
You are rate limited
application/json
get
GET /v1/transcriptions HTTP/1.1
Host: api.whereby.dev
Accept: */*
{
  "results": [
    {
      "transcriptionId": "b438fda0-83e2-4835-92f9-c845ee3d5ea7",
      "roomSessionId": "e2f29530-46ec-4cee-8b27-e565cb5bb2e9",
      "roomName": "/room-prefix-793e9ec1-c686-423d-9043-9b7a10c553fd",
      "createdAt": "2025-01-01T00:00:00.000Z",
      "startDate": "2025-01-01T00:00:00.000Z",
      "endDate": "2025-01-01T00:01:00.000Z",
      "state": "ready",
      "durationInSeconds": 60,
      "type": "LIVE_TRANSCRIPTION",
      "filename": "room-prefix-793e9ec1-c686-423d-9043-9b7a10c553fd-2025-01-01T00:00:00.000Z.md",
      "storageType": "WHEREBY_HOSTED"
    }
  ]
}

Create transcription

post

Creates a new transcription for the specified recording.

Path parameters
recordingIdstringRequired

Recording ID.

Example: a56f6ad7-37fe-4a37-9319-3174630ba57a
Body
recordingIdstringRequired

The recording ID for which the transcription should be created.

Example: a56f6ad7-37fe-4a37-9319-3174630ba57a
Responses
201
The transcription job was scheduled successfully.
application/json
Responseany
401
Access token is missing or invalid
404
The requested resource doesn't exist
429
You are rate limited
application/json
post
POST /v1/transcriptions HTTP/1.1
Host: api.whereby.dev
Content-Type: application/json
Accept: */*
Content-Length: 54

{
  "recordingId": "a56f6ad7-37fe-4a37-9319-3174630ba57a"
}

No content

Bulk delete transcriptions

post

Deletes multiple transcriptions at once. This is an asynchronous operation. The endpoint returns immediately, and schedules a background job to delete the transcriptions. The endpoint is idempotent, meaning it will return the same response even if the transcriptions have already been deleted, or the transcriptions doesn't exist.

Body
transcriptionIdsstring[]Required

The transcription ID to delete.

Example: b438fda0-83e2-4835-92f9-c845ee3d5ea7
Responses
204
The resources are scheduled for deletion.
401
Access token is missing or invalid
429
You are rate limited
application/json
post
POST /v1/transcriptions/bulk-delete HTTP/1.1
Host: api.whereby.dev
Content-Type: application/json
Accept: */*
Content-Length: 61

{
  "transcriptionIds": [
    "b438fda0-83e2-4835-92f9-c845ee3d5ea7"
  ]
}

No content