← Voltar para Documentação

Integração LegalMail

Guia completo de autenticação, endpoints e exemplos de código para integração com a API do LegalMail.

Autenticação

Obter Chave de API

  1. 1Acesse app.legalmail.com.br
  2. 2Vá para Menu → Integrações
  3. 3Clique em "Gerar Nova Chave de API"
  4. 4Copie a chave gerada e guarde em local seguro

⚠️ Segurança: Nunca compartilhe sua chave de API. Trate-a como uma senha. Se comprometida, regenere imediatamente.

Configuração Inicial

Variáveis de Ambiente

Configure as seguintes variáveis de ambiente:

LEGALMAIL_API_KEY=sua_chave_api_aqui
LEGALMAIL_BASE_URL=https://app.legalmail.com.br/api
LEGALMAIL_API_VERSION=v1

Adicione estas variáveis ao seu arquivo .env ou ao sistema de configuração do seu servidor.

Endpoints Principais

GET/v1/lawsuit/all

Listar todos os processos do workspace.

{
  "success": true,
  "data": [
    {
      "id": "123456",
      "number": "0000832-35.2018.4.01.3202",
      "title": "Ação de Direito à Saúde",
      "status": "Arquivado",
      "created_at": "2023-10-30"
    }
  ]
}
GET/v1/lawsuit/detail

Obter detalhes completos de um processo.

Parâmetros: lawsuit_number

{
  "success": true,
  "data": {
    "id": "123456",
    "number": "0000832-35.2018.4.01.3202",
    "title": "Ação de Direito à Saúde",
    "status": "Arquivado",
    "class": "Ação Ordinária",
    "subject": "Direito à Saúde",
    "court": "TRF1",
    "filed_at": "2023-10-30",
    "parties": [
      {"name": "João Silva", "role": "Autor"},
      {"name": "Estado da Bahia", "role": "Réu"}
    ]
  }
}
GET/v1/lawsuit/documents

Listar todos os autos e documentos de um processo.

Parâmetros: lawsuit_number

{
  "success": true,
  "data": [
    {
      "id": "doc_001",
      "name": "Petição Inicial",
      "type": "Petição",
      "date": "2023-10-30",
      "url": "https://app.legalmail.com.br/documents/..."
    }
  ]
}

Rate Limiting

Limite Padrão

30 requisições por minuto

Tratamento de Erros

Se atingir o limite, aguarde 60 segundos antes de fazer novas requisições.

Boas Práticas

Implemente retry logic com backoff exponencial para melhor confiabilidade.

Exemplos de Código

Python 3.11+
import requests
import json

# Configuração
API_KEY = "sua_chave_api_legalmail"
BASE_URL = "https://app.legalmail.com.br/api"

# Headers
headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

# Consultar processos
def listar_processos():
    url = f"{BASE_URL}/v1/lawsuit/all"
    response = requests.get(url, headers=headers)
    return response.json()

# Obter detalhes de um processo
def obter_detalhes_processo(numero_processo):
    url = f"{BASE_URL}/v1/lawsuit/detail"
    params = {"lawsuit_number": numero_processo}
    response = requests.get(url, headers=headers, params=params)
    return response.json()

# Listar autos de um processo
def listar_autos(numero_processo):
    url = f"{BASE_URL}/v1/lawsuit/documents"
    params = {"lawsuit_number": numero_processo}
    response = requests.get(url, headers=headers, params=params)
    return response.json()

# Exemplo de uso
if __name__ == "__main__":
    processos = listar_processos()
    print(json.dumps(processos, indent=2))

Tratamento de Erros

401 Unauthorized

Chave de API inválida ou expirada. Verifique suas credenciais.

429 Too Many Requests

Limite de taxa excedido. Aguarde 60 segundos antes de tentar novamente.

500 Internal Server Error

Erro no servidor do LegalMail. Tente novamente em alguns minutos.

Precisa de Ajuda?

Consulte a documentação oficial do LegalMail ou entre em contato com o suporte.

Documentação Oficial do LegalMail