The Canva Apps SDK, Connect APIs, and MCP are now unified in the Canva Developers SDK. Learn more⁠(opens in a new tab or window).
Canva Developers SDK
The Canva Apps SDK, Connect APIs, and MCP are now unified in the Canva Developers SDK. Learn more⁠(opens in a new tab or window).

import-design-from-url

Turn a publicly hosted file or web page into a new Canva design.

Use import-design-from-url to convert content at a public HTTPS URL into a new design. It accepts a PDF, a slide deck (PowerPoint or Keynote), a document (Word, Pages, or Markdown), a spreadsheet (Excel, CSV, or Numbers), a web page or HTML file, or a design file (Photoshop or Illustrator). It isn't for local, private, or agent-generated files, for Canva design URLs, or for splitting a flat image into editable layers.

Example prompt

"Turn this PDF into a Canva presentation: https://<public-file-url>"

Pass the public HTTPS url and a name for the new design. Optional intended_design_type is described in the tool's schema.

Example response

IDs, URLs, and tokens below are placeholders; field names and structure are exactly as returned.

This tool wraps results in an asynchronous job object. The server waits for the import to finish (up to about a minute) before responding, so status is normally success or failed; check it before using the result.

{
"job": {
"id": "job_EXAMPLE",
"status": "success",
"result": {
"designs": [
{
"id": "DAF_EXAMPLE",
"title": "Quarterly Report",
"urls": {
"edit_url": "https://www.canva.com/d/EXAMPLE_EDIT",
"view_url": "https://www.canva.com/d/EXAMPLE_VIEW"
},
"created_at": 1784078449,
"updated_at": 1784078453,
"page_count": 12
}
]
}
}
}
JSON

Returns a job whose result.designs lists the created designs, each with an id, title, urls, and page_count; a thumbnail is included when available. Give the user the edit_url. A failed import returns status: "failed" with an error containing a code and message, for example invalid_file.

Learn more