POST
/
v1
/
projects
/
{id}
/
export
curl -X POST "https://api.submagic.co/v1/projects/550e8400-e29b-41d4-a716-446655440000/export" \
  -H "Authorization: Bearer your-api-key" \
  -H "Content-Type: application/json"
{
  "message": "Export started successfully",
  "projectId": "550e8400-e29b-41d4-a716-446655440000",
  "status": "exporting"
}

Export Project

Triggers the rendering/export process for a completed project. This starts the video generation process asynchronously with customizable output parameters.
This endpoint requires Bearer token authentication and has enhanced rate limits for API-generated projects. The export process is asynchronous - use webhooks or polling to track completion.

Authentication

Authorization
string
required
Bearer token with your Submagic API key: Bearer your-api-key

Path Parameters

id
string
required
The unique identifier (UUID) of the project to export

Request Body (Optional)

All parameters are optional. If not provided, the system uses optimal defaults based on the project’s original video metadata.
fps
number
Frames per second for the exported video (1-60). Defaults to project’s original fps or 30.
width
number
Video width in pixels (100-4000). Defaults to project’s original width or 1080.
height
number
Video height in pixels (100-4000). Defaults to project’s original height or 1920.
webhookUrl
string
URL to receive notification when export is complete. Must be a valid URL format.

Prerequisites

Before exporting a project, ensure:
  • Project is transcribed: Must have words data available
  • Project is not uploading: Cannot be in “uploading” status
  • Project ownership: Must belong to the authenticated user
  • API-generated project: Must be created via API

Response

message
string
Success message confirming the export has started
projectId
string
The unique identifier of the project being exported
status
string
Current status of the project after export trigger

Error Responses

error
string
Error code: NOT_FOUND, BAD_REQUEST, or INTERNAL_SERVER_ERROR
message
string
Detailed error message explaining the issue

Webhook Notifications

If you provide a webhookUrl, the system will send a POST request to your URL when export completes, including export details and download URL in the notification.

Export Status Tracking

After triggering an export:
  1. Monitor Progress: Call GET /v1/projects/{id} to check export progress
  2. Check Download URL: The downloadUrl field will be populated once rendering is complete
curl -X POST "https://api.submagic.co/v1/projects/550e8400-e29b-41d4-a716-446655440000/export" \
  -H "Authorization: Bearer your-api-key" \
  -H "Content-Type: application/json"
{
  "message": "Export started successfully",
  "projectId": "550e8400-e29b-41d4-a716-446655440000",
  "status": "exporting"
}
Tip: After triggering an export, use the Get Project endpoint to monitor the export progress. The downloadUrl field will be populated once the rendering is complete.
Important: The export process is asynchronous. The API will return immediately after starting the export, but the actual video rendering happens in the background. Use webhooks or polling to track completion status.