Access project templates that can be used to create new projects. Templates provide pre-configured project structures with phases, tasks, and settings.
Templates are read-only over the API and live entirely on this resource. They are
created and edited inside Outlign, and they never appear on the
Projects,
Phases or
Tasks endpoints. To use a template, pass
its id as template_id when creating a project.
{
"id": 789,
"title": "Website Design Template",
"description": "Complete website design and development workflow",
"is_client": true,
"is_internal": false,
"is_template": true,
"client_project_type": "Process",
"internal_project_type": "Board",
"created_at": "2023-01-01T12:00:00.000000Z",
"updated_at": "2023-01-01T12:00:00.000000Z",
"company": { "id": 202, "title": "Design Studio Inc" },
"phases": [
{ "id": 456, "title": "Discovery", "is_internal": false, "order": 1, "step_count": 4 },
{ "id": 457, "title": "Design", "is_internal": false, "order": 2, "step_count": 7 }
]
}
phases is only returned by the Get a Project Template endpoint below.
The list endpoint omits it.
| Attribute | Type | Description |
|---|---|---|
| id | integer | Unique identifier for the template |
| title | string | The template's name |
| description | string|null | Description of the template's purpose |
| is_client | boolean | Whether the template has a client-facing space |
| is_internal | boolean | Whether the template has an internal space |
| is_template | boolean | Whether this is a regular template |
| client_project_type | string | Client space layout: "Process" or "Board" |
| internal_project_type | string | Internal space layout: "Process" or "Board" |
| company | object | The company that owns the template (id, title) |
| phases | object[] | The template's structure, ordered by order. Each phase has id, title, is_internal, order, and step_count (the number of tasks the phase will create). Only returned by Get a Project Template |
| created_at | string | ISO 8601 timestamp when the template was created |
| updated_at | string | ISO 8601 timestamp when the template was last updated |
Retrieves the templates belonging to the companies the authenticated user is an agency member of. Templates owned by other companies are never returned.
/api/v1/project-templates
| Parameter | Type | Description |
|---|---|---|
| company_id | integer | Filter templates by a specific company you belong to. Returns 403 for a company you do not have access to |
| per_page | integer | Number of results per page (max 1000) |
GET /api/v1/project-templates
Authorization: Bearer YOUR_ACCESS_TOKEN
Accept: application/json
[
{
"id": 789,
"title": "Website Design Template",
"description": "Complete website design and development workflow",
"is_client": true,
"is_internal": false,
"is_template": true,
"client_project_type": "Process",
"internal_project_type": "Board",
"created_at": "2023-01-01T12:00:00.000000Z",
"updated_at": "2023-01-01T12:00:00.000000Z",
"company": { "id": 202, "title": "Design Studio Inc" }
},
{
"id": 790,
"title": "Mobile App Development",
"description": "Standard mobile app development process",
"is_client": true,
"is_internal": true,
"is_template": true,
"client_project_type": "Board",
"internal_project_type": "Board",
"created_at": "2023-01-05T14:30:00.000000Z",
"updated_at": "2023-01-05T14:30:00.000000Z",
"company": { "id": 202, "title": "Design Studio Inc" }
}
]
Retrieves a specific template along with its structure — the phases it will create, in order,
and how many tasks each phase contains. Returns 404 Not Found if the ID is not a template
or is not owned by one of your companies.
/api/v1/project-templates/{id}
GET /api/v1/project-templates/789
Authorization: Bearer YOUR_ACCESS_TOKEN
Accept: application/json
{
"id": 789,
"title": "Website Design Template",
"description": "Complete website design and development workflow",
"is_client": true,
"is_internal": false,
"is_template": true,
"client_project_type": "Process",
"internal_project_type": "Board",
"created_at": "2023-01-01T12:00:00.000000Z",
"updated_at": "2023-01-01T12:00:00.000000Z",
"company": { "id": 202, "title": "Design Studio Inc" },
"phases": [
{ "id": 456, "title": "Discovery", "is_internal": false, "order": 1, "step_count": 4 },
{ "id": 457, "title": "Design", "is_internal": false, "order": 2, "step_count": 7 },
{ "id": 458, "title": "Internal QA", "is_internal": true, "order": 3, "step_count": 3 }
]
}
Phase IDs belong to the template. They are the template's own phases, not the phases of a project created from it — creating a project from a template copies the structure and produces new phase and task IDs. Use them to preview or display what a template contains, not to write against.
Project templates are commonly used in integrations to allow users to create standardized projects with predefined structures and workflows.
Template Selection Dropdowns
Populate dropdown lists for template selection in project creation forms
Automated Project Creation
Create projects from templates in response to external triggers
Template Validation
Verify template availability before creating projects
Related: Use the Projects API to create new projects from templates. See the Projects API documentation for details.