canva-hello-world

Featured

Create a minimal working Canva Connect API example. Use when starting a new Canva integration, testing your setup, or learning basic Canva REST API patterns. Trigger with phrases like "canva hello world", "canva example", "canva quick start", "simple canva code".

AI & Automation 2,266 stars 315 forks Updated today MIT

Install

View on GitHub

Quality Score: 99/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Canva Hello World ## Overview Minimal working example: authenticate, get user profile, create a design, and export it as PNG. All via the Canva Connect REST API at `api.canva.com/rest/v1/*`. ## Prerequisites - Completed `canva-install-auth` — valid OAuth access token - Scopes enabled: `design:meta:read`, `design:content:write`, `design:content:read` ## Instructions ### Step 1: Create a Reusable API Helper ```typescript // src/canva/client.ts const CANVA_BASE = 'https://api.canva.com/rest/v1'; export async function canvaAPI( path: string, accessToken: string, options: RequestInit = {} ): Promise<any> { const res = await fetch(`${CANVA_BASE}${path}`, { ...options, headers: { 'Authorization': `Bearer ${accessToken}`, 'Content-Type': 'application/json', ...options.headers, }, }); if (!res.ok) { const body = await res.text(); throw new Error(`Canva API ${res.status}: ${body}`); } return res.status === 204 ? null : res.json(); } ``` ### Step 2: Get Your User Profile ```typescript // GET /v1/users/me — no scopes required, rate limit: 10 req/min const me = await canvaAPI('/users/me', accessToken); console.log(`User ID: ${me.team_user.user_id}`); console.log(`Team ID: ${me.team_user.team_id}`); ``` ### Step 3: Create a Design ```typescript // POST /v1/designs — scope: design:content:write, rate limit: 20 req/min const design = await canvaAPI('/designs', accessToken, { method: 'POST', body: JSON.stringify({ d...

Details

Author
jeremylongshore
Repository
jeremylongshore/claude-code-plugins-plus-skills
Created
7 months ago
Last Updated
today
Language
Python
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Featured

canva-core-workflow-a

Execute the Canva design creation and export pipeline via the Connect API. Use when building design creation workflows, exporting designs programmatically, or integrating Canva's design tools into your application. Trigger with phrases like "canva create design", "canva export", "canva design pipeline", "canva generate content".

2,266 Updated today
jeremylongshore
AI & Automation Featured

canva-install-auth

Set up Canva Connect API OAuth 2.0 PKCE authentication and project scaffolding. Use when creating a new Canva integration, setting up OAuth credentials, or initializing a Canva Connect API project. Trigger with phrases like "install canva", "setup canva", "canva auth", "configure canva API", "canva OAuth".

2,266 Updated today
jeremylongshore
AI & Automation Featured

canva-reference-architecture

Implement Canva Connect API reference architecture with best-practice project layout. Use when designing new Canva integrations, reviewing project structure, or establishing architecture standards for Canva applications. Trigger with phrases like "canva architecture", "canva project structure", "how to organize canva", "canva layout", "canva reference".

2,266 Updated today
jeremylongshore
AI & Automation Featured

canva-architecture-variants

Choose and implement Canva Connect API architecture blueprints for different scales. Use when designing new Canva integrations, choosing between monolith/service/microservice architectures, or planning migration paths. Trigger with phrases like "canva architecture", "canva blueprint", "how to structure canva", "canva project layout", "canva microservice".

2,266 Updated today
jeremylongshore
AI & Automation Featured

canva-common-errors

Diagnose and fix Canva Connect API errors and HTTP status codes. Use when encountering Canva errors, debugging failed requests, or troubleshooting integration issues. Trigger with phrases like "canva error", "fix canva", "canva not working", "debug canva", "canva 401", "canva 429".

2,266 Updated today
jeremylongshore