Skip to content
ver .md original

Plan · Quadros

Quadros e seus estados de fluxo, o snapshot do quadro em uma chamada, o feed de mudanças, membros, etiquetas e visualizações salvas. Parte da API do Dailybot Plan (Beta).

Nesta página

Beta

Plan está em beta. Tudo o que está em /plan no aplicativo web, os comandos da CLI e da agent skill para projetos, metas, quadros e tarefas, e a API pública /v1/plan/ podem mudar antes da disponibilidade geral. Quer testar com sua equipe? Escreva para [email protected].

GET/v1/plan/boards/BetaChave de APICLI AuthPaginação por número de página

Listar quadros

Os quadros que você pode ver, em uma página. Filtre por project, busque com search, por datas com start_date / end_date e traga os quadros arquivados com include_archived. Uma key de agente ou da organização só vê os quadros visíveis para a organização; uma key pessoal vê o que sua pessoa vê.

Parâmetros de consulta

Paginação

NomeTipoObrigatórioDescrição
pageintegerOpcionalNúmero da página, começando em 1.
page_sizeintegerOpcionalLinhas por página. Padrão 50, máximo 100. Valores fora do intervalo são ajustados, nunca rejeitados: pedir 500 retorna 100.
limitintegerOpcionalAlias de page_size, traduzido no servidor.
offsetintegerOpcionalAlias traduzido para page no servidor.

Filtros

NomeTipoObrigatórioDescrição
searchstringOpcionalCorresponde ao título e à chave. Mais de 256 caracteres é 400 search_query_too_long, sem truncamento. q é um alias.
projectarrayOpcionalUuids de projetos. Repetível; os valores são combinados com OR.

Datas

NomeTipoObrigatórioDescrição
start_datestringOpcionalInício da janela de data de criação. O que --since da CLI produz.
end_datestringOpcionalFim da janela de data de criação. O que --until da CLI produz.

Linhas arquivadas

NomeTipoObrigatórioDescrição
is_archivedbooleanOpcionaltrue retorna apenas linhas arquivadas; false (o padrão), apenas as ativas. Arquivar é a exclusão, então as linhas arquivadas continuam legíveis.
include_archivedbooleanOpcionalIncluir linhas arquivadas junto com as ativas. Diferente de is_archived, que seleciona um conjunto ou o outro: include_archived=true é a união. As listas retornam linhas ativas, a menos que você opte pelo contrário.

Objeto Board

NomeTipoObrigatórioDescrição
uuiduuidObrigatórioIdentificador público estável.
keystringObrigatórioA chave do quadro: o prefixo das chaves das suas tarefas. Renomeá-la mantém a chave antiga reservada e resolvendo.
namestringObrigatórioNome de exibição. Máx. 120 caracteres.
projectProjectOpcionalO projeto. Veja Project.
teamuuid | nullOpcionalA equipe.
visibilityenumObrigatórioorg (todos na organização) ou members (apenas membros explícitos). Um de org, members.
effective_visibilitystringOpcionalSe o quadro é efetivamente visível para toda a organização (org) ou somente para os membros (members). Um quadro dentro de um projeto members é members aqui, enquanto visibility continua sendo a configuração armazenada do próprio quadro.
estimate_scaleenumOpcionalComo as estimativas são expressas neste quadro. Um de none, fibonacci, linear.
default_viewSavedView | nullOpcionalA visualização salva padrão do quadro, ou null. Veja SavedView.
archive_after_daysinteger | nullOpcionalArquivar automaticamente as tarefas concluídas após este número de dias, ou null para mantê-las.
task_countintegerOpcionalNúmero de tarefas ativas.
wip_limitsobjectOpcionalLimites de trabalho em andamento por coluna.
is_archivedbooleanOpcionalSe a linha está arquivada. Arquivar é a exclusão: linhas arquivadas continuam legíveis e restauráveis.
created_atdate-timeOpcionalQuando a linha foi criada.
updated_atdate-timeOpcionalQuando a linha mudou pela última vez.
viewerobjectOpcionalO que você pode fazer com esta linha. Formato: {is_member, can_see_content, can_manage: boolean} (all required).
statesarray<WorkflowState>OpcionalOs estados do quadro, na ordem das colunas. Veja WorkflowState.

Objeto Project

NomeTipoObrigatórioDescrição
uuiduuidObrigatórioIdentificador público estável.
namestringObrigatórioNome de exibição. Máx. 120 caracteres.
slugstringOpcionalNome amigável para URL. Máx. 48 caracteres.
descriptionstring | nullOpcionalDescrição livre.
leadUserRef | nullOpcionalO líder do projeto. Veja UserRef.
goalsarrayOpcionalMetas para as quais este projeto aponta. Um projeto pode atender várias metas. Sempre presentes: uuid. Itens: {uuid, name}.
goalobjectOpcionalA meta, quando há exatamente uma. Formato: {uuid, name}|null.
board_countintegerOpcionalNúmero de quadros ativos no projeto.
healthenumOpcionalSaúde declarada. Um de not_set, on_track, at_risk, off_track.
start_datedate | nullOpcionalData de início planejada.
target_datedate | nullOpcionalData de término planejada.
progressProjectProgress | nullOpcionalResumo agregado do progresso sobre as tarefas que você pode ver. Veja ProjectProgress.
is_archivedbooleanObrigatórioSe a linha está arquivada. Arquivar é a exclusão: linhas arquivadas continuam legíveis e restauráveis.
archived_atdate-time | nullOpcionalQuando a linha foi arquivada.
created_atdate-timeOpcionalQuando a linha foi criada.
updated_atdate-timeOpcionalQuando a linha mudou pela última vez.
viewerobjectOpcionalO que você pode fazer com esta linha. Formato: {can_see_content: boolean, can_manage: boolean} (both required).

Objeto SavedView

NomeTipoObrigatórioDescrição
namestringObrigatórioNome de exibição. Máx. 64 caracteres.
view_modeenumOpcionalComo o conjunto filtrado é desenhado. As leituras sempre retornam board para o layout kanban. Um de list, board, timeline, calendar.
group_byenumOpcionalA dimensão de agrupamento. Um de state, owner, priority, category.
sortstringOpcionalUma chave de ordenação, com prefixo - para ordem decrescente.
filtersobjectObrigatórioOs filtros da visualização, na gramática compartilhada de filtros de tarefas.
schema_versionintegerOpcionalVersão do formato salvo da visualização.
visibilityenumOpcionalpersonal (padrão) é só sua. shared e board_default (a visualização padrão desse quadro ou projeto) podem ser lidas por todos que veem o quadro ou o projeto. Defini-las exige quem administra o quadro nas visualizações de quadro, e supervisão do projeto (um administrador da organização ou quem gerencia todos os seus times) nas visualizações de projeto; caso contrário, 403 view_visibility_forbidden. Um de personal, shared, board_default.
collapsedobject | array | string | number | booleanOpcionalEstado da interface do cliente salvo como está (quais grupos estão recolhidos). Só o tamanho e a profundidade são validados.
columnsobject | array | string | number | booleanOpcionalEstado da interface do cliente salvo como está (quais colunas são exibidas). Só o tamanho e a profundidade são validados.
uuiduuidOpcionalIdentificador público estável.
scopeenumOpcionalA qual contêiner a visualização pertence: board ou project. Somente leitura. Um de board, project.
boarduuid | nullOpcionalO uuid do quadro quando scope é board; null para uma visualização de projeto. Somente leitura.
ownerobjectOpcionalQuem é dono da visualização. Formato: {uuid, name}.
created_atdate-timeOpcionalQuando a linha foi criada.
updated_atdate-timeOpcionalQuando a linha mudou pela última vez.

