Skip to main content
The Transcription API follows a polling model where you:
1

Submit Audio for Transcription

After using the File Upload API to generate a file-download-url, you can submit the file to the Transcription API to kick off a transcription task.
2

Get Transcription Task

Use the GET /transcription endpoint to poll the Transcription API for the task status. On completion, the payload will include the transcribed data.

Using the Transcription API

Prerequisites

If you haven’t done so, retrieve your client_id and api_key from the developer portal.
The api_key is NOT your client_secret. Navigate to App Settings > API Keys.
generate api key

Find Your Region

The Transcription API is served with Plaud’s region-level API services. There is no global host for these calls; pick the host of the region your client was provisioned in when using the Transcription API.
RegionPublic hostStatus
USplatform-us.plaud.ai/developer/apiAvailable
Japanplatform-jp.plaud.ai/developer/apiAvailable
Europeplatform-eu.plaud.ai/developer/apiComing soon
Singaporeplatform-sg.plaud.ai/developer/apiComing soon

Submit File for Transcription

Submit a transcription task for Plaud Embedded’s transcription and ASR models to process.
POST [REGION_SPECIFIC_HOST]/open/partner/ai/transcriptions/
Content-Type: application/json
X-Client-Api-Key: [API_KEY]
X-Client-Id: [CLIENT_ID]

{
  "file_url": "<DownloadUrl from complete-upload>",
  "params": {
    "transcribe": { "language": "auto", "model": "plaud-fast-whisper" },
    "vad": { "decode_silence": false },
    "diarization": { "enabled": false, "return_embedding": false }
  }
}
{
  "transcription_id": "task_exec_xxx",
  "status": "PENDING",
  "data": {}
}

Poll Transcription Task Until Completion

Check the status of your transcription task. On the SUCCESS status code, the transcript data will be included.
GET [REGION_SPECIFIC_HOST]/open/partner/ai/transcriptions/[TRANSCRIPTION_ID]
X-Client-Api-Key: [API_KEY]
X-Client-Id: [CLIENT_ID]
{
  "transcription_id": "task_exec_xxx",
  "status": "SUCCESS",
  "data": {
    "text": "Meeting started at 10am...",
    "language": "en",
    "duration": 1843,
    "segments": [
      {
        "start": 0,
        "end": 4.2,
        "text": "Meeting started at 10am.",
        "speaker": "Speaker 1"
      }
    ]
  }
}