Canva · OAuth Scopes

Canva OAuth Scopes

OAuth 2.0 searched

Canva publishes 26 OAuth 2.0 scopes via the authorizationCode flow. Scopes are the fine-grained permissions an application requests at authorization time to act against the Canva API on a user’s behalf.

Tokens are issued from https://api.canva.com/rest/v1/oauth/token.

This index is generated from the provider’s OpenAPI security definitions (and, where available, its documented scope reference) and refreshes on every APIs.io network build. Browse every provider’s scopes at scopes.apis.io.

ApplicationAutomationBrand ManagementCollaborationDesignGraphicsMarketingPrintTemplatesVisual ContentAustralia
Scopes: 26 Flows: authorizationCode Method: searched

OAuth endpoints

Authorization URL
https://www.canva.com/api/oauth/authorize
Token URL
https://api.canva.com/rest/v1/oauth/token
Flows
authorizationCode

Scopes (26)

ScopeDescriptionFlows
asset:read Read asset metadata authorizationCode
asset:write Upload and delete assets authorizationCode
brandtemplate:content:read Read brand template content and datasets authorizationCode
brandtemplate:content:write Publish brand templates associated with the user's brand. authorizationCode
brandtemplate:meta:read Read brand template metadata authorizationCode
collaboration:event Receive webhook notifications about events relevant to the user. authorizationCode
comment:read Read comments on designs authorizationCode
comment:write Create and manage comments authorizationCode
design:content:read Read design content authorizationCode
design:content:write Create and modify designs authorizationCode
design:meta:read Read design metadata authorizationCode
email Read user email address through OIDC. authorizationCode
folder:permission:write Set, update, or remove permissions assigned to the user's folders. authorizationCode
folder:read Read folder metadata and contents authorizationCode
folder:write Modify folder contents authorizationCode
openid Read user information through Open ID Connect (OIDC). authorizationCode
profile Read user profile information through OIDC. authorizationCode
profile:read Read a user's profile and account information. authorizationCode
service:asset:read View the metadata for the app's assets, such as uploaded images.
service:asset:write Upload assets on the app's behalf.
service:brandtemplate:content:read Read the content of the brand templates associated with the developer's brand.
service:brandtemplate:meta:read View the metadata of the brand templates associated with the developer's brand.
service:design:content:read View the contents of the app's designs.
service:design:content:write Create designs on the app's behalf.
service:design:meta:read View the metadata of the app's designs.
service:folder:write Move designs, assets, and folders between folders on the app's behalf.

Source

OAuth Scopes

Raw ↑
generated: '2026-11-11'
method: searched
source: https://www.canva.dev/docs/connect/appendix/scopes/ + https://www.canva.dev/sources/connect/api/latest/api.yml
  (openapi/canva-connect-api-openapi.yml) + https://www.canva.dev/docs/apps/rest-apis/scopes/
schemes:
- name: oauth2
  source: openapi/canva-assets-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
- name: oauth2
  source: openapi/canva-autofills-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
- name: oauth2
  source: openapi/canva-brand-templates-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
- name: oauth2
  source: openapi/canva-comments-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
- name: oauthAuthCode
  source: openapi/canva-connect-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
- name: oauth2
  source: openapi/canva-designs-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
- name: oauth2
  source: openapi/canva-exports-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
- name: oauth2
  source: openapi/canva-folders-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
- name: oauth2
  source: openapi/canva-resizes-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
- name: oauth2
  source: openapi/canva-users-api-openapi.yml
  flows:
  - flow: authorizationCode
    authorizationUrl: https://www.canva.com/api/oauth/authorize
    tokenUrl: https://api.canva.com/rest/v1/oauth/token
  description: Canva uses OAuth 2.0 with authorization code flow. Access tokens must be included in the Authorization
    header as a Bearer token.
scopes:
- scope: asset:read
  description: Read asset metadata
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: asset:write
  description: Upload and delete assets
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: brandtemplate:content:read
  description: Read brand template content and datasets
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: brandtemplate:content:write
  description: Publish brand templates associated with the user's brand.
  flows:
  - authorizationCode
  sources:
  - openapi/canva-connect-api-openapi.yml
- scope: brandtemplate:meta:read
  description: Read brand template metadata
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: collaboration:event
  description: Receive webhook notifications about events relevant to the user.
  flows:
  - authorizationCode
  sources:
  - openapi/canva-connect-api-openapi.yml
- scope: comment:read
  description: Read comments on designs
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: comment:write
  description: Create and manage comments
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: design:content:read
  description: Read design content
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: design:content:write
  description: Create and modify designs
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: design:meta:read
  description: Read design metadata
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: email
  description: Read user email address through OIDC.
  flows:
  - authorizationCode
  sources:
  - openapi/canva-connect-api-openapi.yml
- scope: folder:permission:write
  description: Set, update, or remove permissions assigned to the user's folders.
  flows:
  - authorizationCode
  sources:
  - openapi/canva-connect-api-openapi.yml
