# Listar execuções

`GET /v1/execucoes`

Execuções da Conta, mais recentes primeiro, sem os documentos (o detalhe traz). Próxima página: `antes` = `criada_em` da última linha.

## Parâmetros

| Nome | Onde | Tipo | Obrigatório | Descrição |
|---|---|---|---|---|
| `limite` | consulta | inteiro | não | Linhas por página, de 1 a 200 (padrão 50) (mínimo 1; máximo 200; padrão `50`) |
| `antes` | consulta | data e hora (ISO 8601) | não | Só execuções criadas antes deste instante (paginação) |
| `estado` | consulta | `na_fila` \| `em_andamento` \| `concluida` \| `com_pendencia` | não | `na_fila`, `em_andamento`, `concluida` ou `com_pendencia` |

## Respostas

| HTTP | Significa |
|---|---|
| 200 | OK |
| 422 | Corpo ou parâmetros com formato inválido (`detail` lista os campos) |

### Exemplo de resposta

```json
[
  {
    "id": "c3f0a9d2-7b1e-4f6a-8c2d-5e9b1a0f3d47",
    "processo": "8187736-02.2026.8.05.0001",
    "tribunal": "8.05",
    "sistema": "PJE",
    "ato": "copia_integral",
    "estado": "concluida",
    "desfecho": null,
    "pendencia": null,
    "criada_em": "2026-09-26T12:00:00+00:00",
    "concluida_em": "2026-09-26T12:03:41+00:00"
  }
]
```

## Erros

Recusas vêm como `{"detail": {"erro": "<código>", "mensagem": "…"}}`.

| HTTP | `erro` | Significa |
|---|---|---|
| 401 | — | Chave ausente ou inválida |

## Exemplos de requisição

### Bash

```bash
curl 'https://sync.lops.com.br/v1/execucoes?limite=50&estado=concluida' \
  -H "Authorization: Bearer $SYNC_CHAVE"
```

### JavaScript

```javascript
const resposta = await fetch("https://sync.lops.com.br/v1/execucoes?limite=50&estado=concluida", {
  method: "GET",
  headers: {
    Authorization: `Bearer ${process.env.SYNC_CHAVE}`,
  },
});
console.log(resposta.status, await resposta.json());
```

### Python

```python
import os

import requests

resposta = requests.get(
    "https://sync.lops.com.br/v1/execucoes?limite=50&estado=concluida",
    headers={"Authorization": f"Bearer {os.environ['SYNC_CHAVE']}"},
)
print(resposta.status_code, resposta.json())
```

### PHP

```php
<?php
$ch = curl_init('https://sync.lops.com.br/v1/execucoes?limite=50&estado=concluida');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer ' . getenv('SYNC_CHAVE'),
    ],
]);
$corpo = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
var_dump($status, json_decode($corpo, true));
```
