Get brand template dataset Check if you can autofill a brand template and what information you can autofill.
Gets the dataset definition of a brand template. If the brand
template contains autofill data fields, this API returns an object with the data field
names and the type of data they accept.
You can autofill a brand template using the Create a design autofill job
API .
HTTP method and URL path
GET https://api.canva.com /rest /v1 /brand-templates/{brandTemplateId}/dataset
Authentication
This endpoint requires a valid access token that acts on behalf of a user. The token must have the following scopes (permissions):
brandtemplate:content:read
For more information, see Scopes .
Provides credentials to authenticate the request, in the form of a Bearer
token.
For example: Authorization: Bearer {token}
Path parameters
Example request
Examples for using the /v1/brand-templates/{brandTemplateId}/dataset
endpoint:
cURL Node.js Java Python C# Go PHP Ruby
curl --request GET 'https://api.canva.com/rest/v1/brand-templates/{brandTemplateId}/dataset' \
--header 'Authorization: Bearer {token}'
const fetch = require ( "node-fetch" ) ;
fetch ( "https://api.canva.com/rest/v1/brand-templates/{brandTemplateId}/dataset" , {
method : "GET" ,
headers : {
"Authorization" : "Bearer {token}" ,
} ,
} )
. then ( async ( response ) => {
const data = await response . json ( ) ;
console . log ( data ) ;
} )
. catch ( err => console . error ( err ) ) ;
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/brand-templates/{brandTemplateId}/dataset" ) )
. 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 ( ) ) ;
}
}
import requests
headers = {
"Authorization" : "Bearer {token}"
}
response = requests . get ( "https://api.canva.com/rest/v1/brand-templates/{brandTemplateId}/dataset" ,
headers = headers
)
print ( response . json ( ) )
using System . Net . Http ;
var client = new HttpClient ( ) ;
var request = new HttpRequestMessage
{
Method = HttpMethod . Get ,
RequestUri = new Uri ( "https://api.canva.com/rest/v1/brand-templates/{brandTemplateId}/dataset" ) ,
Headers =
{
{ "Authorization" , "Bearer {token}" } ,
} ,
} ;
using ( var response = await client . SendAsync ( request ) )
{
response . EnsureSuccessStatusCode ( ) ;
var body = await response . Content . ReadAsStringAsync ( ) ;
Console . WriteLine ( body ) ;
} ;
package main
import (
"fmt"
"io"
"net/http"
)
func main ( ) {
url := "https://api.canva.com/rest/v1/brand-templates/{brandTemplateId}/dataset"
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 ) )
}
$curl = curl_init ( ) ;
curl_setopt_array ( $curl , array (
CURLOPT_URL => "https://api.canva.com/rest/v1/brand-templates/{brandTemplateId}/dataset" ,
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 ;
}
require 'net/http'
require 'uri'
url = URI ( 'https://api.canva.com/rest/v1/brand-templates/{brandTemplateId}/dataset' )
http = Net :: HTTP . new ( url . host , url . port )
http . use_ssl = true
request = Net :: HTTP :: Get . new ( url )
request [ 'Authorization' ] = 'Bearer {token}'
response = http . request ( request )
puts response . read_body
Success response
If successful, the endpoint returns a 200
response with a JSON body with the following parameters:
The dataset definition for the brand template. The dataset definition contains the data inputs available for use with the
Create design autofill job API .
Properties of dataset
A named data field that can be autofilled in the brand template.
{
"cute_pet_image_of_the_day" : {
"type" : "image"
} ,
"cute_pet_witty_pet_says" : {
"type" : "text"
}
}
This can be one of the following:
image
: An image for a brand template. You can autofill the brand template with an image by providing its asset_id
.
text
: Some text for a brand template. You can autofill the brand template with this value.
Example response
{
"dataset" : {
"cute_pet_image_of_the_day" : {
"type" : "image"
} ,
"cute_pet_witty_pet_says" : {
"type" : "text"
}
}
}
Try it out