MCP
Tools
Every tool on the MCP server, with each one's parameters.
Each tool acts as the person who authorized the connection, with their role in each project. In a connection with more than one company, every tool also accepts organization (the company's slug or name). Tool descriptions are in Portuguese, exactly as the MCP server sends them to agents.
whoami
tracker:readQuem sou eu
Mostra a pessoa conectada (com o idioma dela em user.locale: pt-BR, en, es, ou null no automático), as empresas desta conexão, o papel dela em cada empresa, os projetos que ela vê com o perfil em cada um e o que esta conexão pode fazer e a versão do tracker (server: version e commit do deploy). Bom primeiro passo.
No parameters.
list_projects
tracker:readListar projetos
Lista os projetos que a pessoa vê nas empresas desta conexão, com prefixo do código, tipo do projeto (kind: software, design, admin ou support), perfil dela, tipos de issue, campos personalizados, labels e módulos de cada um. Use antes de create_issue para saber os valores aceitos.
No parameters.
search_issues
tracker:readBuscar issues
Busca issues com os mesmos filtros da lista do tracker. Devolve as mais recentes primeiro (por atualização; com done_last, as concluídas no fim), com código, título, status (e close_reason em Fechado), marca de bloqueio (blocked, blocked_reason), retest_failed (reprovada no último reteste), severidade, prioridade, responsável e QA, sprint, release, todas as releases (releases, como "GOP 1.4.8"), módulo, pai, épico, labels, datas, external_id, edit_version e link; description e custom_fields com include. Aceita também a consulta avançada da tela em query (ex.: projeto = MOB e status in (Aberto, "Em teste") e responsavel = eu login, ou bloqueio = sim) e um filtro salvo em saved_filter; os filtros se somam. Numa conexão de várias empresas, sem project nem organization, busca em todas (até 200 issues), com organization em cada uma.
| Parameter | Type | Description |
|---|---|---|
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| status | list of string | Chaves de status do fluxo do projeto (ex.: open, in_development; veja list_projects). |
| category | list of todo | in_progress | done | Grupo do status, vale em qualquer fluxo: todo (a fazer), in_progress (em andamento), done (concluído). |
| severity | list of S1 | S2 | S3 | S4 | Severidade: S1 (crítica) a S4 (baixa). |
| priority | list of urgent | high | medium | low | |
| type | list of string | Chaves de tipo de issue (ex.: bug, improvement). |
| nature | list of problem | improvement | task | Natureza do tipo, vale em qualquer projeto: problem (bug), improvement (melhoria), task (tarefa). |
| label | string | Nome da label. |
| assignee | string | "me" para as minhas, "none" para sem responsável, ou o id da pessoa. |
| open_only | boolean | Só issues ainda não fechadas. |
| blocked_only | boolean | Só as issues com a marca de bloqueio (vale em qualquer status). |
| mine | boolean | Só as da pessoa conectada como responsável ou QA, como "Minhas tarefas" na tela (assignee "me" é só responsável). |
| watching | boolean | Só as que a pessoa conectada acompanha (botão "Acompanhar"), como "Que acompanho" na tela. |
| text | string | Texto livre: código, título, descrição e comentários (sem diferenciar acento). |
| query | string | Consulta avançada: condições "campo = valor" ligadas por "e". Campos: projeto, status, severidade, prioridade, tipo, natureza (Problema, Melhoria, Tarefa), responsavel (eu, nenhum ou nome), label, release, criada (>=, <=, = 30d), aberta = sim, minhas = sim, acompanhando = sim, bloqueio = sim, texto ~ "frase". Também !=, in (a, b), not in (a, b). O resto é texto livre. |
| saved_filter | string | Nome ou id de um filtro salvo (veja list_saved_filters). |
| created_from | string | Criadas a partir desta data (AAAA-MM-DD). |
| created_to | string | Criadas até esta data (AAAA-MM-DD). |
| limit | integer | Padrão 20, máximo 50. |
| offset | integer | |
| done_last | boolean | Concluídas (grupo done) no fim, depois das demais, como na lista de tarefas da tela quando a pessoa mostra as concluídas. A tela esconde as concluídas por padrão; para reproduzir isso, use open_only. |
| include | list of description | custom_fields | Campos longos que só vêm quando pedidos: description e custom_fields. |
list_saved_filters
tracker:readListar filtros salvos
Lista os filtros salvos da pessoa e os compartilhados na empresa, com o nome e a query string. Para usar um, passe o nome em search_issues (saved_filter).
No parameters.
get_issue
tracker:readVer issue
Abre uma issue pelo código (ex.: MOB-0012) ou id: todos os campos (com épico ou pai, filhas, sprint, estimativa, prazo, repetição e quem acompanha), todas as releases, campos personalizados, labels, vínculos, evidências (os anexos, com o comment_id quando vieram num comentário; get_attachment lê o conteúdo, e o download_url pede o token da API), comentários e histórico recentes (com o texto da tela, nomes em vez de ids). Quando alguém pediu o resumo da aqua na tela, aqua_summary traz o que aconteceu, o que falta e quem está com a bola (outdated: houve comentários ou mudanças depois). aqua_context é a ficha de contexto que a aqua escreve sozinha de cada issue (o problema em palavras neutras, onde acontece e os termos), a mesma que o search_similar cruza. Para conferir várias issues, peça só o que precisa em fields ou use search_issues, que já traz releases e edit_version.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| fields | list of title | external_id | project | type | status | blocked | severity | priority | level | parent | epic | children | sprint | story_points | due_date | module | release | releases | assignee | qa_owner | created_by | created_at | updated_at | resolved_at | description | environment | app_version | build | device | operating_system | preconditions | steps_to_reproduce | actual_result | expected_result | impact | suggested_solution | technical | custom_fields | time | labels | links | watchers | evidences | code_links | aqua_summary | aqua_context | comments | history | Só estas partes (id, code, url e edit_version vêm sempre), ex.: ["status", "releases"] para conferir várias issues sem trazer comentários e histórico. Sem fields, vem tudo. |
list_comments
tracker:readLer comentários
Todos os comentários de uma issue, na ordem em que foram escritos, cada um com as respostas, o autor e as pessoas mencionadas. Editado traz edited_at; excluído fica no lugar sem o texto, com deleted. Use o id de um comentário em add_comment para responder a ele.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
get_issue_history
tracker:readHistórico da issue
Histórico completo de uma issue, do mais recente para o mais antigo, em páginas: quem fez, quando e o quê (status, campos, responsável, release, sprint, labels, vínculos, evidências, reteste e horas), com os valores de antes e depois já com nome. get_issue traz só os 50 últimos eventos.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| limit | integer | Padrão 50, máximo 200. |
| offset | integer |
list_sprints
tracker:readVer backlog e sprints
Mostra o planejamento de um projeto: as sprints abertas (ativa e planejadas) com as issues e os pontos, o começo do backlog na ordem de prioridade e a velocidade das últimas sprints encerradas.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
list_releases
tracker:readListar releases
Lista releases com status, tipo (kind: version ou ota), momento (stage: current é a que está no ar, uma por trilho: versão e OTA têm cada uma a sua; previous as anteriores, approved, testing, development, planned, cancelled; is_next marca a próxima a ir ao ar), datas, quantas issues em aberto estão vinculadas e a última decisão do Release Gate.
| Parameter | Type | Description |
|---|---|---|
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| status | list of planned | in_development | staging | approved | production | cancelled |
get_release
tracker:readVer release
Abre uma release pelo id, ou pelo projeto + versão: dados, tipo e momento (kind, stage, is_next), o resumo da tela (summary: onde ela está, qual está no ar e o próximo passo), métricas e sugestão do Release Gate (gate.applies; em OTA sem BLOCKED registrado a sugestão é "not_applicable" e vem só a contagem das issues em gate.validation: ready_for_qa, testing, approved, failed), última decisão, issues vinculadas, ciclos de teste e as notas da versão (salvas ou o rascunho gerado das issues concluídas).
| Parameter | Type | Description |
|---|---|---|
| id | string | |
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| version | string |
list_test_cycles
tracker:readListar ciclos de teste
Lista os ciclos de teste mais recentes com release, status e progresso (pass, fail, bloqueado, pendente).
| Parameter | Type | Description |
|---|---|---|
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| status | list of planned | in_progress | finished | cancelled |
get_test_cycle
tracker:readVer ciclo de teste
Abre um ciclo de teste: release, ambiente, status, totais e cada caso com o resultado (pass, fail, blocked, in_progress, not_started), o comentário, quem testou e a issue aberta a partir do fail.
| Parameter | Type | Description |
|---|---|---|
| cyclerequired | string | Id do ciclo de teste (veja list_test_cycles). |
list_test_cases
tracker:readListar casos de teste
Lista os casos de teste ativos (código TC-MOB-0001, título, módulo, prioridade e quantos passos), filtrando por projeto e por parte do código ou do título.
| Parameter | Type | Description |
|---|---|---|
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| text | string | Parte do código ou do título. |
| include_archived | boolean | Inclui os casos arquivados. |
create_issue
tracker:writeCriar issue
Cria uma issue em nome da pessoa conectada, com as mesmas regras da tela: o perfil dela no projeto precisa permitir (PO/PM, QA ou admin; dev cria só subtarefas, com o pai) e a prioridade só vale para PO/PM e admin (os demais criam com prioridade média). Consulte list_projects para tipos (e o nível de cada um: épico, comum, subtarefa), módulos e campos personalizados aceitos. Tipo com template tem modelo: siga a estrutura dele nos campos de texto; campo de texto omitido vem preenchido com o modelo, e texto vazio deixa o campo vazio. Com recurrence (weekly, monthly, quarterly, yearly), concluir a issue cria a próxima ocorrência. assignee e qa_owner atribuem na criação (veja list_people). Antes de criar, pergunte ao search_similar se já aconteceu (query com o título e a descrição): se a aqua disser que é o mesmo problema (relation same), não crie; comente na issue que já existe (add_comment) com o que há de novo. Depois de criar, similar traz as parecidas que a aqua confirmou (relation same ou related, com reason): vincule a nova com link_issues (type duplicates para o mesmo problema, relates_to para relacionada) e diga à pessoa.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| titlerequired | string | |
| type | string | Chave do tipo; sem ela vale o primeiro tipo ativo do projeto. |
| severity | S1 | S2 | S3 | S4 | Padrão S3. |
| priority | urgent | high | medium | low | Padrão medium. |
| module | string | Nome do módulo do projeto. |
| description | string | Descrição em markdown (**negrito**, *itálico*, listas, `código`, links e ## títulos; a tela mostra formatado). |
| environment | string | Ambiente (ex.: produção, homologação). |
| app_version | string | Versão do app. |
| build | string | Build. |
| device | string | Dispositivo. |
| operating_system | string | Sistema operacional. |
| preconditions | string | Pré-condições, em markdown. |
| steps_to_reproduce | string | Passos para reproduzir, em markdown. |
| actual_result | string | Resultado atual, em markdown. |
| expected_result | string | Resultado esperado, em markdown. |
| impact | string | Impacto, em markdown. |
| suggested_solution | string | Sugestão de solução, em markdown. |
| parent | string | Código (MOB-0012) ou id da issue pai: o épico de uma issue comum, ou a issue de uma subtarefa. O nível vem do tipo. |
| story_points | number | Estimativa em pontos (0 a 1000, uma casa decimal). |
| start_date | string | Início, AAAA-MM-DD (no mesmo dia ou antes do prazo). Com início e prazo, a issue vira uma barra no cronograma. |
| due_date | string | Prazo, AAAA-MM-DD. |
| assignee | string | Responsável: "me", id, e-mail ou nome de quem participa do projeto (veja list_people). Atribuir outra pessoa exige PO/PM ou admin; dev assume com "me". |
| qa_owner | string | QA responsável, no mesmo formato de assignee; QA assume com "me". |
| recurrence | weekly | monthly | quarterly | yearly | Repetição (weekly, monthly, quarterly, yearly): ao concluir, nasce a próxima ocorrência com o prazo avançado. |
| custom_fields | object | Campos personalizados do projeto, pela chave. |
| labels | list of string | Nomes de labels do projeto; uma que não existe é criada. |
| external_id | string | Id do item na origem (teste do CI, chave de outra ferramenta). Único no projeto: repetir devolve a issue que já existe. |
update_issue
tracker:writeEditar issue
Edita uma issue em nome da pessoa conectada, com as mesmas regras da tela. Só os campos enviados mudam; null tira o valor. Cobre título, tipo, severidade, prioridade, módulo, textos, campos personalizados (só as chaves enviadas), responsável e QA (veja list_people), registro técnico, pai, pontos, sprint, release (a principal, do projeto da issue), outras releases em que a correção também sai, inclusive de outros projetos (add_releases, remove_releases) e labels (add_labels, remove_labels). Cada grupo exige o perfil certo no projeto: editar é de PO/PM, QA ou admin; atribuir outra pessoa e sprint, de PO/PM ou admin; registro técnico, de dev ou admin; dev e PO/PM assumem a issue com assignee "me", e QA assume como QA responsável com qa_owner "me". Mande edit_version (lido em get_issue) para não sobrescrever a edição de outra pessoa: se a issue mudou depois (campos, pessoas, registro técnico, pai, pontos, sprint, release, labels, estimativa ou datas), nada é gravado e o erro pede para ler de novo. Para status use move_issue; para estimativa, início, prazo e repetição, plan_issue.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| title | string | |
| type | string | Chave do tipo (veja list_projects). |
| severity | S1 | S2 | S3 | S4 | S1 (crítica) a S4 (baixa). Mudar exige PO/PM, QA ou admin. |
| priority | urgent | high | medium | low | Mudar exige PO/PM ou admin. |
| module | string or null | Nome do módulo do projeto; null tira o módulo. |
| description | string or null | Descrição em markdown (**negrito**, *itálico*, listas, `código`, links e ## títulos; a tela mostra formatado). |
| environment | string or null | Ambiente. |
| app_version | string or null | Versão do app. |
| build | string or null | Build. |
| device | string or null | Dispositivo. |
| operating_system | string or null | Sistema operacional. |
| preconditions | string or null | Pré-condições, em markdown. |
| steps_to_reproduce | string or null | Passos para reproduzir, em markdown. |
| actual_result | string or null | Resultado atual, em markdown. |
| expected_result | string or null | Resultado esperado, em markdown. |
| impact | string or null | Impacto, em markdown. |
| suggested_solution | string or null | Sugestão de solução, em markdown. |
| custom_fields | object | Campos personalizados pela chave. Só as chaves enviadas mudam; null ou "" apaga o valor. |
| assignee | string or null | Responsável: "me", id, e-mail ou nome de quem participa do projeto (veja list_people); null tira. Atribuir outra pessoa exige PO/PM ou admin. |
| qa_owner | string or null | QA responsável, no mesmo formato de assignee. |
| root_cause | string or null | Registro técnico: causa raiz (dev ou admin), em markdown. |
| fix_notes | string or null | Registro técnico: o que foi corrigido (dev ou admin), em markdown. |
| fixed_version | string or null | Registro técnico: versão corrigida (dev ou admin). |
| fixed_build | string or null | Registro técnico: build corrigida (dev ou admin). |
| parent | string or null | Código ou id da issue pai (épico de uma issue comum, ou a issue de uma subtarefa); null tira. |
| story_points | number or null | Pontos (0 a 1000); null tira. |
| sprint | string or null | Nome ou id de uma sprint aberta do projeto; null ou "backlog" devolve ao backlog. Exige PO/PM ou admin. |
| release | string or null | Release principal: id, versão no projeto da issue (ex.: 2.4.0) ou, de outro projeto da empresa, "PLT backend-1a2b3c"; null tira. |
| add_releases | list of string or object or string | Outras releases em que a correção também sai (deploy do backend, OTA de outro runtime), além da principal (release): id, versão no projeto da issue, "GOP 1.4.8-ota002" ou {"project": "GOP", "version": "1.4.8-ota002"} para outro projeto da empresa. Lista ou texto separado por vírgula. Exige vincular releases nos dois projetos. |
| remove_releases | list of string or object or string | Outras releases a desvincular, no mesmo formato de add_releases. |
| add_labels | list of string | Labels a acrescentar; a que não existe é criada. |
| remove_labels | list of string | Labels a tirar, pelo nome. |
| edit_version | integer | A edit_version lida em get_issue. Se alguém mudou a issue depois (campos, pessoas, registro técnico, pai, pontos, sprint, release, labels, estimativa ou datas), nada é gravado e a resposta é 409 (conflict): leia de novo e reaplique a mudança. |
add_comment
tracker:writeComentar na issue
Comenta numa issue em nome da pessoa conectada, como na tela: quem vê a issue pode comentar. @Nome menciona alguém do canal (veja people em list_chat_messages) e a pessoa é avisada; parent_id responde a um comentário. Quem acompanha a issue recebe o comentário. attachments anexa arquivos ao comentário (cada um em content_base64 com file_name, ou url pública), com as regras de attach_file.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| textrequired | string | Texto do comentário, em markdown (**negrito**, *itálico*, listas, `código` e links). @Nome menciona alguém do projeto (veja list_people). |
| parent_id | string or null | Id do comentário a responder (as respostas ficam num nível só). |
| attachments | list of object | Arquivos anexados ao comentário (até 5, 14 MB somados), cada um com file_name e content_base64 ou url. Ficam embaixo do comentário e na lista de evidências da issue. |
edit_comment
tracker:writeCorrigir comentário
Corrige o texto de um comentário da issue. Só quem escreveu pode corrigir; o texto anterior fica guardado para o admin e a edição entra no histórico. Quem passa a ser mencionado agora é avisado.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| commentrequired | string | Id do comentário (veja list_comments). |
| textrequired | string | Texto novo, em markdown. Quem passa a ser mencionado agora é avisado. |
delete_comment
tracker:writeExcluir comentário
Exclui um comentário da issue: ele fica no lugar como excluído, sem o texto, e as respostas continuam. Quem escreveu ou um admin da empresa pode excluir.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| commentrequired | string | Id do comentário (veja list_comments). |
attach_file
tracker:writeAnexar arquivo
Anexa um arquivo à issue (as evidências da tela) em nome da pessoa conectada: relatório, print, log, planilha. Mande o conteúdo em content_base64 com file_name (a extensão define o formato), ou a url pública (https) para o tracker baixar; para arquivo grande, prefira url. Formatos: png, jpg, webp, gif, mp4, mov, pdf, zip, json, txt, log, md e csv, até 15 MB, 60 arquivos por hora. comment_id põe o arquivo embaixo de um comentário seu da issue (para comentar e anexar de uma vez, use attachments em add_comment). Perfil que anexa: PO/PM, QA, dev ou admin. Devolve o anexo com download_url; os anexos da issue aparecem em get_issue (evidences), e get_attachment lê o conteúdo.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| file_name | string | Nome do arquivo com a extensão, que define o formato (.png, .jpg, .jpeg, .webp, .gif, .mp4, .mov, .pdf, .json, .txt, .log, .md, .csv, .zip). Obrigatório com content_base64; com url, o padrão é o nome que a URL informa. |
| content_base64 | string | Conteúdo do arquivo em base64 (até 15 MB; aceita o prefixo data:...;base64,). Para arquivo grande, prefira url. |
| url | string | URL pública (https) de onde o tracker baixa o arquivo, até 15 MB. Endereço de rede interna não é aceito, e a URL não fica guardada. |
| description | string | Descrição curta do arquivo (aparece na lista de evidências da issue). |
| comment_id | string | Id de um comentário seu nesta issue (veja list_comments): o arquivo aparece embaixo dele, além da lista de evidências. |
get_attachment
tracker:readLer anexo
Lê o conteúdo de um anexo que a pessoa conectada vê: a evidência de uma issue ou o arquivo de uma mensagem das Conversas (do canal ou da conversa direta dela). md, csv, txt, log e json voltam em text (até 200 mil caracteres, com truncated quando passa), e png, jpg, webp e gif até 5 MB voltam como imagem. PDF, vídeo e zip voltam só com o download_url, que pede um token pessoal da API. O id do anexo está em get_issue (evidences), nos attachments de list_comments, na resposta de attach_file ou nos attachments de list_chat_messages; a resposta traz issue (na evidência) ou chat_message_id (na mensagem).
| Parameter | Type | Description |
|---|---|---|
| attachmentrequired | string | Id do anexo. |
remove_attachment
tracker:writeRemover anexo
Remove um anexo (evidência) da issue e apaga o arquivo. Só quem enviou ou um admin do projeto; o arquivo de uma versão enviada para aprovação não sai. O id está em get_issue (evidences) ou na resposta de attach_file.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| attachmentrequired | string | Id do anexo. |
link_issues
tracker:writeVincular issues
Vincula a issue a outra (blocks, relates_to ou duplicates), como na tela: exige editar a issue, e a outra precisa ser de um projeto que a pessoa vê. Devolve os vínculos da issue, cada um com o id para unlink_issues.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| targetrequired | string | Código da outra issue (ex.: MOB-0007). |
| type | blocks | relates_to | duplicates | blocks (esta bloqueia a outra), relates_to (relacionada, o padrão) ou duplicates (esta duplica a outra). |
unlink_issues
tracker:writeRemover vínculo
Remove um vínculo da issue pelo id (o id em links de get_issue ou de link_issues). Exige editar a issue.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| linkrequired | string | Id do vínculo (o id em links de get_issue). |
bulk_update_issues
tracker:writeAções em massa
Aplica a mesma ação a várias issues (até 100), como a barra de ações da lista: mudar status, responsável, prioridade, severidade ou release, pôr ou tirar label, acompanhar, deixar de acompanhar ou excluir. Cada issue passa pela regra da ação individual (perfil no projeto dela, fluxo de status); as que não puderem mudar voltam em failed com o motivo, e as outras mudam. Responsável e release são achados no projeto de cada issue.
| Parameter | Type | Description |
|---|---|---|
| issuesrequired | list of string | Códigos (MOB-0012) ou ids das issues, até 100. |
| actionrequired | status | assignee | priority | severity | label | unlabel | release | watch | unwatch | delete | status, assignee, priority, severity, label (acrescenta), unlabel (tira), release, watch, unwatch (a pessoa conectada) ou delete. |
| value | string | O novo valor: chave do status; responsável (só PO/PM ou admin: "me", id, e-mail ou nome; "none" tira; dev e QA assumem uma a uma por update_issue); prioridade (low, medium, high, urgent); severidade; nome da label; versão ou id da release ("none" tira). watch, unwatch e delete não levam valor. |
update_issues
tracker:writeLote por issue
Fecha várias issues numa chamada só (até 50), cada uma com o que muda nela: os campos de update_issue (registro técnico, release, outras releases com add_releases, sprint, labels, responsável...), os PRs e commits a ligar (code_links, como link_code) e o status final (status, como move_issue), nessa ordem. Cada passo segue a regra da chamada individual. Um item que falha não para os outros: results traz, por issue, ok, os grupos gravados (updated), os links ligados (linked), o status final e, se falhou, failed_at (issue, fields, code_links ou status) e o motivo; edit_version protege o item todo; os passos anteriores ao que falhou ficam gravados. Para a mesma ação em todas (só status, só release), use bulk_update_issues.
| Parameter | Type | Description |
|---|---|---|
| itemsrequired | list of object | Até 50 issues, cada uma com o que muda nela. |
list_proofs
tracker:readVersões para aprovação
Versões de uma peça enviadas para aprovação (Design), da mais nova para a mais antiga: número, status (pending, approved, changes_requested, superseded), nota de quem enviou, decisão com comentário e o arquivo (download_url com o token da API). pending é o id da versão que espera decisão. O envio de versão nova é pela API REST (POST /issues/{ref}/proofs, multipart).
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
decide_proof
tracker:writeAprovar ou pedir ajustes
Decide a versão que espera aprovação (o pending de list_proofs): approve aprova; changes pede ajustes e exige feedback. PO/PM, QA, admin ou o cliente do projeto (stakeholder). Com o fluxo de Design, a issue vai para Aprovado ou Ajustes. Devolve as versões e o status da issue.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| proofrequired | string | Id da versão (o id em proofs de list_proofs). |
| decisionrequired | approve | changes | approve aprova a versão; changes pede ajustes (feedback obrigatório). |
| feedback | string | Comentário da decisão, em markdown: o que precisa mudar, ou uma observação na aprovação. |
list_people
tracker:readPessoas do projeto
Lista as pessoas ativas que participam de um projeto, com o id e o perfil de cada uma (PO/PM, QA, dev, stakeholder, admin). Use para escolher o responsável em update_issue.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
get_person
tracker:readPerfil de uma pessoa
O perfil de uma pessoa da empresa, como na tela: nome, e-mail, papel na empresa, desde quando está nela, os projetos com o perfil em cada um (all_projects quando é admin ou dona da empresa), quantas tarefas estão com ela (em aberto como responsável e como QA, concluídas nos últimos 30 dias), as tarefas em aberto mais recentes e a atividade recente (comentários e mudanças). Só entram os projetos e as tarefas que a pessoa conectada vê. person: "me", id, e-mail ou nome (veja list_people). Quem só acompanha os projetos vê só quem participa deles, sem o e-mail.
| Parameter | Type | Description |
|---|---|---|
| personrequired | string | "me", id, e-mail ou nome da pessoa. |
set_avatar
tracker:writeTrocar sua foto
Troca ou tira a foto da pessoa conectada (a de Sua conta → Perfil), que aparece no menu, no perfil, nas listas de pessoas e nas conversas, para quem divide uma empresa com ela. A imagem vai em image_base64 (PNG, JPG ou WebP até 2 MB); remove: true tira e ficam as iniciais. Só a própria foto. Devolve avatar_url, o endereço novo da foto com o token (null sem foto).
| Parameter | Type | Description |
|---|---|---|
| image_base64 | string | A foto nova em base64: PNG, JPG ou WebP até 2 MB (aceita o prefixo data:image/jpeg;base64,). |
| file_name | string | Nome do arquivo, com a extensão (padrão "imagem.png"). |
| remove | boolean | true: tira a foto (sem image_base64); ficam as iniciais. |
set_language
tracker:writeTrocar o idioma
Troca o idioma da pessoa conectada no tracker (o de Sua conta → Perfil → Idioma): as telas, os e-mails e os apps passam a usar este idioma, em todas as empresas dela. locale: "pt-BR" (português), "en" (inglês) ou "es" (espanhol); null volta ao automático, pelo idioma do navegador ou do aparelho. O idioma atual vem em whoami (user.locale). Não muda o que já foi escrito nas tarefas e conversas. Devolve locale.
| Parameter | Type | Description |
|---|---|---|
| localerequired | pt-BR | en | es or null | Idioma da pessoa: "pt-BR" (português), "en" (inglês) ou "es" (espanhol); null volta ao automático, pelo idioma do navegador ou do aparelho. |
watch_issue
tracker:writeAcompanhar issue
Liga ou desliga o "Acompanhar" numa issue: quem acompanha recebe os avisos de mudança de status e de comentário novo. Sem person, vale para a pessoa conectada; pôr ou tirar outra pessoa do projeto exige editar a issue (PO/PM, QA ou admin). Devolve person (a pessoa da ação e se ela acompanha agora), watching (se a pessoa conectada acompanha) e a lista watchers.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| watching | boolean | false para deixar de acompanhar (ou tirar a pessoa). Padrão: true. |
| person | string | Quem: "me" (o padrão), id, e-mail ou nome de quem participa do projeto (veja list_people). Outra pessoa exige editar a issue. |
move_issue
tracker:writeMover issue de status
Muda o status de uma issue (para levar a outro projeto, use move_issue_to_project). Move uma issue (código, ex.: MOB-0012, ou id) para outro status do fluxo do projeto dela, com as mesmas regras da tela e do quadro: a transição precisa existir no fluxo e o perfil da pessoa no projeto precisa poder levar a issue até lá. Veja os status de cada projeto em list_projects. Para "closed" (Fechado, modelo QA), mande close_reason; com a issue já em closed, troca só o motivo. Bloqueio não é status: use block_issue.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| statusrequired | string | Chave do status de destino (veja list_projects). |
| close_reason | duplicated | cancelled | not_reproduced | wont_fix | Motivo ao levar para "closed" (Fechado, modelo QA): duplicated, cancelled, not_reproduced ou wont_fix. Com a issue já em closed, troca só o motivo. |
block_issue
tracker:writeMarcar bloqueio
Marca uma issue como bloqueada, com o motivo, ou tira a marca (blocked: false). O bloqueio vale em qualquer status e fluxo (não é uma coluna) e sai sozinho quando a issue conclui; marcar de novo troca o motivo. Todo perfil do projeto menos stakeholder. Devolve blocked (since e reason) ou null. Para achar as bloqueadas, search_issues com blocked_only.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| blocked | boolean | false para tirar a marca. Padrão: true. |
| reason | string | O que impede de seguir (opcional). |
move_issue_to_project
tracker:writeMover issue para outro projeto
Leva uma issue criada no projeto errado para outro projeto da mesma empresa, com as mesmas regras da tela: a pessoa precisa editar a issue e criar issue no destino. A issue ganha o código seguinte do destino e o antigo continua achando ela. Tipo, status, módulo, release e campos personalizados vão para o equivalente no destino; sem equivalente, caem no padrão de lá. Comentários, anexos, horas e histórico vão junto; subtarefas acompanham a issue pai. Chame primeiro sem confirm para ver os avisos, mostre-os à pessoa e só então chame com confirm: true. Para mudar o status dentro do mesmo projeto, use move_issue.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| projectrequired | string | Projeto de destino, da mesma empresa: prefixo do código (ex.: CHG), slug ou id. |
| confirm | boolean | true para mover. Sem ele, só devolve a prévia com os avisos, para mostrar à pessoa antes de confirmar. |
delete_issue
tracker:writeExcluir issue
Exclui a issue como na tela: ela some de listas, busca, API e MCP e pode ser restaurada (restore_issue) por 30 dias. Admin ou PO/PM do projeto. Issue com issues dentro dela (épico, subtarefas) não é excluída.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
restore_issue
tracker:writeRestaurar issue
Restaura uma issue excluída nos últimos 30 dias, pelo código ou id (veja list_deleted_issues), com comentários, evidências e histórico. Admin ou PO/PM do projeto.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
duplicate_issue
tracker:writeDuplicar issue
Cria uma cópia da issue no mesmo projeto, como o Duplicar da tela: conteúdo, classificação, pai, pontos, campos personalizados e labels. Não copia comentários, evidências, vínculos, pessoas, sprint, release nem o registro técnico; a cópia nasce no status inicial. Exige criar issue no projeto.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
list_deleted_issues
tracker:readIssues excluídas
Lista as issues excluídas que a pessoa pode restaurar (admin ou PO/PM do projeto), com quem excluiu e até quando dá para restaurar.
| Parameter | Type | Description |
|---|---|---|
| project | string | Só as deste projeto: prefixo (ex.: MOB), slug ou id. |
create_release
tracker:writeCriar release
Cria uma release (versão) no projeto, no status planned. Exige PO/PM ou admin. A versão é única no projeto: pedir de novo a mesma versão devolve a release que já existe, com already_existed (bom para o CI criar a release a cada deploy). kind "ota" para atualização sem loja; o padrão é "version". Release que já foi ao ar (OTA enviada, deploy do backend, versão publicada fora do tracker) pode nascer com status "production" (sem o gate) e released_date.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| versionrequired | string | Ex.: 2.7.0. Única no projeto. |
| build | string | |
| environment | string | |
| planned_date | string | Data prevista (AAAA-MM-DD). |
| notes | string | Notas internas da release, em markdown. |
| kind | version | ota | "version" (loja ou deploy, o padrão) ou "ota" (atualização sem loja). |
| status | planned | production | "planned" (o padrão) ou, para a release que já foi ao ar (OTA enviada, deploy feito), "production": entra no ar sem o Release Gate. Na OTA, a validação segue pelas issues vinculadas. |
| released_date | string | Só com status production: quando foi ao ar (AAAA-MM-DD). Padrão: hoje. |
set_release_status
tracker:writeMudar status da release
Muda o status de uma release (pelo id, ou projeto + versão), com as regras da tela: planned → in_development → staging (em teste), e de approved para production; cancelled sai do caminho. PO/PM ou admin. OTA vai a production direto (de planned, in_development, staging ou approved), sem a decisão do gate, a não ser que a última decisão seja BLOCKED; a validação segue depois pelas issues vinculadas. As outras releases chegam a approved pela decisão APPROVED do Release Gate, registrada por uma pessoa na tela, e produção exige essa decisão. Fora desse caminho (approved direto, inclusive) só admin, com override_note.
| Parameter | Type | Description |
|---|---|---|
| id | string | |
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| version | string | |
| statusrequired | planned | in_development | staging | approved | production | cancelled | planned, in_development, staging (em teste), production ou cancelled. approved vem da decisão do gate, na tela (direto, só admin com override_note); production exige essa decisão, menos para OTA (sem o gate, a não ser que a última decisão seja BLOCKED). |
| override_note | string | Só admin: justificativa para sair do caminho da release ou ir para produção sem o gate APPROVED. |
move_release
tracker:writeMover release para outro projeto
Move uma release (pelo id, ou projeto + versão) para outro projeto da empresa, por exemplo as releases de deploy do backend que nasceram no app para o projeto da plataforma. Leva o histórico, as decisões do gate e as notas; as issues continuam vinculadas (a principal e as de "Também sai em"), mesmo as de outros projetos. Exige PO/PM ou admin nos dois projetos. A versão não pode existir no destino, e release com ciclo de teste não se move (ciclo é do projeto).
| Parameter | Type | Description |
|---|---|---|
| id | string | |
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| version | string | |
| to_projectrequired | string | Projeto de destino: prefixo (ex.: PLT), endereço ou id. |
save_release_notes
tracker:writeSalvar notas da versão
Grava as notas da versão de uma release (pelo id, ou projeto + versão), o texto para o cliente que a tela copia e manda por e-mail. PO/PM ou admin. Para escrever em linguagem de cliente, leia em get_release as issues e o rascunho gerado (release_notes): diga o que muda para quem usa, sem códigos de issue nem jargão técnico, e deixe de fora o que o cliente não percebe. Substitui o texto inteiro; vazio ou null volta ao rascunho gerado. Não envia o e-mail: o envio é na tela.
| Parameter | Type | Description |
|---|---|---|
| id | string | |
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| version | string | |
| release_notesrequired | string or null | Notas em markdown simples: "# " título, "## " seção, "- " item (sem negrito nem links; o e-mail mostra assim). Vazio ou null volta ao rascunho gerado. |
create_test_case
tracker:writeCriar caso de teste
Cria um caso de teste com os passos (ação e resultado esperado de cada um). Exige perfil QA ou admin no projeto. O código (TC-MOB-0001) é gerado.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| titlerequired | string | |
| module | string | Nome do módulo do projeto. |
| precondition | string | Pré-condição, em markdown. |
| test_data | string | Dados de teste, em markdown. |
| expected_result | string | Resultado esperado do caso como um todo, em markdown. |
| priority | urgent | high | medium | low | Padrão medium. |
| stepsrequired | list of object | Passos na ordem, cada um com a ação e o resultado esperado (os dois em markdown). |
create_test_cycle
tracker:writeCriar ciclo de teste
Cria um ciclo de teste no projeto, de uma release (pela versão) ou avulso, com os casos escolhidos pelo código, ou com todos os casos ativos do projeto quando cases não vem. Exige perfil QA ou admin. Devolve o ciclo com os casos, para registrar os resultados com record_test_results.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| namerequired | string | Ex.: Regressão 2.7.0. |
| release | string | Versão (ex.: 2.7.0) ou id de uma release do projeto. |
| environment | string | |
| cases | list of string | Códigos (TC-MOB-0001) ou ids dos casos. Sem cases, entram todos os casos ativos do projeto. |
record_test_results
tracker:writeRegistrar resultados de teste
Registra o resultado de um ou mais casos (até 200) num ciclo de teste em nome da pessoa conectada (QA ou admin), como na execução da tela: pass, fail, blocked ou in_progress, com comentário obrigatório para fail e blocked. Ciclo planejado passa a em andamento. Com open_issue, o fail abre a issue já preenchida com o caso (ou devolve a que já existe); se a issue não abrir, o resultado fica gravado e o item volta com warning. Item a item: um recusado não desfaz os outros. Gravar de novo o mesmo caso substitui o resultado.
| Parameter | Type | Description |
|---|---|---|
| cyclerequired | string | Id do ciclo de teste (veja list_test_cycles). |
| resultsrequired | list of object |
set_test_cycle_status
tracker:writeIniciar ou encerrar ciclo de teste
Inicia (start), encerra (finish), cancela (cancel) ou reabre (reopen) um ciclo de teste. Ciclo encerrado não aceita resultados até ser reaberto.
| Parameter | Type | Description |
|---|---|---|
| cyclerequired | string | Id do ciclo de teste (veja list_test_cycles). |
| actionrequired | start | finish | cancel | reopen |
time_report
tracker:readRelatório de horas
Horas registradas num período (padrão: mês corrente), por pessoa, por projeto e por issue, com os registros mais recentes. person "me" mostra só as suas. Só cobre projetos em que o perfil da pessoa vê horas (stakeholder não vê).
| Parameter | Type | Description |
|---|---|---|
| from | string | Primeiro dia (AAAA-MM-DD). Padrão: dia 1 do mês corrente. |
| to | string | Último dia (AAAA-MM-DD). Padrão: hoje. |
| project | string | Projeto: prefixo (MOB), slug ou id. |
| person | string | "me" para as minhas horas, ou o id da pessoa. |
log_time
tracker:writeRegistrar horas
Registra tempo trabalhado numa issue em nome da pessoa conectada (perfis PO/PM, QA, dev ou admin). Use duration em texto ("1h30", "45m") ou minutes. Sem work_date, vale hoje. Devolve o total registrado e o restante da estimativa.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| duration | string | Tempo trabalhado em texto: "2h", "1h30", "45m", "1d" (8 h). |
| minutes | integer | Tempo trabalhado em minutos (alternativa a duration). |
| work_date | string | Dia do trabalho (AAAA-MM-DD). Padrão: hoje no fuso de São Paulo. |
| comment | string | O que foi feito, em markdown. |
plan_issue
tracker:writePlanejar issue
Define estimativa ("8h", "2d"), início, prazo e repetição de uma issue. Campo omitido fica como está; null tira o valor. As datas aparecem no cronograma do projeto. Com recurrence (weekly, monthly, quarterly, yearly), concluir a issue cria a próxima ocorrência com início e prazo avançados.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| estimate | string or null | Estimativa: "8h", "2d", "1h30". null ou "" tira a estimativa. |
| start_date | string or null | Início (AAAA-MM-DD). null tira a data. |
| due_date | string or null | Prazo (AAAA-MM-DD). null tira a data. |
| recurrence | weekly | monthly | quarterly | yearly | none | or null | Repetição: weekly, monthly, quarterly ou yearly. Ao concluir, nasce a próxima ocorrência com início e prazo avançados. null, "" ou "none" tira. |
list_code_links
tracker:readPRs e commits da issue
Lista os PRs (GitHub), MRs (GitLab) e commits ligados a uma issue, com repositório, estado (aberto, mergeado, fechado), branch, autor e link. Os que vêm da integração com o repositório se atualizam sozinhos; os ligados na mão ficam como foram ligados.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
link_code
tracker:writeLigar PR ou commit à issue
Liga um PR ou commit do GitHub, ou um MR ou commit do GitLab (inclusive self-hosted), a uma issue, pelo link. Aparece no card Código da issue e no histórico. Não muda o status: quem move a issue é a integração do repositório ou move_issue. Perfis PO/PM, QA, dev ou admin.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| urlrequired | string | Link do PR ou commit no GitHub (https://github.com/dono/repo/pull/12) ou do MR ou commit no GitLab (https://host/grupo/projeto/-/merge_requests/12). |
| title | string | Título que aparece na issue. Padrão: "PR #12" ou o sha do commit. |
unlink_code
tracker:writeDesligar PR ou commit da issue
Tira um PR/MR ou commit da issue, pelo id do link (veja list_code_links) ou pelo mesmo link usado para ligar. Fica no histórico.
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (MOB-0012) ou id da issue. |
| link_id | string | Id do link (veja list_code_links). |
| url | string | Ou o mesmo link do PR/commit usado para ligar. |
list_repositories
tracker:readRepositórios do projeto
Lista os repositórios do GitHub e projetos do GitLab conectados a um projeto do tracker, com o status que cada evento aplica (PR aberto, mergeado, fechado, commit) e o último evento recebido. connection diz como chega: github_app (o app do GitHub da empresa), gitlab_token (o tracker criou e cuida do webhook no GitLab) ou webhook (configurado à mão). Um PR ou commit que cita o código da issue (ex.: MOB-0012) nesses repositórios aparece na issue sozinho.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
search_similar
tracker:readBuscar parecidas (já aconteceu?)
Busca issues (com os comentários) e chamados do Atendimento parecidos com um texto ou com uma issue, pelo sentido e pelas palavras (busca híbrida). Use antes de criar uma issue (query com o título e a descrição) e na triagem de um erro ou chamado, para saber se já aconteceu antes; com relation same, comente ou vincule a que já existe em vez de criar outra. likely_duplicate marca o que parece ser o mesmo problema; mode diz se a busca foi também pelo significado (hybrid) ou só por texto (text); semantic diz se a busca por significado está ligada na empresa (on, com indexed: quantos itens já estão no índice) e, se não, por quê (reason: no_vector, a busca pelo sentido não está disponível neste servidor; no_key, aqua desligada, chave própria da empresa ou sem créditos de IA). Com issue, a busca parte da ficha de contexto que a aqua escreve de cada issue. Com explain (padrão), a aqua confere cada achado: tira o que só divide palavras e devolve relation (same: o mesmo problema; related: relacionado) e reason (a ligação numa frase); explained diz se ela conferiu. Para filtrar por status, responsável ou datas, use search_issues.
| Parameter | Type | Description |
|---|---|---|
| query | string | Texto livre: título e descrição do problema, mensagem de erro, relato do cliente. Em português ou não; acha pelo sentido, não só pelas palavras. |
| issue | string | Issue de referência (código ou id): busca as parecidas com ela, sem ela própria. Use no lugar de query. |
| kinds | list of issue | ticket | O que buscar: "issue" (com os comentários) e "ticket" (chamados do Atendimento, só para quem atende). Padrão: só issues. |
| project | string | Só neste projeto (prefixo, slug ou id). Sem ele, a empresa toda. |
| open_only | boolean | Só issues abertas e chamados não resolvidos. |
| limit | integer | Quantos resultados (padrão 8). |
| explain | boolean | A aqua confere cada achado contra a referência: tira o que só divide palavras e devolve relation (same ou related) e reason (a ligação numa frase). Padrão: true. Mande false para só a lista da busca, mais rápida. Sem a aqua ligada, a lista volta sem a conferência (explained false). |
list_aqua_recommendations
tracker:readSugestões da aqua
As sugestões abertas da aqua (a IA do tracker) para as issues abertas, como na tela aqua: cada issue com código, título, status, o resumo da revisão (summary), reviewed_at, outdated (a issue mudou depois da revisão) e as recommendations (id, kind: comment, status, field, custom_field, label, duplicate ou move; title, before, after, reason e comment, o texto do pedido de informações). Traz também available (a IA ligada na empresa), can_review, a revisão diária (daily_review) e sentry_waiting (erros do Sentry esperando decisão; veja list_sentry_errors). Só de quem edita issues. Use apply_aqua_recommendation ou dismiss_aqua_recommendation para decidir.
| Parameter | Type | Description |
|---|---|---|
| project | string | Prefixo, slug ou id do projeto. Sem ele, todos os projetos em que a pessoa edita issues. |
get_ai_credits
tracker:readCréditos de IA
Os créditos de IA da empresa, como em Empresa → Integrações → Assistente de IA. Sem chave própria, a aqua usa a chave do tracker e gasta créditos de um pacote por ciclo de 30 dias, que renova sozinho; key_source diz qual chave a empresa usa (server: créditos; organization: chave própria, sem créditos e credits null). credits traz state (ok, low: 20% ou menos; empty: acabou e a aqua pausa até renovar; expired), remaining, used, total (per_cycle mais granted, os créditos que a equipe Aquarela lançou no ciclo), cycle_start, cycle_end, auto_renew e renews_at. usage (só admin e dono; null para os demais) traz o uso por ação desde since (o início do ciclo; com a chave própria, os últimos 30 dias), das mais usadas para as menos: action, label, calls, failures, credits. Nunca há valores em dinheiro. Quando a aqua recusar um pedido por falta de créditos, use isto para dizer à pessoa quando renova.
No parameters.
get_billing
tracker:readPlano e moeda da empresa
O plano da empresa, como em Empresa → Plano (só admin e dono): currency (a moeda da empresa, em que ela vê os preços; currency_locked: com a cobrança ligada, só a equipe da Aquarela troca), plan (key, name, description, ai_credits_per_cycle, storage_gb, features e os preços na moeda da empresa), plan_source (subscription, ou default quando vale o plano padrão), price (o preço de agora: amount_minor na unidade mínima da moeda, amount e formatted), subscription (status trialing, active, past_due ou canceled; interval month ou year; current_period_end; trial_ends_at; billing_provider, null enquanto não há cobrança), plans (os planos que as empresas podem ter, com o preço na moeda da empresa) e billing_details (dados de faturamento: kind, legal_name, email, country, endereço, tax_id_type e tax_id; null se ninguém preencheu) e plan_request (o pedido de plano pago esperando a equipe da Aquarela, ou null) e storage (o espaço de arquivos: used_bytes, limit_bytes, plan_storage_gb, state ok, warning a partir de 90% ou full, e quanto ocupam tasks, tickets, chat e direct_messages, cada um com bytes e files). Durante o beta nada é cobrado. Para mudar de plano, use change_plan; para ver e excluir os arquivos, list_files e delete_file.
No parameters.
update_billing
tracker:writeMudar a moeda ou os dados de faturamento
Troca a moeda da empresa (currency) e muda os dados de faturamento (billing_details: só os campos enviados mudam; null apaga), como em Empresa → Plano (só admin e dono). O documento fiscal segue o país (no Brasil, CNPJ para empresa e CPF para pessoa física, com os dígitos conferidos). Devolve o mesmo que get_billing.
| Parameter | Type | Description |
|---|---|---|
| currency | BRL | USD | EUR | GBP | MXN | ARS | CLP | COP | Moeda da empresa: BRL, USD, EUR, GBP, MXN, ARS, CLP, COP. Com a cobrança ligada (currency_locked), só a equipe da Aquarela troca. |
| billing_details | object | Dados de faturamento: só os campos enviados mudam; null apaga um campo. |
change_plan
tracker:writeMudar o plano da empresa
Muda o plano da empresa, como em Empresa → Plano → Mudar de plano (só admin e dono). plan é a key ou o id de um dos plans de get_billing; interval, month (padrão) ou year. Plano gratuito na moeda da empresa muda na hora (outcome changed). Plano pago, ou sem preço na moeda, vira um pedido para a equipe da Aquarela (outcome requested), que combina o pagamento com a empresa: durante o beta não há cobrança automática. Pedir outro plano troca o pedido. O plano de agora devolve outcome unchanged. Devolve também billing, como em get_billing.
| Parameter | Type | Description |
|---|---|---|
| planrequired | string | Chave ou id do plano, de plans em get_billing. |
| interval | month | year | month (padrão) ou year. |
cancel_plan_request
tracker:writeCancelar o pedido de plano
Cancela o pedido de plano pago que a empresa fez (plan_request em get_billing), só admin e dono. cancelled false: não havia pedido.
No parameters.
list_files
tracker:readArquivos da empresa
Os arquivos guardados pela empresa, como em Empresa → Arquivos (só admin e dono): storage (o espaço usado do plano, como em get_billing), total, has_more e files, cada um com id, origin (task: anexo de uma tarefa ou comentário; ticket: do atendimento; chat: das Conversas dos projetos), name, type, size_bytes, created_at, uploaded_by, project, issue (code, title e comment_id), ticket (number e subject), chat_message (id e thread_id), url (onde está), download_url (pede o token da API; get_attachment lê o conteúdo dos de tarefa e das Conversas), can_delete e locked (proof: versão enviada para aprovação; trash: tarefa ou projeto excluído). Os das conversas diretas contam no espaço (direct_messages), mas não aparecem: só as duas pessoas leem. Passou do espaço, anexo novo é recusado até excluir arquivos ou mudar de plano. sort size traz os maiores primeiro.
| Parameter | Type | Description |
|---|---|---|
| origin | task | ticket | chat | Só os de um lugar: task (tarefas e comentários), ticket (atendimento) ou chat (Conversas dos projetos). |
| query | string | Parte do nome do arquivo. |
| sort | recent | size | recent (padrão, os mais novos primeiro) ou size (os maiores primeiro, para liberar espaço). |
| limit | integer | Até 100; padrão 50. |
| offset | integer | Quantos pular (paginação). |
delete_file
tracker:writeExcluir arquivo
Exclui um arquivo de list_files (só admin e dono) e libera o espaço: o anexo sai da tarefa (fica no histórico dela), do chamado ou da mensagem das Conversas (a mensagem sem texto e sem outro anexo fica como excluída). Não dá para desfazer: confirme com a pessoa antes. Versão enviada para aprovação e arquivo de tarefa ou projeto excluído não saem.
| Parameter | Type | Description |
|---|---|---|
| filerequired | string | O id do arquivo, de list_files. |
list_inbox
tracker:readCaixa de entrada
A caixa de entrada da pessoa conectada, como na tela Caixa de entrada: os comentários em que alguém a mencionou (kind mention) e as respostas nas conversas em que ela escreveu (kind reply; own_thread: a conversa começou com um comentário dela), as mais recentes primeiro. Cada item traz id, text (a frase da tela), author, excerpt (o trecho do comentário), issue (id, code, title, project), url (direto ao comentário), at, read e hidden; unread conta as não lidas. Escrever na tarefa depois do comentário, abrir a tarefa ou ler a notificação no sino também contam como lida. As menções e respostas nas Conversas dos projetos vêm à parte, em chat_items (com chat_unread): cada uma traz id, kind (mention ou reply, a resposta numa thread em que ela está), own_thread (a thread começou com uma mensagem dela), thread, text, author, excerpt (o trecho da mensagem), project, url (direto à mensagem), at, read e hidden; abrir a thread ou ler o canal conta como lida. Use update_inbox para marcar como lida, ocultar ou trazer de volta (os ids de items e chat_items), get_issue ou list_comments para ler a conversa da tarefa e list_chat_messages para a das Conversas.
| Parameter | Type | Description |
|---|---|---|
| view | all | unread | hidden | all (o padrão: as que não foram ocultadas), unread (só as não lidas) ou hidden (as ocultadas). |
| before | string | Id do último item da página anterior, para as mais antigas. |
| limit | integer | Padrão 50, máximo 100. |
update_inbox
tracker:readAtualizar a caixa de entrada
Marca itens da caixa de entrada da pessoa conectada como lidos (action read, com ids ou all: true), oculta (hide, com ids ou older_than_days para as antigas; ocultar também conta como lida) ou traz de volta da aba Ocultadas (unhide, com ids). Vale para os itens das tarefas e das Conversas. Ler também marca no sino as notificações dos mesmos comentários. Devolve updated (quantos mudaram), unread e chat_unread.
| Parameter | Type | Description |
|---|---|---|
| actionrequired | read | hide | unhide | read marca como lida; hide oculta (e conta como lida); unhide traz de volta da aba Ocultadas. |
| ids | list of string | Ids dos itens (os de items e chat_items de list_inbox). |
| all | true | Com read: todas as não lidas. |
| older_than_days | integer | Com hide: as que chegaram há mais destes dias (a tela usa 30). |
get_aqua_summary
tracker:readResumo do dia ou do mês
O resumo da aqua do dia (period day, o padrão) ou do mês (month) da pessoa conectada, como no topo da Caixa de entrada: headline (o principal), highlights (o que aconteceu nas tarefas dela, nas que ela registrou e nas que acompanha), attention (o que pede a atenção dela: menção não lida, prazo, bloqueio), issues (as tarefas citadas, com code, id e url), generated_at e outdated (chegou novidade depois). Sem refresh, devolve o último resumo do período (summary null quando ela ainda não pediu); refresh: true pede um novo, com os créditos de IA da empresa. available diz se a aqua está ligada.
| Parameter | Type | Description |
|---|---|---|
| period | day | month | day (o padrão: hoje) ou month (este mês), no fuso de Brasília. |
| refresh | boolean | Pede um resumo novo à aqua (gasta créditos de IA). Sem ele, devolve o último do período, ou summary null. |
list_aqua_conversations
tracker:readConversas com a aqua
As conversas da pessoa conectada com a aqua no chat de ajuda do tracker (o chat do site e dos apps), as mais recentes primeiro: id, title (a primeira pergunta), messages (quantas mensagens), created_at e updated_at. get_aqua_conversation abre uma.
| Parameter | Type | Description |
|---|---|---|
| limit | integer | Quantas, das mais recentes (padrão e máximo 50). |
get_aqua_conversation
tracker:readAbrir conversa com a aqua
Uma conversa da pessoa conectada com a aqua: as mensagens (role, content, at) e, nas respostas da aqua, as mudanças que ela propôs (actions: tool, input, title, details, state — pending, running, done, cancelled ou failed —, result com text e url, error). Confirmar ou cancelar uma proposta é na tela ou pela API (POST /aqua/conversations/{id}/actions/{action}).
| Parameter | Type | Description |
|---|---|---|
| conversationrequired | string | Id da conversa (veja list_aqua_conversations). |
list_chat_channels
tracker:readCanais das Conversas
Os canais das Conversas da pessoa conectada, como na lista da tela: um por projeto ativo em que ela conversa (o stakeholder não tem canal). Cada canal traz project (id, slug, name), unread (mensagens novas na conversa principal), mentions (menções e respostas nas threads dela ainda não lidas), last_message_at e url. directs traz as conversas diretas dela (só ela e a outra pessoa leem), a mais recente primeiro: id, person (id, name), unread, last_message_at e url; people, com quem ela pode abrir uma (id, name e url). unread no topo soma os canais e as conversas diretas; mentions, os canais. Use list_chat_messages para ler um canal (project) ou uma conversa direta (person).
No parameters.
list_chat_messages
tracker:readLer a conversa do projeto
As mensagens do canal de um projeto em Conversas (project) ou da conversa direta com uma pessoa da equipe (person: id ou e-mail; abre a conversa na primeira vez; não tem thread nem @menção), na ordem em que foram escritas. Sem thread_id, a conversa principal: sem cursor, as últimas; before traz as anteriores e after as que chegaram depois. Com thread_id (o id da primeira mensagem de uma thread), devolve thread (essa mensagem) e replies (as respostas da thread). A conversa é da equipe do projeto (o stakeholder não vê). Cada mensagem traz id, thread_id (a thread em que é resposta, ou null), in_channel e thread_root (a resposta da thread que também foi para a conversa principal, com author e text da mensagem da thread), author, app (a mensagem escrita por um app das Conversas, com key e name; null na de uma pessoa), text (markdown; o texto dos apps sai no idioma da pessoa conectada), at, edited_at, deleted, mine (escrita pela pessoa conectada), can_edit e can_delete (o que ela pode fazer com a mensagem), mentions, mentions_me, attachments (os arquivos anexados: id, name, type, kind image, video ou file, size_bytes e download_url; get_attachment lê o conteúdo), issues (as tarefas citadas pelo código, com code, title, open e url), card (o cartão de um app: a reunião do Google Meet, com url, code, title, started_by e, na agendada, starts_at, ends_at e event_id; null nas outras), meeting_responses (na reunião agendada: quantos responderam yes, maybe e no pelo tracker e mine, a resposta da pessoa conectada; null nas outras), reactions (emoji, count, mine e people), thread (na conversa principal: replies, last_reply_at e people de quem respondeu, ou null) e url. people traz quem pode ser mencionado com @Nome no canal (id, name e me) e, com o app aqua ligado no canal, a aqua no fim (app: "aqua"). unread conta as não lidas da pessoa conectada; mark_read: true marca como lida até a última devolvida (na thread, as menções e respostas dela).
| Parameter | Type | Description |
|---|---|---|
| project | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| thread_id | string | Id da primeira mensagem de uma thread: traz ela e as respostas da thread, em vez da conversa principal. |
| before | string | Id da mensagem mais antiga que você já tem, para as anteriores (na conversa principal). |
| after | string | Id da última mensagem que você já tem, para as que chegaram depois (na thread, a última resposta). |
| limit | integer | Padrão 50, máximo 200 (na conversa principal). |
| mark_read | boolean | Marca como lida até a última mensagem devolvida (na thread, as menções e respostas dela). |
send_chat_message
tracker:writeEscrever na conversa do projeto
Envia uma mensagem no canal do projeto em Conversas (project) em nome da pessoa conectada, como na tela: a equipe do projeto lê na hora. Com thread_id, responde na thread daquela mensagem (quem está na thread é avisado); com also_in_channel: true, a resposta também aparece na conversa principal; sem thread_id, vai para a conversa principal. @Nome menciona alguém do canal (veja people em list_chat_messages) e a pessoa recebe na Caixa de entrada, no sino e no aparelho; o código de uma tarefa (ex.: MOB-0012) vira link e cartão. @aqua, com o app aqua ligado no canal, faz a aqua responder na thread da mensagem com os dados do projeto (aqua_replying: true; a resposta chega em seguida, leia com list_chat_messages e thread_id). Com person (id ou e-mail) no lugar de project, escreve na conversa direta com essa pessoa da equipe (só as duas leem; ela é avisada no aparelho; sem thread). attachments anexa arquivos à mensagem (fotos, PDF, zip, planilhas, logs; até 5, 15 MB cada e 14 MB somados), cada um em content_base64 com file_name ou pela url pública; com anexo, text pode faltar. Para falar de uma tarefa específica, prefira add_comment nela.
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| text | string | Texto da mensagem, em markdown. No canal, @Nome menciona alguém dele (veja people em list_chat_messages) e a pessoa é avisada; @aqua (ligada em todos os canais, a não ser que um admin tenha desligado na empresa) faz a aqua responder na thread da mensagem; o código de uma tarefa (ex.: MOB-0012) vira link e cartão. Pode faltar quando a mensagem leva attachments. |
| attachments | list of object | Arquivos anexados à mensagem (até 5, 14 MB somados, 15 MB cada): fotos, PDF, zip e os outros formatos (.png, .jpg, .jpeg, .webp, .gif, .mp4, .mov, .pdf, .json, .txt, .log, .md, .csv, .zip). Cada um com file_name e content_base64, ou a url pública. |
| thread_id | string or null | Responde na thread desta mensagem (sem ele, vai para a conversa principal). Com o id de uma resposta, entra na mesma thread. |
| reply_to_id | string or null | Nome antigo de thread_id. |
| also_in_channel | boolean or null | Com thread_id: a resposta também vai para a conversa principal, como o "Também enviar para o canal" do Slack. |
react_to_chat_message
tracker:writeReagir a uma mensagem da conversa
Marca (remove: false, o padrão) ou tira (remove: true) a reação da pessoa conectada a uma mensagem das Conversas (do canal, com project, ou da conversa direta, com person), com um emoji (ex.: 👍, ✅, 🎉). Cada pessoa marca cada emoji uma vez por mensagem; uma mensagem aceita até 20 emojis diferentes. Devolve reacted.
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| messagerequired | string | Id da mensagem (o de list_chat_messages). |
| emojirequired | string | O emoji (ex.: 👍, ✅, 🎉). |
| remove | boolean | true tira a reação. |
edit_chat_message
tracker:writeCorrigir mensagem da conversa
Corrige o texto de uma mensagem das Conversas (do canal, com project, ou da conversa direta, com person). Só quem escreveu pode corrigir; no canal, o texto anterior fica no histórico da empresa e quem passa a ser mencionado agora é avisado.
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| messagerequired | string | Id da mensagem (o de list_chat_messages). |
| textrequired | string | Texto da mensagem, em markdown. No canal, @Nome menciona alguém dele (veja people em list_chat_messages) e a pessoa é avisada; @aqua (ligada em todos os canais, a não ser que um admin tenha desligado na empresa) faz a aqua responder na thread da mensagem; o código de uma tarefa (ex.: MOB-0012) vira link e cartão. |
delete_chat_message
tracker:writeExcluir mensagem da conversa
Exclui uma mensagem das Conversas (do canal, com project, ou da conversa direta, com person): fica no lugar como excluída, sem o texto. No canal, o texto vai para o histórico da empresa e quem escreveu ou um admin da empresa exclui; na conversa direta, só quem escreveu.
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| messagerequired | string | Id da mensagem (o de list_chat_messages). |
suggest_chat_issues
tracker:readTarefas para citar na conversa
As tarefas para citar numa mensagem das Conversas (do canal, com project, ou da conversa direta, com person), como a lista que abre ao escrever "#" no campo da tela. Sem q, sugere pelo contexto: as citadas por último na conversa (reason cited), as abertas com a pessoa conectada (mine) e as abertas do projeto do canal mexidas por último (project). Com o começo de um código (MOB-12), completa pelo código; com palavras, usa a busca da aqua (texto e significado). Cada uma traz id, code, title, open, project, reason e url; escreva o code na mensagem (send_chat_message) para virar link e cartão.
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| q | string | O que vem depois do "#": vazio, o começo de um código (MOB-12) ou palavras do título ou do problema. |
list_chat_apps
tracker:readApps das Conversas
Os apps das Conversas, que escrevem nos canais sem ser uma pessoa. Nomes, resumos, descrições e permissões vêm no idioma da pessoa conectada. Sem project nem person, o catálogo da empresa: key, name, summary, description, official, built_in (vem com o tracker), company_wide (vem ligado na empresa toda, em todos os canais; o admin só desliga ou religa na empresa), permissions (cada uma com key, description, required: obrigatória, e granted: a empresa concedeu), events, installed, installed_at, channels (em quantos canais está ligado) e all_channels (o admin ligou em todos os canais, inclusive nos novos). Com project, os apps do canal do projeto: can_manage (a pessoa conectada pode ligar e desligar: PO/PM ou admin), can_install (admin) e apps (key, name, summary, built_in, company_wide, installed, enabled, all_channels: ligado em todos os canais pelo admin, e, em task_updates, events, os avisos que o canal recebe, e allowed_events, os que as permissões da empresa deixam escolher). Com person, os apps da conversa direta com a pessoa: active, can_install e apps (key, name, summary, installed, allowed: a empresa liberou nas conversas diretas, enabled e enabled_by: quem ligou). Os oficiais: task_updates (Avisos de tarefas: tarefa criada, status mudou, responsável mudou e, com a permissão comments:read, comentário novo), automations (Automações: escreve quando uma regra de automação manda), google_meet (Google Meet: cria reuniões no canal e, com a permissão chat:direct, na conversa direta; vem account, a conta Google da pessoa conectada: configured, connected e email) aqua (responde quem escreve @aqua; company_wide: vem ligada em todos os canais, installed false quando um admin desligou na empresa) e google_calendar (Google Calendar: pessoal, cada pessoa usa com a própria conta Google, sem ligar por canal, por isso channels vem null; a agenda do dia, o aviso antes de cada reunião e, com a permissão calendar:respond, a resposta aos convites). Use install_chat_app e set_chat_app para mudar, start_meeting para criar ou agendar a reunião, list_meetings para ver as próximas, get_agenda para a agenda de um dia, respond_to_meeting para responder a um convite e set_meeting_reminder para o aviso.
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
install_chat_app
tracker:writeInstalar app das Conversas
Instala (o padrão) ou desinstala (uninstall: true) um app das Conversas na empresa, como em Empresa → Apps. Só admin e dono. permissions escolhe o que a empresa concede: as obrigatórias entram sempre e, das opcionais, só as da lista (sem permissions na instalação, só as obrigatórias). Com o app já instalado, permissions troca o que está concedido; tirar chat:direct desliga o app em todas as conversas diretas. Instalado, o PO/PM do projeto ou um admin liga o app em cada canal (set_chat_app), ou all_channels: true liga em todos os canais de uma vez, inclusive nos que forem criados depois (na instalação ou depois; false volta para os canais que ligaram um por um; não vale para os pessoais, como google_calendar). Desinstalar desliga em todos os canais e conversas diretas; as mensagens que o app já escreveu ficam. Os que vêm com o tracker (built_in) não se instalam. Os que vêm ligados na empresa toda (company_wide, a aqua) não têm permissões para escolher nem se ligam por canal: uninstall: true desliga na empresa e instalar liga de novo. Devolve key, installed, permissions (as concedidas) e, quando mudou, all_channels.
| Parameter | Type | Description |
|---|---|---|
| apprequired | string | Chave do app (veja list_chat_apps), ex.: "task_updates" (Avisos de tarefas) ou "google_meet" (Google Meet). |
| uninstall | boolean | true desinstala. |
| permissions | list of chat:write | issues:read | comments:read | meetings:create | chat:direct | ai:use | calendar:read | calendar:respond | As permissões que a empresa concede ao app (veja permissions em list_chat_apps). As obrigatórias (required) entram sempre; das opcionais, só as da lista. Ex.: google_meet com chat:direct funciona também nas conversas diretas; task_updates com comments:read pode avisar comentário novo. |
| all_channels | boolean | true liga o app em todos os canais da empresa de uma vez, inclusive nos que forem criados depois (aí o canal não desliga, só escolhe os avisos); false volta para os canais que ligaram um por um. Não vale para os que vêm com o tracker, os da empresa toda (company_wide) e os pessoais (google_calendar). |
set_chat_app
tracker:writeLigar app no canal ou na conversa direta
Liga (enabled: true) ou desliga (enabled: false) um app instalado na empresa no canal de um projeto (project), como em "Apps", no topo do canal, ou na conversa direta com uma pessoa (person). No canal, só o PO/PM do projeto ou um admin; em task_updates (Avisos de tarefas), events escolhe o que o canal recebe: issue.created, issue.status_changed, issue.assigned e comment.created (este só com a permissão comments:read concedida; sem events, fica o que estava ou o padrão: tarefa criada e status mudou). Na conversa direta, qualquer uma das duas pessoas, e só apps que a empresa liberou nas conversas diretas (permissão chat:direct, ex.: google_meet); o app conta na conversa quem ligou ou desligou. Os que vêm ligados na empresa toda (company_wide, a aqua) não se ligam por canal: install_chat_app liga e desliga na empresa. Com all_channels (o admin ligou em todos os canais), o canal não desliga, mas ainda escolhe os events. Devolve project ou person e app.
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| apprequired | string | Chave do app (veja list_chat_apps), ex.: "task_updates" (Avisos de tarefas) ou "google_meet" (Google Meet). |
| enabledrequired | boolean | true liga o app no canal; false desliga. |
| events | list of issue.created | issue.status_changed | issue.assigned | comment.created | Só para task_updates: os avisos que o canal recebe (issue.created, issue.status_changed, issue.assigned, comment.created). Sem ele, fica o que já estava (ou o padrão: tarefa criada e status mudou). |
start_meeting
tracker:writeReunião no Google Meet
Cria uma reunião no Google Meet na conta Google da pessoa conectada e posta o cartão com o link de entrar no canal do projeto (project) ou na conversa direta com uma pessoa (person), como o botão da câmera ou /meet nas Conversas. O app google_meet precisa estar instalado na empresa e ligado ali (set_chat_app; na conversa direta, com a permissão chat:direct concedida), e a pessoa precisa ter conectado a conta Google pelo navegador (o erro traz o link). title é o assunto (opcional); thread_id cria dentro da thread daquela mensagem (só no canal). Com starts_at, agenda para depois, como "Agendar reunião…" no botão da câmera: cria o evento no Google Calendar da pessoa conectada com a sala do Meet, duration_minutes (padrão 30), time_zone (padrão America/Sao_Paulo) e guests (e-mails ou ids de pessoas da conversa; o Google manda o convite), e o cartão diz quando é; agendar pede que a conta Google tenha permitido o acesso à agenda (senão, o erro traz o link para conectar de novo). Devolve project ou person, message (id, thread_id, url) e meeting (url para entrar, code, title, starts_at e ends_at, null na que começa agora, e guests na agendada).
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| title | string | Assunto da reunião, que aparece no cartão (opcional). |
| thread_id | string | Cria a reunião dentro da thread desta mensagem (opcional, só no canal; sem ele, na conversa principal). |
| starts_at | string | Agenda a reunião para depois: quando começa, em ISO 8601 com o fuso (ex.: 2026-10-22T14:00:00-03:00). Cria o evento no Google Calendar da pessoa, com a sala do Meet, e o Google manda o convite aos convidados. Sem ele, a reunião começa agora. |
| duration_minutes | integer | Duração da reunião agendada, em minutos (15 a 480; padrão 30). |
| time_zone | string | Fuso do evento na agenda (IANA, ex.: America/Sao_Paulo; padrão America/Sao_Paulo). |
| guests | list of string | Convidados da reunião agendada: e-mails ou ids de pessoas da conversa (veja list_people). |
list_meetings
tracker:readPróximas reuniões
As próximas reuniões com sala do Google Meet nos próximos 14 dias da agenda Google da pessoa conectada, como "Próximas reuniões" no botão da câmera ou /meet lista nas Conversas (só ela vê; nada vai para a conversa). Pede o app google_meet instalado na empresa e a conta Google conectada com o acesso à agenda (o erro traz o link para conectar). Devolve meetings: title, url (para entrar), code, starts_at, ends_at e calendar_url (o evento no Google Calendar).
No parameters.
get_agenda
tracker:readAgenda do dia
A agenda de um dia no Google Calendar da pessoa conectada, como /agenda ou o botão da agenda nas Conversas (só ela vê; nada vai para a conversa). Pede o app google_calendar instalado na empresa e a conta Google conectada com o acesso à agenda (o erro traz o link para conectar). date (AAAA-MM-DD) ou days (a partir de hoje: 0 hoje, o padrão; 1 amanhã) e time_zone (padrão America/Sao_Paulo). Devolve date, time_zone, can_respond (a empresa liberou responder pelo tracker), reminder_minutes (o aviso antes de cada reunião; 0 desligado) e events: id, title, starts_at, ends_at, all_day, meeting_url (a sala do Meet, para entrar), calendar_url e response (yes, maybe, no; pending sem resposta; null quando ela marcou ou não é convidada).
| Parameter | Type | Description |
|---|---|---|
| date | string | O dia, AAAA-MM-DD (ex.: 2026-10-22). Sem ele, hoje mais days. |
| days | integer | Sem date: quantos dias a partir de hoje (0 hoje, padrão; 1 amanhã; -1 ontem). |
| time_zone | string | Fuso do dia (IANA, ex.: America/Sao_Paulo; padrão America/Sao_Paulo). |
respond_to_meeting
tracker:writeResponder ao convite da reunião
Responde ao convite de uma reunião em nome da pessoa conectada (yes vou, maybe talvez, no não vou), como o Sim, Talvez e Não do cartão da reunião agendada ou da agenda do dia. A resposta vai para o Google Calendar dela e o Google avisa quem marcou. Com message (e project ou person), o cartão da reunião agendada naquela mensagem das Conversas, que passa a contar a resposta; com event_id, um evento da agenda (o id de get_agenda). Pede o app google_calendar com a permissão calendar:respond concedida e a conta Google conectada com o acesso à agenda. Quem marcou a reunião não responde. Devolve response e, no cartão, responses (yes, maybe, no e mine).
| Parameter | Type | Description |
|---|---|---|
| project | string | Canal do projeto: prefixo do código (ex.: MOB), slug ou id. Para a conversa direta, use person. |
| person | string | Conversa direta com esta pessoa da equipe: id ou e-mail (veja people em list_chat_channels). Use no lugar de project. |
| message | string | Id da mensagem com o cartão da reunião agendada (o de list_chat_messages), com project ou person. |
| event_id | string | Id de um evento da agenda (o de get_agenda), no lugar de message. |
| responserequired | yes | maybe | no | A resposta ao convite: "yes" (vou), "maybe" (talvez) ou "no" (não vou). Vai para a agenda Google de quem responde. |
set_meeting_reminder
tracker:writeAviso antes da reunião
Quantos minutos antes de cada reunião da agenda Google da pessoa conectada o tracker avisa, no sino e no celular, como em "Aviso antes da reunião" na agenda do dia (app google_calendar). 5, 10, 15 ou 30; 0 desliga. Sem reminder_minutes, só devolve como está: installed, can_respond, account (configured, connected, email e calendar: permitiu a agenda), connect_url e reminder_minutes.
| Parameter | Type | Description |
|---|---|---|
| reminder_minutes | integer | Quantos minutos antes de cada reunião da agenda Google o tracker avisa (sino e celular): 5, 10, 15 ou 30; 0 não avisa. |
list_issues_to_review
tracker:readIssues para a aqua revisar
As issues abertas que a aqua ainda não revisou ou que mudaram desde a última revisão, as nunca revisadas primeiro (id, código e título). Para revisar todas de uma vez, use start_aqua_review; para revisar uma a uma, review_issue_with_aqua com batch: true.
| Parameter | Type | Description |
|---|---|---|
| project | string | Prefixo, slug ou id do projeto. Sem ele, todos os projetos em que a pessoa edita issues. |
| limit | integer | Quantas issues no máximo (padrão 10, até 25). |
start_aqua_review
tracker:writeRevisar todas as pendentes com a aqua
O botão "Revisar issues abertas" da tela aqua: a aqua revisa no servidor, uma de cada vez, todas as issues abertas que ainda não viu ou que mudaram desde a revisão (até 500), e grava as sugestões. Uma revisão por vez na empresa: se já houver uma rodando, devolve essa. Sem nada pendente, run: null. Acompanhe com get_aqua_review e pare com stop_aqua_review. Exige editar issues e a IA ligada na empresa.
| Parameter | Type | Description |
|---|---|---|
| project | string | Prefixo, slug ou id do projeto. Sem ele, todos os projetos em que a pessoa edita issues. |
get_aqua_review
tracker:readAndamento da revisão da aqua
O andamento de uma revisão de start_aqua_review: status (running, done, stopped ou failed), total, reviewed, failed, suggestions, error e issues (id, code, title, state: waiting, running, done ou failed; suggestions e error). Sem id, a que roda na empresa ou a última.
| Parameter | Type | Description |
|---|---|---|
| id | string | Id da revisão (de start_aqua_review). |
stop_aqua_review
tracker:writeParar a revisão da aqua
Para uma revisão de start_aqua_review: a issue da vez termina, as que faltam ficam sem revisar.
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id da revisão (de start_aqua_review ou get_aqua_review). |
review_issue_with_aqua
tracker:writeRevisar issue com a aqua
A aqua lê a issue (campos, comentários, histórico e os anexos: até 3 prints, 1 PDF e 2 textos ou logs, os mais novos primeiro) e grava sugestões: pedir informações, mover de status, corrigir campos, labels, apontar duplicada ou mover de projeto. Nada muda na issue até alguém aplicar. Devolve a revisão e as sugestões abertas. Exige editar issues no projeto e a IA ligada na empresa. batch: true usa o modelo da revisão em lote (para a fila de list_issues_to_review).
| Parameter | Type | Description |
|---|---|---|
| issuerequired | string | Código (ex.: MOB-0012) ou id da issue. |
| batch | boolean | true: revisão em lote, como o botão Revisar issues abertas. |
apply_aqua_recommendation
tracker:writeAplicar sugestão da aqua
Aplica uma sugestão da aqua pela regra de sempre (comentário, status, campo, label, vínculo de duplicada ou mudança de projeto), em nome da pessoa e com o perfil dela. comment troca o texto do pedido de informações. A sugestão que já não vale (a issue mudou) é recusada: revise de novo.
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id da sugestão (veja list_aqua_recommendations). |
| comment | string |
dismiss_aqua_recommendation
tracker:writeIgnorar sugestão da aqua
Ignora uma sugestão da aqua por 1, 7 ou 30 dias, ou para sempre ("forever": não volta nas próximas revisões).
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id da sugestão (veja list_aqua_recommendations). |
| forrequired | 1 | 7 | 30 | forever | Por quanto tempo ignorar: "1", "7" ou "30" dias, ou "forever". |
list_sentry_errors
tracker:readErros do Sentry
Lista os erros que o Sentry mandou para os projetos (o mesmo erro aparece uma vez, com eventos, pessoas afetadas e releases). state: pending (juntando avisos antes da triagem), suggested (a aqua já fez a triagem e espera uma decisão), linked (ligado a uma issue), regressed (voltou depois de a issue ser concluída), merged (igual a outro), dismissed ou muted. triage traz a issue que a aqua escreveu e, em candidate, a issue aberta que parece a mesma. Com project, traz também a integração (último aviso). waiting: true mostra só o que espera decisão, como na tela aqua.
| Parameter | Type | Description |
|---|---|---|
| project | string | Prefixo, slug ou id do projeto. Sem ele, todos os projetos que a pessoa vê. |
| waiting | boolean | true: só os que esperam uma decisão (sugestão nova ou erro que voltou), como na tela aqua. |
decide_sentry_error
tracker:writeDecidir um erro do Sentry
Decide um erro do Sentry como na tela aqua: create_issue cria a issue já preenchida (título, severidade, passos, link do Sentry, alcance, release, ambiente, aparelho e stack resumido; title troca o título), link liga a uma issue do projeto (a candidata da aqua, ou issue) e comenta nela, reopen reabre a issue de um erro que voltou, dismiss ignora por snooze dias ou para sempre. Exige editar issues no projeto (create_issue, criar issue).
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id do erro (veja list_sentry_errors). |
| actionrequired | create_issue | link | reopen | dismiss | create_issue: cria a issue que a aqua escreveu (com o link, o alcance, a release e o stack). link: liga a uma issue do projeto (a que a aqua apontou, ou `issue`) e comenta nela. reopen: reabre a issue de um erro que voltou. dismiss: ignora por `snooze` dias ou para sempre. |
| title | string | create_issue: título no lugar do que a aqua escreveu. |
| issue | string | link: código (MOB-0012) ou id da issue do mesmo projeto. |
| snooze | 1 | 7 | 30 | forever | dismiss: "1", "7", "30" (dias) ou "forever" (padrão). |
list_sentry_connections
tracker:readConexões com o Sentry
As conexões com o Sentry da empresa (Empresa → Integrações → Sentry; só admin e dono): o projeto que recebe o que sobrar, o webhook_url, se o segredo está salvo, a tabela dos projetos do Sentry (sentry_project_targets: prefixo do projeto do tracker, "rules" ou "ignore"), o que fazer com projeto novo do Sentry, as regras na ordem ("/v1/pedidos/* → API", "project=APP → APP"), ambientes, gravidade mínima, triagem pela aqua, o que os avisos já mostraram (seen) e o último aviso. Use antes de save_sentry_connection.
No parameters.
save_sentry_connection
tracker:writeConectar ou configurar o Sentry
Conecta um Sentry (sem id: project, o projeto que recebe o que sobrar; a resposta traz o webhook_url para criar a Internal Integration no Sentry, e o client_secret entra depois) ou muda uma conexão (com id: só o que vier muda). sentry_project_targets e rules trocam a tabela e as regras inteiras. Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| id | string | Id da conexão para editar (veja list_sentry_connections). Sem ele, conecta um Sentry novo. |
| project | string | Projeto do tracker que recebe o que sobrar (prefixo, slug ou id). Obrigatório ao conectar; cada projeto recebe o que sobra de uma conexão só. |
| client_secret | string | Client Secret da Internal Integration no Sentry (Settings → Custom Integrations). Sem ele (ou vazio), o segredo salvo fica. |
| sentry_project_targets | list of object | A tabela dos projetos do Sentry, inteira (troca a salva). Projeto do Sentry fora dela segue new_sentry_projects. |
| new_sentry_projects | rules | ignore | Projeto do Sentry fora da tabela: rules (as regras decidem) ou ignore. |
| rules | list of string | Todas as regras, na ordem (troca as salvas). Cada regra numa string "condição → PROJETO": a rota da API ("/v1/pedidos/* → API"; * no fim é prefixo, sem * vale a rota e o que vem abaixo dela) ou uma tag do evento ("project=APP → APP"). A primeira que casa vale; o que nenhuma pegar vai para o projeto da conexão. |
| environments | list of string | Ambientes do Sentry aceitos (ex.: ["prod"]); lista vazia aceita todos. Erro de outro ambiente fica de fora. |
| min_level | warning | error | fatal | Gravidade mínima para virar sugestão: warning, error (padrão) ou fatal. Abaixo dela o erro só é contado. |
| ai_triage | boolean | Triagem pela aqua (IA). Ao conectar, ligada. |
| active | boolean | false pausa a conexão (os avisos são recusados). Ao conectar, ligada. |
| start_now | boolean | true: só erros que o Sentry viu pela primeira vez a partir de agora; false: desde sempre. |
test_sentry_connection
tracker:readTestar regras do Sentry
Mostra para onde iriam os últimos erros (até 20) de uma conexão com o Sentry: com a configuração salva ou, sem gravar nada, com a tabela, as regras, os ambientes e a gravidade que vierem. Cada resultado: result (project, ignored ou outside_environment), project (prefixo), by (table, rule com o número da regra, ou leftover), below_min_level, a rota e as tags que as regras leram. Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id da conexão (veja list_sentry_connections). |
| sentry_project_targets | list of object | A tabela dos projetos do Sentry, inteira (troca a salva). Projeto do Sentry fora dela segue new_sentry_projects. |
| new_sentry_projects | rules | ignore | Projeto do Sentry fora da tabela: rules (as regras decidem) ou ignore. |
| rules | list of string | Todas as regras, na ordem (troca as salvas). Cada regra numa string "condição → PROJETO": a rota da API ("/v1/pedidos/* → API"; * no fim é prefixo, sem * vale a rota e o que vem abaixo dela) ou uma tag do evento ("project=APP → APP"). A primeira que casa vale; o que nenhuma pegar vai para o projeto da conexão. |
| environments | list of string | Ambientes do Sentry aceitos (ex.: ["prod"]); lista vazia aceita todos. Erro de outro ambiente fica de fora. |
| min_level | warning | error | fatal | Gravidade mínima para virar sugestão: warning, error (padrão) ou fatal. Abaixo dela o erro só é contado. |
search_docs
tracker:readBuscar nos documentos
Busca na base de conhecimento da empresa (documentos publicados: manuais, regras de negócio, FAQs, processos) e devolve os trechos mais relevantes para a pergunta, com o documento e a seção de cada um. Use antes de responder dúvidas sobre o produto ou os processos da empresa e cite o documento (url). Para o texto inteiro, use get_doc com o slug.
| Parameter | Type | Description |
|---|---|---|
| queryrequired | string | Pergunta ou palavras-chave, em português (sem diferenciar acento). |
| project | string | Projeto (prefixo, slug ou id). Os documentos da empresa toda entram junto. |
| limit | integer | Quantos trechos (padrão 5). |
list_docs
tracker:readListar documentos
Lista os documentos da base de conhecimento que a pessoa lê (título, slug, resumo, projeto e visibilidade), sem o texto. Filtre por projeto, ou "empresa" para os da empresa toda.
| Parameter | Type | Description |
|---|---|---|
| project | string | Projeto (prefixo, slug ou id), ou "empresa" para só os documentos da empresa toda. Sem ele, todos. |
get_doc
tracker:readLer documento
Abre um documento da base de conhecimento pelo slug (ou id), com o texto inteiro em markdown.
| Parameter | Type | Description |
|---|---|---|
| docrequired | string | Endereço (slug) ou id do documento. |
save_doc
tracker:writeSalvar documento
Cria ou atualiza um documento da base de conhecimento em nome da pessoa conectada (texto em markdown). Com o slug de um documento que já existe, atualiza: campo omitido fica como está. Documento de projeto: equipe do projeto (PO/PM, QA, dev) ou admin; da empresa toda: só admin. Cria como rascunho (draft) se a visibilidade não for informada; internal publica para a empresa e os agentes, public também na central de ajuda pública.
| Parameter | Type | Description |
|---|---|---|
| slug | string | Endereço do documento (ex.: como-trocar-a-senha). Se já existe, o documento é atualizado; sem ele, um novo é criado com o endereço tirado do título. |
| titlerequired | string | |
| body | string | Texto em markdown (títulos ## dividem as seções que a busca devolve). |
| summary | string or null | Resumo de uma ou duas frases. |
| project | string or null | Projeto do documento; null para a empresa toda (só admin). Omitido ao atualizar, fica onde está; ao criar, vale a empresa toda. |
| visibility | draft | internal | public | draft (rascunho), internal (a equipe: admins e PO/PM, QA ou dev do projeto; stakeholders não veem) ou public (também na central de ajuda pública). Padrão ao criar: draft. |
list_status
tracker:readPáginas de status
Mostra as páginas de status da empresa (Empresa → Status; só admin e dono): os serviços que o cliente vê, cada um com o projeto dono, o status de agora (o pior entre o manual e os incidentes abertos) e a versão no ar; as páginas, com o endereço público (url), o slug, se estão publicadas e qual é a principal (primary, a que abre em /status); e os incidentes e manutenções recentes (phase active primeiro, depois upcoming, depois closed). Use antes de save_status_service, save_status_page e open_status_incident.
No parameters.
get_status_page
tracker:readVer página de status
Uma página de status com os blocos na ordem: o tipo, o título, os projetos ou serviços escolhidos, os escondidos e o que cada bloco mostra hoje (shows, com o status).
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id da página (veja list_status). |
get_status_incident
tracker:readVer incidente
Um incidente ou manutenção da página de status com a linha do tempo que o cliente lê (status, texto, quem publicou e quando), os serviços afetados e a janela.
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id do incidente (veja list_status). |
save_status_service
tracker:writeCriar ou editar serviço do status
Cria um serviço da página de status (sem id: name e project) ou edita um (com id: só o que vier muda). O serviço é o que o cliente reconhece (o app, a API, o portal); o status manual vale até mudar de novo, e os incidentes abertos pioram o que o cliente vê sem trocar o manual. Serviço novo entra sozinho nos blocos do projeto dele. Monitoramento automático: check_url (healthcheck a cada minuto) e sentry_alerts (erro novo do Sentry do projeto deixa Lento). Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| id | string | Id do serviço para editar. Sem ele, cria um serviço novo. |
| name | string | Nome que o cliente vê (ex.: App do motorista). Obrigatório ao criar. |
| project | string | Projeto dono do serviço: prefixo (ex.: MOB), slug ou id. Obrigatório ao criar. |
| description | string or null | Descrição curta que aparece embaixo do nome; null apaga. |
| status | operational | degraded | partial_outage | major_outage | maintenance | Status manual: operational (Funcionando), degraded (Lento), partial_outage (Fora do ar em parte), major_outage (Fora do ar) ou maintenance (Em manutenção). Ao criar, operational. |
| show_version | boolean | Mostrar a versão em produção do projeto embaixo do nome. Ao criar, true. |
| check_url | string or null | Healthcheck: URL https pública que o tracker abre a cada minuto (resposta lenta, mais de 3 s, deixa Lento; duas falhas seguidas, Fora do ar). null desliga. |
| sentry_alerts | boolean | true: erro novo no Sentry do projeto deixa o serviço Lento por 30 minutos. |
save_status_page
tracker:writeCriar ou editar página de status
Cria uma página de status (sem id: title) ou edita uma (com id: só o que vier muda). blocks traz todos os blocos na ordem e troca os que havia: {"kind": "projects", "projects": ["MOB"]} (um projeto, o título é o nome dele), {"kind": "projects", "title": "Plataforma", "projects": ["PLT", "API"], "hidden_services": ["Fila interna"]} (grupo de projetos) ou {"kind": "services", "title": "Destaques", "services": ["App do motorista"]} (avulsos, por id ou nome). published: true abre o endereço público (url), sem conta. slug: endereço legível /status/<slug> no endereço da empresa; primary: true faz a página abrir em /status. Aparência: brand_name (marca da página), accent_color (#rrggbb), links (até 4 botões no topo, {"label": "Suporte", "url": "https://..."}), show_history e show_past_incidents (false esconde); a logo se envia pela tela. Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| id | string | Id da página para editar. Sem ele, cria uma página nova (rascunho, a não ser que published venha true). |
| title | string | Título da página (ex.: Status dos serviços). Obrigatório ao criar. |
| intro | string or null | Texto de abertura; null apaga. |
| published | boolean | true: a página abre sem conta no endereço público (url). false: rascunho. |
| slug | string | Endereço legível no endereço da empresa (/status/<slug>): minúsculas, números e hífens, único na empresa. Sem ele, ao criar sai do título; ao editar fica o que era. O link com a chave continua abrindo. |
| primary | boolean | true: página principal, que abre em /status no endereço da empresa (desmarca a principal anterior). Sem principal, /status abre a única publicada ou lista as publicadas. |
| blocks | list of object | Todos os blocos da página, na ordem em que aparecem. Quando vem, troca os blocos que havia; sem ele, os blocos ficam como estão. |
| brand_name | string or null | Nome da marca da página (texto de abertura, rodapé e aba); null volta ao nome da empresa. |
| accent_color | string or null | Cor dos botões e destaques, em hexadecimal (ex.: #2563eb); null volta à cor padrão. |
| links | list of object | Botões do topo, ao lado da logo (até 4; o primeiro em destaque). Quando vem, troca os que havia; [] tira todos. |
| show_history | boolean | Mostrar o histórico de 90 dias de cada serviço. Ao criar, true. |
| show_past_incidents | boolean | Mostrar os incidentes encerrados (os abertos e as manutenções agendadas sempre aparecem). Ao criar, true. |
| remove_logo | boolean | true: tira a logo própria da página (volta a da empresa). A logo se envia pela tela. |
open_status_incident
tracker:writeAbrir incidente ou agendar manutenção
Abre um incidente (kind incident: impacto e status investigating → identified → monitoring → resolved) ou agenda uma manutenção (kind maintenance: starts_at e ends_at, status scheduled → in_progress → completed) nos serviços afetados (id ou nome), com a primeira atualização que o cliente lê em message. Enquanto está aberto (ou na janela da manutenção), os serviços afetados aparecem com o impacto nas páginas de status. Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| kind | incident | maintenance | incident (padrão): algo parou ou está lento agora. maintenance: janela planejada, com starts_at e ends_at. |
| titlerequired | string | Título que o cliente vê. |
| servicesrequired | list of string | Serviços afetados (id ou nome). |
| messagerequired | string | Primeira atualização, o texto que o cliente lê, em markdown. |
| impact | degraded | partial_outage | major_outage | Incidente: degraded (Lento, padrão), partial_outage (Fora do ar em parte) ou major_outage (Fora do ar). |
| status | investigating | identified | monitoring | resolved | scheduled | in_progress | completed | Incidente: investigating (padrão), identified, monitoring ou resolved. Manutenção: scheduled (padrão), in_progress ou completed. |
| starts_at | string | Incidente: quando começou (padrão: agora; nunca no futuro). Manutenção: início da janela (obrigatório). |
| ends_at | string | Manutenção: fim da janela (obrigatório). |
update_status_incident
tracker:writeAtualizar incidente
Publica uma atualização num incidente ou manutenção (message, com status e, no incidente, impact): resolved ou completed encerra, e ele vai para Incidentes anteriores. Também corrige os detalhes sem atualização nova (title, services, starts_at, ends_at; impact sem message). Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id do incidente (veja list_status). |
| message | string | Nova atualização para o cliente, em markdown. Com ela, status e impact entram na linha do tempo. |
| status | investigating | identified | monitoring | resolved | scheduled | in_progress | completed | Status com a atualização (padrão: o atual). resolved (incidente) ou completed (manutenção) encerra; voltar a um status aberto reabre. |
| impact | degraded | partial_outage | major_outage | Incidente: novo impacto nos serviços. |
| title | string | Corrige o título (sem atualização nova). |
| services | list of string | Troca os serviços afetados (id ou nome). |
| starts_at | string | Corrige o começo (incidente) ou o início da janela (manutenção). |
| ends_at | string | Manutenção: corrige o fim da janela. |
delete_status_item
tracker:writeExcluir do status
Exclui um serviço (sai de todas as páginas e incidentes), uma página (o endereço público para de abrir) ou um incidente (some da página, inclusive de Incidentes anteriores; para encerrar, use update_status_incident com resolved). Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| typerequired | service | page | incident | service, page ou incident. |
| idrequired | string |
list_idea_boards
tracker:readQuadros de ideias
Mostra os quadros de ideias da empresa (Empresa → Ideias; só admin e dono), onde os clientes votam no que querem ver: título, se está publicado, o endereço público (url, que o cliente abre sem conta), quantas ideias tem e quantas sugestões de clientes esperam a equipe (pending_suggestions). Use antes de get_idea_board e save_idea.
No parameters.
get_idea_board
tracker:readVer quadro de ideias
Um quadro de ideias: projetos, quem pode ver e votar (access e allow_list), se aceita sugestões, as ideias publicadas (mais votadas primeiro, com status que o cliente vê, issue ligada, votos e quantos comentários) e as sugestões dos clientes esperando a equipe (pending_suggestions, com o e-mail de quem sugeriu).
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id do quadro (veja list_idea_boards). |
get_idea
tracker:readVer ideia
Uma ideia com os votos e os comentários (de clientes, com o nome e o e-mail, e da equipe), do mais antigo para o mais novo.
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id da ideia (veja get_idea_board). |
save_idea_board
tracker:writeCriar ou editar quadro de ideias
Cria um quadro de ideias (sem id: title) ou edita um (com id: só o que vier muda). projects troca os projetos do quadro (prefixo, slug ou id). published: true abre o endereço público (url). access link deixa qualquer um com o link ver (votar pede o e-mail confirmado por código); restricted mostra as ideias só a quem confirmar um e-mail de allow_list (["@cliente.com.br", "[email protected]"]). Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| id | string | Id do quadro para editar. Sem ele, cria um quadro novo (rascunho, a não ser que published venha true). |
| title | string | Título que o cliente vê (ex.: Ideias para o app). Obrigatório ao criar. |
| intro | string or null | Texto de abertura do quadro; null apaga. |
| projects | list of string | Projetos do quadro (prefixo, slug ou id). Quando vem, troca todos; ideia de projeto que saiu some do quadro público. |
| published | boolean | true: o quadro abre no endereço público (url). false: rascunho. |
| access | link | restricted | Quem vê e vota: link (padrão; todos veem, e votar pede o e-mail confirmado por código) ou restricted (só quem confirmar um e-mail de allow_list vê as ideias). |
| allow_list | list of string | Quadro restricted: domínios (ex.: "@cliente.com.br") e e-mails avulsos que entram. Quando vem, troca a lista toda. |
| allow_suggestions | boolean | Clientes podem sugerir ideias (padrão true). A sugestão espera a equipe publicar. |
save_idea
tracker:writeCriar ou editar ideia
Cria uma ideia num quadro (sem id: board e title, ou board e issue) ou edita uma (com id: só o que vier muda). Com issue (código de um projeto do quadro), o status que o cliente vê segue o da issue (a fazer: Planejado; em andamento: Em andamento; concluída: Lançado; cancelada: Não vamos fazer); sem issue, vale status. published: true publica a sugestão de um cliente; para recusar, delete_idea_item. Quando o status muda para planned, in_progress, released ou closed, quem votou recebe um e-mail. Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| id | string | Id da ideia para editar. Sem ele, cria uma ideia nova no quadro (board), já publicada. |
| board | string | Id do quadro da ideia nova (veja list_idea_boards). Obrigatório ao criar. |
| title | string | Título escrito para o cliente. Ao criar com issue, sem title usa o título da issue. |
| description | string or null | Descrição para o cliente, em markdown; null apaga. |
| project | string or null | Projeto da ideia, um dos do quadro (prefixo, slug ou id); null tira (num quadro de um projeto só, fica ele). Com issue, vale o projeto da issue. |
| issue | string or null | Código da issue ligada (ex.: MOB-12), de um projeto do quadro; null desliga. Com issue, o status que o cliente vê segue o dela. |
| status | under_review | planned | in_progress | released | closed | Status escolhido à mão (vale sem issue): under_review (Em análise, padrão), planned, in_progress, released ou closed (Não vamos fazer). |
| published | true | Publica a sugestão de um cliente (state pending): ela entra no quadro com os votos que já tem. Para recusar, exclua a ideia. |
reply_to_idea
tracker:writeResponder ideia
Responde numa ideia publicada como a equipe: no quadro, o cliente vê "Equipe <empresa>". Devolve a ideia com os comentários. Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| idrequired | string | Id da ideia. |
| bodyrequired | string | Resposta que o cliente lê, em markdown, assinada como Equipe <empresa>. |
delete_idea_item
tracker:writeExcluir do quadro de ideias
Exclui um quadro (com as ideias e os votos; o endereço público para de abrir), uma ideia (inclusive a sugestão de um cliente, que é como se recusa) ou um comentário (o id vem em get_idea). Só admin e dono.
| Parameter | Type | Description |
|---|---|---|
| typerequired | board | idea | comment | board, idea ou comment. |
| idrequired | string |
create_project
tracker:writeCriar projeto
Cria um projeto como o Novo projeto da tela (quem configura algum projeto, ou admin): nome, prefixo do código (MOB vira MOB-0001), tipo (software, design, admin ou support), modelo do fluxo (software_qa, software ou qa), início e fim previstos (start_date e target_date, AAAA-MM-DD) e, no mesmo pedido, a cor e um ícone pronto (library_icon, de list_project_icons). Quem cria entra como PO/PM; as outras pessoas entram pela tela. Devolve o projeto como em list_projects.
| Parameter | Type | Description |
|---|---|---|
| namerequired | string | Nome do projeto (2 a 60 caracteres, único na empresa). |
| prefixrequired | string | Prefixo do código das issues (ex.: MOB vira MOB-0001): 2 a 4 caracteres, começando por letra, único na empresa. |
| description | string | Descrição curta. |
| kind | software | design | admin | support | Tipo: software (padrão), design (aprovação de peças), admin (tarefas administrativas) ou support (atendimento). Cada tipo traz os tipos de issue e o fluxo dele. |
| workflow | software_qa | software | qa | Projeto de software: o modelo do fluxo, software_qa (padrão: Triagem → ... → Pronto para QA → Em teste → Feito), software (A fazer, Fazendo, Em revisão, Feito) ou qa (16 status, do rascunho ao reteste). |
| color | string | Cor do projeto: um nome da paleta (azul, violeta, rosa, vermelho, laranja, âmbar, verde, turquesa, grafite) ou #rrggbb. Sem ela, a automática pelo prefixo. |
| library_icon | string | Ícone pronto (slug de list_project_icons), pintado na cor do projeto. Sem ele, o prefixo na caixa da cor. |
| start_date | string | Início previsto do projeto (AAAA-MM-DD). |
| target_date | string | Fim previsto do projeto (AAAA-MM-DD), no mesmo dia ou depois do início. |
get_project
tracker:readResumo do projeto
O Resumo de um projeto, como a primeira aba dele na tela: o projeto como em list_projects, início e fim previstos com os dias que passaram e que faltam (time_progress: fração do tempo previsto que já passou), quantas issues há, abertas, concluídas e atrasadas, a sprint ativa, a próxima release, até 5 atrasadas, os 5 próximos prazos e quem participa. project: prefixo, slug ou id.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
get_timeline
tracker:readCronograma do projeto
O Cronograma de um projeto, como a aba da tela: as issues com início ou prazo (até 300, agrupadas por épico ou módulo, com responsável, sprint, horas e se estão atrasadas), as dependências "bloqueia" (conflict quando a que bloqueia termina depois que a outra começa), as sprints, as releases planejadas, o início e o fim previstos do projeto e as issues abertas ainda sem datas. Para mudar as datas de uma issue use plan_issue; do projeto, plan_project. project: prefixo, slug ou id.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
plan_project
tracker:writeDatas previstas do projeto
Define o início e o fim previstos de um projeto (quem configura o projeto, ou admin), que aparecem no Resumo e na linha do projeto no Cronograma (get_timeline). Só o que vier muda; null tira a data. Datas em AAAA-MM-DD, e o início não pode vir depois do fim. Para as datas de uma issue use plan_issue.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| start_date | string or null | |
| target_date | string or null |
set_organization_logo
tracker:writeTrocar logo da empresa
Troca ou tira um dos logos da empresa (Empresa → Geral; só admin e dono). kind square é o quadrado (ícone, seletor de empresa, menu recolhido) e wide o horizontal (topo do menu, login, convites, e-mails, portal). A imagem vai em image_base64 (PNG, JPG ou WebP até 2 MB); remove: true tira. Devolve os endereços públicos dos dois logos.
| Parameter | Type | Description |
|---|---|---|
| kindrequired | square | wide | square: o logo quadrado (ícone, seletor, menu recolhido). wide: o horizontal (topo do menu, login, e-mails, portal). |
| image_base64 | string | A imagem nova em base64 (PNG, JPG ou WebP até 2 MB). O quadrado com largura e altura parecidas e pelo menos 64 px; o horizontal mais largo que alto. |
| file_name | string | Nome do arquivo, com a extensão (padrão "imagem.png"). |
| remove | boolean | true: tira o logo (sem image_base64). |
list_project_icons
tracker:readÍcones prontos para projetos
A biblioteca dos 108 ícones prontos para projetos (mobilidade, energia, comércio, tecnologia e outros grupos), com slug, nome e o desenho (url, em preto com fundo transparente). query filtra pelo nome, slug ou grupo, sem acento. Para usar: set_project_brand com library_icon, que pinta o desenho na cor do projeto.
| Parameter | Type | Description |
|---|---|---|
| query | string | Busca pelo nome, pelo slug ou pelo grupo, sem acento (ex.: "eletrico", "saude"). Sem ela, os 108. |
set_project_brand
tracker:writeCor e ícone do projeto
Troca a cor e o ícone de um projeto (PO/PM ou admin no projeto); só o que vier muda. color: um nome da paleta (azul, violeta, rosa, vermelho, laranja, âmbar, verde, turquesa, grafite) ou #rrggbb; null volta à automática. O ícone é um de três: library_icon (slug de list_project_icons, pintado na cor; para repintar depois de trocar a cor, mande library_icon de novo), image_base64 (ícone próprio, quadrado, PNG, JPG ou WebP até 2 MB) ou remove_icon: true (volta ao prefixo na caixa da cor). Devolve a cor e o endereço do ícone.
| Parameter | Type | Description |
|---|---|---|
| projectrequired | string | Projeto: prefixo do código (ex.: MOB), slug ou id. |
| color | string or null | Cor do projeto: um nome da paleta (azul (#3167ed), violeta (#7c3aed), rosa (#db2777), vermelho (#dc2626), laranja (#ea580c), âmbar (#d97706), verde (#16a34a), turquesa (#0d9488), grafite (#475569)) ou um código #rrggbb. null volta à cor automática (pelo prefixo). |
| library_icon | string | Ícone pronto da biblioteca (o slug, ex.: carro-eletrico; veja list_project_icons), pintado na cor do projeto. Trocar só a cor não repinta o ícone: mande library_icon de novo com a cor nova. |
| image_base64 | string | Ícone próprio em base64 (PNG, JPG ou WebP até 2 MB, quadrado, pelo menos 64 px). |
| file_name | string | Nome do arquivo, com a extensão (padrão "imagem.png"). |
| remove_icon | boolean | true: tira o ícone; o projeto volta a aparecer com o prefixo na caixa da cor. |