- scope: folder:read
  description: Read folder metadata and contents
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: folder:write
  description: Modify folder contents
  flows:
  - authorizationCode
  sources:
  - openapi/canva-assets-api-openapi.yml
  - openapi/canva-autofills-api-openapi.yml
  - openapi/canva-brand-templates-api-openapi.yml
  - openapi/canva-comments-api-openapi.yml
  - openapi/canva-connect-api-openapi.yml
  - openapi/canva-designs-api-openapi.yml
  - openapi/canva-exports-api-openapi.yml
  - openapi/canva-folders-api-openapi.yml
  - openapi/canva-resizes-api-openapi.yml
  - openapi/canva-users-api-openapi.yml
- scope: openid
  description: Read user information through Open ID Connect (OIDC).
  flows:
  - authorizationCode
  sources:
  - openapi/canva-connect-api-openapi.yml
- scope: profile
  description: Read user profile information through OIDC.
  flows:
  - authorizationCode
  sources:
  - openapi/canva-connect-api-openapi.yml
- scope: profile:read
  description: Read a user's profile and account information.
  flows:
  - authorizationCode
  sources:
  - openapi/canva-connect-api-openapi.yml
- scope: service:asset:read
  description: View the metadata for the app's assets, such as uploaded images.
  app_type: service
  grant: client_credentials
  source: https://www.canva.dev/docs/apps/rest-apis/scopes/#scopes-for-service-apps
  in_spec: false
- scope: service:asset:write
  description: Upload assets on the app's behalf.
  app_type: service
  grant: client_credentials
  source: https://www.canva.dev/docs/apps/rest-apis/scopes/#scopes-for-service-apps
  in_spec: false
- scope: service:brandtemplate:content:read
  description: Read the content of the brand templates associated with the developer's brand.
  app_type: service
  grant: client_credentials
  source: https://www.canva.dev/docs/apps/rest-apis/scopes/#scopes-for-service-apps
  in_spec: false
- scope: service:brandtemplate:meta:read
  description: View the metadata of the brand templates associated with the developer's brand.
  app_type: service
  grant: client_credentials
  source: https://www.canva.dev/docs/apps/rest-apis/scopes/#scopes-for-service-apps
  in_spec: false
- scope: service:design:content:read
  description: View the contents of the app's designs.
  app_type: service
  grant: client_credentials
  source: https://www.canva.dev/docs/apps/rest-apis/scopes/#scopes-for-service-apps
  in_spec: false
- scope: service:design:content:write
  description: Create designs on the app's behalf.
  app_type: service
  grant: client_credentials
  source: https://www.canva.dev/docs/apps/rest-apis/scopes/#scopes-for-service-apps
  in_spec: false
- scope: service:design:meta:read
  description: View the metadata of the app's designs.
  app_type: service
  grant: client_credentials
  source: https://www.canva.dev/docs/apps/rest-apis/scopes/#scopes-for-service-apps
  in_spec: false
- scope: service:folder:write
  description: Move designs, assets, and folders between folders on the app's behalf.
  app_type: service
  grant: client_credentials
  source: https://www.canva.dev/docs/apps/rest-apis/scopes/#scopes-for-service-apps
  in_spec: false
docs: https://www.canva.dev/docs/apps/rest-apis/scopes/
note: 'Scope list reconciled against Canva''s published scopes reference on 2026-08-13: the docs table and the OpenAPI
  oauthAuthCode flow agree exactly on 18 scopes. Canva scopes are EXPLICIT and non-implying — asset:write does not
  grant asset:read; both must be enabled in integration settings AND requested at authorization. Three further scopes
  (brandkit:read, help:answers:read, help:answers:write) are declared by the hosted MCP server at mcp.canva.com
  but appear in neither the docs table nor the OpenAPI; see mcp/canva-tool-crosswalk.yml.'
mcp_only_scopes:
- brandkit:read
- help:answers:read
- help:answers:write
oidc:
  discovery: https://www.canva.com/.well-known/openid-configuration
  scopes_supported:
  - openid
  - email
  - profile
  userinfo_endpoint: https://api.canva.com/auth/v1/oidc/userinfo
webhook_scope:
  scope: collaboration:event
  note: Required base scope for every webhook notification type; see asyncapi/canva-webhooks.yml.
service_scopes_note: 'Added 2026-11-11: the 8 `service:*` scopes for service apps (OAuth client credentials flow,
  introduced 2026-11-06 per the REST changelog), read from the "Scopes for service apps" table on https://www.canva.dev/docs/apps/rest-apis/scopes/
  (HTTP 200; the table is rendered in HTML and absent from the .md twin). They are not declared in the saved OpenAPI
  securitySchemes.'

Work with this as data

Every scope set here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for oauth scopes

4 MCP tools reach this
  • find_scopesBrowse and filter every scope set in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This scope set
curl "https://apis.io/api/v1/scopes/canva-scopes"
All oauth scopes
curl "https://apis.io/api/v1/scopes?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.