Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Manage Canva designs, assets, and folders via the Connect API. WHAT IT CAN DO: - List/search/organize designs and folders - Export finished designs (PNG/PDF/JPG) - Upload images to asset library - Autofill brand templates with data - Create blank designs (doc/presentation/whiteboard/custom) WHAT IT CANNOT DO: - Add content to designs (text, shapes, elements) - Edit existing design content - Upload documents (images only) - AI design generation Best for: asset pipelines, export automation, organization, template autofill. Triggers: /canva, "upload to canva", "export design", "list my designs", "canva folder".
Manage Canva designs, assets, and folders via the Connect API. WHAT IT CAN DO: - List/search/organize designs and folders - Export finished designs (PNG/PDF/JPG) - Upload images to asset library - Autofill brand templates with data - Create blank designs (doc/presentation/whiteboard/custom) WHAT IT CANNOT DO: - Add content to designs (text, shapes, elements) - Edit existing design content - Upload documents (images only) - AI design generation Best for: asset pipelines, export automation, organization, template autofill. Triggers: /canva, "upload to canva", "export design", "list my designs", "canva folder".
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Manage Canva designs, assets, and folders via the Connect API.
โ CAN DOโ CANNOT DOList/search designsAdd content to designsCreate blank designsEdit existing design contentExport designs (PNG/PDF/JPG)Upload documents (images only)Create/manage foldersAI design generationMove items between foldersUpload images as assetsAutofill brand templates
1. Asset Pipeline ๐ผ๏ธ Generate diagram โ upload to Canva โ organize in project folder 2. Export Automation ๐ค Design finished in Canva โ export via CLI โ use in docs/website 3. Design Organization ๐ Create project folders โ move related designs โ keep Canva tidy 4. Brand Template Autofill ๐ Set up template in Canva โ pass data via API โ get personalized output
# Authenticate (opens browser for OAuth) {baseDir}/scripts/canva.sh auth # List your designs {baseDir}/scripts/canva.sh designs list # Create a new design {baseDir}/scripts/canva.sh designs create --type doc --title "My Document" # Export a design {baseDir}/scripts/canva.sh export <design_id> --format pdf
Go to canva.com/developers/integrations Click Create an integration Set scopes: design:content (Read + Write) design:meta (Read) asset (Read + Write) brandtemplate:meta (Read) brandtemplate:content (Read) profile (Read) Set OAuth redirect: http://127.0.0.1:3001/oauth/redirect Note Client ID and generate Client Secret
Add to ~/.clawdbot/clawdbot.json under skills.entries: { "skills": { "entries": { "canva": { "clientId": "YOUR_CLIENT_ID", "clientSecret": "YOUR_CLIENT_SECRET" } } } } Or set environment variables: export CANVA_CLIENT_ID="your_client_id" export CANVA_CLIENT_SECRET="your_client_secret"
{baseDir}/scripts/canva.sh auth Opens browser for OAuth consent. Tokens stored in ~/.clawdbot/canva-tokens.json.
CommandDescriptionauthStart OAuth flow (opens browser)auth statusCheck authentication statusauth logoutClear stored tokens
CommandDescriptiondesigns list [--limit N]List your designsdesigns get <id>Get design detailsdesigns create --type <type> --title <title>Create new designdesigns delete <id>Move design to trash Design types: doc, presentation, whiteboard, poster, instagram_post, facebook_post, video, logo, flyer, banner
CommandDescriptionexport <design_id> --format <fmt>Export designexport status <job_id>Check export job status Formats: pdf, png, jpg, gif, pptx, mp4
CommandDescriptionassets listList uploaded assetsassets upload <file> [--name <name>]Upload assetassets get <id>Get asset detailsassets delete <id>Delete asset
CommandDescriptiontemplates listList brand templatestemplates get <id>Get template detailsautofill <template_id> --data <json>Autofill template with data
CommandDescriptionfolders listList foldersfolders create <name>Create folderfolders get <id>Get folder contents
CommandDescriptionmeGet current user profile
# Create {baseDir}/scripts/canva.sh designs create --type poster --title "Event Poster" # Export as PNG {baseDir}/scripts/canva.sh export DAF... --format png --output ./poster.png
# Upload logo {baseDir}/scripts/canva.sh assets upload ./logo.png --name "Company Logo" # Upload multiple for f in ./brand/*.png; do {baseDir}/scripts/canva.sh assets upload "$f" done
# List available templates {baseDir}/scripts/canva.sh templates list # Autofill with data {baseDir}/scripts/canva.sh autofill TEMPLATE_ID --data '{ "title": "Q1 Report", "subtitle": "Financial Summary", "date": "January 2026" }'
Base URL: https://api.canva.com/rest See references/api.md for detailed endpoint documentation.
{baseDir}/scripts/canva.sh auth # Re-authenticate
The API has per-endpoint rate limits. The script handles backoff automatically.
If operations fail with 403, ensure your integration has the required scopes enabled.
FilePurpose~/.clawdbot/canva-tokens.jsonOAuth tokens (encrypted)~/.clawdbot/canva-cache.jsonResponse cache
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.