Introducing Custom Task Statuses (now in Beta)
Custom task statuses are a replacement for the static statuses that Fieldwire has had since the beginning:
- P1
- P2
- P3
- Completed
- Verified
We have made this dynamic now which will let each project set it up as required. These statuses are now represented by Status objects and Tasks link to a status using their status_id field. Every new project created going forward will have 5 dynamic statuses created by default which mirror the old statuses we had. If you are curious about how to make use of this new features, please read on:
What happens to current API users?
We have made this a backward compatible change. As long as the default status list of a project isn't changed, you can still keep updating the status of a task using the oldpriority,completed_at&verified_atfields and don't have to worry about any of the new endpoints.Note: This backward compatibility behavior will be deprecated in one of the future API versions. Please make sure to update your scripts in a timely manner to use the new statuses
API endpoints
Get Custom Statuses
GET /api/v3/projects/:project_id/statuses
JSON response body (list of Status objects):
[
{
"id": "8cfacd2b-b649-4864-b62b-9ccb98e1f156",
"name": "In progress",
"ordinal": 3,
"color": "#FD504E",
...
},
...
]Create/Delete/Update Custom Status(es)
POST /api/v3/projects/:project_id/statuses/batch
JSON request body:
{
"create": [
{
"name": "In progress",
"ordinal": 3,
"color": "#FD504E"
}
],
"delete": [
"3efdd4a8-c072-4e26-8e28-e4247fc01946",
"a1c33b97-8d97-4c8d-a33e-d4f1cc5f3307"
],
"update": [
{
"id": "fa83831d-9de8-4592-b4d0-798c7e74edac",
"name": "New Status Name",
"color": "#C91112",
}
]
}Schema explanation:
DELETE: list of custom Status IDs
UPDATE: list of custom Status objects with new attributes
CREATE: list of custom Status objects
Required keys for create:
name: name of the custom statuscolor: hex code representing the color of the status. This should be one of these:#FD504E,#C91112,#FA8B34,#FCD44A,#45DE67,#12A258,#82D8FF,#306BDB,#F84EF8,#282828ordinal: rank/priority of the status. For example, if you have 3 statuses -- Unassigned, Assigned, Completed -- then their ordinals might be 1, 2, 3 respectively
JSON response body (list of Status object):
[
{
"id": "8cfacd2b-b649-4864-b62b-9ccb98e1f156",
"name": "In progress",
"ordinal": 3,
"color": "#FD504E",
...
},
...
]PATCH /api/v3/projects/:project_id/tasks/:id
JSON request body:
{
task: {
status_id: 23
}
}