Pular para o conteúdo principal
Página não listada
Esta página não está listada. Mecanismos de busca não irão indexá-la, e somente usuários que possuam o link direto poderão acessá-la

Busca Avançada de Instâncias

POST /process-instances/search é o endpoint de consulta mais rico da API — filtros por definição, chave de negócio, tenant, status, variáveis exatas, intervalo de datas, relação pai/filho, paginação e ordenação, todos combináveis e todos opcionais. Este documento é a referência completa do seu contrato; para os outros endpoints de instância (iniciar, snapshot, variáveis), veja Instâncias de Processo.

POST /process-instances/search
Content-Type: application/json

Exemplo de payload

Nenhum campo é obrigatório — envie só os filtros que quiser. Os filtros informados são combinados com AND (nunca OR entre eles):

{
"processDefinitionKeys": ["intermediacao-veiculos"],
"activeNodeId": "AGUARDANDO_CONTATO",
"tenantIds": ["empresa-abc-123", "empresa-xyz-789"],
"statuses": ["ACTIVE"],
"startedAfter": "2026-07-01T00:00:00.000Z",
"startedBefore": "2026-07-31T23:59:59.999Z",
"variables": {
"prospectType": "VENDA",
"marcaVeiculo": "Toyota"
},
"variablesExist": ["telefoneContato"],
"orderBy": "startedAt",
"ascending": false,
"page": 0,
"size": 20
}

Dicionário de parâmetros

Definição e estado

ParâmetroTipoDescrição
processDefinitionIdstringBusca pelo id exato de uma versão específica.
processDefinitionIdsstring[]Lista de ids de versões específicas.
processDefinitionKeysstring[]Recomendado. Busca por key (ex.: ["intermediacao-veiculos"]), abrangendo todas as versões daquela key — não precisa saber qual versão está ativa.
activeNodeIdstringSó instâncias com uma tarefa ativa/aguardando exatamente nesse nó (ex.: "EM_ESTOQUE").
parentInstanceIdstringSó as instâncias filhas diretas de um CALL_ACTIVITY_COORDINATOR (subprocesso) da instância informada — ver Guia de Integração do Monitor §3.2.
statusesstring[]ACTIVE, COMPLETED, CANCELLED.

Negócio e organização

ParâmetroTipoDescrição
tenantIdstringUm único tenant.
tenantIdsstring[]Vários tenants de uma vez.
businessKeystringChave de negócio exata (ex.: número de pedido).
businessKeysstring[]Várias chaves de negócio.

Datas

Sempre ISO-8601 UTC com sufixo Z.

ParâmetroTipoDescrição
startedAfterstringInstâncias iniciadas a partir desta data/hora, inclusive.
startedBeforestringInstâncias iniciadas até esta data/hora, inclusive.

Variáveis

Consulta dinâmica sobre variáveis de processo, sem coluna dedicada por variável.

ParâmetroTipoDescrição
variablesobjectMapa chave→valor — casamento exato com o valor gravado na instância. Ex.: { "prospectType": "VENDA", "statusCredito": "APROVADO" }. Implementação Mongo só faz variables.<key>.value exato — não é busca parcial/substring.
variablesExiststring[]Instâncias onde a variável está presente (com qualquer valor). Ex.: ["cpfComprador"].

Ordenação e paginação

ParâmetroTipoPadrãoDescrição
orderBystring"startedAt"Whitelist: id, businessKey, status, processDefinitionId, startedAt, endedAt. Qualquer outro valor → 400 BAD_REQUEST, não é ignorado silenciosamente.
ascendingbooleanfalsetrue = crescente; false = decrescente (mais recente primeiro).
pagenumber0Baseado em zero.
sizenumber20Teto de 100 — valores maiores são reduzidos a 100, não rejeitados.

Formato de resposta

Um PageResult<ProcessInstanceSummary> (ver Convenções):

{
"content": [
{
"id": "ae8fd836-c6a8-4dd1-af8d-0e6ec3530657",
"businessKey": "100234",
"status": "ACTIVE",
"processDefinitionId": "fc451f6f-a944-4dbb-b2ba-b5fb6433f40a",
"startedAt": "2026-07-24T17:10:31.460Z",
"endedAt": null,
"activeNodes": { "AGUARDANDO_CONTATO": 1 },
"parentInstanceId": null,
"callerTaskId": null,
"callerBranchId": null
}
],
"totalElements": 45,
"totalPages": 3,
"page": 0,
"size": 20
}

ProcessInstanceSummary é uma projeção — não traz variables nem o mapa completo de tarefas. Para o conteúdo completo de uma instância específica, siga com GET /process-instances/{id} ou GET /process-instances/{id}/snapshot.