Skip to content

Upload a piece of a recording

POST
/rooms/{room}/recordings/{recording}/recovery/chunks
curl --request POST \
--url https://collab.work.optidata.cloud/api/rooms/a3050cd3-5921-4153-b90a-owt42-e94de63c7b15/recordings/1739/recovery/chunks \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form file=@file \
--form chunk_index=1

Uploads one piece of a recording being recovered, in order: the first piece is chunk_index 0. Send every piece, then call finishRecordingRecovery with the number of pieces sent.

room
required
string

The room’s hash (from its link) or its permanent-link identifier custom_hash.

recording
required
integer

The recording’s id. The recording must belong to the room in the path.

Media typemultipart/form-data
object
file
required

The piece of the recording.

string format: binary
chunk_index
required

Position of the piece, starting at 0.

integer

Piece stored.

Media typeapplication/json
object
chunk_index
required
integer
Examples
Examplestored
{
"chunk_index": 0
}

No authentication key was sent, or it is malformed.

Media typeapplication/json

Authentication failures use an error key rather than message.

object
error
required
string
Examples
Examplemissing

No bearer token sent

{
"error": "JWT passport exception: Missing bearer token in request"
}

Only the person who made the recording may recover it — or recordings are not enabled for your company.

Media typeapplication/json
One of:

A refused or not-found request.

object
message
required
string
Examples
ExamplenotOwner
{
"message": "You do not have permission to update this recording."
}

No room has this hash or permanent link.

Media typeapplication/json

A refused or not-found request.

object
message
required
string
Examples
ExamplenotFound
{
"message": ""
}

The authentication key is expired or not recognised. Get a fresh one and retry.

Media typeapplication/json

Authentication failures use an error key rather than message.

object
error
required
string
Examples
Exampleexpired
{
"error": "JWT passport expired: Passport expired"
}

The body failed validation.

Media typeapplication/json
object
message
required

The first validation message.

string
errors
required

Validation messages keyed by field name.

object
key
additional properties
Array<string>
Examples
Examplemissing
{
"message": "The file field is required. (and 1 more error)",
"errors": {
"file": [
"The file field is required."
],
"chunk_index": [
"The chunk index field is required."
]
}
}