# Canva setup for PopMCP

You create a public app in the Canva Developer Portal, turn on its Canva REST APIs, tick the scopes and add PopMCP's redirect URL, then enter the app's Client ID and a generated client secret in PopMCP and sign in to Canva to approve access.

- Auth: OAuth authorization
- Setup time: 5 min
- API base URL: https://api.canva.com/rest/v1
- Credentials screen: https://www.canva.com/developers/apps
- Provider docs: https://www.canva.dev/docs/apps/rest-apis/authentication/

## Before you begin

- A Canva account on any plan. Sign in to the Developer Portal with the account you want to connect: the app you create works for your own account straight away, with no review by Canva.
- Multi-factor authentication turned on for that Canva account (Your account, Account and security, Multi-factor authentication). Canva requires it before the REST APIs can be used, and an account that signs in with Google or Apple needs a Canva password first.
- PopMCP's redirect URL from the connect form: https://app.popmcp.com/api/providers/canva/callback
- For resizing, autofill and brand templates, a Canva Pro, Teams or Enterprise plan (free accounts get a small trial of resize and autofill). Design analytics needs Canva Enterprise. Everything else works on Canva Free.

## Get your credentials

### 1. Open Your apps

Go to canva.com/developers/apps and sign in with the Canva account you want to connect. On Your apps, click Create an app.

Screen: https://www.canva.com/developers/apps

### 2. Create a public app

Enter an App name of 18 characters or fewer, such as `PopMCP`: Canva shows it when asking for access. Under Who can use your app? choose Public (Private is only for teams on Canva Enterprise, and the choice cannot be changed later). Accept the Developer Terms and click Create app.

Screen: https://www.canva.com/developers/apps

### 3. Turn on the Canva REST APIs

In the app's menu open Outside Canva and click Start integrating, which creates the app's sign-in details and opens Configuration. Under Integration methods, make sure Canva REST APIs is on. You can leave Canva MCP off.

Screen: https://www.canva.com/developers/apps

### 4. Tick the scopes

Still on Configuration, under Scopes tick design:content Read and Write, design:meta Read, asset Read and Write, folder Read and Write, brandtemplate:meta Read, brandtemplate:content Read and Write, comment Read and Write, and profile Read. Canva refuses a sign-in that asks for a scope the app does not have, so tick every one.

Screen: https://www.canva.com/developers/apps

### 5. Add PopMCP's redirect URL

Open Outside Canva, Redirect URLs and enter `https://app.popmcp.com/api/providers/canva/callback` in URL 1, exactly as PopMCP shows it.

Screen: https://www.canva.com/developers/apps

### 6. Copy the Client ID and generate a secret

Back on Configuration, under Credentials, copy the Client ID. Click Generate secret and copy the secret straight away: Canva shows it once, and generating another replaces it.

Screen: https://www.canva.com/developers/apps

### 7. Enter both in PopMCP and sign in

Paste the Client ID into Client ID and the secret into Client secret, then click Sign in with Canva. Sign in with the same Canva account and click Allow on Canva's access page.

## Fields PopMCP asks for

- Client ID (clientId) [required]: Only needed to use your own app. In the Canva Developer Portal (canva.com/developers/apps) choose Create an app, pick Public, accept the terms and create it (Canva asks for multi-factor authentication on your account first). Open Outside Canva and click Start integrating, check Canva REST APIs is on, and under Scopes tick design:content (Read and Write), design:meta (Read), asset (Read and Write), folder (Read and Write), brandtemplate:meta (Read), brandtemplate:content (Read and Write), comment (Read and Write) and profile (Read). Add the redirect URL shown here under Outside Canva, Redirect URLs. Then copy the Client ID from Credentials and click Generate secret.
- Client secret (clientSecret) [required]: Click Generate secret under Outside Canva, Configuration, Credentials (Canva shows it once). Stored encrypted and used only on our server.

## Callback URL to register

https://app.popmcp.com/api/providers/canva/callback

## Scopes requested

- design:meta:read
- design:content:read
- asset:read
- folder:read
- brandtemplate:meta:read
- brandtemplate:content:read
- profile:read
- design:content:write
- asset:write
- folder:write
- comment:read
- comment:write
- brandtemplate:content:write

## Verify

PopMCP shows Canva as Connected under your Canva name, and canva_list_designs returns your most recent designs with their edit links.

## Troubleshooting

### Canva shows an error page instead of asking for access

Cause: PopMCP's callback is not in Redirect URLs on the app, differs by a character, or the app is missing a scope PopMCP asks for.

Fix: Under **Outside Canva**, **Redirect URLs**, set **URL 1** to `https://app.popmcp.com/api/providers/canva/callback`. Under **Configuration**, **Scopes**, tick every scope listed in the steps. Then connect again.

### "Canva did not accept the app's Client ID and Client secret"

Cause: The Client ID or secret was mistyped, or a newer secret was generated after you copied this one.

Fix: Under **Outside Canva**, **Configuration**, **Credentials**, click **Generate secret** and enter the new secret and the **Client ID** in PopMCP again.

### "Canva signed in but refused to show the account"

Cause: Canva REST APIs is turned off for the app, or a scope was left unticked.

Fix: Under **Configuration**, turn on **Canva REST APIs** in **Integration methods**, tick every scope, and connect again.

### The Developer Portal will not let you create an app

Cause: Your Canva account does not have multi-factor authentication turned on.

Fix: In Canva open **Your account**, **Account and security** and turn on **Multi-factor authentication** with an authenticator app (set a Canva password first if you sign in with Google or Apple). Then return to **Your apps**.

### A tool answers missing_scope

Cause: The app does not have the scope that operation needs.

Fix: Tick the scope under **Configuration**, **Scopes**, then reconnect Canva in PopMCP so the new sign-in includes it.

### Resize, autofill or brand template tools answer permission_denied

Cause: Those features need Canva Pro, Teams or Enterprise, and a free account's trial uses are spent.

Fix: Use an account on a paid Canva plan. canva_get_user_capabilities lists the features the connected account has.

### 429 too_many_requests

Cause: Canva limits each user per operation (for example 20 new designs a minute) and exports to 75 every 5 minutes and 500 a day.

Fix: Wait about a minute and try again. Export several pages in one call instead of one call per page.

### "Canva no longer accepts this connection's sign-in"

Cause: Access was removed in Canva, the app's secret was replaced, or the app was deleted.

Fix: Reconnect Canva to sign in again.

---

Source: https://www.docs.popmcp.com/docs/integrations/canva/