Exports API

Export Canva designs in various formats including PDF, images, presentations, and videos. The API supports synchronous processing with automatic polling for job completion.

POST/api/rest/exports
Export a Canva design in the specified format. The API will poll the export job until completion and return the download URLs.
Parameters
NameTypeDescription
designIdstringThe Canva design ID to export
formatTypestringExport format: 'pdf', 'jpg', 'png', 'pptx', 'gif', or 'mp4'
formatSizestring (optional)Page size for PDF/PPTX: 'a4', 'a3', 'letter', or 'legal'
formatQualitystring (optional)Video quality for MP4: 'horizontal_480p', 'horizontal_720p', 'horizontal_1080p', 'horizontal_4k', 'vertical_480p', 'vertical_720p', 'vertical_1080p', 'vertical_4k'. Required for MP4 exports.
formatExportQualitystring (optional)Export quality: 'regular' or 'pro'
formatPagesnumber[] (optional)Array of page numbers to export (1-indexed). If not specified, exports all pages.
formatWidthnumber (optional)Custom width in pixels for image exports
formatHeightnumber (optional)Custom height in pixels for image exports
formatLosslessboolean (optional)Enable lossless compression for image exports
formatTransparentBackgroundboolean (optional)Enable transparent background for PNG exports
formatAsSingleImageboolean (optional)Export all pages as a single image (for multi-page designs)
Request Example
POST /api/rest/exports Authorization: Bearer YOUR_API_TOKEN Content-Type: application/json { "designId": "design_1234567890", "formatType": "pdf", "formatSize": "a4", "formatExportQuality": "pro", "formatPages": [1, 2, 3] }
Response Example
{ "jobId": "export_job_1234567890", "status": "success", "urls": [ "https://api.canva.com/exports/design_1234567890.pdf", "https://api.canva.com/exports/design_1234567890_page2.pdf", "https://api.canva.com/exports/design_1234567890_page3.pdf" ] }

Important Notes

  • Authentication: Requires a valid API token in the Authorization header
  • Processing Time: The API polls the export job every 2.5 seconds for up to 20 attempts (approximately 50 seconds total)
  • MP4 Exports: The formatQuality parameter is required for video exports
  • Multi-page Exports: Each page is returned as a separate URL in the response
  • Error Handling: Failed exports include error details with code and message

Response Status Codes

StatusDescription
200Export completed successfully
401Unauthorized - Invalid or missing API token
500Export failed or timed out

Example Use Cases

PDF Export

POST/api/rest/exports
Export a design as a high-quality PDF
Request Example
{ "designId": "design_1234567890", "formatType": "pdf", "formatSize": "a4", "formatExportQuality": "pro" }
Response Example
{ "jobId": "export_job_1234567890", "status": "success", "urls": ["https://api.canva.com/exports/design_1234567890.pdf"] }

PNG Image Export

POST/api/rest/exports
Export a design as a PNG with transparent background
Request Example
{ "designId": "design_1234567890", "formatType": "png", "formatWidth": 1920, "formatHeight": 1080, "formatTransparentBackground": true, "formatLossless": true }
Response Example
{ "jobId": "export_job_1234567890", "status": "success", "urls": ["https://api.canva.com/exports/design_1234567890.png"] }

MP4 Video Export

POST/api/rest/exports
Export a design as an MP4 video
Request Example
{ "designId": "design_1234567890", "formatType": "mp4", "formatQuality": "horizontal_1080p" }
Response Example
{ "jobId": "export_job_1234567890", "status": "success", "urls": ["https://api.canva.com/exports/design_1234567890.mp4"] }