Objeto WorkflowState

NomeTipoObrigatórioDescrição
uuiduuidObrigatórioIdentificador público estável.
namestringObrigatórioNome de exibição. Máx. 48 caracteres.
categoryenumObrigatórioUma das cinco categorias fixas. Nunca muda após a criação. Um de backlog, todo, in_progress, done, canceled.
positionintegerObrigatórioPosição da coluna, da esquerda para a direita. Mínimo 0.
colorstringOpcionalCor de exibição (hex).
is_defaultbooleanOpcionalSe novas tarefas entram neste estado por padrão.
is_archivedbooleanOpcionalSe a linha está arquivada. Arquivar é a exclusão: linhas arquivadas continuam legíveis e restauráveis.
task_countintegerOpcionalNúmero de tarefas ativas.

Objeto UserRef

NomeTipoObrigatórioDescrição
uuiduuidObrigatórioIdentificador público estável.
namestringOpcionalNome de exibição.
avatar_urlstring | nullOpcional—
has_photobooleanOpcional—

Objeto ProjectProgress

NomeTipoObrigatórioDescrição
totalintegerObrigatórioTodas as tarefas contadas.
completedintegerObrigatórioTarefas em um estado done ou canceled.
openintegerOpcionalTarefas em um estado backlog, todo ou in_progress.
blockedintegerOpcionalTarefas com um bloqueio ativo.
overdueintegerOpcionalTarefas abertas com a data de vencimento ultrapassada.
percent_completeintegerObrigatóriocompleted como porcentagem de total.

Resposta

NomeTipoObrigatórioDescrição
countintegerObrigatórioNúmero total de linhas.
nexturiObrigatórioURL da próxima página, ou null.
previousuriObrigatórioURL da página anterior, ou null.
resultsarray<Board>ObrigatórioAs linhas desta página. Veja Board.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
curl -sS "https://api.dailybot.com/v1/plan/boards/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
POST/v1/plan/boards/BetaCLI Auth

Criar um quadro e gerar seus cinco estados padrão

Cria um quadro dentro de um projeto e semeia seus cinco estados do fluxo de trabalho padrão. A key do quadro é o prefixo de cada chave de tarefa (ENG-142) e deve ser única (409 duplicate_board_key). Todo membro não convidado pode criá-lo (com uma sessão iniciada ou uma API key pessoal); uma key de agente ou da organização não pode. O limite de quadros do plano responde 402 task_boards_limit_reached.

Cabeçalhos

NomeTipoObrigatórioDescrição
Idempotency-KeystringOpcionalUma chave que você gera para esta intenção. Uma repetição com a mesma chave e o mesmo corpo retorna a primeira resposta sem um segundo efeito colateral e traz Idempotency-Replayed: true. As chaves são mantidas por 24 horas. A mesma chave com um corpo diferente é 409 idempotency_key_payload_mismatch; uma repetição enquanto a primeira chamada ainda está em execução recebe 409 idempotency_in_progress por até 120 segundos.
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
namestringObrigatórioNome de exibição. Máx. 120 caracteres.
keystringObrigatórioA chave do quadro, o prefixo das chaves das suas tarefas (por exemplo ENG).
projectuuidObrigatórioO projeto.
teamuuid | nullOpcionalA equipe.
visibilityenumOpcionalorg (todos na organização) ou members (apenas membros explícitos). Um de org, members.
estimate_scaleenumOpcionalComo as estimativas são expressas neste quadro. Um de none, fibonacci, linear.
archive_after_daysinteger | nullOpcionalArquivar automaticamente as tarefas concluídas após este número de dias, ou null para mantê-las. Mínimo 1.
default_viewSavedView | nullOpcionalA visualização salva padrão do quadro, ou null. Veja SavedView.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)BoardObrigatórioUm objeto Board.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402Tasks ainda não está habilitado para a sua organização (`plan_upgrade_required`), ou o teto de quadros do plano foi atingido (`task_boards_limit_reached`).
409Outro quadro já usa esta chave (`duplicate_board_key`).
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Engineering",
    "key": "ENG",
    "project": "00000000-0000-4000-8000-000000000001",
    "visibility": "org",
    "estimate_scale": "fibonacci"
  }'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/boards/{board_id}/BetaChave de APICLI Auth

Obter um quadro

Um quadro pelo uuid. Um quadro que você não pode ver responde 404, igual a um que não existe.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Resposta

NomeTipoObrigatórioDescrição
(body)BoardObrigatórioUm objeto Board.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
PATCH/v1/plan/boards/{board_id}/BetaCLI Auth

Atualizar um quadro, incluindo renomear sua chave

Renomear key retira a chave anterior e a mantém reservada, então ENG-142 digitado anos depois ainda é resolvido. Mudar visibility para members adiciona você como membro, porque um quadro somente para membros sem membros não seria visível para ninguém.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
Idempotency-KeystringOpcionalUma chave que você gera para esta intenção. Uma repetição com a mesma chave e o mesmo corpo retorna a primeira resposta sem um segundo efeito colateral e traz Idempotency-Replayed: true. As chaves são mantidas por 24 horas. A mesma chave com um corpo diferente é 409 idempotency_key_payload_mismatch; uma repetição enquanto a primeira chamada ainda está em execução recebe 409 idempotency_in_progress por até 120 segundos.
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
namestringOpcionalNome de exibição. Máx. 120 caracteres.
keystringOpcionalA chave do quadro, o prefixo das chaves das suas tarefas (por exemplo ENG).
projectuuidOpcionalO projeto.
teamuuid | nullOpcionalA equipe.
visibilityenumOpcionalorg (todos na organização) ou members (apenas membros explícitos). Um de org, members.
estimate_scaleenumOpcionalComo as estimativas são expressas neste quadro. Um de none, fibonacci, linear.
archive_after_daysinteger | nullOpcionalArquivar automaticamente as tarefas concluídas após este número de dias, ou null para mantê-las. Mínimo 1.
default_viewSavedView | nullOpcionalA visualização salva padrão do quadro, ou null. Veja SavedView.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)BoardObrigatórioUm objeto Board.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
409Outro quadro já usa esta chave (`duplicate_board_key`).
curl -sS -X PATCH "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "key": "PLAT"
  }'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
POST/v1/plan/boards/{board_id}/archive/BetaCLI Auth

Arquivar um quadro, em cascata para as suas tarefas

Arquiva o quadro e, com ele, suas tarefas. A chave do quadro continua reservada, então nunca é reutilizada. Envie ?dry_run=true antes para ver a consequência sem arquivar; restaure o quadro com o endpoint de restauração.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
dry_runbooleanOpcionalMostra a consequência sem executá-la. A resposta tem o mesmo formato, {operation, dry_run, reversible, restore_path, consequence, affects}, mas nada é gravado e nenhum evento é emitido. Mostre consequence a uma pessoa antes de agir.

Cabeçalhos

NomeTipoObrigatórioDescrição
Idempotency-KeystringOpcionalUma chave que você gera para esta intenção. Uma repetição com a mesma chave e o mesmo corpo retorna a primeira resposta sem um segundo efeito colateral e traz Idempotency-Replayed: true. As chaves são mantidas por 24 horas. A mesma chave com um corpo diferente é 409 idempotency_key_payload_mismatch; uma repetição enquanto a primeira chamada ainda está em execução recebe 409 idempotency_in_progress por até 120 segundos.
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Objeto DryRunPreview

