Skip to content

Hub API - Aprova

O Hub API é uma plataforma de abstração de APIs projetada para padronizar e simplificar a integração de sistemas de parceiros terceiros com o Aprova. O principal objetivo é criar um ponto de entrada único e seguro para as funcionalidades do Aprova. Utilizamos um sistema de autenticação robusto para garantir que o uso dos nossos serviços por terceiros seja seguro, controlado e intuitivo. Isso facilita o trabalho de desenvolvedores externos e reduz a complexidade da integração.

Como Obter sua Chave API

Para começar a usar o Hub API, siga os passos abaixo para habilitar a funcionalidade e gerar suas chaves de acesso:

Passo 1: Ative a Permissão de Administrador

  • Navegue até: Outros > Administração Geral > Permissões > Todas as Permissões
  • Ative a permissão hubapi:admin
  • Vincule essa permissão a um grupo de usuários administradores
  • Saia do sistema e entre novamente

Passo 2: Acesse o Gerenciador de Chaves

  • Após ativar a permissão, um novo menu aparecerá
  • Navegue até: Outros > Administração Geral > Gerenciar Ambiente > Chaves API - Hub API

Passo 3: Crie sua Chave API

  • Clique em Criar Chave API
  • Defina um nome único para identificar a chave
  • Copie e salve a chave exibida imediatamente

IMPORTANTE: A chave API será exibida por completo apenas uma vez. Após sair da tela, por motivos de segurança, a chave completa não será mostrada novamente. Certifique-se de armazená-la em um local seguro.

Download OpenAPI description
Overview
Languages
Servers
https://api.producao.aprova.com.br

Operações relacionadas à consulta de processos

Operations

Operações relacionadas à criação e edição de despachos

Operations

Request

Cria um novo despacho a partir de um formulário Formly.

Controle de acesso por nível de permissão da API Key:

  • tenant — o despacho é vinculado ao município da API Key; o campo cityId é ignorado.
  • support — o campo cityId é obrigatório e define o município ao qual o despacho pertence.
Security
InternalAuth
Bodyapplication/jsonrequired
formobjectrequired

Formulário Formly do despacho

form.​property name*anyadditional property
namestring

Nome do despacho

Example: "Despacho de Aprovação"
cityIdnumber

ID do município. Obrigatório para API Keys do tipo support; ignorado para tenant.

Example: 42
curl -i -X POST \
  https://api.producao.aprova.com.br/hub-api/blueprint-post \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -d '{
    "name": "Despacho de Aprovação",
    "form": {
      "formData": [
        {
          "fieldGroup": [
            {
              "fieldGroup": [
                {
                  "type": "next-ck",
                  "key": "justificativa",
                  "templateOptions": {
                    "label": "Justificativa",
                    "required": true,
                    "hideLabel": false,
                    "columns": "12",
                    "hiddenTemp": false,
                    "readonly": false,
                    "sensitiveField": false
                  },
                  "className": "col-12"
                },
                {
                  "type": "next-input",
                  "key": "numero_processo",
                  "templateOptions": {
                    "label": "Número do Processo",
                    "required": true,
                    "hideLabel": false,
                    "columns": "12",
                    "hiddenTemp": false,
                    "readonly": false,
                    "sensitiveField": false
                  },
                  "className": "col-12"
                },
                {
                  "type": "next-upload",
                  "key": "anexos",
                  "templateOptions": {
                    "label": "Anexos",
                    "required": false,
                    "hideLabel": false,
                    "columns": "12",
                    "extends": [
                      "PDF",
                      "PNG",
                      "JPG",
                      "JPEG"
                    ],
                    "compactView": false,
                    "hiddenTemp": false,
                    "readonly": false,
                    "sensitiveField": false
                  },
                  "className": "col-12"
                },
                {
                  "type": "radio",
                  "key": "aprovado",
                  "templateOptions": {
                    "label": "Aprovado?",
                    "required": true,
                    "hideLabel": false,
                    "columns": "12",
                    "hiddenTemp": false,
                    "readonly": false,
                    "sensitiveField": false,
                    "options": [
                      {
                        "label": "Sim",
                        "value": "true"
                      },
                      {
                        "label": "Não",
                        "value": "false"
                      }
                    ]
                  },
                  "className": "col-12"
                }
              ],
              "wrappers": [
                "card-post"
              ],
              "expressionProperties": {}
            }
          ]
        }
      ]
    }
  }'

