Skip to content

Media Content

PUT /api/v1/edge-protocol/devices/{device_id}/media/{upload_id}/content

Bounded encoded MP4 body. Content-Length must match the admitted manifest. Receipt follows file fsync and a transaction that rechecks current camera authority. Receipt confirms storage; processing and submitted coverage are tracked separately.

Authentication options declared in the contract include device-scoped appliance credential.

Authentication and permissions explains tokens, cookies, CSRF, and workspace context.

Name Location Required Type Description and constraints
device_id path Yes string (uuid)
upload_id path Yes string pattern ^[0-9a-f]{64}$
Eoi-Central-Session header No string (uuid) or null

Required.

video/mp4 — string (binary).

{
"type": "string",
"format": "binary"
}

Set the connection variables described in Get started. Replace each additional EOI_… variable with the parameter value for this request. Prepare the body file using the request schema above. This template sends the request when run.

Terminal window
curl --fail-with-body --silent --show-error \
--request PUT \
--header "Authorization: Bearer ${EOI_EDGE_TOKEN}" \
--header "Content-Type: video/mp4" \
--data-binary @request-body.bin \
"${EOI_API_BASE_URL}/edge-protocol/devices/${EOI_DEVICE_ID}/media/${EOI_UPLOAD_ID}/content"

The table records responses declared by the OpenAPI contract. See Errors and status codes for the runtime error envelope and shared failures.

Status Description Media type Body
200 Successful Response application/json SessionAcceptedMediaReceipt or EdgeMediaReceipt
422 Validation Error application/json HTTPValidationError

Operation identifier storeEdgeMediaContent. Browse Device protocol.

Image preview