O que a chamada responde com ?dry_run=true: a consequência, sem executá-la. Nada é gravado e nenhum evento é emitido.

NomeTipoObrigatórioDescrição
operationstringObrigatórioA operação que seria executada.
dry_runbooleanObrigatórioSempre true.
reversiblebooleanObrigatórioSe a operação pode ser desfeita.
restore_pathstring | nullObrigatórioO caminho que a desfaria, ou null quando não há nenhum.
consequencestringObrigatórioUma frase para mostrar a uma pessoa antes de agir. Descreve o efeito em cascata em vez de resumi-lo.
affectsobjectObrigatórioO que a operação afetaria, como contagens (inteiros) por tipo.
would_refusebooleanOpcionalSomente ao arquivar um estado do fluxo de trabalho: true quando a chamada real seria recusada.
refusal_codestringOpcionalSomente ao arquivar um estado do fluxo de trabalho: o código de erro com que a chamada real responderia.

Resposta

NomeTipoObrigatórioDescrição
(body)Board | DryRunPreviewObrigatórioUm objeto Board. Com ?dry_run=true, um objeto DryRunPreview no lugar.

Erros

StatusQuando
400O nome do agente não é válido (`invalid_agent_attribution`).
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/archive/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
POST/v1/plan/boards/{board_id}/restore/BetaCLI Auth

Restaurar um quadro arquivado

O inverso de arquivar. A chave do quadro nunca foi retirada: ela continua reservada ao arquivar e restaurar. Tarefas arquivadas em cascata continuam arquivadas; restaure-as com POST …/tasks/{task_id}/restore/. Restaurar consome uma vaga do direito de criação de quadros (arquivar libera uma).

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
Idempotency-KeystringOpcionalUma chave que você gera para esta intenção. Uma repetição com a mesma chave e o mesmo corpo retorna a primeira resposta sem um segundo efeito colateral e traz Idempotency-Replayed: true. As chaves são mantidas por 24 horas. A mesma chave com um corpo diferente é 409 idempotency_key_payload_mismatch; uma repetição enquanto a primeira chamada ainda está em execução recebe 409 idempotency_in_progress por até 120 segundos.
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)BoardObrigatórioUm objeto Board.

Erros

StatusQuando
400O nome do agente não é válido (`invalid_agent_attribution`).
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para a sua organização (`plan_upgrade_required`), ou não há vaga de quadro livre (`task_boards_limit_reached`).
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/restore/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
POST/v1/plan/boards/{board_id}/visit/BetaCLI Auth

Registrar que quem chama abriu um quadro (recent_boards do HomePulse)

Cria ou atualiza o timestamp da última visita de quem chama a este quadro. POSTs repetidos atualizam visited_at e nunca criam linhas duplicadas. Exige uma pessoa: uma sessão iniciada ou uma API key pessoal (keys de agente e da organização são recusadas). A autorização segue o acesso de leitura ao quadro: quadros inexistentes e de outra organização compartilham o mesmo 404.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Objeto BoardVisit

NomeTipoObrigatórioDescrição
boarduuidObrigatórioO quadro.
visited_atdate-timeObrigatórioQuando você abriu o quadro pela última vez.

Resposta

