Whether the email is the primary address. Only one email address for a user can be the primary one.
Create a user with SCIM
Using information from an identity provider (IdP), create a Canva user in a Canva team.
The values for the email
or userName
parameters must be unique and can't already be in use.
This API is rate limited to 1 request per second.
HTTP method and URL path
https://www.canva.com /_scim /v2 /Users
Header parameters
Indicates the media type of the information sent in the request. This must be set to application/scim+json
.
For example: Content-Type: application/scim+json
Body parameters
The URIs of the SCIM schemas. The value for this can only be urn:ietf:params:scim:schemas:core:2.0:User
.
A unique identifier for the user.
A string that is an identifier for the resource as defined by the provisioning client.
The name of the user, suitable for display to end-users.
The user's default location, for example en_AU
.
The role of the user. This can be one of the following:
Member
Teacher
Staff
Admin
Template-designer
Aide
Administrator
School administrator
School
Tenant
Faculty
If an invalid value is provided, the role defaults to Member
.
Whether the user account is active. Setting this to false
deprovisions the user in Canva.
Example request
Examples for using the /_scim/v2/Users
endpoint:
curl --request POST 'https://www.canva.com/_scim/v2/Users' \--header 'Authorization: Bearer {token}' \--header 'Content-Type: application/scim+json' \--data '{"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],"externalId": "{idp_provided_external_id}","userName": "aliddell","displayName": "Alice Liddell","name": {"givenName": "Alice","familyName": "Liddell"},"emails": [{"primary": true,"value": "[email protected]","type": "work"}],"locale": "en_US","role": "Member"}'
Success response
If successful, the endpoint returns a 201
response with a JSON body with the following parameters:
The URIs of the SCIM schemas. The value for this can only be urn:ietf:params:scim:schemas:core:2.0:User
.
The Canva-generated SCIM ID for the user.
A unique identifier for the user.
The name of the user, suitable for display to end-users.
The email address for the user.
Whether the user account is active. Setting this to false
deprovisions the user in Canva.
The role of the user. This can be one of the following:
Member
Teacher
Staff
Admin
Template-designer
Aide
Administrator
School administrator
School
Tenant
Faculty
If an invalid value is provided, the role defaults to Member
.
A string that is an identifier for the resource as defined by the provisioning client.
The user's default location, for example en_AU
.
Example response
{"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],"id": "UAFdxab1abC","externalId": "abcd1234","meta": {"resourceType": "User","created": "2023-09-18T06:08:35Z"},"userName": "aliddell","displayName": "Alice Liddell","name": {"givenName": "Alice","familyName": "Liddell"},"emails": [{"primary": true,"type": "work"}],"active": true,"locale": "en_US","role": "Member"}
Error responses
400 Bad request
The value for this can only be urn:ietf:params:scim:api:messages:2.0:Error
.
The value for this can only be No SSO configurations found, please check the settings page
.
The HTTP status code of the error.
Example error response
{"schemas": ["urn:ietf:params:scim:api:messages:2.0:Error"],"detail": "No SSO configurations found, please check the settings page","status": "400"}
403 Forbidden
The value for this can only be urn:ietf:params:scim:api:messages:2.0:Error
.
The value for this can only be Email domain not authorized for SCIM.
.
The HTTP status code of the error.
Example error response
{"schemas": ["urn:ietf:params:scim:api:messages:2.0:Error"],"detail": "Email domain not authorized for SCIM.","status": "403"}
409 Conflict
The value for this can only be urn:ietf:params:scim:api:messages:2.0:Error
.
This can be one of the following:
userName not available
Account with email can not be updated. User needs to accept SSO linking
Account with email already exists. User must first log in with SAML to confirm account ownership
Account with email is soft deleted. The user must first log in to reactivate their account
The HTTP status code of the error.
Example error response
{"schemas": ["urn:ietf:params:scim:api:messages:2.0:Error"],"detail": "userName not available","status": "409"}