API Endpoints
Import media and sequences
Import media files into a new or existing project and create compositions.
This endpoint can:
- Create a new project if project_id is not provided
- Import media files from URLs
- Create multitrack sequences
- Create compositions (timelines) from existing or new media in the project
- Trigger transcription and other background processing tasks
Media URL requirements
- URLs must be accessible by Descript servers
- URLs must support HTTP Range requests
- Recommended to sign URLs for 12-48 hours to reduce chance of failure
- Supported file types
Direct file upload
Instead of providing a URL, you can upload files directly by specifying content_type and file_size for a media item. The response will include a signed upload_url for each direct upload item. PUT the file bytes to that URL, and the import job will process it automatically. See the Direct file upload guide for a full walkthrough.
Async Operations
Imports run in the background and return a job_id. Monitor progress via the GET /jobs/{job_id} endpoint.
Dynamic webhook
If callback_url is provided, Descript will POST the job status to that URL when the job finishes (successfully or not).
The payload will match the format returned by GET /jobs/{job_id}.
post/jobs/import/project_media
Request body
Example request
{
"project_id": "9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb",
"project_name": "Marketing Video",
"team_access": "edit",
"folder_name": "Clients/Acme",
"workspace_name": "Marketing",
"add_media": {
"Misc/intro.mp4": {
"url": "https://example.com/intro.mp4"
},
"demo.mp4": {
"url": "https://example.com/demo.mp4"
},
"Multicam_Track": {
"tracks": [
{
"media": "Recordings/camera1.mp4",
"offset": 0
},
{
"media": "Recordings/camera2.mp4",
"offset": 50
}
]
}
},
"add_compositions": [
{
"name": "Rough Cut",
"width": 1920,
"height": 1080,
"fps": 30,
"clips": [
{
"media": "Misc/intro.mp4"
}
]
}
],
"callback_url": "https://example.com/webhooks/descript/job_callback"
}Response
Import job created successfully
Example response
{
"job_id": "6dc3f30a-58c2-4174-96a6-dc18cf3c7776",
"drive_id": "c9c5c47e-158a-49f7-846b-4f6ee2a229a2",
"project_id": "9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb",
"project_url": "https://web.descript.com/9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb"
}