NomeTipoObrigatórioDescrição
(body)BoardVisitObrigatórioUm objeto BoardVisit.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/visit/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:write`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/boards/{board_id}/states/BetaChave de APICLI Auth

Listar os estados de um quadro, na ordem das colunas

Os estados do fluxo de trabalho do quadro (suas colunas), ordenados por posição. Cada um tem uma category (como in_progress) que se mantém quando o estado é renomeado. Adicione include_archived=true para ver os estados arquivados.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
include_archivedbooleanOpcionalIncluir linhas arquivadas junto com as ativas. Diferente de is_archived, que seleciona um conjunto ou o outro: include_archived=true é a união. As listas retornam linhas ativas, a menos que você opte pelo contrário.

Resposta

NomeTipoObrigatórioDescrição
(body)array<WorkflowState>ObrigatórioUm array JSON de objetos WorkflowState.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/states/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
POST/v1/plan/boards/{board_id}/states/BetaCLI Auth

Adicionar um estado a um quadro

category é um de cinco valores fixos e nunca muda após a criação; name é livre e pode ser renomeado. A categoria é o que responde "isto está concluído?".

position insere naquele lugar, com base 1 entre as colunas ativas: a coluna que ocupava a posição e todas as seguintes se deslocam para a direita. Uma posição além do fim vai para o fim.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
Idempotency-KeystringOpcionalUma chave que você gera para esta intenção. Uma repetição com a mesma chave e o mesmo corpo retorna a primeira resposta sem um segundo efeito colateral e traz Idempotency-Replayed: true. As chaves são mantidas por 24 horas. A mesma chave com um corpo diferente é 409 idempotency_key_payload_mismatch; uma repetição enquanto a primeira chamada ainda está em execução recebe 409 idempotency_in_progress por até 120 segundos.
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
namestringObrigatórioNome de exibição. Máx. 48 caracteres.
categoryenumObrigatórioUma das cinco categorias fixas. Nunca muda após a criação. Um de backlog, todo, in_progress, done, canceled.
positionintegerOpcionalPosição da coluna entre as colunas ativas, a partir de 1, da esquerda para a direita. 0 e 1 significam a primeira coluna, e um valor além do fim fica por último. Omita-o para adicionar o novo estado no fim. Mínimo 0.
colorstringOpcionalCor de exibição (hex).
is_defaultbooleanOpcionalSe novas tarefas entram neste estado por padrão.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)WorkflowStateObrigatórioUm objeto WorkflowState.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
409Conflito. O `code` da resposta indica qual (por exemplo, `version_conflict`).
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/states/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "In review",
    "category": "in_progress",
    "position": 3
  }'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
PATCH/v1/plan/boards/{board_id}/states/{state_id}/BetaCLI Auth

Renomear, mudar a cor ou reordenar um estado

Os campos permitidos são apenas name, color e position. Campos desconhecidos são recusados com 400 (nunca ignorados silenciosamente). category não pode mudar depois da criação.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
state_idstringObrigatórioO uuid do estado.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
namestringOpcionalNome de exibição. Máx. 48 caracteres.
positionintegerOpcionalPosição da coluna entre as colunas ativas, a partir de 1, da esquerda para a direita. 0 e 1 significam a primeira coluna, e um valor além do fim fica por último. Mínimo 0.
colorstringOpcionalCor de exibição (hex).
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)WorkflowStateObrigatórioUm objeto WorkflowState.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X PATCH "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/states/00000000-0000-4000-8000-000000000003/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Code review"
  }'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
POST/v1/plan/boards/{board_id}/states/{state_id}/archive/BetaCLI Auth

Aposentar uma coluna

Recusado com 409 state_in_use enquanto houver tarefas ativas na coluna, a menos que o corpo indique migrate_to — outro estado ativo no mesmo quadro que recebe todos os cards em uma única atualização em massa antes que a coluna seja arquivada.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
state_idstringObrigatórioO uuid do estado.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
dry_runbooleanOpcionalMostra a consequência sem executá-la. A resposta tem o mesmo formato, {operation, dry_run, reversible, restore_path, consequence, affects}, mas nada é gravado e nenhum evento é emitido. Mostre consequence a uma pessoa antes de agir.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
migrate_touuidOpcionalOutro estado ativo no mesmo quadro que recebe todas as tarefas da coluna antes que ela seja arquivada.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)WorkflowState | DryRunPreviewObrigatórioUm objeto WorkflowState. Com ?dry_run=true, um objeto DryRunPreview no lugar.

Erros

StatusQuando
400O nome do agente não é válido (`invalid_agent_attribution`).
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
409Ainda há tarefas ativas na coluna (`state_in_use`). Envie `migrate_to` para movê-las primeiro.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/states/00000000-0000-4000-8000-000000000003/archive/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "migrate_to": "00000000-0000-4000-8000-000000000004"
  }'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
POST/v1/plan/boards/{board_id}/states/{state_id}/restore/BetaCLI Auth

Restaurar uma coluna retirada

O inverso de arquivar. A coluna volta depois das colunas ativas, e um segundo POST em uma coluna ativa é um no-op 200. Leia-a com GET …/states/?include_archived=true enquanto ainda estiver retirada.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
state_idstringObrigatórioO uuid do estado.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)WorkflowStateObrigatórioUm objeto WorkflowState.

Erros

StatusQuando
400O nome do agente não é válido (`invalid_agent_attribution`).
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/states/00000000-0000-4000-8000-000000000003/restore/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
POST/v1/plan/boards/{board_id}/states/reorder/BetaCLI Auth

Reordenar todas as colunas ativas de um quadro em uma chamada

O corpo { "order": [state_uuid, …] } deve listar todas as colunas ativas do quadro exatamente uma vez, na ordem desejada da esquerda para a direita. Listas parciais, uuids desconhecidos e duplicados retornam 400 states_reorder_invalid. Emite state.reordered para cada coluna. Para definir uma visualização padrão do quadro (ou removê-la), use PATCH /boards/{board_id}/ com default_view; não há um endpoint separado para tornar padrão.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
orderarrayObrigatórioO uuid de cada coluna ativa exatamente uma vez, da esquerda para a direita. Itens: uuid.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)array<WorkflowState>ObrigatórioUm array JSON de objetos WorkflowState.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/states/reorder/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "order": [
      "00000000-0000-4000-8000-000000000003",
      "00000000-0000-4000-8000-000000000004"
    ]
  }'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/boards/{board_id}/board/BetaChave de APICLI Auth

O quadro inteiro — estados e suas tarefas — em uma única ida e volta

Uma chamada renderiza um quadro: uma entrada em groups por coluna, na ordem das colunas, cada uma com suas primeiras tarefas em ordem de rank, o task_count real da coluna e has_more. Pagine o restante de uma coluna com GET /v1/plan/tasks/?board=…&state=….

Guarde delta_cursor e passe a usar o feed de mudanças em todas as leituras seguintes. Responde a If-None-Match com 304. …/snapshot/ é um alias com a mesma resposta. Parâmetros de consulta desconhecidos e valores de filtro inválidos resultam em 400 invalid_filter_value.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Parâmetros de consulta

Filtros

NomeTipoObrigatórioDescrição
group_bystringOpcionalAgrupar o snapshot por outra dimensão em vez do estado. O agrupamento existe apenas no snapshot: agrupar uma lista paginada bifurcaria seu envelope.
tasks_per_stateintegerOpcionalQuantas tarefas incluir por coluna. Máximo de 50, mais restrito que o habitual de 100 porque esta leitura traz etiquetas para cada card.
ownerarrayOpcionalUm uuid de usuário, me ou unowned. Repetível; os valores são combinados com OR, incluindo os tokens: owner=me&owner=unowned retorna suas tarefas e as que não têm responsável. me com uma key de agente ou da organização é 400 actor_required.
labelarrayOpcionalUuids de etiquetas: somente v4, no máximo 50, igual ao limite atual do filtro de etiquetas compartilhado. Um valor que não seja v4 é 400 invalid_label_filter.
priorityarrayOpcional1=urgente, 2=alta, 3=média, 4=baixa, 5=nenhuma. Repetível.
blockedbooleanOpcionalDerivado das relações, não de um status. Esta é a consulta que o produto responde com um vínculo em vez de um estado. blocked=true significa um bloqueador ativo: uma relação blocks cuja tarefa de origem não está arquivada nem em uma categoria terminal. Um bloqueador que está ele mesmo done ou canceled não bloqueia nada e não corresponde. Independente do ciclo de vida. Uma tarefa concluída ainda pode ter um bloqueador ativo, então blocked=true sozinho também retorna linhas terminais. O trabalho sobre o qual uma pessoa pode agir é blocked=true&state=open: essa combinação é o que reproduz o bloco blocked em GET /v1/plan/pulse/.
searchstringOpcionalCorresponde ao título e à chave. Mais de 256 caracteres é 400 search_query_too_long, sem truncamento. q é um alias.

Datas

NomeTipoObrigatórioDescrição
due_beforestringOpcionalInclusivo. Sozinho, significa atrasada ou com prazo até essa data - não exclui trabalho que já foi concluído. Atrasado se escreve due_before=<today>&state=open. Essa combinação é a forma suportada, é o que reproduz o bloco overdue em GET /v1/plan/pulse/, e deliberadamente não existe o atalho state=overdue: state é uma dimensão de ciclo de vida e atraso é uma dimensão de data, então uma única forma evita que as duas divirjam. state=overdue responde 400 invalid_filter_value, o que diz respeito a essa forma de escrever e não à capacidade.
due_afterstringOpcionalInclusivo.

Cabeçalhos

NomeTipoObrigatórioDescrição
If-None-MatchstringOpcionalO ETag da sua leitura anterior. Uma correspondência responde 304.

Objeto BoardSnapshot

NomeTipoObrigatórioDescrição
boardBoardObrigatórioO quadro. Veja Board.
generated_atdate-timeObrigatórioQuando a resposta foi calculada.
delta_cursordate-timeObrigatórioPasse-o como updated_since para o feed de mudanças.
group_bystringOpcionalA dimensão de agrupamento.
groupsarrayObrigatórioUma entrada por coluna (ou grupo), em ordem. Sempre presentes: key, task_count, has_more, tasks. Itens: {key: string, name: string, category: string|null, position: integer|null, color: string|null, task_count: integer, has_more: boolean, tasks: array}.
viewerobjectOpcionalO que você pode fazer com esta linha. Formato: {is_member, can_see_content, can_manage} (all required).

Resposta

NomeTipoObrigatórioDescrição
(body)BoardSnapshotObrigatórioUm objeto BoardSnapshot.

Erros

StatusQuando
304Sem mudanças: o ETag que você enviou em `If-None-Match` ainda corresponde.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/board/?tasks_per_state=25" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
GET/v1/plan/boards/{board_id}/delta/BetaChave de APICLI Auth

O que mudou neste quadro desde um timestamp. NÃO é paginação

Um feed de mudanças, não uma página: sem count, next ou previous. Envie o cursor da sua resposta anterior (ou o delta_cursor do snapshot) literalmente como updated_since; nunca o calcule a partir do seu próprio relógio.

A entrega é pelo menos uma vez, então uma linha gravada no mesmo instante do seu cursor é enviada de novo em vez de se perder. As entradas são compactadas em uma por tarefa (a linha atual prevalece). states é null a menos que uma coluna tenha sido criada, renomeada, reordenada ou arquivada; quando vier preenchido, substitua toda a sua lista de colunas.

Consulte de novo após poll_after_seconds (15 s, dobrando até 120 s enquanto o quadro está parado, reiniciando a cada mudança). Pause enquanto a página estiver oculta e atualize quando ela voltar a ficar visível. Se truncated for true, consulte de novo imediatamente. Cursores com mais de 7 dias retornam 400 delta_window_expired: leia o snapshot de novo. Polling é o transporte da v1.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
updated_sincestringObrigatórioO cursor do seu delta anterior, ou o delta_cursor de um snapshot do quadro. Valores com mais de 7 dias são recusados com delta_window_expired. since é aceito como alias obsoleto para clientes antigos; envie updated_since.
limitintegerOpcionalMáximo de entradas em changed.

Objeto BoardDelta

NomeTipoObrigatórioDescrição
sincedate-timeObrigatórioO updated_since que você enviou.
cursordate-timeObrigatórioEnvie-o como updated_since na sua próxima consulta.
changedarray<Task>ObrigatórioTarefas que mudaram, uma entrada por tarefa. Veja Task.
removedarrayObrigatórioTarefas que saíram do quadro, com um reason como archived. Itens: {uuid, key, reason}.
statesarray | nullOpcionalOs estados do quadro, na ordem das colunas.
truncatedbooleanObrigatóriotrue quando há mais mudanças esperando: consulte de novo imediatamente.
poll_after_secondsintegerObrigatórioQuando consultar de novo, sugerido pelo servidor (15 a 120 segundos). Uma sugestão, não é imposta. De 15 a 120.

Objeto Task

NomeTipoObrigatórioDescrição
uuiduuidObrigatórioIdentificador público estável.
keystringObrigatórioChave legível KEY-n, por exemplo ENG-142. Chaves aposentadas continuam resolvendo.
titlestringObrigatórioO título da tarefa. Máx. 255 caracteres.
descriptionstring | nullOpcionalDescrição livre.
boarduuidOpcionalO quadro.
stateWorkflowStateObrigatórioO estado da tarefa (sua coluna). Veja WorkflowState.
priorityintegerOpcional1 urgente, 2 alta, 3 média, 4 baixa, 5 nenhuma. De 1 a 5.
estimateinteger | nullOpcionalEstimativa na escala do quadro.
ownerUserRef | nullOpcionalA pessoa responsável pela tarefa. Veja UserRef.
executorActorRef | nullOpcionalO ator que faz o trabalho, quando diferente do responsável (por exemplo, um agente). Veja ActorRef.
executorsobject[]OpcionalCada agente que executou uma escrita nesta tarefa em nome de alguém, do mais recente ao mais antigo: {uuid, name, username, avatar, first_at, last_at}. É separado de executor, que continua sendo quem está com a bola agora. Somente no detalhe da tarefa e nas respostas de escrita de uma única tarefa; não vem nas linhas de listas.
participant_countintegerOpcionalNúmero de participantes.
start_datedate | nullOpcionalData de início planejada.
due_datedate | nullOpcionalData de vencimento.
milestonenull | {uuid, name, date}OpcionalO marco para o qual esta tarefa conta. Todos os campos estão sempre presentes.
parent_tasknull | {uuid, key, title}OpcionalA tarefa pai, no caso de uma subtarefa. Apenas um nível de aninhamento. Todos os campos estão sempre presentes.
subtask_countintegerOpcionalNúmero de subtarefas.
subtask_done_countintegerOpcionalNúmero de subtarefas concluídas.
attachment_countintegerOpcionalNúmero de anexos.
open_blocker_countintegerOpcionalNúmero de bloqueios ativos.
labelsarray<Label>OpcionalEtiquetas da organização na tarefa. Veja Label.
rankstring | nullOpcionalOrdem opaca dentro da coluna. Nunca a calcule: mova com after / before.
blockedbooleanOpcionalTarefas com um bloqueio ativo.
blocked_sincedate-time | nullOpcionalQuando a tarefa ficou bloqueada.
completed_atdate-time | nullOpcionalQuando foi concluído, ou null.
is_archivedbooleanObrigatórioSe a linha está arquivada. Arquivar é a exclusão: linhas arquivadas continuam legíveis e restauráveis.
subscribedbooleanOpcionalSe você observa esta tarefa.
versionintegerObrigatórioIncrementa a cada escrita. Envie-o de volta como If-Match para recusar uma atualização desatualizada.
created_byActorRef | nullOpcionalQuem criou a linha. Veja ActorRef.
created_atdate-timeOpcionalQuando a linha foi criada.
updated_atdate-timeOpcionalQuando a linha mudou pela última vez.

Objeto ActorRef

NomeTipoObrigatórioDescrição
kindstringObrigatório—
uuidstringObrigatórioIdentificador público estável.
namestringOpcionalNome de exibição.
usernamestring | nullOpcional—
avatar_urlstring | nullOpcional—
has_photobooleanOpcional—

Objeto Label

NomeTipoObrigatórioDescrição
uuiduuidObrigatórioIdentificador público estável.
namestringObrigatórioNome de exibição. Máx. 64 caracteres.
colorstringOpcionalCor de exibição (hex).

Resposta

NomeTipoObrigatórioDescrição
(body)BoardDeltaObrigatórioUm objeto BoardDelta.

Erros

StatusQuando
400O cursor tem mais de 7 dias (`delta_window_expired`): leia o snapshot do quadro de novo. Também retornado para um `updated_since` malformado.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/delta/?updated_since=2026-09-25T10:14:02.113954Z" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 240 consultas ao feed de mudanças por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
GET/v1/plan/boards/{board_id}/views/BetaCLI AuthPaginação por número de página

As visualizações salvas de quem chama para este quadro

Suas visualizações salvas para este quadro. As visualizações são pessoais. Exige uma pessoa: keys de agente e da organização são recusadas; uma API key pessoal funciona.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Resposta

NomeTipoObrigatórioDescrição
countintegerObrigatórioNúmero total de linhas.
nexturiObrigatórioURL da próxima página, ou null.
previousuriObrigatórioURL da página anterior, ou null.
resultsarray<SavedView>ObrigatórioAs linhas desta página. Veja SavedView.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/views/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
PUT/v1/plan/boards/{board_id}/views/BetaCLI Auth

Substituir as visualizações salvas de quem chama para este quadro

Substitui todo o seu array de visualizações salvas, e é por isso que If-Match é obrigatório: sem ele, dois salvamentos simultâneos descartariam silenciosamente a visualização um do outro.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
If-MatchstringObrigatórioO ETag que você recebeu de GET .../views/, entre aspas. Obrigatório, porque este PUT substitui o array inteiro: sem uma precondição, dois salvamentos simultâneos descartam silenciosamente a visualização um do outro. Um validador desatualizado é 412 precondition_failed; um ausente é 428 precondition_required.
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)array<SavedView>ObrigatórioUm array JSON de objetos SavedView.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
412O validador `If-Match` está desatualizado (`precondition_failed`). Leia de novo e tente outra vez.
428`If-Match` é obrigatório (`precondition_required`).
curl -sS -X PUT "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/views/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "If-Match: $VIEWS_ETAG" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "name": "My open work",
      "view_mode": "board",
      "group_by": "state",
      "sort": "-updated_at",
      "filters": {
        "owner": [
          "me"
        ],
        "state": [
          "open"
        ]
      }
    }
  ]'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:write`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/boards/{board_id}/mentionables/BetaCLI Auth

