Canva REST API reference
Analytics
Assets
Brand templates
Designs
Design imports
Get user capabilities
Lists the API capabilities for the user account associated with the provided access token. For more information, see Capabilities.
HTTP method and URL path
GET
https://api.canva.com /rest /v1 /users /me /capabilitiesThis operation is rate limited to 10 requests per minute for each user of your app.
Authentication and authorization
This endpoint requires a valid access token that acts on behalf of a user.
Scopes
The access token must have all the following scopes (permissions):
profile:read
Header parameters
Example request
Examples for using the /v1/users/me/capabilities endpoint:
curl --request GET 'https://api.canva.com/rest/v1/users/me/capabilities' \--header 'Authorization: Bearer {token}'
SH
const fetch = require("node-fetch");fetch("https://api.canva.com/rest/v1/users/me/capabilities", {method: "GET",headers: {"Authorization": "Bearer {token}",},}).then(async (response) => {const data = await response.json();console.log(data);}).catch(err => console.error(err));
JS
import java.io.IOException;import java.net.URI;import java.net.http.*;public class ApiExample {public static void main(String[] args) throws IOException, InterruptedException {HttpRequest request = HttpRequest.newBuilder().uri(URI.create("https://api.canva.com/rest/v1/users/me/capabilities")).header("Authorization", "Bearer {token}").method("GET", HttpRequest.BodyPublishers.noBody()).build();HttpResponse<String> response = HttpClient.newHttpClient().send(request,HttpResponse.BodyHandlers.ofString());System.out.println(response.body());}}
JAVA
import requestsheaders = {"Authorization": "Bearer {token}"}response = requests.get("https://api.canva.com/rest/v1/users/me/capabilities",headers=headers)print(response.json())
PY
using System.Net.Http;var client = new HttpClient();var request = new HttpRequestMessage{Method = HttpMethod.Get,RequestUri = new Uri("https://api.canva.com/rest/v1/users/me/capabilities"),Headers ={{ "Authorization", "Bearer {token}" },},};using (var response = await client.SendAsync(request)){response.EnsureSuccessStatusCode();var body = await response.Content.ReadAsStringAsync();Console.WriteLine(body);};
CSHARP
package mainimport ("fmt""io""net/http")func main() {url := "https://api.canva.com/rest/v1/users/me/capabilities"req, _ := http.NewRequest("GET", url, nil)req.Header.Add("Authorization", "Bearer {token}")res, _ := http.DefaultClient.Do(req)defer res.Body.Close()body, _ := io.ReadAll(res.Body)fmt.Println(string(body))}
GO
$curl = curl_init();curl_setopt_array($curl, array(CURLOPT_URL => "https://api.canva.com/rest/v1/users/me/capabilities",CURLOPT_CUSTOMREQUEST => "GET",CURLOPT_RETURNTRANSFER => true,CURLOPT_HTTPHEADER => array('Authorization: Bearer {token}',),));$response = curl_exec($curl);$err = curl_error($curl);curl_close($curl);if (empty($err)) {echo $response;} else {echo "Error: " . $err;}
PHP
require 'net/http'require 'uri'url = URI('https://api.canva.com/rest/v1/users/me/capabilities')http = Net::HTTP.new(url.host, url.port)http.use_ssl = truerequest = Net::HTTP::Get.new(url)request['Authorization'] = 'Bearer {token}'response = http.request(request)puts response.read_body
RUBY
Success response
If successful, the endpoint returns a 200 response with a JSON body with the following parameters:
capabilitiesstring[]Optional
Some APIs are annotated with required capabilities. These endpoints require the user to possess the required capabilities in order to be called successfully.
Available values:
analytics: Capability required to call the Design analytics APIs. Users that are members of a Canva Enterprise(opens in a new tab or window) organization have this capability.autofill: Capability required to call autofill APIs Users that are members of a Canva Enterprise(opens in a new tab or window) organization have this capability.brand_template: Capability required to use brand template APIs. Users on a Canva plan with access to brand templates (such as Canva Pro, Canva Teams, or Canva Enterprise) have this capability.export_png_transparency: Capability required to export designs in PNG with a transparent background. Users on a paid Canva plan (such as Canva Pro) have this capability.image_to_design_imports: Capability required to call the Image to Design Import APIs. Users whose team permission settings(opens in a new tab or window) allow "Magic Layers(opens in a new tab or window)" have this capability.resize: Capability required to create design resize jobs. Users on a Canva plan with premium features (such as Canva Pro) have this capability.team_restricted_app: Capability required to create a team-restricted app. Users that are members of the Canva Enterprise(opens in a new tab or window) or the Canva for Education(opens in a new tab or window) organization have this capability.
Example response
{"capabilities": ["analytics"]}
JSON