API REST

Projetos

Projetos, resumo, cronograma, sprints, pessoas, cor, ícone, repositórios e o painel.

  • GET /projects (tracker:read): projetos com o tipo do projeto (kind: software, design, admin ou support, e o nome em kind_label), tipos de issue (o nível de cada um e, quando houver, o template, modelo dos campos de texto), fluxo de status, campos personalizados, labels, módulos, a cor do projeto (color, #rrggbb) e o ícone (icon_url, com o mesmo token, ou null sem ícone: mostre o prefixo numa caixa na cor) e o início e o fim previstos (start_date, target_date, AAAA-MM-DD ou null). Use antes de criar issues.
  • GET /projects/{prefixo, slug ou id} (tracker:read): o Resumo do projeto, a primeira aba dele na tela. project (como em GET /projects), url, dates (start_date, target_date, days_elapsed desde o início, days_remaining até o fim, negativo quando passou, e time_progress, a fração do tempo previsto que já passou, de 0 a 1, com as duas datas), issues (total, open, done, late), active_sprint (ou null, com days_left), next_release (a de data planejada mais perto que ainda não saiu, ou null), late e upcoming (até 5 issues abertas com prazo vencido e com prazo pela frente: code, title, due_date, assignee, url) e people (name, role). No MCP: get_project.
  • POST /projects (tracker:write; quem configura algum projeto, ou admin): cria um projeto, {"name": "App do motorista", "prefix": "MOB", "kind": "software", "workflow": "software_qa", "description": "...", "color": "verde", "library_icon": "carro", "start_date": "2026-11-03", "target_date": "2027-02-26"} (start_date e target_date, início e fim previstos, opcionais). kind: software (padrão), design, admin ou support; workflow (software): software_qa (padrão), software ou qa. Nome e prefixo únicos na empresa (422 quando já existem, inclusive na lixeira). Quem cria entra como PO/PM. Devolve project como em GET /projects (e warning se a cor ou o ícone não puderam ser salvos; tente de novo em PATCH /projects/{ref}/brand). Criar a partir de outro projeto fica no app. No MCP: create_project.
  • PATCH /projects/{prefixo, slug ou id} (tracker:write; PO/PM ou admin no projeto): início e fim previstos, {"start_date": "2026-11-03", "target_date": "2027-02-26"}; só o que vier muda e null tira. O início não pode vir depois do fim (422). Devolve project, start_date e target_date. No MCP: plan_project.
  • PATCH /projects/{prefixo, slug ou id}/brand (tracker:write, PO/PM ou admin no projeto): cor e ícone; só o que vier muda. JSON {"color": "verde", "library_icon": "carro-eletrico"}: color é um nome da paleta (azul, violeta, rosa, vermelho, laranja, âmbar, verde, turquesa, grafite) ou #rrggbb, e null volta à cor automática; o ícone é um de três: library_icon (ícone pronto, pintado na cor do projeto), image_base64 (ícone próprio, quadrado, PNG, JPG ou WebP até 2 MB; ou multipart/form-data com a imagem no campo icon e os outros campos em texto) ou "remove_icon": true (volta ao prefixo na caixa da cor). O ícone pronto é pintado na hora: trocar só a cor não repinta o ícone, então mande library_icon de novo junto com a cor nova. No multipart, color vazio volta à automática. Devolve color, color_chosen e icon_url. No MCP: set_project_brand.
  • GET /project-icons (tracker:read): a biblioteca dos 108 ícones prontos, por grupo, com slug, name e url (o desenho em preto, fundo transparente); ?query=eletrico filtra pelo nome, slug ou grupo, sem acento. No MCP: list_project_icons.
  • GET /projects/{prefixo, slug ou id}/people (tracker:read): pessoas ativas do projeto, com id e perfil. Use para escolher o responsável.
  • GET /projects/{prefixo, slug ou id}/sprints (tracker:read): o planejamento do projeto: sprints abertas com as issues e os pontos, o começo do backlog (backlog.total e as primeiras issues, na ordem de prioridade) e a velocidade das últimas sprints.
  • GET /projects/{prefixo, slug ou id}/timeline (tracker:read): o Cronograma do projeto. project (com start_date e target_date), url, can_plan (se a pessoa muda as datas das issues), items (as issues com início ou prazo, até 300, as abertas e de data mais perto de hoje primeiro: code, title, status, category, closed, group e group_kind, o épico ou o módulo da linha, is_epic, sprint, assignee, start_date, due_date, first_day e last_day da barra, late, estimate_minutes, spent_minutes, url), truncated, dependencies (blocker, blocked e conflict, quando a que bloqueia termina no dia ou depois do início da bloqueada), sprints, releases (com data planejada) e unscheduled (total e até 20 abertas sem início nem prazo). Para mudar datas: PATCH /issues/{ref}/plan (a issue) e PATCH /projects/{ref} (o projeto). No MCP: get_timeline.
  • GET /projects/{prefixo, slug ou id}/repositories (tracker:read): repositórios do GitHub e projetos do GitLab conectados, com o status que cada evento aplica, o último evento recebido e connection: github_app (o app do GitHub da empresa), gitlab_token (o tracker criou e cuida do webhook no GitLab) ou webhook (configurado à mão). Conectar e desconectar fica no app.
  • GET /panel?project= (tracker:read): o painel de parede de um projeto numa chamada (quadro, atendimento, releases, a semana, gráficos e aqua.topics, as perguntas prontas da aqua, ou null sem IA). GET /panel/aqua?project=&topic= (tracker:read): a resposta da aqua a uma dessas perguntas (overview, o padrão, attention, week, releases e support, este só em projeto com atendimento), em tópicos, com generated_at; a mesma pergunta repete a resposta por 30 minutos.