Skip to content

OtherTopics: canva, design, assets, folders, comments, import, export, oauth

Version
1.0.0
License
MIT
Published
October 16, 2026
Pinned commit
6725a98
Rating
No ratings yet
Forks
0
Adaptation effort
—

@kentcdodds/canva

Intent

Provide a complete, reusable Canva Connect API package for Kody workflows. It covers every operation in the configured Canva OpenAPI surface while keeping mutations explicit, previewable, and safe to publish as a community package.

What it does

  • Create, inspect, search, resize, merge, import, or export Canva designs
  • Upload, inspect, rename, tag, or delete assets
  • Create and organize folders; list or move their contents
  • Read and write comment threads and replies
  • Work with brand templates, autofill datasets, user capabilities, and OIDC
  • Dispatch any supported Connect operation by lowercase OpenAPI slug via ./api

Mutations (POST / PATCH / DELETE) require explicit confirmation and support dry-run previews. Preview APIs are marked in the operations catalog and can change without notice.

Prerequisites / setup

  1. Create a Canva Connect API integration.
  2. Set redirect URI to https://kody.codes/connect/oauth.
  3. Save the OAuth integration in Kody as canva.
  4. Connect or reconnect at https://kody.codes/connect/oauth?provider=canva.
  5. Approve hosts api.canva.com and www.canva.com. Grant only the scopes your workflows need. The full surface may use:
    • asset:read, asset:write
    • brandtemplate:content:read, brandtemplate:content:write, brandtemplate:meta:read
    • comment:read, comment:write
    • design:content:read, design:content:write, design:meta:read
    • folder:read, folder:write, folder:permission:write
    • profile:read
  6. Agents: see AGENTS.md for import paths, smoke, and dryRun.

Done when

  • The canva OAuth integration is connected
  • Smoke test returns { ok: true } with status/shape only (no profile PII)
  • Mutations refuse without confirm: true; dryRun: true never calls Canva
Report this listing

Log in to report this listing.