# Abonnementen

`GET` en `POST /api/v1/subscriptions`. Terugkerende schema's die zelf facturen maken.

## Schema's ophalen

`GET /api/v1/subscriptions` vraagt `subscriptions:read` en geeft de honderd nieuwste terugkerende schema's terug.

```json
{
  "data": [
    {
      "id": "5a1d…",
      "freq": "monthly",
      "interval_n": 1,
      "next_run_at": "2026-04-01",
      "auto_send": true,
      "auto_send_post": false,
      "is_active": true
    }
  ]
}
```

## Abonnement aanmaken

`POST /api/v1/subscriptions` vraagt `subscriptions:write` en accepteert `Idempotency-Key`. Het schema maakt op `next_run_at` automatisch een factuur met dezelfde regels.

| Veld | Type | Verplicht | Toelichting |
| --- | --- | --- | --- |
| `customerId` | uuid | ja | Klant die de factuur krijgt |
| `lines` | array | ja | 1 tot 500 regels, zelfde vorm als facturen |
| `freq` | enum | nee | `weekly`, `monthly`, `quarterly`, `yearly`, standaard `monthly` |
| `interval` | integer | nee | Elke n periodes, 1 tot 120, standaard `1` |
| `autoSendEmail` | boolean | nee | Elke factuur meteen e-mailen |
| `autoSendPost` | boolean | nee | Elke factuur ook per post via Pingen |

```json
{ "data": { "id": "5a1d…", "documentId": "3c9f…" } }
```

`documentId` is het sjabloondocument waar elke nieuwe factuur van afgeleid wordt. Pauzeren en hervatten doe je in de app.

