Skip to main content
The Transcription API accepts any publicly accessible audio URL.This File Upload API is optional. You can host your audio files on your own storage if you prefer.
The File Upload API uploads audio files from your users’ mobile apps to Plaud storage. Once files are uploaded, these files can be passed to the Transcription API to take advantage of Plaud’s transcription and ASR models.
1

Generate Presigned URLs

Using the POST /generate-presigned-urls endpoint, Plaud will send an array of pre-signed S3 upload endpoint for you to upload your users’ audio files
You must send <ChunkSize of data to each PresignedUrl.
2

Upload Each Chunk

PUT the raw bytes of each chunk directly to its presigned S3 URL (no auth needed), then read the ETag (Entity Tag) response header for each part.
3

Complete the Upload

Send your list of ETags to the POST /complete-upload endpoint to receive your file’s DownloadUrl

Using the File Upload API

Prerequisites

The File Upload API authenticates with a User Token. Use the Authentication API if you don’t have a User Token or need a new one.
Try the Plaud Embedded API Playground to see every step of the transcription process with your own client credentials.End-to-end, from authentication to recording audio to uploading to transcription.

Find Your Region

The File Upload 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 File Upload API.

Generate Presigned Upload URLs

Request presigned S3 URLs for a multipart upload from Plaud’s API. The number of presigned URLs will depend on your file size.

Upload Each Chunk to S3

For each part, PUT up to the ChunkSize of raw bytes (5MB) to its PresignedUrl. These AWS S3 calls are presigned thus no authentication is needed.
Keep the ETag (Entity Tags) found in the response headers from each PUT call. These are needed in POST /complete-upload.
The S3 response includes the ETag header for that part:

Complete the Multipart Upload

Submit the:
  1. file_id from the first step
  2. upload_id from the first step
  3. Array of ETag with its corresponding PartNumber from the second step
The returned DownloadUrl is valid for 24 hours. Pass it as file_url to the Transcription API to transcribe your file!