{"items":[{"type":"link","label":"Hub API - Aprova","link":"/aprovahubapi","routeSlug":"/aprovahubapi"},{"type":"link","label":"Como Obter sua Chave API","link":"/aprovahubapi/section/como-obter-sua-chave-api","routeSlug":"/aprovahubapi/section/como-obter-sua-chave-api"},{"type":"group","label":"Health","link":"/aprovahubapi/health","routeSlug":"/aprovahubapi/health","items":[{"label":"Health check","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/health/health","routeSlug":"/aprovahubapi/health/health","metadata":{"seo":{"title":"Health check","description":"Health check"}},"httpPath":"/hub-api/health"}]},{"type":"group","label":"Metrics","link":"/aprovahubapi/metrics","routeSlug":"/aprovahubapi/metrics","items":[{"label":"Métricas do sistema","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/metrics/getmetrics","routeSlug":"/aprovahubapi/metrics/getmetrics","metadata":{"seo":{"title":"Métricas do sistema","description":"Métricas do sistema"}},"httpPath":"/hub-api/metrics"}]},{"type":"group","label":"API keys","link":"/aprovahubapi/api-keys","routeSlug":"/aprovahubapi/api-keys","items":[{"label":"Cria uma API key v1","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/api-keys/createapikeyv1http","routeSlug":"/aprovahubapi/api-keys/createapikeyv1http","metadata":{"seo":{"title":"Cria uma API key v1","description":"Cria uma API key V1"}},"httpPath":"/hub-api/api-keys"},{"label":"Lista API keys v1 com chave mascarada","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/api-keys/listapikeysv1http","routeSlug":"/aprovahubapi/api-keys/listapikeysv1http","metadata":{"seo":{"title":"Lista API keys v1 com chave mascarada","description":"Lista API keys v1 com chave mascarada"}},"httpPath":"/hub-api/api-keys/list"},{"label":"Revoga uma API key v1","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/api-keys/revokeapikeyv1http","routeSlug":"/aprovahubapi/api-keys/revokeapikeyv1http","metadata":{"seo":{"title":"Revoga uma API key v1","description":"Revoga uma API key v1"}},"httpPath":"/hub-api/api-keys/revoke"}]},{"type":"group","label":"Process","link":"/aprovahubapi/process","routeSlug":"/aprovahubapi/process","items":[{"label":"Retorna o JSON cru de um processo ou formulário","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/process/getdocumentjsonv1http","routeSlug":"/aprovahubapi/process/getdocumentjsonv1http","metadata":{"seo":{"title":"Retorna o JSON cru de um processo ou formulário","description":"Retorna o JSON completo (sem transformações) de um processo ou formuláriodiretamente do MongoDB, a partir do ObjectId do documento."}},"httpPath":"/hub-api/document/json"},{"label":"Resolve um processo pelo número do processo e cidade","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/process/findprocessbynpv1http","routeSlug":"/aprovahubapi/process/findprocessbynpv1http","metadata":{"seo":{"title":"Resolve um processo pelo número do processo e cidade","description":"Resolve o ObjectId de um processo protocolado a partir do número do processo (nP) + cidade(nome) + UF. Use quando você tem o nP mas não tem o código validador — com o ObjectId emmãos, chame GET /hub-api/document/json para o conteúdo completo do processo."}},"httpPath":"/hub-api/process/find-by-np"},{"label":"Lista os processos de uma cidade em lote","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/process/listprocessesv1http","routeSlug":"/aprovahubapi/process/listprocessesv1http","metadata":{"seo":{"title":"Lista os processos de uma cidade em lote","description":"Lista os processos de uma cidade em lote, filtrando por período e, opcionalmente, porassunto (typeId). Substitui o padrão de consultar um processo por vez: use esta rotapara varrer o conjunto (carga inicial ou sincronização) e, quando precisar do conteúdocompleto de um processo específico, chame GET /hub-api/document/json com o idretornado aqui."}},"httpPath":"/hub-api/process/list"}]},{"type":"group","label":"Dispatch","link":"/aprovahubapi/dispatch","routeSlug":"/aprovahubapi/dispatch","items":[{"label":"Cria um despacho","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/dispatch/createblueprintpostv1http","routeSlug":"/aprovahubapi/dispatch/createblueprintpostv1http","metadata":{"seo":{"title":"Cria um despacho","description":"Cria um novo despacho a partir de um formulário Formly."}},"httpPath":"/hub-api/blueprint-post"},{"label":"Busca um despacho por UUID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/dispatch/getblueprintpostv1http","routeSlug":"/aprovahubapi/dispatch/getblueprintpostv1http","metadata":{"seo":{"title":"Busca um despacho por UUID","description":"Retorna o estado atual de um despacho a partir do seu UUID.Útil para fazer merge seguro do form antes de uma edição (PUT) — busque o despacho, altere apenas o necessário e reenvie."}},"httpPath":"/hub-api/blueprint-post/{id}"},{"label":"Edita um despacho por UUID","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/dispatch/updateblueprintpostv1http","routeSlug":"/aprovahubapi/dispatch/updateblueprintpostv1http","metadata":{"seo":{"title":"Edita um despacho por UUID","description":"Atualiza os dados de um despacho existente a partir do seu UUID.Ao menos um dos campos name ou form deve ser fornecido."}},"httpPath":"/hub-api/blueprint-post/{id}"},{"label":"Altera pontos específicos de um despacho","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/dispatch/patchblueprintpostv1http","routeSlug":"/aprovahubapi/dispatch/patchblueprintpostv1http","metadata":{"seo":{"title":"Altera pontos específicos de um despacho","description":"Aplica operações JSON Patch (RFC 6902) no despacho, sem exigir o reenvio do formcompleto. O servidor lê o estado atual, aplica as operações e persiste — se qualqueroperação falhar, nada é escrito."}},"httpPath":"/hub-api/blueprint-post/{id}"}]},{"type":"group","label":"Blueprint Process","link":"/aprovahubapi/blueprint-process","routeSlug":"/aprovahubapi/blueprint-process","items":[{"label":"Habilita ou desabilita abas de um processo","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/blueprint-process/updateavailabletabsv1http","routeSlug":"/aprovahubapi/blueprint-process/updateavailabletabsv1http","metadata":{"seo":{"title":"Habilita ou desabilita abas de um processo","description":"Controla quais abas ficam disponíveis num processo — o mesmo que o modal\"Configuração de abas\" do Estúdio faz."}},"httpPath":"/hub-api/blueprint-process/{id}/tabs"},{"label":"Lista os despachos vinculados a um processo","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/blueprint-process/listblueprintpostsv1http","routeSlug":"/aprovahubapi/blueprint-process/listblueprintpostsv1http","metadata":{"seo":{"title":"Lista os despachos vinculados a um processo","description":"Responde \"quais despachos estão vinculados a este processo (assunto)\", com o nome decada um — o que permite configurar um assunto sem conhecer nenhum UUID de despacho deantemão."}},"httpPath":"/hub-api/blueprint-process/{id}/blueprint-posts"}]},{"type":"group","label":"Type","link":"/aprovahubapi/type","routeSlug":"/aprovahubapi/type","items":[{"label":"Lista os formulários de uma cidade por nome e UF","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/type/findtypesbycityv1http","routeSlug":"/aprovahubapi/type/findtypesbycityv1http","metadata":{"seo":{"title":"Lista os formulários de uma cidade por nome e UF","description":"Lista os formulários (types) de uma cidade a partir do NOME + UF, opcionalmentefiltrando pelo título. Resolve a cidade por collation (ignora acento e caixa —Chapeco corresponde a Chapecó). Use para descobrir o ObjectId de um formulárioa partir da cidade e do nome, sem consultar o MongoDB diretamente."}},"httpPath":"/hub-api/type/find"},{"label":"Cria um novo assunto","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/type/createtypev1http","routeSlug":"/aprovahubapi/type/createtypev1http","metadata":{"seo":{"title":"Cria um novo assunto","description":"Cria um novo assunto associado à cidade do tenant identificado pela API Key. Para keys compermissionLevel support, o campo cityId deve ser informado no body."}},"httpPath":"/hub-api/type/create"},{"label":"Atualiza um assunto com validação","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/type/updatetypevalidationv1http","routeSlug":"/aprovahubapi/type/updatetypevalidationv1http","metadata":{"seo":{"title":"Atualiza um assunto com validação","description":"Atualiza um assunto existente com validação. O body aceita config, form, step e/ouform_tramites — qualquer outro campo é ignorado pela allowlist do service, e um body semnenhum campo permitido retorna 400."}},"httpPath":"/hub-api/type/edit/{typeId}"},{"label":"Altera pontos específicos de um assunto","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/type/patchtypev1http","routeSlug":"/aprovahubapi/type/patchtypev1http","metadata":{"seo":{"title":"Altera pontos específicos de um assunto","description":"Aplica operações JSON Patch (RFC 6902) no assunto, sem exigir o reenvio do form ou doconfig completos. O servidor lê o estado atual, aplica as operações e persiste — sequalquer operação falhar, nada é escrito."}},"httpPath":"/hub-api/type/patch/{typeId}"},{"label":"Duplica um assunto no mesmo ambiente ou para outra cidade","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/type/duplicatetypev1http","routeSlug":"/aprovahubapi/type/duplicatetypev1http","metadata":{"seo":{"title":"Duplica um assunto no mesmo ambiente ou para outra cidade","description":"Duplica um assunto (type) existente. Uma rota só para os dois casos:"}},"httpPath":"/hub-api/type/duplicate"}]},{"type":"group","label":"Template","link":"/aprovahubapi/template","routeSlug":"/aprovahubapi/template","items":[{"label":"Retorna o HTML de um template pelo nome","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/template/gettemplatev1http","routeSlug":"/aprovahubapi/template/gettemplatev1http","metadata":{"seo":{"title":"Retorna o HTML de um template pelo nome","description":"Retorna o conteúdo HTML de um template de processo a partir do seu nome.O nome do template segue o padrão {Cidade}/{NomeArquivo}.html (ex: MogidascruzesSP/Alvara_Aprovacao_Execucao_Projetos.html)."}},"httpPath":"/hub-api/template"},{"label":"Cria um novo template HTML","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/template/createtemplatev1http","routeSlug":"/aprovahubapi/template/createtemplatev1http","metadata":{"seo":{"title":"Cria um novo template HTML","description":"Cria um novo template de documento HTML associado a uma cidade.O nome do template segue o padrão {Cidade}/{NomeArquivo}.html (ex: MogidascruzesSP/Alvara.html)."}},"httpPath":"/hub-api/template/create"},{"label":"Atualiza um template HTML existente","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/template/updatetemplatev1http","routeSlug":"/aprovahubapi/template/updatetemplatev1http","metadata":{"seo":{"title":"Atualiza um template HTML existente","description":"Atualiza o conteúdo HTML de um template existente, identificado pelo name.Cria uma nova versão do template a partir do HTML enviado."}},"httpPath":"/hub-api/template/edit"}]},{"type":"group","label":"Sector","link":"/aprovahubapi/sector","routeSlug":"/aprovahubapi/sector","items":[{"label":"Lista os setores (organograma) de uma cidade","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/sector/listsectorsbycityv1http","routeSlug":"/aprovahubapi/sector/listsectorsbycityv1http","metadata":{"seo":{"title":"Lista os setores (organograma) de uma cidade","description":"Lista todos os setores de uma cidade — o organograma da prefeitura —, não apenasos setores de um usuário."}},"httpPath":"/hub-api/sector/list"}]},{"type":"group","label":"Users","link":"/aprovahubapi/users","routeSlug":"/aprovahubapi/users","items":[{"label":"Consulta informações de um usuário","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/users/getuserv1http","routeSlug":"/aprovahubapi/users/getuserv1http","metadata":{"seo":{"title":"Consulta informações de um usuário","description":"Consulta dados detalhados de um usuário a partir do identificador do Aut0."}},"httpPath":"/hub-api/users"}]},{"type":"group","label":"Rotas Removidas","link":"/aprovahubapi/rotas-removidas","routeSlug":"/aprovahubapi/rotas-removidas","items":[{"label":"Consulta um processo por np e codvalid","deprecated":true,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/rotas-removidas/consultprocessv1http","routeSlug":"/aprovahubapi/rotas-removidas/consultprocessv1http","metadata":{"seo":{"title":"Consulta um processo por np e codvalid","description":"⚠️ Rota removida. Endpoint descontinuado — a rota core correspondente foi removida no sweep de código morto e este proxy retorna 400 para qualquer requisição. Mantido aqui apenas para referência histórica.Substituta: GET /hub-api/process/find-by-np (resolve o processo por nP + cidade + UF, sem exigir o codValid)."}},"httpPath":"/hub-api/process/get-by-np"},{"label":"Cria um processo sem validação de regras de formulário","deprecated":true,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/aprovahubapi/rotas-removidas/createprocessv1http","routeSlug":"/aprovahubapi/rotas-removidas/createprocessv1http","metadata":{"seo":{"title":"Cria um processo sem validação de regras de formulário","description":"⚠️ Rota removida. Endpoint descontinuado — a rota core correspondente foi removida no sweep de código morto e este proxy não está mais disponível. Mantido aqui apenas para referência histórica."}},"httpPath":"/hub-api/process/create"}]}]}