Skip to content

App Configuration

Configuration Overview

Manage the settings for your Canva app.

You can manage configuration for your app using the following methods:

  • Canva CLI
  • Canva Developer Portal

The configuration for an app includes settings such as intents, scopes and authentication.

Manage configuration using the Canva CLI

The Canva CLI can be used to manage your app's intents and scopes.

To check everything is set up for your app to manage configuration, run the Canva Apps Doctor. This creates or updates your canva-app.json file. At any time you can run the Apps Doctor to check the health of your app configuration.

Using the Canva CLI, you can pull the configuration from the Developer Portal, push your local configuration to update the Developer Portal, or check the status of your configuration with the apps config commands.

Example workflow: enabling the Data Connector intent

  1. Run canva apps config pull to fetch the app configuration from the Developer Portal.
  2. Edit the canva-app.json file to add the intent and required scopes (permissions):
    json
    {
      "$schema": "https://www.canva.dev/schemas/app/v1/manifest-schema.json",
      "manifest_schema_version": 1,
      "runtime": {
        "permissions": [
          {
            "name": "canva:design:content:read",
            "type": "mandatory"
          },
          {
            "name": "canva:design:content:write",
            "type": "mandatory"
          }
        ],
      },
      "intent": {
        "data_connector": {
          "enrolled": true
        }
      }
    }
  3. Run canva apps config push to submit the local changes to the Developer Portal, and when prompted, confirm that the changes should be applied.

Manage configuration using the Developer Portal

To manage app settings using the Developer Portal:

  1. Navigate to an app via the Your apps page on the Developer Portal.
  2. Change the settings on the relevant tabs.

canva-app.json

Configuration file for Canva apps.

The canva-app.json file is the configuration file for Canva apps. It defines the app's scopes, supported devices, API versions, and other runtime settings.

When you create a new app using the Canva CLI, a canva-app.json file is automatically created in your project root directory with a default configuration.

File location

The canva-app.json file is located in the root directory of your app project.

my-canva-app/
├── canva-app.json
├── package.json
└── src/

Validation

The canva-app.json file is validated against the JSON Schema. Most code editors with JSON Schema support provide validation and auto-completion when you include the $schema property.

Properties

Example configuration

The following is a complete example of a canva-app.json file for a Data Connector app:

json
{
  "$schema": "https://www.canva.dev/schemas/app/v1/manifest-schema.json",
  "manifest_schema_version": 1,
  "runtime": {
    "permissions": [
      {
        "name": "canva:design:content:read",
        "type": "mandatory"
      },
      {
        "name": "canva:design:content:write",
        "type": "mandatory"
      }
    ],
  },
  "intent": {
    "data_connector": {
      "enrolled": true
    }
  }
}

Collaboration

How to collaborate on apps with your team.

App collaboration allows multiple team members to build, test, and manage apps together in the Developer Portal.

Prerequisites

  • You must have a Canva Teams or Canva Enterprise plan. See Canva plans.
  • Users must join your Canva team before you can add them as app collaborators. Team admins or owners can invite users from Canva team settings.
  • You must be an app owner or manager to add, remove, and edit collaborators.

Adding collaborators

  1. Navigate to your app in the Developer Portal.
  2. Select the Collaborators tab.
  3. Select Add collaborators.
  4. Choose the team members you want to add. You can only add collaborators from within your Canva team.

When you add a collaborator, they immediately gain access. They will see the app listed in their Developer Portal.

Collaborator roles

There are 3 collaborator roles, listed from lowest to highest privilege:

RolePermissions
Member<ul>- Can edit all app fields (for example, Code upload, App listing details, Your details).- Can preview the app.- Can submit the app for review, release it, and create a new version.- Can view all app versions, including previous versions.</ul>
Manager<ul>- All Member permissions.- Can add and remove collaborators.- Can change collaborators' roles.</ul>
Owner<ul>- All Manager permissions.- Can delete the app.</ul>

Managing collaborators

You must be an app owner or manager to change roles or remove collaborators.

Changing collaborator roles

  1. Navigate to your app in the Developer Portal.
  2. Select the Collaborators tab.
  3. Find the collaborator whose role you want to change.
  4. Select the drop-down next to their current role.
  5. Select the new role.

Removing collaborators

  1. Navigate to your app in the Developer Portal.
  2. Select the Collaborators tab.
  3. Find the collaborator you want to remove.
  4. Select the drop-down next to their current role.
  5. Select the Remove collaborator option.

When a collaborator is removed, they immediately lose access to the app.

Transferring ownership

You must be the current app owner to transfer ownership.

  1. Navigate to your app in the Developer Portal.
  2. Select the Collaborators tab.
  3. Find the collaborator you want to make the new owner.
  4. Select the drop-down next to their current role.
  5. Select the Owner option.

After transferring ownership, your role changes to Manager.

Limitations

  • There's a maximum of 49 collaborators per app.
  • Collaborators don't have access to the JSD support ticket created when submitting an app for review.
  • If a team's Canva Teams or Enterprise subscription expires, the app reverts to a single-user app, where only the owner can access it. When the subscription is renewed, all collaborators regain access.

Canva Developer Documentation SOP Site