On September 25th, 2024, we released v2 of the Apps SDK. To learn what’s new and how to upgrade, see Migration FAQ and Migration guide.

Creating apps

How to create apps.

You can create an app using one of the following methods:

  • Canva CLI
  • Canva Developer Portal

Public vs. team apps

Before creating an app, you must decide who your app is for.

Public apps are created for release to the general public. Once they're released, they can be discovered in the Apps Marketplace. Team apps are created solely for a team using Canva, such as an app created to integrate into a specific system. These apps are not available to the general public, and Canva is not involved in the review process for a team app.

For more information on app review, see App review process.

Create an app using the Canva CLI

The Canva CLI(opens in a new tab or window) is a command line tool designed for creating and managing Canva apps. The Canva CLI lets you create and configure an app from the command line.

To create an app using the Canva CLI:

  1. Install the Canva CLI(opens in a new tab or window) globally:

    npm install -g @canva/cli@latest
    SHELL
  2. Log in to the Canva CLI. This command opens an access request page in your browser:

    canva login
    SHELL
  3. Click Allow to grant the Canva CLI permission to manage your Canva apps.

  4. Copy the confirmation code shown, and paste it into the Canva CLI input.

  5. Run the canva apps create command to start the app creation process, or run the command with the following optional command flags.

    If they aren't set, the Canva CLI prompts you for a decision during the app creation process:

    • App name: Add the app's name after the canva apps create command as an argument. For example: canva apps create "A New App".

    • App template: Select a template using the --template flag. You can select one of these templates:

    • Audience: Set the target audience using the --distribution flag. This flag is important because it restricts the target audience for the app:

      • public: You can make the app available to all of Canva's users, but the app will need to be reviewed by Canva and meet the requirements outlined in the submission checklist.
      • private: The app can only be made available to members of the current team(opens in a new tab or window), and the team's administrators are responsible for reviewing it.
    • Git: Include a Git repository using the --git flag.

    • Dependencies: Install dependencies during the app creation process using the --installDependencies flag.

    The following example command creates a new Canva app for a private team using the dam template, sets up a Git repository, and installs the required dependencies:

    canva apps create "My New App" --template="dam" --distribution="private" --git --installDependencies
    SHELL

    When the app is ready, the Canva CLI automatically opens the Developer Portal(opens in a new tab or window) to your app's Configuration page in your browser.

  6. Change into the app's folder. For example:

    cd my-new-app
    SHELL
  7. If you did not use the --installDependencies flag when running the canva apps create command, or install the dependencies when prompted, manually install the dependencies:

    npm install
    SHELL

Next step

To see your Canva app running, you can preview the app using the Developer Portal. For more information, see Previewing apps.

Create an app using the Developer Portal

The Canva Developer Portal(opens in a new tab or window) lets you configure, preview, and manage your apps.

To create an app using the Developer Portal:

  1. Log in to the Developer Portal(opens in a new tab or window).
  2. Navigate to the Your apps(opens in a new tab or window) page.
  3. Click Create an app.
  4. Select a target audience for the app:
    • Public: You can make your app available to all of Canva's users, but the app will need to be reviewed by Canva and meet the app review guidelines.
    • Restrict to your team: The app can only be made available to members of the current team(opens in a new tab or window) and the team's administrators are responsible for reviewing it.
  5. Agree to the terms and conditions(opens in a new tab or window).
  6. Click Create.

You'll be taken to a page for configuring the app.

Next step

After creating an app on the Developer Portal, you can start implementing your code. To get started, see Setting up the starter kit.

Known limitations

There are some known limitations when creating apps:

  • You can't convert a public app into a team app (or vice versa).
  • You can't create an app that belongs to multiple users.
  • There's a limit of 40 apps per user, per team.