- Brand
- Canva
- Category
- Content & Design
- Primary Subcategory
- Graphic Design & Branded Asset Studios
Integration details
Description
Bring your Canva design workflow into Codex and create, refine, and review designs through natural conversation. What Canva can do: Create designs: Turn a brief, outline, or draft copy into a presentation, doc, poster, flyer, social post, resume, and more. Generate images: Create photos, illustrations, icons, and graphics from a prompt, or restyle an image you already have. Remove backgrounds: Lift the subject out of an image onto a transparent background. Upload files: Bring attachments and files from your chat into Canva to use in your designs. Resize for social media: Adapt a design for Facebook, Instagram, and LinkedIn in one step. Bulk create: Generate multiple designs from spreadsheet data using a brand template. Edit designs: Update text, media, and formatting, or reposition and resize elements. Get design feedback: Receive structured feedback on visual hierarchy, layout, readability, consistency, and accessibility. Implement feedback: Review comment threads and apply clear, actionable changes. Brand check: Check colors, fonts, logo usage, and copy against your Brand Kit. Once installed, describe what you want in plain language or invoke Canva directly with @Canva. Try prompts like: @Canva, create a pitch deck from this outline. @Canva, make an Instagram post announcing our Friday sale. @Canva, generate an illustration of a lighthouse at dawn. @Canva, remove the background from this photo. @Canva, upload this PDF and turn it into a presentation. @Canva, resize this design for social media. @Canva, create designs from this spreadsheet using my brand template. @Canva, update the headline in this design. @Canva, implement the feedback in the comment threads. @Canva, check this design against my Brand Kit. Requirements: Connect your Canva account to use the plugin. Bulk Create requires an eligible Canva Enterprise plan. Design and image generation use Canva AI credits. Want to take a more hands-on approach? Instantly open your design in Canva's powerful editor for the final touches.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- Graphic Design & Branded Asset Studios
- Secondary Subcategories
- None listed
- Brand
- Canva
- Access
- Account required
- First tracked
- 2026-09-29
- Tool count
- 45
- Geography
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
Your Plugin is discoverable
ChatGPT now suggests Plugins on its own when they match a user's request.Canva is being suggested, and your Discoverability Score is being created. It will show here as soon as it’s ready.
What discovery looks like

