Skip to main content
POST
Get a signed URL for uploading a recording
Generates a short-lived signed upload URL for an audio file plus a matching download URL. This is the first step of the direct-upload flow: upload your audio to cloud storage with uploadUrl, then pass downloadUrl as fileUrl to Post recordings upload to create the recording.

Response fields

Required upload headers

The values of Content-Type and x-goog-content-length-range are baked into the signature of uploadUrl. You must send them exactly as returned in uploadHeaders, or GCS rejects the upload with a 403 SignatureDoesNotMatch.
  • Content-Type — the MIME type for the fileType you requested. Siro maps extensions as follows:
  • x-goog-content-length-range — 0,<fileSize>, where <fileSize> is the exact byte size you passed in the request. The uploaded body must fall within this range.

Example upload

Then call Post recordings upload with fileUrl set to downloadUrl.

Authorizations

x-siro-auth-token
string
header
default:<access-token>
required

Access token from POST https://auth.siro.ai/oauth2/token (client_credentials), or a Siro OAuth access token. Send x-siro-auth-token: <access-token>.

Body

application/json
fileType
string
required

File type (limited to mp3, aac, wav)

fileSize
integer
required

Size of the file in bytes

Required range: x >= 1

Response

Get a signed URL for uploading a recording

data
object
required
cursor
pageSize
number
limit
number
total
number | null
hasNextPage
boolean