List templates
Lists the templates you can start new work from, a page at a time.
filter[type] is required and today accepts only Doc, the document
templates. It is required rather than assumed so that adding a type
later cannot change what an existing call returns. Each type brings its
own extra fields — for Doc that is roles — so a response carries the
fields every template has plus the ones that type adds.
Two sources come back in one list, your own first: templates your
account has saved (source: own) and Bonsai's library
(source: library). Read source to prefer your own branded template
over a generic one when both match.
Only templates you could actually use appear here: published ones, in a region that applies to your account, built in the current editor. Unpublished drafts stay in the Templates tab in Bonsai.
Filtering
filter[type]— required.Doc, the kind of template to list.filter[name]— partial, case-insensitive match on the template name.filter[source]—own,libraryorall. Defaults toall.-
filter[category]— one or more category names, comma-separated. Your own templates are filed underMy Templates. List the namesGET /public-api/v1/template_categories?filter[type]=Docreturns underkind: category. -
filter[industry]— one or more industry names, comma-separated. List the namesGET /public-api/v1/template_categories?filter[type]=Docreturns underkind: industry. -
filter[region]—USA,CAN,GBRorAUS. Defaults to your account's country. Templates that apply everywhere are always included, whichever region you ask for.
Query Parameters
- Type: integerpage[number]min:1
Page to return, starting at 1.
- Type: integerpage[size]min:1max:100
Records per page. Defaults to 25; anything above 100 is reduced to 100.
- enumfilter[type]const:Docrequired
The kind of template to list.
- Type: stringfilter[name]
Partial, case-insensitive match on the template name.
- Type: "own" or "library" or "all"enumfilter[source]
Limit to your own templates or to Bonsai's library.
- Type: stringfilter[category]
One or more category names, comma-separated.
- Type: stringfilter[industry]
One or more industry names, comma-separated.
- Type: stringenumfilter[region]
The region the template is written for. Defaults to your account's country.
valuesUSACANGBRAUS
Responses
- application/json
- application/json
- application/json
- application/json
- application/json
curl 'https://app.hellobonsai.com/public-api/v1/templates?filter[type]=Doc&filter[name]=Web%20Design&filter[source]=own&filter[category]=Proposal%2CQuote&filter[industry]=Design&filter[region]=USA' \
--globoff \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
"data": [
{
"id": "3f2a91c4-6b0e-4d5a-9c88-2e7f13ab4d60",
"name": "Web Design Proposal",
"region": "USA",
"updated_at": "2026-09-01T12:00:00.000Z",
"source": "own",
"categories": [
"Proposal"
],
"industries": [
"Design"
],
"url": "https://app.hellobonsai.com/docs/b3c1f0a9d2e4/edit",
"roles": [
{
"name": "Receiver",
"kind": "receiver"
}
]
}
],
"meta": {
"request_id": "b1f0d2c4-7a9e-4c3b-8d5f-1e2a3b4c5d6e",
"pagination": {
"page": 1,
"page_size": 25,
"has_more": true
}
}
}