This endpoint provides a method to upload large media files in multiple parts, which may then be referenced in other API endpoints. To upload a file:
file_id (UUID) to identify the final file and the number of parts (part_count).upload_id and presigned URLs for all parts.upload_id and part ETags.file_id in other API endpoints.file_id is a business-level identifier that will be used to reference the file in other parts of the system.upload_id is an AWS S3-specific identifier for tracking the multipart upload session.part_count must be specified upfront and cannot be changed later.content_type is validated against a mobile media allowlist. Invalid MIME types return 400 Bad Request.part_count.file_id and upload_id.$ curl -i \
-H 'Accept: application/json; version=1' \
-H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIisjQyLCJpYXQiOjE0NjM2OTQ4MjN9.k48v-R-un93KdIXqp9Zi12JOGJCu8uibtrWjscFCTqc" \
https://api.record360.com/api/users/multipart_upload_start/new_file_42?part_count=3&content_type=video/mp4
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"id": "new_file_42",
"upload_id": "example-upload-id",
"key": "users/42/new_file_42",
"presigned_urls": [
"https://bucket.s3.amazonaws.com/users/42/new_file_42?partNumber=1&uploadId=example-upload-id&...",
"https://bucket.s3.amazonaws.com/users/42/new_file_42?partNumber=2&uploadId=example-upload-id&...",
"https://bucket.s3.amazonaws.com/users/42/new_file_42?partNumber=3&uploadId=example-upload-id&..."
]
}
| Param name | Description |
|---|---|
|
file_id
required |
UUID that will identify the final uploaded file. This is a business-level identifier that will be used to reference the file in other parts of the system. Validations:
|
|
part_count
required |
Number of parts the file will be split into. Must be between 1 and 20. Validations:
|
|
content_type
optional |
MIME type of the file being uploaded. Must be one of the supported mobile media formats: image/jpeg, image/png, video/mp4, image/heif, image/heic, video/quicktime, image/webp, video/3gpp, video/webm, image/gif, video/x-m4v, image/bmp. If not provided, defaults to ‘application/octet-stream’. Case-insensitive. Validations:
|