Canva Connect API

Number of APIs: 35

API for building integrations with Canva via a REST api

You can always ask questions in our Community Support Forum.

Our Starter Kit is available on GitHub to be cloned and run locally for easy testing.

To set up Authorization, you will need:

How to set up Authorization for Canva Connect APIs:

  1. In Qodex under Authorization, select OAuth 2.0

  2. Under Grant Type, select Authorization Code (with PKCE)

  3. Set up the Canva URLs in your Qodex Authorization: Configure New Token

    1. Set the Auth URL to https://www.canva.com/api/oauth/authorize or the authURL variable in the Canva Devs Globals
    2. Set the Access Token URL to https://api.canva.com/rest/v1/oauth/token or the accessTokenURL variable
  4. Create an account in Canva's Developer Portal

  5. Under Your integrations, create a new integration

  6. Select Public integration

  7. On the Configurations tab, you can find your Client ID and generate a Client Secret

  8. Under Credentials, copy your Client ID and add it to Qodex Application client ID

  9. Click Generate Secret, and copy it over to your Qodex Application client secret.

  10. In the Canva Developer Portal, select the Authenitcation tab

  11. Copy the Qodex callback URL from your Qodex workspace

  12. Paste your Qodex callback URl into Authorized redirects under URL 1

  13. In your Canva Developer Portal, click the Scopes tab

    1. Check off any necessay scopes
  14. In Qodex, update Authorization scopes as necessary

  1. app - /v1/apps/:appId/jwks GET {{baseUrl}}/v1/apps/:appId/jwks

  2. asset - /v1/assets/:assetId DELETE {{baseUrl}}/v1/assets/:assetId

  3. asset - /v1/assets/:assetId GET {{baseUrl}}/v1/assets/:assetId

  4. asset - /v1/assets/:assetId PATCH {{baseUrl}}/v1/assets/:assetId

  5. asset - /v1/assets/:assetId POST {{baseUrl}}/v1/assets/:assetId

  6. asset - /v1/assets/upload POST {{baseUrl}}/v1/assets/upload

  7. asset - /v1/asset-uploads POST {{baseUrl}}/v1/asset-uploads

  8. asset - /v1/asset-uploads/:jobId GET {{baseUrl}}/v1/asset-uploads/:jobId

  9. autofill - /v1/autofills POST {{baseUrl}}/v1/autofills

  10. autofill - /v1/autofills/:jobId GET {{baseUrl}}/v1/autofills/:jobId