| name | canva-upgrade-migration |
| description | Plan and execute Canva Connect API version upgrades and breaking change detection.
Use when Canva releases API changes, migrating brand template IDs,
or adapting to endpoint deprecations.
Trigger with phrases like "upgrade canva", "canva API changes",
"canva breaking changes", "canva deprecation", "canva changelog".
|
| allowed-tools | Read, Write, Edit, Bash(npm:*), Bash(git:*) |
| version | 1.5.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","design","canva"] |
| compatibility | Designed for Claude Code |
Canva Upgrade & Migration
Overview
Guide for handling Canva Connect API changes. Canva uses a single REST API version (/rest/v1/) but evolves endpoints over time. Monitor the changelog for breaking changes.
Known Migrations
Brand Template ID Migration (September 2025)
Canva migrated brand templates to a new ID format. Old IDs accepted for 6 months.
async function migrateBrandTemplateIds(
db: Database, token: string
): Promise<{ migrated: number; failed: string[] }> {
const stored = await db.getBrandTemplateIds();
let migrated = 0;
const failed: string[] = [];
const { items } = await canvaAPI('/brand-templates', token);
const currentIds = new Set(items.map((t: any) => t.id));
for (const oldId of stored) {
if (!currentIds.has(oldId)) {
match = items.( t. === db.(oldId));
(match) {
db.(oldId, match.);
migrated++;
} {
failed.(oldId);
}
}
}
{ migrated, failed };
}