Tags
Tags são marcadores no nível do workspace referenciados pelas tarefas via tag_ids. A API expõe CRUD completo:
| Método | Caminho | |
|---|---|---|
| GET | /tags |
Lista as tags do workspace (paginação por cursor) |
| GET | /tags/{id} |
Uma tag |
| POST | /tags |
Criar — corpo { "name": "…" } |
| PATCH | /tags/{id} |
Renomear — corpo { "name": "…" } |
| DELETE | /tags/{id} |
Excluir — veja o interruptor de segurança abaixo |
Tags não são vinculadas a um projeto, então chaves com escopo de projeto trabalham com elas da mesma forma que chaves de workspace. Uma tag fora do workspace da sua chave retorna 404 not_found_error.
Excluindo uma tag: o interruptor force
Seção intitulada “Excluindo uma tag: o interruptor force”Excluir uma tag também a remove de todas as tarefas que a carregam — por isso a API protege contra fazê-lo por acidente.
Padrão (force omitido ou false): se a tag estiver vinculada a alguma tarefa, a requisição é recusada:
curl -X DELETE "https://api.bordio.com/public/v1/tags/tag_65dcc9c66f2e4e001ab18859" \ -H "Authorization: Bearer brd_sk_live_..."{ "error": { "type": "conflict_error", "code": "tag_in_use", "message": "Tag is linked to 7 task(s). Pass force=true to delete it anyway.", "details": { "linked_tasks_count": 7 } }}Use details.linked_tasks_count de forma programática — por exemplo, para exibir um diálogo de confirmação. Tarefas excluídas não contam; arquivadas sim. Se a tag não estiver vinculada a nada, a exclusão acontece imediatamente.
Com force=true: a tag é excluída incondicionalmente e removida de todas as tarefas vinculadas:
curl -X DELETE "https://api.bordio.com/public/v1/tags/tag_65dcc9c66f2e4e001ab18859?force=true" \ -H "Authorization: Bearer brd_sk_live_..."A desvinculação é assíncrona: por um breve momento após a exclusão, as listagens de tarefas ainda podem retornar a tag excluída em tag_ids.
Para ver de antemão a quais tarefas uma tag está vinculada antes de excluir, use o filtro de tarefas: GET /tasks?tag_id=… (veja Filtragem de tarefas).