Skip to main content
POST
/
open
/
partner
/
files
/
upload
/
complete-upload
Complete Multipart Upload
curl --request POST \
  --url https://platform-us.plaud.ai/developer/api/open/partner/files/upload/complete-upload \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: <content-type>' \
  --data '
{
  "file_id": "file_xxx",
  "upload_id": "upload_xxx",
  "part_list": [
    {
      "PartNumber": 1,
      "ETag": "\"abc123...\""
    },
    {
      "PartNumber": 2,
      "ETag": "\"def456...\""
    }
  ],
  "filetype": "mp3",
  "file_md5": "9e107d9d372bb6826bd81d3542a419d6"
}
'
{
  "FileId": "file_xxx",
  "FileType": "mp3",
  "DownloadUrl": "https://plaud-bucket.s3.amazonaws.com/...",
  "FileMd5": "9e107d9d372bb6826bd81d3542a419d6"
}

Authorizations

Authorization
string
header
required

Bearer authentication using a user_access_token (see the Authentication API).

Headers

Content-Type
string
default:application/json
required

Body

application/json
file_id
string
required

The FileId returned by generate-presigned-urls.

Example:

"file_xxx"

upload_id
string
required

The UploadId returned by generate-presigned-urls.

Example:

"upload_xxx"

part_list
object[]
required

The part number and ETag collected from each chunk's PUT response.

filetype
string
required

File extension of the audio file.

Example:

"mp3"

file_md5
string

Hex-encoded MD5 of the full file, used to verify integrity. Optional.

Example:

"9e107d9d372bb6826bd81d3542a419d6"

Response

200 - application/json

Upload completed and parts merged

FileId
string

Identifier for the uploaded file.

Example:

"file_xxx"

FileType
string

File extension of the audio file.

Example:

"mp3"

DownloadUrl
string

Pre-signed download URL for the merged file, valid ~24h. Pass as file_url to the Transcription API.

Example:

"https://plaud-bucket.s3.amazonaws.com/..."

FileMd5
string

Hex-encoded MD5 of the merged file.

Example:

"9e107d9d372bb6826bd81d3542a419d6"