Skip to content

List templates

List all templates

This endpoint returns a paginated list of templates (they’re called “checklists” in the API) for a given organization.

Endpoint

GET /organizations/{org_id}/checklists

Request

Replace {org_id} with your Organization ID.

Headers

  • Authorization: Bearer {your_access_token}
  • Accept: application/json
  • X-Tallyfy-Client: APIClient

Query parameters (optional)

ParameterTypeDescription
qstringSearch templates by title (case-insensitive partial match)
pageintegerPage number for pagination
per_pageintegerResults per page (default: 10)
sort_bystringField to sort by (prefix with - for descending)
withstringComma-separated includes: steps, tags, folder, permissions, stages, linked_tasks, assets, member_watchers, guest_watchers
statusstringFilter by template status
typestringFilter by template type
starredstringFilter starred templates
folderstringFilter by folder
tagstringFilter by tag
owner_idstringFilter by owner
archivedstringSet to only for archived templates, or any truthy value to include them

Code samples

const accessToken = 'YOUR_PERSONAL_ACCESS_TOKEN';
const orgId = 'YOUR_ORGANIZATION_ID';
const queryParams = '?per_page=10&with=steps'; // Example: Get 10 templates per page with their steps
const apiUrl = `https://go.tallyfy.com/api/organizations/${orgId}/checklists${queryParams}`;
const headers = new Headers();
headers.append('Authorization', `Bearer ${accessToken}`);
headers.append('Accept', 'application/json');
headers.append('X-Tallyfy-Client', 'APIClient');
fetch(apiUrl, {
method: 'GET',
headers: headers
})
.then(response => {
return response.json().then(data => {
if (!response.ok) {
console.error("Failed to list templates:", data);
throw new Error(`HTTP error! status: ${response.status}`);
}
return data;
});
})
.then(data => {
console.log('Successfully retrieved templates:');
console.log(JSON.stringify(data, null, 2));
// Access pagination via data.meta.pagination
})
.catch(error => {
console.error('Error listing templates:', error.message);
});

Response

You’ll get a 200 OK status and a JSON object with a data array. Each item in the array represents a template with fields like id, title, summary, starred, type, status, owner_id, created_by, created_at, last_updated, and more.

{
"data": [
{
"id": "c15bf2be31c3a7fbded5d13fce7aaab9",
"title": "Customer Onboarding Process",
"summary": "Standard process for onboarding new customers.",
"starred": false,
"type": "procedure",
"status": "active",
"owner_id": "user_abc123",
"created_by": "user_abc123",
"steps_count": 8,
"is_pinned": false,
"created_at": "2025-01-10T10:00:00.000Z",
"last_updated": "2025-05-15T14:30:00.000Z"
}
],
"meta": {
"pagination": {
"total": 25,
"count": 10,
"per_page": 10,
"current_page": 1,
"total_pages": 3,
"links": {
"next": "https://go.tallyfy.com/api/organizations/{org_id}/checklists?page=2"
}
}
}
}

The meta.pagination object tells you the total count, current page, items per page, and provides links for navigating between pages. They’re sorted by pinned status first, then by your sort_by parameter (defaults to updated).


Templates > Get template

Tallyfy’s API lets you fetch full details of any process template by its unique ID using a GET…

Tags > List tags

Retrieve all tags in your organization with optional name filtering and pagination. You can also…