For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
SupportDeveloper ForumLogin
  • Overview
    • Introduction
    • Getting Started
    • Integration Example (PSA)
    • Authentication
    • Error Handling
    • Pagination
    • Filtering
    • Ordering
    • Rate Limits
    • Permissions
    • Webhooks
    • MCP Server
    • Versioning
    • Changelog
    • Support
  • API v1 Reference
    • Projects Overview
    • Tasks Overview
    • Time Tracking Overview
    • Documents Overview
    • Search Overview
    • Companies Overview
    • Users Overview
    • Files & Images Overview
    • Custom Fields Overview
    • Workload & Planning Overview
    • Project Templates Overview
    • Workflows Overview
    • Login & Access Overview
    • API Management Overview
LogoLogo
SupportDeveloper ForumLogin
On this page
  • Workflows and project templates
  • Creating a project template
  • Linking a project template to a workflow
  • Unlinking a project template from a workflow
  • Task Bundles
  • Creating a Task Bundle
  • Creating a Task List Template
  • Creating a Task Template
  • Adding Task Templates to a Task List Template
  • Applying a Task Bundle to a Project
API v1 Reference

Project Templates

Was this page helpful?
Edit this page
Previous

Retrieves all project templates.

Next
Built with

Learn more about project templates.

Workflows and project templates

Project templates can be connected to workflows so new projects created from that template use shared workflow statuses.

The flow is:

  1. Create the project template.
  2. Link the template to a workflow.

Creating a project template

Create a project template
1curl -X POST https://api.awork.com/api/v1/projecttemplates \
2 -H 'Content-Type: application/json' \
3 -d '{
4 "name": "Client Delivery Template"
5 }'

Linking a project template to a workflow

Link template to workflow
1curl -X POST https://api.awork.com/api/v1/projecttemplates/123e4567-e89b-12d3-a456-426614174000/linkworkflow \
2 -H 'Content-Type: application/json' \
3 -d '{
4 "workflowId": "223e4567-e89b-12d3-a456-426614174000",
5 "projectStatusMapping": [
6 {
7 "oldProjectStatusId": "323e4567-e89b-12d3-a456-426614174000",
8 "newProjectStatusId": "423e4567-e89b-12d3-a456-426614174000"
9 }
10 ],
11 "taskStatusMapping": [
12 {
13 "oldTaskStatusId": "523e4567-e89b-12d3-a456-426614174000",
14 "newTaskStatusId": "623e4567-e89b-12d3-a456-426614174000"
15 }
16 ],
17 "keepCustomFields": true,
18 "keepCustomAutomations": true
19 }'

Unlinking a project template from a workflow

Unlink template from workflow
1curl -X POST https://api.awork.com/api/v1/projecttemplates/123e4567-e89b-12d3-a456-426614174000/unlinkworkflow \
2 -H 'Content-Type: application/json'

Task Bundles

Task Bundles (called “Task Templates” in the awork UI) are reusable containers that hold templates for tasks and task lists. They simplify recurring processes by allowing you to import a complete set of tasks and lists into projects.

Each Project Template has exactly one Task Bundle associated with it. However, Task Bundles can also exist independently and be used for importing into running projects.

Three core concepts:

  • Task Bundle: Top-level container that can be global or private, holds task templates and task list templates
  • Task List Template: Defines task lists (boards/columns) that will be created when the bundle is applied to a project
  • Task Template: Defines individual tasks with properties like name, description, priority, planned duration, dependencies, and relative dates

When a task bundle is applied to a project, it creates actual task lists and tasks based on the templates.

Creating a Task Bundle

The only required field for creating a task bundle is the name:

Create a new task bundle
1curl -X POST https://api.awork.com/api/v1/taskbundles \
2 -H 'Content-Type: application/json' \
3 -d '{
4 "name": "Website Launch",
5 "description": "Complete task bundle for launching a new website",
6 "icon": "rocket"
7 }'

Creating a Task List Template

Once you have a task bundle, you can create task list templates within it:

Create a task list template
1curl -X POST https://api.awork.com/api/v1/taskbundles/123e4567-e89b-12d3-a456-426614174000/tasklisttemplates \
2 -H 'Content-Type: application/json' \
3 -d '{
4 "name": "Design",
5 "order": 1
6 }'

Creating a Task Template

Create task templates within a task bundle:

Create a task template
1curl -X POST https://api.awork.com/api/v1/taskbundles/123e4567-e89b-12d3-a456-426614174000/tasktemplates \
2 -H 'Content-Type: application/json' \
3 -d '{
4 "name": "Create wireframe mockups",
5 "description": "Design initial wireframes for the homepage",
6 "isPrio": false,
7 "plannedDuration": 14400,
8 "typeOfWorkId": "123e4567-e89b-12d3-a456-426614174000"
9 }'

Adding Task Templates to a Task List Template

Assign task templates to specific task list templates:

Assign task templates to a list
1curl -X POST https://api.awork.com/api/v1/taskbundles/123e4567-e89b-12d3-a456-426614174000/tasklisttemplates/456e4567-e89b-12d3-a456-426614174000/addtasktemplates \
2 -H 'Content-Type: application/json' \
3 -d '[
4 {
5 "taskTemplateId": "789e4567-e89b-12d3-a456-426614174000"
6 }
7 ]'

Applying a Task Bundle to a Project

Once your task bundle is set up, apply it to a project to create actual tasks and task lists.

When a task bundle is applied:

  • Tasks are always created in the project
  • Task lists are merged based on their name (existing lists with matching names are reused)
Apply task bundle to project
1curl -X POST https://api.awork.com/api/v1/projects/123e4567-e89b-12d3-a456-426614174000/addtaskbundle \
2 -H 'Content-Type: application/json' \
3 -d '{
4 "taskBundleId": "123e4567-e89b-12d3-a456-426614174000"
5 }'