Download a movie's file to a server
/movies/{id}/ingest/write Change: creates or edits. Scopes
Copies the movie's file from a link (method: url) or a bucket object (method: s3, s3_key, and storage for another bucket than the VOD one) onto a server that keeps movies and episodes. It runs in the background: the answer (202) is the transfer, listed on GET /vod/jobs/.
Path parameters
idstring (uuid)requiredThe movie's id.
Body
serverstring (uuid)requiredNode that will hold the file.
methodstringDefault:
"url"urlstringDirect HTTP(S) source. For object storage the panel presigns first.
s3_keystringObject key, when method is s3.
storagestring (uuid)can be nullBucket (Settings → Storage) for method s3; the VOD bucket when absent.
Response
202 OK
idstring (uuid)requiredread-onlymedia_filestring (uuid)requiredread-onlytitleobjectrequiredread-onlycan be nullThe title behind this job, for an operator-legible queue.
kindis the title's model (movie,episode) andidits key, so the queue can link to the right page. Null while the file exists but no catalogue entry points at it. Reached through the media file's reverse one-to-one; the list view selects those relations so this costs no query per row.serverstring (uuid)requiredread-onlyserver_namestringrequiredread-onlymethodstringrequiredread-onlysource_refanyrequiredread-onlyMethod-specific locator: the URL to pull, the watch-folder path, the bucket and key of an object, the peer node for a replication. An object is recorded by its key and signed only when the job is sent to the node — a queued job can wait longer than any signed URL lives — and the node receives an ordinary HTTPS URL, so it needs no cloud SDK and object storage is just a URL pull.
statestringrequiredread-onlyphasestringrequiredread-onlyWhat the node is doing right now: waiting for a free slot, downloading, uploading, probing, publishing.
progress_pctintegerrequiredread-onlybytes_doneintegerrequiredread-onlybytes_totalintegerrequiredread-onlyerrorstringrequiredread-onlyattemptsintegerrequiredread-onlycreated_atstring (date-time)requiredread-onlystarted_atstring (date-time)requiredread-onlycan be nullfinished_atstring (date-time)requiredread-onlycan be null
Errors
- 400 Something sent is not valid. Each field that is wrong is named with what is wrong.
- 401 No credential, or one that is wrong, expired or revoked.
- 403 The account, or the key's or app's scopes, may not do this.
- 404 Nothing with this id, or nothing the account can see.
- 429 Slow down: wait the seconds in the Retry-After header, then try again.