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).

publish-brand-template

Publish an existing design as a brand template.

To use this tool, the user must be on a Canva plan with access to brand templates (such as Canva Pro, Canva Teams, or Canva Enterprise). Additionally, the user must have one of the following roles⁠(opens in a new tab or window): Team admin, Brand designer, Organization admin, or Organization designer.

Use publish-brand-template to publish a design as a brand template that people in the user's organization can reuse. To update an existing brand template, create an editable draft with create-brand-template-draft, edit it, and then publish the draft.

Example prompt

"Publish my updated sales one-pager as our team's brand template."

Pass the design_id.

Example response

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

{
"brand_template": {
"id": "BT_EXAMPLE",
"title": "Sales One-Pager",
"view_url": "https://www.canva.com/design/EXAMPLE_VIEW",
"create_url": "https://www.canva.com/design/EXAMPLE_CREATE",
"thumbnail": { "width": 595, "height": 842, "url": "https://document-export.canva.com/EXAMPLE_THUMBNAIL" },
"created_at": 1784078449,
"updated_at": 1784078449
}
}
JSON

Returns a brand_template with the template's id, title, view_url, and create_url. Use create_url to start a new design from the template.

This tool requires the brandtemplate:content:write scope. If the call fails with Missing scopes: [brandtemplate:content:write], the user needs to disconnect and reconnect Canva in your AI application to grant the scope.

Learn more