Pesquisar pessoas que podem ser mencionadas em um quadro

A lista para os seletores de responsável e participantes, com busca por q (nome, handle ou id externo, nunca um endereço de e-mail completo). Não use a lista de membros para os seletores: ela só mostra permissões explícitas e costuma estar vazia em quadros visíveis para toda a organização.

Pessoas que não podem ver o quadro nunca aparecem, mesmo quando correspondem a q, assim como a regra que as recusa como responsáveis ou participantes (participant_cannot_access_board). limit (25 por padrão) e offset percorrem toda a lista em uma ordem estável.

As linhas são {uuid, name, handle, avatar_url, has_photo, kind}, sem e-mail. avatar_url e has_photo significam o mesmo que no responsável de uma tarefa: quando has_photo é false, mostre as iniciais; em uma linha agent eles são null e false. Identifique os chips de menção pelo uuid, nunca pelo handle: o handle não é único dentro de uma organização, então mostre name para diferenciar. kinds=agent lista os agentes do espaço de trabalho, mas ainda não é possível mencionar um agente; não monte uma menção a partir de uma linha agent.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
qstringOpcionalCorresponde ao nome, ao handle ou a um id externo, nunca a um endereço de e-mail completo.
limitintegerOpcionalTamanho da página. Limitado ao máximo que a resposta devolve; valores inválidos são ignorados em vez de recusados, porque este é um campo de autocomplete e um 400 aqui quebraria o seletor com uma tecla digitada sem querer.
offsetintegerOpcionalLinhas a pular, sobre a ordenação determinística full_name, id, para que o limite de uma página não possa omitir nem repetir ninguém.
kindsstringOpcionaluser, agent separados por vírgula. Ausente significa somente usuários, então quem chama sem pedir agentes vê exatamente o que via antes. Um token não reconhecido é descartado, não recusado.

