Content Management API > Upload track 
 Create a new upload track
Body parameters
  type   string  Required 
 Must be exactly "upload_track".
  attributes.url_or_upload_request_id   string  Required 
 Either an URL to download, or the ID of an upload request
 Example: 
 "/7/1455102967-image.png"
   attributes.type   enum  Required 
 The type of track (audio or subtitles)
 Example: 
 "subtitles"
   subtitles     Optional 
 Subtitles
  audio     Optional 
 Audio
  attributes.language_code   string  Required 
 A valid BCP 47 specification compliant language code
 Example: 
 "it-IT"
   attributes.name   string  Optional 
 The human-readable name of the track
 Example: 
 "Italiano"
   attributes.closed_captions   null, boolean  Optional 
 Indicates if the track provides subtitles for the Deaf or Hard-of-hearing (SDH)
Returns
Returns a Job ID. You can then poll for the completion of the job that will eventually return a resource object of type upload_track
Examples
The response contains the ID of the asynchronous job that started:
POST https://site-api.datocms.com/uploads/:upload_id/tracks HTTP/1.1Authorization: Bearer YOUR-API-TOKENAccept: application/jsonX-Api-Version: 3Content-Type: application/vnd.api+json
{  "data": {    "type": "upload_track",    "attributes": {      "url_or_upload_request_id": "/7/1455102967-image.png",      "type": "subtitles",      "language_code": "it-IT"    }  }}curl -g 'https://site-api.datocms.com/uploads/:upload_id/tracks' \  -X POST \  -H "Authorization: Bearer YOUR-API-TOKEN" \  -H "Accept: application/json" \  -H "X-Api-Version: 3" \  -H "Content-Type: application/vnd.api+json" \  --data-binary '{"data":{"type":"upload_track","attributes":{"url_or_upload_request_id":"/7/1455102967-image.png","type":"subtitles","language_code":"it-IT"}}}'await fetch("https://site-api.datocms.com/uploads/:upload_id/tracks", {  method: "POST",  headers: {    Authorization: "Bearer YOUR-API-TOKEN",    Accept: "application/json",    "X-Api-Version": "3",    "Content-Type": "application/vnd.api+json",  },  body: JSON.stringify({    data: {      type: "upload_track",      attributes: {        url_or_upload_request_id: "/7/1455102967-image.png",        type: "subtitles",        language_code: "it-IT",      },    },  }),});HTTP/1.1 202 AcceptedContent-Type: application/jsonCache-Control: cache-control: max-age=0, private, must-revalidateX-RateLimit-Limit: 30X-RateLimit-Remaining: 28
{  "data": {    "type": "job",    "id": "4235"  }}To get the asynchronous job result, poll the job result endpoint. While the task is in progress, the endpoint returns a 404 status code. When the job completes, the status changes to 200 OK:
GET https://site-api.datocms.com/job-results/:job_result_id HTTP/1.1Authorization: Bearer YOUR-API-TOKENAccept: application/jsonX-Api-Version: 3curl -g 'https://site-api.datocms.com/job-results/:job_result_id' \   \  -H "Authorization: Bearer YOUR-API-TOKEN" \  -H "Accept: application/json" \  -H "X-Api-Version: 3"await fetch("https://site-api.datocms.com/job-results/:job_result_id", {  headers: {    Authorization: "Bearer YOUR-API-TOKEN",    Accept: "application/json",    "X-Api-Version": "3",  },});HTTP/1.1 200 OKContent-Type: application/jsonCache-Control: cache-control: max-age=0, private, must-revalidateX-RateLimit-Limit: 30X-RateLimit-Remaining: 28
{  "data": {    "type": "job_result",    "id": "34",    "attributes": {      "status": 200,      "payload": {        "data": {          "type": "upload_track",          "id": "xBe7u01029ipxBLQhYzZCJ1cke01zCkuUsgnYtH0017nNzbpv2YcsoMDmw",          "attributes": {            "type": "subtitles",            "name": "Italiano",            "language_code": "it-IT",            "closed_captions": false,            "status": "ready",            "error": null          },          "relationships": {            "upload": {              "data": {                "type": "upload",                "id": "q0VNpiNQSkG6z0lif_O1zg"              }            }          }        }      }    }  }}