Skip to main content

Update Multimedia

This endpoint allows you to update an existing multimedia item's details. You can modify metadata, update content URLs, change application configurations, and adjust advanced options for the multimedia content.

πŸ”Ή Endpoint Details​

PUT /api/v1/multimedia/{multimediaId}

πŸ”’ Authentication​

HeaderRequiredDescription
Content-TypeYesMust be application/json
AuthorizationYesFormat: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature

πŸ“ Path Parameters​

ParameterTypeRequiredDescription
multimediaIdstring (UUID)YesUnique identifier of the multimedia

πŸ“ Request Structure​

Optional Fields​

FieldTypeRequiredDescriptionExample
namestringNoName of multimedia content"Updated Demo Video"
urlstringNoURL where multimedia is accessible"https://example.com/videos/updated.mp4"
formatstringNoFormat/MIME type of content"video/mp4"
descriptionstringNoDetailed description"Updated product demonstration"
sizenumberNoSize in bytes6291456
durationnumberNoDuration in seconds360
appobjectNoApplication configurationSee example
environmentobjectNoEnvironment settings{"region": "eu-west-1"}
coverVideoobjectNoCover video configurationSee example
optionsobjectNoAdditional optionsSee example

🧩 Request Example​

curl -X PUT "https://openapi.onlive.site/api/v1/multimedia/{multimediaId}" \
-H "Content-Type: application/json" \
-H "Authorization: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature" \
-d '{
"name": "string",
"app": {
"source": {
"url": "string",
"security": "string"
},
"resource": "string",
"args": "string"
},
"url": "string",
"format": "string",
"description": "string",
"size": 0,
"duration": 0,
"status": "string",
"environment": {},
"coverVideo": {
"id": "string",
"url": "string",
"size": 0,
"format": "string",
"duration": 0
},
"options": {
"usePixelStreaming": true,
"timeout": 0,
"showBooking": true,
"showRegister": true
}
}'

Response Example​

HTTP Status 200​

{
"id": "string",
"organizationId": "string",
"name": "string",
"app": {
"type": "string",
"source": {
"url": "string",
"security": "string"
},
"resource": "string",
"args": "string"
},
"url": "string",
"format": "string",
"description": "string",
"size": 0,
"duration": 0,
"status": "string",
"environment": {},
"coverVideo": {
"id": "string",
"url": "string",
"size": 0,
"format": "string",
"duration": 0
},
"options": {
"usePixelStreaming": true,
"timeout": 0,
"showBooking": true,
"showRegister": true
}
}

❌ Error Responses​

400 Bad Request​

{
"statusCode": 400,
"message": "Invalid input",
"errors": [
{
"field": "url",
"message": "url must be a valid URL"
}
]
}

403 Forbidden​

{
"statusCode": 403,
"message": "Insufficient permissions to update this multimedia content"
}

404 Not Found​

{
"statusCode": 404,
"message": "Multimedia with ID '7a1c8d4b-3f2e-5697-9a8b-106c4d8e7f9a' not found"
}

422 Unprocessable Entity​

{
"statusCode": 422,
"message": "Validation failed",
"errors": [
{
"field": "format",
"message": "unsupported multimedia format"
}
]
}

πŸ“˜ Notes​

  • You only need to include fields you want to update
  • All other fields will retain their existing values
  • The organizationId cannot be changed
  • Content validation is performed when updating URLs or formats
  • Status may change to "need_action" if content requires re-processing
  • Immersive content updates may take longer to process
  • Update operations are atomic - either all changes succeed or none

πŸ’‘ Best Practices​

  1. Update Strategy

    • Use partial updates when possible to minimize data transfer
    • Validate content before updating references
    • Consider user experience during content transitions
  2. Content Management

    • Keep version history for important content
    • Update metadata frequently but content URLs sparingly
    • Use meaningful naming conventions for easy identification
  3. Error Handling

    • Implement proper validation before sending update requests
    • Provide clear feedback to users about update status