Objeto MentionableList

NomeTipoObrigatórioDescrição
limitintegerObrigatórioTamanho de página aplicado.
resultsarray<Mentionable>ObrigatórioAs linhas desta página. Veja Mentionable.

Objeto Mentionable

NomeTipoObrigatórioDescrição
uuiduuidObrigatórioO uuid da pessoa. Identifique os chips de menção por ele.
namestringObrigatórioNome de exibição. Mostre-o para diferenciar pessoas com o mesmo handle.
handlestring | nullObrigatórioHandle, se a pessoa tiver um. Não é único dentro de uma organização.
avatar_urlstring | nullObrigatórioURL da imagem de avatar, igual à do responsável de uma tarefa. null em uma linha de agente.
has_photobooleanObrigatóriofalse significa que não há foto: mostre as iniciais. Sempre false em uma linha de agente.
kindenumObrigatórioSe a linha é uma pessoa ou um agente. Um de user, agent.

Resposta

NomeTipoObrigatórioDescrição
(body)MentionableListObrigatórioUm objeto MentionableList.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/mentionables/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/boards/{board_id}/members/BetaChave de APICLI AuthPaginação por número de página

Membros de um quadro

Somente concessões explícitas de associação, nunca a lista completa da organização, por isso quadros visíveis para a organização muitas vezes retornam uma lista vazia. Use-a para gerenciar quem pode ver um quadro somente para membros; para seletores, use …/mentionables/. Um administrador da organização pode ler esta lista sem passar a ver as tarefas do quadro.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
pageintegerOpcionalNúmero da página, começando em 1.
page_sizeintegerOpcionalLinhas por página. Padrão 50, máximo 100. Valores fora do intervalo são ajustados, nunca rejeitados: pedir 500 retorna 100.

Objeto BoardMember

NomeTipoObrigatórioDescrição
subject_typeenumObrigatórioUm de user, team.
user_uuiduuid | nullOpcionalO uuid de usuário da pessoa.
uuiduuid | nullOpcionalIdentificador público estável.
full_namestringOpcional—
namestringOpcionalNome de exibição.
roleenum | nullOpcionalPapel do participante. Um de admin, member, guest.
team_uuiduuid | nullOpcionalO uuid de um time, em vez de user_uuid. Cria uma única permissão de time viva: quem entrar no time depois fica dentro, e quem sair fica fora.
team_namestringOpcional—
added_atdate-timeObrigatório—
added_by_uuiduuid | nullOpcional—

Resposta

NomeTipoObrigatórioDescrição
countintegerObrigatórioNúmero total de linhas.
nexturiObrigatórioURL da próxima página, ou null.
previousuriObrigatórioURL da página anterior, ou null.
resultsarray<BoardMember>ObrigatórioAs linhas desta página. Veja BoardMember.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/members/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
POST/v1/plan/boards/{board_id}/members/BetaCLI Auth

Adicionar um membro a um quadro

A forma deliberada e visível de dar a uma pessoa (user_uuid) ou a um time (team_uuid) acesso a um quadro restrito a membros: envie exatamente um dos dois; os dois ou nenhum é 400 invalid_filter_value. Uma permissão de time é viva: quem entrar no time depois fica dentro, e quem sair fica fora. Grava um evento board.member_added que os membros do quadro podem ver. Adicionar um membro existente retorna 200 com a linha existente. Não há papéis por quadro. Todo membro não convidado pode chamá-lo (com uma sessão iniciada ou uma API key pessoal); uma key de agente ou da organização recebe 403 insufficient_scope.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
Idempotency-KeystringOpcionalUma chave que você gera para esta intenção. Uma repetição com a mesma chave e o mesmo corpo retorna a primeira resposta sem um segundo efeito colateral e traz Idempotency-Replayed: true. As chaves são mantidas por 24 horas. A mesma chave com um corpo diferente é 409 idempotency_key_payload_mismatch; uma repetição enquanto a primeira chamada ainda está em execução recebe 409 idempotency_in_progress por até 120 segundos.
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
user_uuiduuidOpcionalO uuid de usuário da pessoa.
team_uuiduuidOpcionalO uuid de um time, em vez de user_uuid. Cria uma única permissão de time viva: quem entrar no time depois fica dentro, e quem sair fica fora.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)BoardMemberObrigatórioUm objeto BoardMember.

Erros

StatusQuando
400Envie exatamente um de `user_uuid` e `team_uuid`; os dois ou nenhum é `invalid_filter_value`. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/members/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "user_uuid": "00000000-0000-4000-8000-00000000000c"
  }'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
DELETE/v1/plan/boards/{board_id}/members/{user_id}/BetaCLI Auth

Remover um membro de um quadro

Emite board.member_removed. Remover o último membro de um quadro somente para membros é recusado com 409 last_grant_cannot_be_removed, porque um quadro privado sem membros não poderia ser lido por ninguém. Exige uma pessoa: keys de agente e da organização são recusadas; uma API key pessoal funciona.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
user_idstringObrigatórioO uuid de usuário do membro.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Erros

StatusQuando
400O nome do agente não é válido (`invalid_agent_attribution`).
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
409Este é o último membro de um quadro somente para membros (`last_grant_cannot_be_removed`).
curl -sS -X DELETE "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/members/00000000-0000-4000-8000-00000000000c/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
PATCH/v1/plan/boards/{board_id}/members/{user_id}/BetaCLI Auth

Inspecionar uma concessão de associação a um quadro (o papel é somente leitura)

A associação a quadros não tem coluna de papel: papéis da organização mais a visibilidade do quadro formam o modelo de acesso. Enviar role retorna 400. Um PATCH vazio retorna a linha de concessão atual.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
user_idstringObrigatórioO uuid de usuário do membro.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)BoardMemberObrigatórioUm objeto BoardMember.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X PATCH "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/members/00000000-0000-4000-8000-00000000000c/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/boards/{board_id}/labels/BetaCLI Auth

Listar etiquetas da organização (verificação de acesso ao quadro)

