Merge de autos via API#

Solicita a compilação (merge) de todos os anexos de um processo em um único arquivo PDF ou em um pacote ZIP. A solicitação é assíncrona: a API responde imediatamente confirmando o aceite e, ao final do processamento, envia um único evento via webhook com o resultado.

Importante

Requer o módulo “(API) Base judicial: solicitar merge de autos via API” habilitado para a empresa. Para habilitá-lo, entre em contato com o suporte.

Nota

Os anexos do processo precisam atender aos critérios de disponibilização de anexos. Caso o processo ainda não possua anexos baixados, solicite primeiro a baixa de autos.

Solicitando o merge#

cURL

curl -X POST \
'https://op.digesto.com.br/api/merge-autos/' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
    "cnj": "<cnj>",
    "formato": "pdf"
}'

Parâmetros de requisição

Parâmetro

Tipo

Descrição

cnj

string

Número do processo no formato CNJ (NNNNNNN-DD.AAAA.J.TR.OOOO). Informe exatamente um entre cnj e processo_id.

processo_id

integer

ID interno do processo na base. Alternativa ao cnj (informe apenas um dos dois).

formato

string

Obrigatório. Formato do arquivo de saída. Valores aceitos: pdf ou zip.

Exemplo da chamada

cURL

curl -X POST \
'https://op.digesto.com.br/api/merge-autos/' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
    "cnj": "5014055-97.2026.8.24.0038",
    "formato": "pdf"
}'

Resposta

HTTP/1.1 201 Created
Content-Type: application/json

{
    "id": 95143,
    "status": "processando"
}

Parâmetro

Tipo

Descrição

id

integer

Identificador da solicitação. Será repetido no evento de webhook (campo request_id) ao final do processamento.

status

string

Sempre processando. Confirma o aceite da solicitação; o resultado é entregue posteriormente via webhook.

Observações:

  • A resposta 201 é apenas o aceite da solicitação (ACK). O arquivo final não é retornado nesta chamada.

  • Cada solicitação aceita gera exatamente um evento de webhook terminal (sucesso ou falha). Não há evento intermediário de “processando”.

  • Limite de anexos por solicitação: até 1500 anexos para pdf e até 4000 para zip.

  • Deduplicação: uma nova solicitação para o mesmo processo e formato enquanto outra ainda está em andamento retorna o id da solicitação existente, sem gerar cobrança nem novo webhook.

  • O arquivo gerado fica disponível por até 90 dias. Após esse prazo, faça uma nova solicitação.

  • A solicitação consome a cota mensal de merges via API da empresa. Apenas solicitações concluídas com sucesso são cobradas; falhas técnicas e timeouts não são cobrados.

Resultado via webhook#

Ao concluir o processamento, a API envia um único evento para o endereço de webhook configurado na empresa:

evt_type

Resultado

Descrição

25

Sucesso

Merge concluído. O campo download_url contém o link público para o arquivo gerado.

26

Falha

Erro técnico no processamento ou tempo limite (24h) excedido. O campo status_msg descreve o motivo.

Exemplo de evento de sucesso (evt_type 25)

[
    {
        "api_name": "digesto",
        "target_url": "https://op.digesto.com.br/api/merge-autos/95143",
        "target_number": "50140559720268240038",
        "evt_type": 25,
        "created_at": "2026-06-15T23:38:55.272162+00:00",
        "data": [
            {
                "request_id": 95143,
                "cnj": "50140559720268240038",
                "formato": "pdf",
                "status": "sucesso",
                "download_url": "https://merged-export.digesto.com.br/anexos_proc_50140559720268240038_f13850aa-d500.pdf",
                "download_sz_kb": 16613,
                "has_partial_failures": true,
                "autos_not_merged": [
                    "https://storage.googleapis.com/anexos-processos/attachments/...html?X-Goog-Signature=..."
                ],
                "created_at": "2026-06-15T23:36:15.260541+00:00",
                "finished_at": "2026-06-15T23:38:55.268920+00:00"
            }
        ],
        "id": 1359702754,
        "source_url": ["https://op.digesto.com.br/api/merge-autos/95143"]
    }
]

Exemplo de evento de falha (evt_type 26)

[
    {
        "api_name": "digesto",
        "target_url": "https://op.digesto.com.br/api/merge-autos/95146",
        "target_number": "50140559720268240038",
        "evt_type": 26,
        "created_at": "2026-06-15T23:54:42.254137+00:00",
        "data": [
            {
                "request_id": 95146,
                "cnj": "50140559720268240038",
                "formato": "pdf",
                "status": "falha",
                "status_msg": "falha no processamento",
                "autos_not_merged": [],
                "created_at": "2026-06-15T23:54:41.110407+00:00",
                "finished_at": "2026-06-15T23:54:42.251596+00:00"
            }
        ],
        "id": 1359762561,
        "source_url": ["https://op.digesto.com.br/api/merge-autos/95146"]
    }
]

Campos do evento

Parâmetro

Tipo

Descrição

request_id

integer

Identificador da solicitação (mesmo id retornado no aceite).

cnj

string

Número CNJ do processo.

formato

string

Formato solicitado (pdf ou zip).

status

string

sucesso ou falha.

download_url

string

Apenas em sucesso. URL pública do arquivo gerado, disponível por até 90 dias.

download_sz_kb

integer

Apenas em sucesso. Tamanho do arquivo gerado, em KB.

has_partial_failures

boolean

Apenas em sucesso. Indica se algum anexo não pôde ser incluído no merge (ver autos_not_merged).

autos_not_merged

list de string

Lista de anexos que não puderam ser incluídos no arquivo final (por exemplo, formatos não suportados).

status_msg

string

Apenas em falha. Motivo da falha.

created_at

string

Data/hora (UTC, ISO 8601) da criação da solicitação.

finished_at

string

Data/hora (UTC, ISO 8601) da conclusão (sucesso ou falha).

Erros#

Os erros seguem o envelope padrão da API ({"message": "...", "status": <código>}).

Código

Situação

400

Requisição inválida (formato ausente/inválido, nenhum ou ambos os identificadores informados), processo sem anexos, ou quantidade de anexos acima do limite.

401

Token de autenticação ausente ou inválido.

403

Empresa/usuário sem o módulo habilitado, ou cota mensal de merges via API esgotada.

404

Processo não encontrado para o cnj ou processo_id informado.