Processos

Cadastrar processo

POST · API de Integração v2

POST/v2/processos

Cadastrar processo

Cria um processo vinculado ao seu escritório.

Identidade: o escritório é resolvido a partir da sua chave de API — não vai no corpo. Em partes.clientes[].clienteId vão as pessoas (partes do processo), não o escritório.

Seções do corpo: dadosBasicos (obrigatório), detalhesComplementares, camposPersonalizados, partes e controleAcesso.

dadosBasicos
CampoValidaçãoDescriçãoRegras
tribunalId@NotNull @PositiveTribunal. O tipo (judicial/administrativo) é resolvido na UI: judicial usa o tribunal escolhido; administrativo usa o id do tribunal administrativo.Obrigatório.
numeroProcesso@NotBlankNúmero do processo. Validado conforme formatoNumero.Obrigatório. Em CNJ: NNNNNNN-DD.AAAA.J.TR.OOOO (20 dígitos, com ou sem máscara; o dígito verificador não é conferido). Em OUTRO: texto livre.
formatoNumeroenumComo o número deve ser lido/validado.Opcional (default CNJ). Use OUTRO para numeração própria — administrativo, STF/STJ e tribunais fora do padrão CNJ.
classeJudicialtexto livreClasse judicial (rótulo, ex.: "Procedimento Comum Cível"). Não é id de catálogo.Opcional.
numeroInterno-Número próprio do escritório (a UI legada só o exibe para alguns tribunais).Opcional.
assuntoIdslista @PositiveAssuntos do processo (pode ter mais de um).Opcional.
marcadorIdslista @PositiveMarcadores/etiquetas.Opcional.
pasta, protocolo-Organização/identificação.Opcional.
areaId@PositiveÁrea de atuação.Opcional.
valorCausa, valorCondenacaodecimalValores monetários.Opcional.
situacaotexto livreSituação processual.Opcional; texto livre (ex.: PROCESSO_DISTRIBUIDO).
statusProcessoenumEstado do processo.Um de: ATIVO, ENCERRADO.
emGrauRecurso, segredoJusticabooleanFlags.Opcional (default false).
monitoramentoAtivobooleanLiga a captura automática do tribunal para este processo.Opcional (default false). Consome vaga do plano: se o limite de processos monitorados estiver esgotado, o cadastro é recusado com 409. Para cadastrar de todo modo, envie false e ligue depois.

detalhesComplementares: órgão/vara; risco/resultado/êxito/natureza/tipo de ação (texto livre); faseId (id de uma fase cadastrada do escritório); datas (requerimento, autuação, distribuição, fechamento, trânsito em julgado, arquivamento), honorários e observações. Todos opcionais.

camposPersonalizados: lista de { campoId, valores[] } definidos pelo escritório (1 valor para campo único; vários para múltipla escolha).

partes: dois lados — clientes (quem o escritório representa) e partesContrarias (o lado adverso), cada um com { tipoPolo, clienteIds[], advogadoIds[], testemunhaIds[] }. Advogados e testemunhas pertencem ao lado, não a uma pessoa específica.

tipoPolo: a posição processual do lado — ATIVO, PASSIVO ou TERCEIRO. É declarado, não deduzido do bloco: quando o seu cliente é réu, clientes.tipoPolo = "PASSIVO" e partesContrarias.tipoPolo = "ATIVO". Opcional (omitido = não informado); valor desconhecido devolve 400. Não confundir com o campo polo das testemunhas no banco, que indica apenas de que lado da ficha elas estão.

controleAcesso: responsavelIds[] e equipeIds[].

Processo já cadastrado

A identidade de um processo é número + tribunal dentro do seu escritório. Se já existir:

  • ativo → 409. É o mesmo processo; para alterá-lo use PUT.
  • excluído → o processo é reativado e recebe os dados enviados. A resposta traz "reativado": true.

⚠️ Na reativação, o que voltou não é uma casca vazia: andamentos, documentos, audiências e compromissos de agenda continuam ligados àquele processo, porque nunca foram apagados. Os campos e vínculos que você enviou substituem os antigos; o histórico permanece. Vale avisar o usuário — ele pode não esperar encontrar anexos que não subiu.

Autenticação

X-API-Key no cabeçalho. Como autenticar

Corpo da requisiçãoobrigatório

Dados do processo a cadastrar (ver seções na descrição).

application/json

camposPersonalizadosCampoPersonalizado[]
Ver propriedades
campoIdintegerobrigatório
formato: int64
valoresstring[]
controleAcessoControleAcesso
Ver propriedades
equipeIdsinteger[]
responsavelIdsinteger[]
dadosBasicosDadosBasicosobrigatório
Ver propriedades
areaIdinteger
formato: int64
assuntoIdsinteger[]
classeJudicialstring
emGrauRecursoboolean
formatoNumerostring
marcadorIdsinteger[]
monitoramentoAtivoboolean
numeroInternostring
numeroProcessostringobrigatório
pastastring
protocolostring
segredoJusticaboolean
situacaostring
statusProcessostringobrigatório
tipoProcessointeger
formato: int32mín.: 1máx.: 2
tribunalIdintegerobrigatório
formato: int64
valorCausanumber
valorCondenacaonumber
detalhesComplementaresDetalhesComplementares
Ver propriedades
dataArquivamentostring
dataAutuacaostring
dataDistribuicaostring
dataFechamentostring
dataRequerimentostring
dataTransitoJulgadostring
descricaoHonorariosstring
exitoIdstring
faseIdinteger
formato: int64
naturezaAcaoIdstring
até 255 caracteres
observacoesstring
até 2000 caracteres
orgaoVarastring
resultadoIdstring
riscoIdstring
tipoAcaoIdstring
partesPartesobrigatório
Ver propriedades
clientesPolo
Ver propriedades
advogadoIdsinteger[]
clienteIdsinteger[]
testemunhaIdsinteger[]
tipoPolostring
partesContrariasPolo
Ver propriedades
advogadoIdsinteger[]
clienteIdsinteger[]
testemunhaIdsinteger[]
tipoPolostring

Respostas5

Exemplos ilustrativos · nenhuma requisição é enviada

200 · Sucesso

Quando acontece
A operação foi concluída.
Como tratar
Leia os dados retornados; em listagens, confira também a paginação.

Exemplo declarado no OpenAPI · application/json

Exemplo · HTTP 200
{
  "id": 45210,
  "numeroProcesso": "0001234-96.2026.8.17.0001",
  "reativado": false
}

Contrato de respostas

200Processo cadastrado.

Processo cadastrado.

application/json

idinteger
formato: int64
numeroProcessostring
reativadoboolean
400Payload inválido (ex.: número CNJ fora do padrão, faseId que não é do escritório).

Payload inválido (ex.: número CNJ fora do padrão, faseId que não é do escritório).

O contrato não declara um corpo para esta resposta.

401Não autenticado (token ausente/inválido).

Não autenticado (token ausente/inválido).

O contrato não declara um corpo para esta resposta.

403Usuário sem permissão de adicionar processo.

Usuário sem permissão de adicionar processo.

O contrato não declara um corpo para esta resposta.

409Já existe processo ativo com o mesmo número e tribunal neste escritório; ou o limite de processos monitorados do plano foi atingid

Já existe processo ativo com o mesmo número e tribunal neste escritório; ou o limite de processos monitorados do plano foi atingido (este só com monitoramentoAtivo = true). Distinga pelo campo code.

O contrato não declara um corpo para esta resposta.

© 2026 Expedit LawtechFeito para conectar.