As etiquetas da organização, por trás da verificação de acesso deste quadro, para que as configurações do quadro possam gerenciá-las sem sair da API do Plan. Aplique etiquetas aos cards com o PATCH da tarefa, o endpoint de etiquetas em lote ou o set_labels em massa.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
pageintegerOpcionalNúmero da página, começando em 1.
page_sizeintegerOpcionalLinhas por página. Padrão 50, máximo 100. Valores fora do intervalo são ajustados, nunca rejeitados: pedir 500 retorna 100.
searchstringOpcionalCorrespondência de substring sem diferenciar maiúsculas e minúsculas, só no nome da etiqueta. Vazio significa sem filtro; um valor sem correspondências retorna uma lista vazia.
include_archivedbooleanOpcionalIncluir linhas arquivadas junto com as ativas. Diferente de is_archived, que seleciona um conjunto ou o outro: include_archived=true é a união. As listas retornam linhas ativas, a menos que você opte pelo contrário.

Resposta

NomeTipoObrigatórioDescrição
resultsarray<Label>ObrigatórioAs linhas desta página.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/labels/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
POST/v1/plan/boards/{board_id}/labels/BetaCLI Auth

Criar uma etiqueta da organização

Cria uma etiqueta da organização a partir das configurações de um quadro, atrás da verificação de acesso desse quadro. A etiqueta pertence à organização, então todos os quadros podem usá-la.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
namestringObrigatórioNome de exibição.
colorstringOpcionalCor de exibição (hex).
descriptionstringOpcionalDescrição livre.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)LabelObrigatórioUm objeto Label.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/labels/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "backend",
    "color": "#2563eb"
  }'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:write`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/views/{view_id}/BetaCLI Auth

Uma visualização salva por uuid

Pode ser lida quando é a sua própria visualização, ou uma visualização shared ou board_default de um quadro que você pode ver. Qualquer outra, inclusive a visualização pessoal de outra pessoa, é 404, nunca 403.

Parâmetros de rota

NomeTipoObrigatórioDescrição
view_iduuidObrigatórioO uuid da visualização salva.

Resposta

NomeTipoObrigatórioDescrição
(body)SavedViewObrigatórioUm objeto SavedView.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS "https://api.dailybot.com/v1/plan/views/{view_id}/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
PATCH/v1/plan/views/{view_id}/BetaCLI Auth

Editar uma visualização salva

Parcial: só mudam os campos que você envia; campos desconhecidos são recusados. Tornar uma visualização shared ou board_default, ou editar uma que já é, exige quem administra o quadro; caso contrário, 403 view_visibility_forbidden.

Parâmetros de rota

NomeTipoObrigatórioDescrição
view_iduuidObrigatórioO uuid da visualização salva.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
namestringOpcionalNome de exibição. Máx. 64 caracteres.
view_modeenumOpcionalComo o conjunto filtrado é desenhado. kanban é aceito como alias de board. Um de list, board, kanban, timeline, calendar.
group_byenumOpcionalA dimensão de agrupamento. Um de state, owner, priority, category.
sortstringOpcionalUma chave de ordenação, com prefixo - para ordem decrescente.
filtersobjectOpcionalOs filtros da visualização, na gramática compartilhada de filtros de tarefas.
schema_versionintegerOpcionalVersão do formato salvo da visualização.
visibilityenumOpcionalpersonal, shared ou board_default. shared e board_default exigem quem administra o quadro nas visualizações de quadro, e supervisão do projeto (um administrador da organização ou quem gerencia todos os seus times) nas visualizações de projeto; caso contrário, 403 view_visibility_forbidden. Um de personal, shared, board_default.
collapsedobject | array | string | number | booleanOpcionalEstado da interface do cliente salvo como está (quais grupos estão recolhidos). Só o tamanho e a profundidade são validados.
columnsobject | array | string | number | booleanOpcionalEstado da interface do cliente salvo como está (quais colunas são exibidas). Só o tamanho e a profundidade são validados.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)SavedViewObrigatórioUm objeto SavedView.

Erros

StatusQuando
400A validação falhou, ou um valor de filtro, ordenação ou `include` não foi reconhecido. O `code` da resposta indica qual. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X PATCH "https://api.dailybot.com/v1/plan/views/{view_id}/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:write`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
DELETE/v1/plan/views/{view_id}/BetaCLI Auth

Excluir uma visualização salva

Permanente. Excluir uma visualização shared ou board_default exige quem administra o quadro; caso contrário, 403 view_visibility_forbidden.

Parâmetros de rota

NomeTipoObrigatórioDescrição
view_iduuidObrigatórioO uuid da visualização salva.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Erros

StatusQuando
400O nome do agente não é válido (`invalid_agent_attribution`).
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Autenticado, mas sem permissão: falta o scope (`insufficient_scope`, que é também o que uma key de agente ou da organização recebe em uma operação que exige uma pessoa, e o que uma key pessoal recebe quando seus scopes de Plan explícitos não cobrem o endpoint) ou é uma conta de convidado (`guest_not_allowed`).
404Não encontrado ou não visível para você. Os dois casos retornam o mesmo corpo.
curl -sS -X DELETE "https://api.dailybot.com/v1/plan/views/{view_id}/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:write`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/boards/{board_id}/attachments/BetaChave de APICLI AuthPaginação por número de página

Listar os anexos do quadro

Os anexos prontos do quadro, ordenados por posição, como uma página. Qualquer pessoa que possa ver o quadro pode listá-los; um quadro que você não pode ver é 404. Cada url é um link de download: não o guarde, mantenha o uuid do anexo e leia de novo quando precisar do arquivo.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
pageintegerOpcionalNúmero da página, começando em 1.
page_sizeintegerOpcionalLinhas por página. Padrão 50, máximo 100. Valores fora do intervalo são ajustados, nunca rejeitados: pedir 500 retorna 100.

Objeto TaskAttachment

NomeTipoObrigatórioDescrição
uuiduuidObrigatórioIdentificador público estável.
filenamestringObrigatórioNome do arquivo.
content_typestringObrigatórioTipo MIME.
sizeintegerObrigatórioTamanho em bytes.
urlstringObrigatórioOnde baixar o arquivo.
thumbnail_urluri | nullOpcionalMiniatura para imagens.
widthinteger | nullOpcional—
heightinteger | nullOpcional—
statusenumObrigatórioStatus atual. Um de pending, ready, scanning, rejected.
uploaded_byActorRef | nullOpcionalQuem enviou o arquivo. Veja ActorRef.
executed_by_agentobject | nullOpcionalO agente que executou isto em nome da pessoa, ou null quando nenhum foi nomeado: um objeto com uuid, name, username e avatar. A pessoa do campo de autor continua sendo a autora; o agente é mostrado como quem executou.
created_atdate-timeObrigatórioQuando a linha foi criada.

Objeto ActorRef

NomeTipoObrigatórioDescrição
kindstringObrigatório—
uuidstringObrigatórioIdentificador público estável.
namestringOpcionalNome de exibição.
usernamestring | nullOpcional—
avatar_urlstring | nullOpcional—
has_photobooleanOpcional—

Resposta

NomeTipoObrigatórioDescrição
countintegerObrigatórioNúmero total de linhas.
nexturiObrigatórioURL da próxima página, ou null.
previousuriObrigatórioURL da página anterior, ou null.
resultsarray<TaskAttachment>ObrigatórioA página de objetos TaskAttachment.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404O quadro não existe ou você não pode vê-lo (`not_found`), nunca um 403.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/attachments/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
POST/v1/plan/boards/{board_id}/attachments/BetaCLI Auth

Enviar um anexo para o quadro

Anexa um arquivo ao quadro em uma única requisição. Envie multipart/form-data com o campo file e um caption opcional; não há fluxo de presign aqui. O limite é 5 MiB: um arquivo maior é 400 attachment_too_large, com extra.max_size_bytes. O tipo do arquivo é verificado pelo conteúdo, com a mesma política dos anexos de projeto (400 attachment_invalid_type).

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
filebinaryObrigatórioO arquivo, como parte multipart.
captionstringOpcionalLegenda opcional, máx. 255 caracteres.

