Skip to content
Last updated

Canva integration

Canva is an online design and visual communication platform for creating presentations, social media graphics, documents, and other visual content. The Canva integration with Frontegg connects to the Canva Connect API, letting your application manage designs, folders, and assets and read brand templates, comments, and user profiles on behalf of your users.


Prerequisites

  • A Canva account
  • A Public integration is enough to build and test with your own team, with no paid plan required. A Private integration requires a Canva Enterprise plan.

Connect Canva

Step 1: Open the developer portal

Sign in to Canva and go to the Canva Developer Portal. Open the Your integrations page and click Create an integration.

Canva Developer Portal Your integrations page with the Create an integration button highlighted

Step 2: Choose the integration type

Select Public as the integration type, agree to the Canva developer terms, and click Create Integration.

Public vs Private

A Public integration can be used by anyone on Canva once it is approved, and it works with your own team while still in draft. A Private integration is limited to the team that built it and requires a Canva Enterprise plan. The integration type can't be changed after creation.

Canva integration type dialog with the Public option highlighted

Step 3: Name your integration and copy the Client ID

On the Configure your integration page, enter a name in the Integration name field, for example Frontegg Connect. The name is limited to 18 characters. In the Credentials section, copy the Client ID — you will need it when configuring the integration in the Frontegg portal.

Canva configuration page showing the integration name and Client ID

Step 4: Generate the Client Secret

In the Credentials section, click Generate secret. Copy the Client secret immediately and store it somewhere safe.

Keep your credentials secure

Canva displays the Client secret only once. If you lose it, you will need to generate a new one. Never share your Client secret or commit it to version control.

Canva credentials section with the Client ID and Client secret

Step 5: Configure scopes

In the left menu, open Scopes. Under Reading and writing, enable the scopes your integration needs. Selecting a Write scope automatically enables its matching Read scope.

ScopeDescription
design:meta:readRead design metadata, such as listing and getting designs
design:content:readRead the content of designs
design:content:writeCreate and edit designs
folder:readList folders and their contents
folder:writeCreate and manage folders
folder:permission:writeManage folder permissions
asset:readRead asset metadata
asset:writeUpload and import assets
brandtemplate:meta:readRead brand template metadata
brandtemplate:content:readRead brand template content
comment:readRead comments
comment:writeCreate and reply to comments
profile:readRead the user's profile information

Minimum required scopes

For core design, folder, and asset functionality you need design:meta:read, design:content:write, folder:read, asset:read, asset:write, and profile:read. Add the remaining scopes to enable brand templates and comments.

Scopes are saved automatically when you select them.

Canva scopes page with the required scopes selected

Step 6: Add the redirect URL

In the left menu, open Authentication. Under Authorized redirects, enter your Frontegg Redirect URL in the URL 1 field:

  • https://YOUR_MCP_GATEWAY_URL/integration-callback

The redirect URL is saved automatically.

Canva Authorized redirects with the Frontegg callback URL entered

Configure the Frontegg portal

Once you have your Client ID and Client secret from the steps above, enter them in the integration configuration page of the Frontegg portal:

  1. Open the Frontegg portal and navigate to [ENVIRONMENT] → Integrations → Canva.
  2. Enter the Client ID and Client secret in the corresponding fields.
  3. Select the required scopes.
  4. Click Save.

Additional resources