Pular para o conteúdo

Definições

As definições são os blocos de construção que você referencia em uma tarefa ou evento: seu status, seu tipo e (para projetos) o próprio status do projeto. Você lê uma definição para obter seu id e então passa esse id ao criar ou atualizar um recurso — por exemplo, task_status_id em uma tarefa, event_type_id em um evento.

As definições são criadas no nível do espaço de trabalho e vinculadas a projetos individuais por meio das configurações do projeto no aplicativo web do Bordio (não pela API). Portanto, há duas visões:

  • Catálogo do espaço de trabalho — o conjunto completo definido no espaço de trabalho. GET sem filtro.
  • Visão do projeto — o subconjunto vinculado a um projeto. GET com ?project_id=proj_....

Uma definição precisa estar disponível no projeto de uma tarefa para ser usada nessa tarefa, portanto a visão do projeto é sua fonte da verdade para “o que posso definir aqui”. Este é o mesmo modelo de vinculação dos campos personalizados.

Todos os quatro ficam sob /public/v1 e retornam um array data.

Endpoint Formato do item ?project_id Usado na escrita como
GET /task_statuses { id, name, state } task_status_id
GET /task_types { id, name } task_type_id
GET /event_types { id, name } event_type_id
GET /project_statuses { id, name, state } ❌ somente espaço de trabalho (em projetos)

state (em status) é open ou closed.

Terminal window
curl "https://api.bordio.com/public/v1/task_statuses?project_id=proj_6594a1b2c3d4e5f6a7b8c9a0" \
-H "Authorization: Bearer brd_sk_live_..."
{
"data": [
{ "id": "task_status_6594a1b2c3d4e5f6a7b8c9d0", "name": "To do", "state": "open" },
{ "id": "task_status_6594a1b2c3d4e5f6a7b8c9d1", "name": "In progress", "state": "open" },
{ "id": "task_status_6594a1b2c3d4e5f6a7b8c9d2", "name": "Done", "state": "closed" }
]
}
// GET /task_types
{
"data": [
{ "id": "task_type_6594a1b2c3d4e5f6a7b8c9e0", "name": "Bug" },
{ "id": "task_type_6594a1b2c3d4e5f6a7b8c9e1", "name": "Feature" }
]
}

event_types tem o mesmo formato, com ids event_type_.

Terminal window
curl -X PATCH https://api.bordio.com/public/v1/tasks/task_6594a1b2c3d4e5f6a7b8c9f0 \
-H "Authorization: Bearer brd_sk_live_..." \
-H "Content-Type: application/json" \
-d '{ "task_status_id": "task_status_6594a1b2c3d4e5f6a7b8c9d2" }'
  • Sem project_id → o catálogo completo do espaço de trabalho.
  • ?project_id=proj_... → apenas as definições vinculadas a esse projeto.
  • Chave com escopo de projeto → sempre limitada ao seu próprio projeto: um project_id estranho retorna 404 not_found_error, e nenhum filtro retorna o subconjunto desse projeto.
  • project_statuses é somente do espaço de trabalho — passar ?project_id retorna 422 validation_error (invalid_request). Estes são os status em que um projeto em si pode estar (cada um com state), não os status dentro de um projeto.

A prioridade da tarefa não é um recurso de definições — é um conjunto fixo carregado inline no campo priority da tarefa:

lowest · low · medium · high · critical

Os campos personalizados são um recurso semelhante a definições, porém mais rico, com seus próprios formatos de valor — consulte Campos personalizados.