Resposta

NomeTipoObrigatórioDescrição
(body)TaskAttachmentObrigatórioUm objeto TaskAttachment.

Erros

StatusQuando
400O arquivo está ausente, é grande demais (`attachment_too_large`) ou de um tipo recusado (`attachment_invalid_type`), ou o quadro já tem o máximo de anexos (`attachment_limit_reached`). `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Você não é administrador da organização (`insufficient_scope`), ou é convidado (`guest_not_allowed`). Uma key de agente ou da organização também é recusada aqui.
404O quadro não existe ou você não pode vê-lo (`not_found`), nunca um 403.
curl -sS -X POST "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/attachments/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -F "file=@./roadmap.pdf" \
  -F "caption=Q4 roadmap"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
GET/v1/plan/boards/{board_id}/attachments/{attachment_id}/BetaChave de APICLI Auth

Obter um anexo do quadro

Um anexo do quadro. Qualquer pessoa que possa ver o quadro pode lê-lo.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
attachment_iduuidObrigatórioO uuid do anexo.

Resposta

NomeTipoObrigatórioDescrição
(body)TaskAttachmentObrigatórioUm objeto TaskAttachment.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404O quadro ou o anexo não existe ou você não pode vê-lo (`not_found`), nunca um 403.
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/attachments/00000000-0000-4000-8000-000000000009/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
GET/v1/plan/boards/{board_id}/attachments/{attachment_id}/content/BetaChave de APICLI Auth

Baixar os bytes de um anexo do quadro

Os bytes do arquivo, com o tipo de conteúdo registrado, pela API em vez do link de mídia. Um anexo cujo envio ainda não terminou é 409 attachment_not_ready.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
attachment_iduuidObrigatórioO uuid do anexo.

Resposta

NomeTipoObrigatórioDescrição
(body)binaryObrigatórioOs bytes do arquivo; Content-Type é o do anexo.

Erros

StatusQuando
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
404O quadro ou o anexo não existe ou você não pode vê-lo (`not_found`), nunca um 403.
409O anexo ainda não está pronto (`attachment_not_ready`).
curl -sS "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/attachments/00000000-0000-4000-8000-000000000009/content/" \
  -H "X-API-KEY: $DAILYBOT_API_KEY" \
  -o roadmap.pdf

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:read`.
  • Limite de requisições: 120 leituras por minuto por ator.
  • Funciona com uma sessão iniciada, um token de usuário da CLI, uma API key pessoal, ou uma key de agente ou da organização. Uma key pessoal vê o que sua pessoa vê; uma key de agente ou da organização atua como um ator de sistema e vê apenas quadros visíveis para a organização.
PATCH/v1/plan/boards/{board_id}/attachments/{attachment_id}/BetaCLI Auth

Renomear um anexo do quadro

Muda o nome de exibição do arquivo; os bytes guardados não mudam.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
attachment_iduuidObrigatórioO uuid do anexo.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Corpo da requisição

NomeTipoObrigatórioDescrição
filenamestringObrigatórioO novo nome do arquivo (1–255 caracteres). Os bytes guardados não mudam.
agent_namestringOpcionalO nome do agente que executou esta escrita em nome da pessoa (máx. 128 caracteres, vazio significa sem agente). Tem prioridade sobre o header X-Dailybot-Agent-Name. Veja Atribuição de agente.

Resposta

NomeTipoObrigatórioDescrição
(body)TaskAttachmentObrigatórioUm objeto TaskAttachment.

Erros

StatusQuando
400A validação falhou; o `code` da resposta indica qual campo. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Você não é administrador da organização (`insufficient_scope`), ou é convidado (`guest_not_allowed`). Uma key de agente ou da organização também é recusada aqui.
404O quadro ou o anexo não existe ou você não pode vê-lo (`not_found`), nunca um 403.
curl -sS -X PATCH "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/attachments/00000000-0000-4000-8000-000000000009/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "filename": "roadmap-q4.pdf"
}'

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.
DELETE/v1/plan/boards/{board_id}/attachments/{attachment_id}/BetaCLI Auth

Remover um anexo do quadro

Remove o anexo do quadro. Responde 204.

Parâmetros de rota

NomeTipoObrigatórioDescrição
board_idstringObrigatórioO uuid do quadro.
attachment_iduuidObrigatórioO uuid do anexo.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Dailybot-Agent-NamestringOpcionalO nome do agente que executou esta escrita em nome da pessoa. Use-o em escritas multipart e sem corpo (DELETE, arquivar, restaurar); em escritas JSON envie o campo agent_name do corpo, que vence se os dois vierem. Codifique o valor em percent-encoding (UTF-8). Caracteres de controle são removidos; um valor em branco significa sem agente. Mais de 128 caracteres, ou um valor que não pode ser decodificado, é 400 invalid_agent_attribution (nunca é truncado). Uma chave do tipo agente, que não está ligada a uma pessoa, recebe 400 invalid_agent_attribution se enviá-lo. O selo nunca altera uma resposta de permissão. Veja Atribuição de agente.

Erros

StatusQuando
400A validação falhou; o `code` da resposta indica qual campo. `invalid_agent_attribution` significa que o nome do agente não é válido.
401Credencial ausente, expirada ou malformada (`credential_absent`, `credential_expired`, `credential_malformed`).
402O Plan ainda não está habilitado para sua organização (`plan_upgrade_required`). É o esperado durante a Beta: escreva para [email protected].
403Você não é administrador da organização (`insufficient_scope`), ou é convidado (`guest_not_allowed`). Uma key de agente ou da organização também é recusada aqui.
404O quadro ou o anexo não existe ou você não pode vê-lo (`not_found`), nunca um 403.
curl -sS -X DELETE "https://api.dailybot.com/v1/plan/boards/00000000-0000-4000-8000-000000000002/attachments/00000000-0000-4000-8000-000000000009/" \
  -H "Authorization: Bearer $DAILYBOT_TOKEN"

Testar

Este é um ajudante apenas de cópia — a requisição não é enviada do seu navegador. Cole o comando no seu terminal para executá-lo.

  • Scope: `tasks:admin` — escritas em contêineres. Um membro não convidado pode chamá-lo com uma sessão iniciada ou uma API key pessoal (uma key com scopes de Plan explícitos precisa de `tasks:write`, que o cobre); uma key de agente ou da organização recebe `403 insufficient_scope`.
  • Limite de requisições: 60 escritas por minuto por ator.
  • Exige uma pessoa: chame com uma sessão iniciada, um token de usuário da CLI ou uma API key pessoal. Uma key de agente ou da organização recebe `403 insufficient_scope`.

Esta página é a referência de Plan · Quadros. Todos os endpoints ficam em https://api.dailybot.com/v1/plan/ e respondem JSON.

Autentique com uma sessão iniciada ou um token de usuário da CLI (Authorization: Bearer …), ou com uma API key (X-API-KEY). Uma API key pessoal age como sua pessoa e pode fazer tudo o que essa pessoa pode fazer no Dailybot; uma key de agente ou da organização nunca age como uma pessoa e é recusada nos endpoints que exigem uma. Em um endpoint, o selo API key significa que uma key de agente ou da organização também é aceita. Veja Autenticação do Plan, Autenticação e Erros para as regras comuns a todas as APIs do Dailybot.

Se é sua primeira vez com o Plan, leia a visão geral para entender o modelo: projetos, quadros, estados, chaves, ordem, versões e arquivamento.