Get alerts for Canva
Get updates when Canva’s Discoverability Score or category rank changes.
Competing in ChatGPT Graphic Design & Branded Asset Studios
View Category45 tools agents can invoke
Merge structured text, image, video, or chart values into named autofill fields to populate a Canva design, either as a new design or by overwriting an existing one in place. Use to merge a dataset or spreadsheet; place supplied names, details, or media into template placeholders; populate an existing design; or refill a design whose merged content is out of date. Only use after you have identified a Brand Template or existing Canva design and confirmed it has fillable data fields. Only overwrite an existing design in place when the user has asked to refill that design rather than create a new one, since the overwrite replaces its content and cannot be undone. Not for creating a blank Brand Template copy. Requires exactly one source and data that matches its field schema. Returns the populated design's design_id.
autofill-design
Entrypoint for the global UI. Renders a menu item in the ChatGPT left sidebar that opens the attached widget.
openai-home
Duplicate an existing Canva design, or copy selected pages from it, into a new design. Use to make a separate working copy, create an independent cloned, forked, or backup version, or preserve the original before making changes. For a single source design only. Not for combining pages from more than one design. Creates a new design. The source design remains unchanged. Returns the new design's design_id.
copy-design
LEGACY-ONLY — DO NOT CALL WHEN create-design IS AVAILABLE. If create-design is in the tool list, you MUST NOT call this tool. Call create-design instead. BRAND EXCEPTION: create-design cannot apply a brand kit or base a design on a brand template. When the user asks for an on-brand design — their brand kit, their brand colours, fonts or logo, or a brand template to base the design on — call this tool instead of create-design. All instructions below apply when create-design is absent from the tool list, and whenever the request is an on-brand one. A failed create-design call does not make it unavailable. Create a new Canva design from a generation job candidate ID. This converts an AI-generated design candidate into an editable Canva design. If successful, returns a design summary containing a design ID that can be used with the `editing_transaction_tools`. To make changes to the design, first call this tool with the candidate_id from generate-design results, then use the returned design_id with start-editing-transaction and subsequent editing tools.
create-design-from-candidate
Create a new Canva design from a brand template. Optionally select specific pages to include. If the user has already provided a brand template ID (a string starting with "BTM"), call this tool directly with that ID — do NOT call `search-brand-templates` first. Only use `search-brand-templates` when no ID has been provided and you need to discover one. If you need to fill template fields with custom data, use the `autofill-design` tool instead.
create-design-from-brand-template
Generate a new Canva design from a written brief, with any supplied content folded in. Use to turn a brief, presentation outline, or draft copy into a presentation, doc, sheet, website, poster, flyer, social post, resume, or another text-and-image layout; or to make a first design for a new project. Do not use this tool for an on-brand request: it cannot apply a brand kit or base a design on a brand template. When the user asks for their brand kit, their brand colours, fonts or logo, or a brand template to base the design on, use the legacy generation tools instead — prepare-design-generation where it is listed, otherwise generate-design or generate-design-structured. Use this tool only when the requested output itself is an editable Canva page or layout, such as "create an infographic". Do not use it when the user explicitly asks for an image, picture, photo, illustration, artwork, sticker, icon, graphic, or 2d vector; use generate-image instead. Explicit image wording takes priority over design-like content within the image, including text, statistics, labels, callouts, or an infographic-like composition. For example, "create an image about coffee with bold stat callouts" uses generate-image, as does "create an image of an infographic". Do not choose this tool merely because the request uses the words "create" or "design". Creates a newly generated design rather than editing one that already exists. Not for videos or whiteboards. Returns a job_id and continuation_token for the generation job. When this tool's UI widget is shown, the widget polls get-create-design-async-job itself and displays the design when ready - do not poll it yourself. Only when no widget is shown, poll get-create-design-async-job with both, waiting the number of seconds each response's polling_policy.wait_seconds gives before the next call, until the job completes, then share the design link with the user.
create-design
Create a Canva folder to organise related work. Use to set up a project folder, add a subfolder within an existing folder, or keep designs, images, and folders together. Returns the new folder, including its folder_id.
create-folder
Uploads a file (image, video, audio, PDF, or other document) into Canva. Use when the user wants to add, upload, import, or send a file they have — a chat attachment, a local file, or generated content — to Canva, or wants to use such a file in a design, presentation, or their Canva library. Step 1: call this tool to get a single-use upload_url. Step 2: send the raw file bytes as the body of one HTTP POST to that URL with the header "Content-Type: application/octet-stream" — raw bytes only, no multipart form, no base64, no JSON wrapper. The POST response contains resource IDs for the uploaded file: pass them to other Canva tools to reference the file. Each URL allows exactly one upload and expires after a short period; if the URL has been used, has expired, or the upload was rejected, call this tool again for a fresh URL — never retry a used or expired URL. Only for files whose bytes you can access; for a file already at a public URL, prefer a URL-import tool if one is available.
create-upload-url
Undo or discard all unsaved changes in an active Canva editing transaction. Use to cancel a set of in-progress edits or finish editing without saving. The unsaved changes will be permanently lost, and the transaction_id can no longer be used. Returns confirmation that the changes were discarded.
cancel-editing-transaction
Apply one or more draft changes to the content or layout of an existing Canva design within an active editing transaction. Use to revise, rewrite, or translate text; replace, insert, position, or resize images and videos on a page; remove page elements; edit text formatting; update a design title; or label fixed-page elements. Not for changing a design's page structure or order. Changes are temporary until saved. Show the user a preview of their changes and obtain explicit approval before saving changes. Returns the updated page state for further changes, previewing, saving, or discarding.
perform-editing-operations
Read the text content of one Canva design by its design ID. Use when the user asks what a Canva doc, presentation, whiteboard, social media post, sheet, or other design says, asks to summarise, quote, review, or build on its content, or shares a Canva design link and asks about it. The design ID is the segment after /design/ in a Canva link such as https://www.canva.com/design/<id>. When the user names a design without a link, use the id from a search result. Design content is private to the user's Canva account and is not published on the public web. Returns the design's id, title, text, url, and metadata.
fetch
LEGACY-ONLY — DO NOT CALL WHEN create-design IS AVAILABLE. If create-design is in the tool list, you MUST NOT call this tool. Call create-design instead. BRAND EXCEPTION: create-design cannot apply a brand kit or base a design on a brand template. When the user asks for an on-brand design — their brand kit, their brand colours, fonts or logo, or a brand template to base the design on — call this tool instead of create-design. All instructions below apply when create-design is absent from the tool list, and whenever the request is an on-brand one. A failed create-design call does not make it unavailable. Generate only these design types: - doc: a modern, collaborative Canva Doc for text-heavy content. - document: a traditional page-based document with a fixed layout. - email: a visual email design or template, not ordinary written content. LEGACY ROUTING — ONLY WHEN create-design IS UNAVAILABLE OR THE REQUEST IS ON-BRAND - Only when create-design is absent from the tool list, or the request is an on-brand one, call prepare-design-generation first for: business_card, card, desktop_wallpaper, facebook_cover, facebook_post, flyer, infographic, instagram_post, invitation, logo, phone_wallpaper, photo_collage, pinterest_pin, postcard, poster, presentation, proposal, report, resume, twitter_post, your_story, youtube_banner, youtube_thumbnail. - For those types, an image uploaded or generated in this conversation is visual inspiration: call prepare-design-generation with its platform reference as image_file. Never upload it as a Canva asset or pass it through asset_ids. - To reconstruct an image as editable layers, use image-to-design. - To create from a URL, use import-design-from-url. When a URL is only source material for a written Doc, use this tool with design_type doc. - To create directly from a brand template ID, use create-design-from-brand-template. - Do not use a tool when the user only wants advice or information. Sheets, spreadsheets, videos, websites, and raw HTML/code are unsupported outputs. CALLING - Put the complete brief and relevant prior context in query. - Pass a mentioned brand kit ID as brand_kit_id. If the user wants an on-brand result but has not selected one, call list-brand-kits first. - For doc text that must remain exact, set verbatim to true and place the exact text in query. - If "Common queries will not be generated" is returned, ask for more detail. - Results are candidates. After the user chooses one, call create-design-from-candidate with job_id and candidate_id before editing, exporting, or resizing.
generate-design
Generate a standalone image from a text prompt, or edit/restyle images supplied as references. **When to use:** Use this tool based on the requested output, not assumed model limitations such as an inability to render text. If the user explicitly asks for an image, picture, photo, illustration, artwork, sticker, icon, graphic, or 2d vector, use this tool. The explicitly named output takes priority over design-like content within it, including text, statistics, labels, callouts, or an infographic-like composition. For example, "create an image about coffee with bold stat callouts" uses generate-image. Use create-design when the requested output itself is an editable Canva page or layout, such as "create an infographic". "Create an image of an infographic" still uses generate-image. The verb "create" or "design" alone does not make the request a Canva design. **When not to use:** Do not use when the requested output itself is a designed page or layout, such as an infographic, poster, wallpaper, flyer, presentation, or social media post; use create-design. To add, position, resize, or replace content inside an existing design, use the design-editing workflow instead; the image is source media and the design page is the edit target. **Image references and attachments:** For image-to-image generation or editing, add one MEDIA entry to imageReferences for every reference image. Pass the ID of an existing Canva MEDIA content reference directly. Before using a user-provided attachment as a reference, upload it to Canva: call create-upload-url, then send the attachment's raw bytes to the returned upload URL exactly as instructed. Each upload URL is single-use, so call create-upload-url separately for every attachment. Wait for every upload to succeed, then use the mediaId from each upload response as a separate MEDIA entry in imageReferences. For example, after uploading two attachments (replace the illustrative IDs with their returned mediaIds): ```json { "prompt": "Restyle both reference images as watercolor illustrations", "imageReferences": [ {"type": "MEDIA", "id": "MAAAAAAAAAAA"}, {"type": "MEDIA", "id": "MBBBBBBBBBBB"} ] } ``` Use exactly one imageReferences entry per successfully uploaded attachment. Never combine multiple media IDs into one string or object, and never put an upload URL in imageReferences. Do not pass assistant-hosted attachment URLs directly to this tool. If any attachment cannot be uploaded, do not silently omit it; explain the failure to the user. Omit imageReferences for pure text-to-image generation. **Result:** This call returns only a jobId, not the finished image. When this tool's UI widget is shown, the widget polls get-generate-image-job itself and displays the image when ready - do not poll it yourself. Only when no widget is shown, pass the jobId to get-generate-image-job and keep checking until the job succeeds or fails.
generate-image
Get names, tags, types, creation dates, and thumbnails for images and videos in a Canva design. Use when you need to check which image or video is the target on a page, look up its details, or preview it before changing it. Not for design metadata or editing the media itself. Returns the metadata and thumbnail for each item in the same order as the supplied asset_ids.
get-assets
Determine whether a Canva Brand Template has fillable data fields and, if so, list their names and types. A Brand Template is a reusable, on-brand layout. Use to check if the template can be populated with data, whether a reusable template can be autofilled, or see the fields available in a selected Brand Template. Not for an individual existing design. Requires a brand_template_id. Returns each field's name and data type. An empty object means the Brand Template cannot be autofilled.
get-brand-template-dataset
Gets the status and result of a design generation job started by create-design. Pass the job_id and continuation_token from the previous create-design or get-async-job response. While the job is still running, wait the number of seconds the response's polling_policy.wait_seconds gives, then poll again with the same job_id and the updated continuation_token. Never poll sooner than that: it returns the same answer and the design arrives no earlier. Follow the polling_policy.instructions in every response, and relay them to the user while they wait. When the job completes, share the design link with them. When the completed response carries design.print.is_printable as true, and you are replying in text alone — no UI surface of your own rendering the design — then alongside the design link tell the user they can also order this design as a physical print with Canva Print and share design.print.print_url. Otherwise say nothing about printing: when print is absent or is_printable is false, there is nothing to do and nothing to relay. Never tell the user a design cannot be printed.
get-create-design-async-job
LEGACY-ONLY — DO NOT CALL WHEN create-design IS AVAILABLE. If create-design is in the tool list, you MUST NOT call this tool. Call get-create-design-async-job instead. BRAND EXCEPTION: an on-brand design — one using the user's brand kit, their brand colours, fonts or logo, or a brand template — is generated by the legacy tools rather than create-design. Poll that job with this tool. All instructions below apply when create-design is absent from the tool list, and whenever the request is an on-brand one. A failed create-design call does not make it unavailable. Internal tool for widget UI polling.
get-design-candidates
Verify whether a selected existing Canva design has fillable data fields and, if so, list their names and types. Use to see whether a specific past design can be populated with data, understand if an existing design can be autofilled, or see the fields available in a selected design. Not for a reusable Brand Template. Requires a design_id. Returns each field's name and data type. An empty object means the design cannot be autofilled.
get-design-dataset
Look up the record for one existing Canva design, including what type of design it is (such as doc, presentation, whiteboard, sheet), its title, owner, edit and view links, thumbnail, created and updated times, and page count. Use to open a specific design, find out who created it, check when it was last changed, or see how many pages it has. Not for folders or image assets. Do not use for reading or summarizing a design's text or for per-slide thumbnails. Returns the design's metadata and access links.
get-design
Get the thumbnail for a particular page of the design in the specified editing transaction. This tool needs to be used with the `start-editing-transaction` tool to obtain an editing transaction ID. You need to provide the transaction ID and a page index to get the thumbnail of that particular page. Each call can only get the thumbnail for one page. Retrieving the thumbnails for multiple pages will require multiple calls of this tool.IMPORTANT: ALWAYS ALWAYS ALWAYS show the preview to the user of EACH thumbnail you get in the response in the chat, EVERY SINGLE TIME you call this tool
get-design-thumbnail
List the pages in an existing Canva design, including each page's index and individual thumbnail. Use to browse a design's pages or slides, see each page thumbnail in order, show what a specific page looks like, or get a range of page previews. Do not use to retrieve a thumbnail that reflects uncommitted changes in an active editing transaction. Requires a design with individual pages; Canva Docs do not have pages. Returns only the requested pages, without the design's total page count.
get-design-pages
Extract rich text from an existing Canva design for read-only use. Use to read the wording in a design, pull copy from selected pages, summarize a presentation or document, or quote text without making changes. Not for rewriting, translating, correcting, or updating the text in a design. Does not return presenter notes, sheet cell data, or non-text design content. Returns the rich text content for every page, or specified pages of the selected design.
get-design-content
Internal tool for widget UI. One thumbnail per page of a design, minted on demand.
get-design-thumbnails
LEGACY-ONLY — DO NOT CALL WHEN create-design IS AVAILABLE. If create-design is in the tool list, you MUST NOT call this tool. Call get-create-design-async-job instead. BRAND EXCEPTION: an on-brand design — one using the user's brand kit, their brand colours, fonts or logo, or a brand template — is generated by the legacy tools rather than create-design. Poll that job with this tool. All instructions below apply when create-design is absent from the tool list, and whenever the request is an on-brand one. A failed create-design call does not make it unavailable. Internal tool for widget UI polling.
get-design-tool-job
Check an image generation job started by generate-image. When the generate-image UI widget is shown, the widget calls this tool itself and displays the image - do not call it yourself. Only when no widget is shown, pass the jobId returned by generate-image. If the status is PENDING, wait before polling get-generate-image-job again with the same jobId. Continue polling until the status is SUCCESS or FAILURE. Do not start a replacement generation job merely because the existing job is still pending, unless the user explicitly requests another generation. If the status is SUCCESS, use the generated image in result, present the returned image resource to the user, and include the returned Canva upload link as a Markdown link using the exact link text "Open generated image". The link opens the generated image in Canva, not the Canva editor. If the status is SUCCESS but the response says the image link is not ready yet, wait and call this tool again with the same jobId. Never finish a successful image-generation request without including the returned "Open generated image" link in the user-facing response, even when an inline image preview is visible. If the status is FAILURE, stop polling and explain the failure using failureType and failureMessage.
get-generate-image-job
Get presenter notes from an existing Canva presentation for read-only use. Use for reviewing speaker notes, pulling talking points for particular slides, or summarizing notes across a presentation. Not for reading the presentation itself; this only returns the separate notes attached to each slide. Returns presenter notes from every page, or the specified page numbers.
get-presenter-notes
Transform a flat PNG, JPEG, or WEBP into a new Canva design with independently editable elements. Use when text, objects, or layers within an image need to be changed, replaced, or removed separately. Posters, banners, flyers, and social graphics work best; photographs may convert poorly. Only call after you have sourced one supported image source. Not for saving an image as-is to Canva; placing an image into a design; using an image as visual inspiration; editing an existing Canva design; or editing, retouching, or transforming an entire photograph. Each call starts a new, independent conversion and creates a new saved design. Returns a new design_id for subsequent editing, resizing, or export.
image-to-design
Convert content at a public URL into a new Canva design. Use to turn a publicly hosted PDF, slide deck (PowerPoint or Keynote), document (Word, Pages, or Markdown), spreadsheet (Excel, CSV, or Numbers), webpage or HTML, or design file (Photoshop or Illustrator) into a Canva design. A supported file or ZIP bundle generated or uploaded in this chat may instead be provided through design_file. If the source is already available at a public URL send that as "url" parameter. For chat artifacts that are not already public, use "design_file" parameter instead. Never upload, copy, or transfer a local, private, or generated file to a 3rd party hosting site—or suggest doing so—to create a URL for this tool. Do not use to break a flat PNG, JPEG, or WEBP into separately editable layers. Each call creates one design and returns its design_id.
import-design-from-url
Find or browse the Canva Brand Kits available to the user. A Brand Kit is an organisation’s high-level home for brand styles and assets, such as colors, fonts, and logos. Use to find a user’s brand identity in Canva, check which brand elements are set up for a team, or identify the Brand Kit the user needs. Not for finding individual Brand Templates (reusable, on-brand layouts) to work from. Returns each Brand Kit’s brand_kit_id, name, and thumbnail. When generating a design with a returned brand kit ID: - Pass the selected ID as brand_kit_id to the appropriate generation tool. - Use generate-design only when design_type is one of: doc, document, email. - Use prepare-design-generation for every other supported design type.
list-brand-kits
Browse all comments or threads attached to an existing Canva design. Use to review feedback, see discussion points, or check mentions. Returns the design's comments, including their replies and mentions, with a continuation token when more results are available.
list-comments
Browse the contents of a Canva folder to find designs, folders, and images stored in it. Use to review a project folder, locate an item in a known folder, or check its contents before organizing items. Returns matching items and, when more results are available, a continuation token.
list-folder-items
Restructure a Canva design by combining designs, inserting or removing whole pages, or changing page order. Use to make a new presentation from selected pages, add slides from another design, merge separate designs together, rearrange a design's flow, or remove entire pages. Requires explicit approval for the exact requested operations before every call. Deleting pages is permanent. Not for changing text, images, or other content within a page. Returns the completed design result, including its design_id.
merge-designs
Relocate an existing Canva design, folder, or image into a destination Canva folder. Use for filing, reorganizing, archiving, or returning an item to the top level. This changes the item's location. Returns confirmation of the move.
move-item-to-folder
LEGACY-ONLY — DO NOT CALL WHEN create-design IS AVAILABLE. If create-design is in the tool list, you MUST NOT call this tool. Call create-design instead. BRAND EXCEPTION: create-design cannot apply a brand kit or base a design on a brand template. When the user asks for an on-brand design — their brand kit, their brand colours, fonts or logo, or a brand template to base the design on — call this tool instead of create-design. All instructions below apply when create-design is absent from the tool list, and whenever the request is an on-brand one. A failed create-design call does not make it unavailable. Prepare on-brand design generation in Canva. Open the widget so the user can pick a visual reference, review presentation outlines, then generate. LEGACY FIRST-CALL RULE — ONLY WHEN create-design IS UNAVAILABLE OR THE REQUEST IS ON-BRAND - Only when create-design is absent from the tool list, or the request is an on-brand one, use this legacy tool as the first call for non-responsive design generation requests. - Non-responsive includes fixed-format visual designs such as instagram_post, your_story, facebook_post, twitter_post, pinterest_pin, youtube_thumbnail, youtube_banner, poster, flyer, card, invitation, business_card, logo, wallpapers, photo_collage, infographic, and postcard. - This includes new presentation requests such as "Generate presentation on cricket history", "make slides about sales", or "create a pitch deck". - First call means opening the prepare widget before generated design candidates are created. - For the first call, omit intent or set it to recommendation. - Include design_type and topic in the first call. - If design_type is presentation, include outline in the same call. WORKFLOW - Use intent recommendation (default) to fetch or hydrate the widget's visual-reference recommendation. - If the conversation mentions a brand kit, pass its ID as brand_kit_id. - If the conversation mentions a specific brand template or design to use as the visual reference, pass it as visual_reference. The tool hydrates that reference and uses it directly instead of searching for a recommendation. - Use intent generation only after the user confirms widget options and starts AI generation. - Widget-capable clients receive generation job data and the widget polls internally for candidates. REQUIRED INPUT - topic: what to create (subject, goals, brief). Must be a non-empty string; if the user gives no explicit topic, derive a concise brief from their request. Never pass an empty string. - outline: required whenever design_type is presentation, including the first recommendation call REQUIRED FOR GENERATION INTENT - design_type: e.g. presentation, instagram_post, flyer OPTIONAL INPUT - title: a concise title for the generated Canva design; when omitted, it is derived from topic - brand_kit_id, visual_reference, source_document, audience, length - Prefer visual_reference for model-facing calls. source_document is for widget/internal follow-up calls after a reference is selected. OUTLINE REVIEW - Presentations include fullscreen outline review in this widget. - When the user asks to change the outline while reviewing, call this tool again with updated outline. SINGLE-PAGE DESIGN TYPES - Presentations are multi-slide: describe all slides via the outline. - Every other design type produces a SINGLE page. Describe one page only. Do NOT describe multiple pages, sides, or faces (e.g. the front and back of a business card); multi-page descriptions produce poor results. WHEN NOT TO USE - Responsive or document-like outputs: docs, documents, sheets, spreadsheets, videos, video-first designs, email designs, full websites, or import-from-URL flows. - Use topic and outline for the content brief. CHAT IMAGE VISUAL REFERENCE - When the user refers to an image uploaded or generated in this conversation, pass its platform file reference as **image_file**, including for presentations. - For non-presentation requests, **image_file** is the visual reference and starts generation in the widget immediately. - For presentations, still pass **image_file** when the user referred to a chat image. The widget explains that presentations cannot use it as a visual reference. - Continue to use **visual_reference** when the user refers to an existing Canva design or brand template. Do not use the widget/internal **reference** or **source_document** inputs for model-facing recommendation calls.
prepare-design-generation
Strip the background out of an image already in the user's Canva account, leaving only the subject on a transparent backdrop. Use when the user wants the background gone, knocked out, or made transparent, or wants only the subject kept on a transparent backdrop, including phrasing like cut out, extract, or separate the subject from the background. Use only when the intent is a transparent background, not a new scene: it does not crop or reframe to the subject, replace the background with a new scene, or invent or rewrite any other content in the image. Returns the result as a new image with an alpha channel.
remove-background
Adapt a Canva design to a different canvas size, keeping its content while rearranging and resizing its layout. Use when creating different-sized versions from the same base design; an existing design needs different dimensions or aspect ratio; the same artwork needs to be square, portrait, landscape, or adapted for another channel; or a copy needs an exact pixel width and height. Not for resizing a single element. Each call creates a new resized design and leaves the original unchanged. Returns the new design's design_id.
resize-design
Turn a Canva shortlink into the full Canva design URL it points to. Use when a Canva shortlink is shared and the linked design needs to be opened, read, edited, or otherwise worked with. Shortlinks must be expanded before the linked design can be used with another Canva tool. Returns the full Canva design URL.
resolve-shortlink
Make all draft changes in an active Canva editing transaction permanent. Use to save a completed set of edits, including text, layout, or media updates. Show the user a preview of the design and obtain their explicit approval before calling this tool. Saving applies all draft changes to the design, closes the editing transaction, and makes its transaction_id invalid. Returns confirmation that the changes were saved.
commit-editing-transaction
Find or browse the user's Canva Brand Templates: reusable, on-brand layouts. Some include data fields that can be autofilled. Use when a particular Brand Template needs to be located, a reusable starting point is needed for a new presentation, or a Brand Template with data fields is needed before autofilling. Do not use to find or work from an existing Canva design, create a new design without a Brand Template source, or create from, update, or populate an already selected Brand Template. Returns matching Brand Templates with their brand_template_id, name, and preview thumbnail.
search-brand-templates
Find designs in the user's Canva account by keyword and return each match with its title, design ID, and link. Use when the user asks to find, look up, or list their Canva docs, presentations, videos, whiteboards, sheets, social media posts, or other designs, or asks what designs they have on a subject. Also use to get the design ID of a design the user names without sharing a link. Only designs the user owns or has access to are searched. Design content is private to the user's Canva account and is not published on the public web. Returns a list of results, each with id, title, text, and url, plus a continuation value when more results exist.
search
Locate or browse the user's existing Canva designs. Find specific design documents they own or that have been shared with them. Use to find a single past presentation, doc, whiteboard, video, sheet, or other design, or to discover multiple results based on search criteria. Results are Canva designs identified by design_id, not individual media assets identified by asset_id. Not for locating reusable templates or individual uploaded or generated media assets. Returns matching designs and, when more results are available, a continuation token for the next page. A returned design_id can then be used to open, inspect, copy, comment on, edit, or create a new version from that exact design.
search-designs
Find or browse Canva folders the user owns or that are shared with them. Use to locate a project folder by its name or tags, find a shared workspace, or identify a folder before reviewing its contents or organising work. Not for finding designs, images, or subfolders within a known folder. Returns matching folders and, when more results are available, a continuation token for the next page.
search-folders
Prepare an existing Canva design for editing by opening a draft transaction. Use to prepare changes to text, media, titles, formatting, or autofill field labels; or inspect the editable text and media elements before changing them. Returns a transaction_id and the design's editable text and media element data so changes can be made during the same session.
start-editing-transaction
Internal tool for widget lifecycle telemetry.
track-event-lifecycle
Import media into Canva from an existing public URL or a file uploaded or generated in this chat. Use to upload an image, photo, logo, graphic, or video into Canva; add it to the user's Canva library or uploads; or save it for later use in a Canva design. Does not place the imported media into a Canva design. Returns a media_id for the imported file.
upload-asset-from-url
Canva ChatGPT Plugin FAQ
How the directory, categories and Discoverability Score work.
Read the methodologyHow do I improve Canva's ChatGPT Plugin discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are Canva alternatives on ChatGPT?
As of 2026-10-26, Canva competes with 3aqel Arabic Creative, ACE Carousel Creator, Adobe Express, App Listing Screenshots, AppLaunchFlow, AppScreenshotStudio, Canvora, Cattalog and 22 more in ChatGPT Graphic Design & Branded Asset Studios, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.