Skip to content

Built for people who want to own their automations. Join the waitlist for an invite.

Package listing

@kentcdodds/canva

src/index.ts

26 lines · 911 B · TypeScript
import { canvaOperationNames, canvaOperations } from './operations.ts'

export default async function canvaOverview() {
	const tags = new Set(canvaOperationNames.map((name) => canvaOperations[name].tag))
	return {
		integration: 'canva',
		apiBaseUrl: 'https://api.canva.com/rest',
		reconnectUrl: 'https://kody.codes/connect/oauth?provider=canva',
		exports: ['api', 'operations', 'smoke-test'],
		coverage: {
			operationCount: canvaOperationNames.length,
			domains: [...tags].sort(),
			operations: canvaOperationNames,
		},
		safety: {
			mutationsRequireConfirmation: true,
			dryRunAvailable: true,
			authorizationHeaderOverridesBlocked: true,
		},
		notes: [
			'Preview APIs can change without notice and are marked in the operations catalog.',
			'Resize and some brand-template endpoints require eligible Canva plans.',
			'Use smoke-test to verify OAuth without returning profile data.',
		],
	}
}