Connect Canva to OpenClaw on Operator.io
Canva is a drag-and-drop design suite for creating professional graphics, presentations, and marketing materials. It makes it easy for anyone to design with beautiful templates and a vast library of elements.
Automate Canva with AI
Your OpenClaw agent lives on Operator and treats Canva as one more service it can drive. Send it an outcome in a Telegram or Discord message and it works out which of the 46 Canva actions to run, then runs them.
Your agent reaches Canva directly or through connectors like Composio MCP and Pipedream MCP, which handle the sign in and token refresh for you, so there is nothing to wire up and no API keys to paste.
What your agent can do with Canva
Your agent can call any of these Canva actions by name as part of a larger task. Ask for the outcome you want and it picks the right ones.
Access user specific brand templates list
Lists brand templates available to the user (Canva Enterprise only). This endpoint retrieves all brand templates the user has access to. Brand templates are pre-designed layouts with variable data fields that can be populated programmati...
Create Asset Upload Job
Uploads an asset file to the user's Canva content library. This endpoint initiates an asynchronous upload job for images, videos, audio files, PDFs, or fonts. Returns a job ID to track the upload progress. Once complete, the asset can be...
Create comment reply in design
This preview API allows replying to comments within a design on Canva, with a limit of 100 replies per comment. Users should note potential unannounced changes, and that preview APIs are not eligible for public integrations.
Create design comment in preview api
Creates a new comment thread on a Canva design. This preview API allows adding text comments to designs for collaboration and feedback. Returns the created comment with ID, author info, and timestamp. Comments can be replied to using the...
Create Design Import Job
Imports an external file as a new Canva design. This endpoint converts documents (PDF, Word, PowerPoint, Excel) and design files (PSD, AI) into editable Canva designs. The import runs asynchronously and returns a job ID to track progress...
Create Design Resize Job
Creates a resized copy of an existing design (Canva Pro/Enterprise only). This endpoint creates a new design with different dimensions from an existing one. The resize operation runs asynchronously and preserves content where possible. R...
Create URL Asset Upload Job
Tool to create an asynchronous Canva asset import job from a public URL. Use when you need to import an asset into Canva directly from a publicly accessible URL without S3 choreography.
Delete asset by id
You can delete an asset by specifying its `assetId`. This operation mirrors the behavior in the Canva UI. Deleting an item moves it to the trash. Deleting an asset doesn't remove it from designs that already use it.
Exchange oauth 2 0 access or refresh token
The OAuth 2.0 endpoint issues time-limited (4-hour) access tokens of up to 4KB for user authorization via codes or refresh tokens. It requires client ID/secret for authentication.
Fetch asset upload job status
Polls for asset upload job completion status. Use this after CANVA_CREATE_ASSET_UPLOAD_JOB to check the upload progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final asset ID and metadat...
Fetch canva connect signing public keys
The API for verifying Canva webhooks, 'connect/keys,' is in preview, meaning unstable, not for public integrations, and provides a rotating JWK for signature verification to prevent replay attacks. Cache keys for efficiency.
Fetch current user details
Returns the User ID, Team ID, and display name of the user account associated with the provided access token.
Fetch design metadata and access information
Gets the metadata for a design. This includes owner information, URLs for editing and viewing, and thumbnail information.
Get design comment thread replies
Retrieves a list of replies for a comment or suggestion thread on a design. Use when you need to view all replies in a specific thread.
Get specific design comment reply
Retrieves a specific reply to a comment or suggestion thread on a design. Use when you need to view details of a particular reply.
Get design export job result
Polls for design export job completion status. Use this after CANVA_CREATE_CANVA_DESIGN_EXPORT_JOB to check the export progress. Call this endpoint repeatedly until the job is complete to receive download links for the exported design pa...
Get designs designid comments threadid
Retrieves metadata for a comment or suggestion thread on a design. Use when you need to get details about a specific thread including content, author, timestamps, and status.
Get design export formats
Lists available file formats for exporting a design. Use this to check which export formats (PDF, JPG, PNG, SVG, PPTX, GIF, MP4) are supported for a specific design.
Get URL asset upload job status
Tool to retrieve the status and result of a URL-based asset upload job. Use this after creating a URL asset upload job to check progress and retrieve the uploaded asset ID when successful.
Get URL import job status
Polls for URL import job completion status. Use this after creating a URL import job to check the import progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final imported design ID and met...
Get user capabilities
Lists the API capabilities for the user account associated with the provided access token. Use when you need to check what features are available based on the user's Canva plan.
Initiate canva design autofill job
Upcoming brand template ID updates require migration within 6 months. Canva Enterprise users can auto-fill designs using various data types, including experimental chart data. Monitor jobs with specific API.
List design pages with pagination
Preview API for Canva: subject to unannounced changes and not for public integrations. Lists metadata for design pages with optional `offset` and `limit`; not applicable to all design types.
List folder items by type with sorting
Lists the items in a folder, including each item's `type`. Folders can contain: - Other folders. - Designs, such as Instagram posts, Presentations, and Documents ([Canva Docs](https://www.canva.com/create/documents/)). - Image assets.
List User Designs
Provides a summary of Canva user designs, includes search filtering, and allows showing both self-created and shared designs with sorting options.
Move item to specified folder
Transfers an item to a different folder by specifying both the destination folder's ID and the item's ID. If the item is in various folders, an error occurs; manual relocation via Canva UI is required.
Create new Canva design
Creates a new Canva design with preset type or custom dimensions. Use when creating new designs for docs, presentations, whiteboards, or with specific pixel dimensions. Optionally insert an image asset into the design. Returns design ID,...
Post designs designid comments
Creates a comment thread on a Canva design. Use when you need to add feedback or collaboration comments to a specific design. Rate limited to 100 requests per minute per user.
Create reply to comment thread
Tool to create a reply to a comment or suggestion thread on a Canva design. Use when you need to respond to existing comments or suggestions. Maximum 100 replies per thread allowed.
Start design export job
Starts a new asynchronous job to export a Canva design file. Use when exporting designs to various formats (PDF, JPG, PNG, GIF, PPTX, MP4). Returns a job ID that can be used to poll for completion status and download URLs. IMPORTANT: For...
Create folder
Tool to create a folder in Canva. Use when you need to organize designs, assets, or create nested folder structures in a user's projects or uploads folder.
Create URL Import Job
Tool to start an asynchronous job to import an external file from a URL as a new design in Canva. Use when you need to import a design from a publicly accessible URL. This is an async operation; poll the job status using the job ID until...
Remove folder and move contents to trash
Deletes a folder by moving the user's content to Trash and reassigning other users' content to their top-level projects.
Retrieve app public key set
Returns the Json Web Key Set (public keys) of an app. These keys are used to verify JWTs sent to app backends.
Retrieve asset metadata by id
You can retrieve the metadata of an asset by specifying its `assetId`.
Retrieve brand template dataset definition
Canva's brand template IDs will change later this year, including a 6-month integration migration. API access requires Enterprise membership, providing autofill for images, text, and charts, although chart data could change during preview.
Retrieve canva enterprise brand template metadata
Upcoming update will change brand template IDs; integrations must migrate within 6 months. API use requires Canva Enterprise membership.
Retrieve design autofill job status
API users with Canva Enterprise membership can retrieve design autofill job results, potentially requiring multiple requests until a `success` or `failed` status is received.
Retrieve design import job status
Polls for design import job completion status. Use this after CANVA_CREATE_DESIGN_IMPORT_JOB to check the import progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final imported design ID...
Retrieve Design Resize Job Status
Retrieves the status and results of a design resize job. Polls for design resize job completion status. Use this after CANVA_CREATE_DESIGN_RESIZE_JOB to check the resize progress. Keep polling until status is 'success' or 'failed'. Succe...
Retrieve folder details by id
Gets the name and other details of a folder using a folder's `folderID`.
Retrieveuserprofiledata
Currently, this returns the display name of the user account associated with the provided access token. More user information is expected to be included in the future.
Revoke oauth tokens
Revoke a refresh token to end its lineage and user consent, requiring re-authentication. Authenticate using either basic access with Base64-encoded credentials or body parameters with client ID and secret.
Update asset s name and tags by id
You can update the name and tags of an asset by specifying its `assetId`. Updating the tags replaces all existing tags of the asset.
Update folder details by id
Updates a folder's details using its `folderID`. Currently, you can only update a folder's name.
Validate oauth token properties
Check an access token's validity and properties via introspection, requiring authentication. Use Basic access (Base64 encoded `client_id:client_secret`) or body parameters for credentialing.
How to connect Canva
You authorize Canva once from your dashboard. Operator holds the connection and refreshes the access tokens on its own, so your agent keeps working with Canva without you signing in again. The same setup unlocks every other app your agent can reach, so you only do it once.
When you are ready, the get started guide walks through standing up your OpenClaw agent.
Common questions about Canva
- How do I connect Canva to Operator?
- You authorize Canva once from your Operator dashboard. Operator holds the connection and refreshes the access token for you, so your agent keeps working with Canva without you signing in again.
- Can my agent work with my designs and assets in Canva?
- Yes. It can read project details, create or update assets, and pull what you need back to you. Hand it a request and it runs the matching Canva actions, so routine asset work happens from a chat instead of the editor.
- Do I need to write code or manage Canva API keys?
- No code and no API keys. You authorize Canva through a normal sign in and Operator handles the connection, so there is nothing to wire up or host.
- Can my agent use Canva together with my other apps?
- Yes. The same agent reaches every app you connect, so it can move between Canva and tools like Figma, Cloudinary, Miro in one job, reading from one and acting in another without you wiring anything between them.
Connect Canva to another app
Your agent can run Canva together with any of these. Each page shows what it does across both apps in one job.
More apps to automate
Apps your agent runs alongside Canva, or browse all integrations.
Put your agent on Canva
Sign in, connect Canva, and hand your agent the work. Your first week is free.
Try for free