Responses

Despacho criado com sucesso

Bodyapplication/json
idstring(uuid)
Example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
cityIdnumber
Example: 42
formobject
namestring
Example: "Despacho de Aprovação"
disabledboolean
Example: false
allowedUserTypesArray of strings
Example: ["Aprovador"]
statusListArray of strings
Example: ["Em análise"]
deadlineFormatstring or null
Example: "days"
deadlineValuenumber or null
Example: 5
createdAtstring(date-time)
Example: "2026-01-15T10:30:00.000Z"
deletedAtstring or null(date-time)
Example: "2026-02-01T00:00:00.000Z"
deletedboolean
Example: false
Response
application/json
{ "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "cityId": 42, "name": "Despacho de Aprovação", "form": { "formData": [] }, "disabled": false, "allowedUserTypes": [], "statusList": [], "deadlineFormat": null, "deadlineValue": null, "createdAt": "2024-03-15T14:22:10.000Z", "deletedAt": null, "deleted": false }

Request

Atualiza os dados de um despacho existente a partir do seu UUID. Ao menos um dos campos name ou form deve ser fornecido.

Security
InternalAuth
Path
idstring(uuid)required

UUID do despacho a ser editado

Example: 550e8400-e29b-41d4-a716-446655440000
Bodyapplication/jsonrequired
Any of:
namestringrequired

Novo nome do despacho

Example: "Despacho de Aprovação Revisado"
formobject

Novo formulário Formly do despacho

curl -i -X PUT \
  https://api.producao.aprova.com.br/hub-api/blueprint-post/550e8400-e29b-41d4-a716-446655440000 \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -d '{
    "name": "Despacho de Aprovação Revisado",
    "form": {
      "formData": [
        {
          "fieldGroup": [
            {
              "fieldGroup": [
                {
                  "type": "next-ck",
                  "key": "justificativa",
                  "templateOptions": {
                    "label": "Justificativa",
                    "required": true,
                    "hideLabel": false,
                    "columns": "12",
                    "hiddenTemp": false,
                    "readonly": false,
                    "sensitiveField": false
                  },
                  "className": "col-12"
                },
                {
                  "type": "next-input",
                  "key": "numero_processo",
                  "templateOptions": {
                    "label": "Número do Processo",
                    "required": true,
                    "hideLabel": false,
                    "columns": "12",
                    "hiddenTemp": false,
                    "readonly": false,
                    "sensitiveField": false
                  },
                  "className": "col-12"
                },
                {
                  "type": "radio",
                  "key": "aprovado",
                  "templateOptions": {
                    "label": "Aprovado?",
                    "required": true,
                    "hideLabel": false,
                    "columns": "12",
                    "hiddenTemp": false,
                    "readonly": false,
                    "sensitiveField": false,
                    "options": [
                      {
                        "label": "Sim",
                        "value": "true"
                      },
                      {
                        "label": "Não",
                        "value": "false"
                      }
                    ]
                  },
                  "className": "col-12"
                }
              ],
              "wrappers": [
                "card-post"
              ],
              "expressionProperties": {}
            }
          ]
        }
      ]
    }
  }'

Responses

Despacho atualizado com sucesso

Bodyapplication/json
idstring(uuid)
Example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
cityIdnumber
Example: 42
formobject
namestring
Example: "Despacho de Aprovação"
disabledboolean
Example: false
allowedUserTypesArray of strings
Example: ["Aprovador"]
statusListArray of strings
Example: ["Em análise"]
deadlineFormatstring or null
Example: "days"
deadlineValuenumber or null
Example: 5
createdAtstring(date-time)
Example: "2026-01-15T10:30:00.000Z"
deletedAtstring or null(date-time)
Example: "2026-02-01T00:00:00.000Z"
deletedboolean
Example: false
Response
application/json
{ "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "cityId": 42, "name": "Despacho de Aprovação Revisado", "form": { "formData": [] }, "disabled": false, "allowedUserTypes": [], "statusList": [], "deadlineFormat": null, "deadlineValue": null, "createdAt": "2024-03-15T14:22:10.000Z", "deletedAt": null, "deleted": false }

Operações relacionadas a assuntos (types)

Operations

Operações relacionadas a templates de processos

Operations

Operações relacionadas à consulta de usuários

Operations