> This page is for Agent Handler.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# Canva

**Authentication:** OAuth. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow, or [Application credentials](/merge-agent-handler/admin-setup/add-oauth-credentials) to bring your own OAuth app.

## Sample use cases

* List every design in the `Q2 Marketing` brand kit modified this week.
* Export the latest version of the `Pitch Deck` design as PDF and upload to Drive.
* Find designs that haven't been opened in 90 days for cleanup review.

## Available Tools

#### create\_url\_asset\_upload

Start a job to upload an asset from URL to the user's content library. Poll get\_asset\_upload\_job for result.

#### get\_asset\_upload\_job

Get the status of an asset upload job. Returns 'in\_progress', 'success' (with asset), or 'failed'.

#### get\_asset

Get metadata for an asset including name, tags, and thumbnail. Use list\_folder\_items to find asset IDs.

#### update\_asset

Update an asset's name and/or tags. Requires asset:write scope.

#### delete\_asset

Delete an asset (moves to trash). Requires asset:write scope.

#### list\_brand\_templates

List brand templates the user has access to. Enterprise only. Filter by query, ownership, or dataset availability.

#### get\_brand\_template

Get metadata for a brand template by ID. Enterprise only.

#### get\_brand\_template\_dataset

Get the autofill dataset definition for a brand template. Enterprise only. Returns field names and types.

#### create\_autofill\_job

Start a job to create a new design by autofilling a brand template with data. Enterprise only. Poll get\_autofill\_job for result.

#### get\_autofill\_job

Get autofill job status. Enterprise only. Returns 'success' with new design, 'in\_progress', or 'failed'.

#### create\_comment\_thread

Create a new comment thread on a design. Optionally assign to a user. (Preview API)

#### get\_comment\_thread

Get a comment thread by ID including message, author, and reply count. (Preview API)

#### create\_comment\_reply

Add a reply to a comment thread. (Preview API)

#### list\_comment\_replies

List all replies in a comment thread with pagination. (Preview API)

#### get\_comment\_reply

Get a specific reply by ID. (Preview API)

#### list\_designs

List all designs accessible to the user with optional search and filtering. Use list\_users first to get user context.

#### get\_design

Get metadata for a specific design by ID including title, owner, URL, and page count.

#### create\_design

Create a new Canva design with preset type (doc, whiteboard, presentation) or custom dimensions.

#### get\_design\_pages

Get page metadata for a design including dimensions and thumbnails (preview API).

#### get\_design\_export\_formats

Get available export formats for a design (PDF, JPG, PNG, GIF, PPTX, MP4).

#### create\_export\_job

Start a job to export a design as PDF, JPG, PNG, GIF, PPTX, or MP4. Poll get\_export\_job for download URLs.

#### get\_export\_job

Get export job status. Returns 'success' with 24-hour download URLs, 'in\_progress', or 'failed'.

#### create\_url\_import\_job

Start a job to import a file from URL as a new Canva design. Poll get\_import\_job for result.

#### get\_import\_job

Get import job status. Returns 'success' with new design, 'in\_progress', or 'failed'.

#### create\_resize\_job

Start a job to create a resized copy of a design (Canva Pro/Premium only). Poll get\_resize\_job for result.

#### get\_resize\_job

Get resize job status (Pro/Premium). Returns 'success' with new design, 'in\_progress', or 'failed'.

#### create\_folder

Create a new folder in projects or uploads. Use 'root' for projects, 'uploads' for uploads folder.

#### get\_folder

Get metadata for a folder by ID.

#### update\_folder

Update a folder's name.

#### delete\_folder

Delete a folder. Contents move to trash or parent folder.

#### list\_folder\_items

List items in a folder (designs, subfolders, images). Use 'root' for projects, 'uploads' for uploads.

#### move\_folder\_item

Move a design, folder, or image to another folder. Use 'root' for projects top level.

#### get\_current\_user

Get the current authenticated user's ID and team ID. Use this to identify the user before other operations.

#### get\_user\_profile

Get the current user's profile information including display name.

#### get\_user\_capabilities

Get API capabilities available to the user (autofill, brand templates, resize, etc).