Start Multipart Upload
POST
https://api.youvico.com/api/projects/:id/files/upload.multipart- Rate Limit
- Tier 3
- Scope
- files:write
Starts a multipart file upload.
Note
- Split the file into 10,000,000-byte parts from the start. The last part holds whatever remains.
- Within 30 minutes, upload each part with a PUT to the
urlthat has the samepartNumber, and keep theETagheader of each response. - Call Complete Multipart Upload with every
partNumberandeTag.
Example
curl -X POST 'https://api.youvico.com/api/projects/bdbff5de-96d7-468f-9db0-85fe28bd6b62/files/upload.multipart' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ "name": "launch-cut.mp4", "size": 25000000 }'
{
"data": {
"id": "FX1234567890ABCD",
"parts": [
{
"partNumber": 1,
"url": "https://files.youvico.com/upload/eyJhbGciOiJFZERTQSIsImtpZCI6..."
},
{
"partNumber": 2,
"url": "https://files.youvico.com/upload/eyJhbGciOiJFZERTQSIsImtpZCI6..."
},
{
"partNumber": 3,
"url": "https://files.youvico.com/upload/eyJhbGciOiJFZERTQSIsImtpZCI6..."
}
]
}
}
Request
curl -X POST 'https://api.youvico.com/api/projects/bdbff5de-96d7-468f-9db0-85fe28bd6b62/files/upload.multipart' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"name": "launch-cut.mp4",
"size": 25000000
}'
Response201 Created
{
"data": {
"id": "FX1234567890ABCD",
"parts": [
{
"partNumber": 1,
"url": "https://files.youvico.com/upload/eyJhbGciOiJFZERTQSIsImtpZCI6..."
},
{
"partNumber": 2,
"url": "https://files.youvico.com/upload/eyJhbGciOiJFZERTQSIsImtpZCI6..."
},
{
"partNumber": 3,
"url": "https://files.youvico.com/upload/eyJhbGciOiJFZERTQSIsImtpZCI6..."
}
]
}
}
Request
Path
idstringrequiredProject ID
Body
namestringrequired1-255 characters
File name
Example: launch-cut.mp4
sizenumberrequiredInteger, 1-10000000000
File size in bytes
Example: 25000000
Response
Returns 201 Created.
dataobjectUpload session
data.idstringCreated file ID
Example: FX1234567890ABCD
data.partsarrayUpload parts