Get profile of the current user
Currently, this returns the display name of the user account associated with the provided access token. More user information is expected to be included in the future.
HTTP method and URL path
GET
https://api.canva.com /rest /v1 /users /me /profile
This operation is rate limited to 10 requests per minute for each user of your integration.
Authentication
This endpoint requires a valid access token that acts on behalf of a user. The token must have the following scopes (permissions):
profile:read
For more information, see Scopes.
Header parameters
Example request
Examples for using the /v1/users/me/profile
endpoint:
curl --request GET 'https://api.canva.com/rest/v1/users/me/profile' \--header 'Authorization: Bearer {token}'
SH
const fetch = require("node-fetch");fetch("https://api.canva.com/rest/v1/users/me/profile", {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/profile")).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/profile",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/profile"),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/profile"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/profile",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/profile')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:
profile
UserProfile
Profile for the user, consisting of the display name and other attributes.
Properties of profile
display_name
string
OPTIONAL
The name of the user as shown in the Canva UI.
Example response
{"profile": {"display_name": "Jane Doe"}}
JSON