# API-Referenz: QR-Codes

## QR-Codes auflisten

`GET /v1/codes`

Statische QR-Codes mit URL und Anzahl Scans.

Antwort 200:

```json
{
  "object": "list",
  "data": [
    {
      "id": "qr_3c9a1e7b0d2f4a6c",
      "object": "code",
      "code": "k7m2p9x",
      "target": "connector",
      "connector_id": "string",
      "location_id": "string",
      "label": "string",
      "url": "https://hof-meier.ladehase.com/k7m2p9x",
      "display_url": "string",
      "scans": 0,
      "disabled": true,
      "created_at": "string"
    }
  ],
  "has_more": true
}
```

## QR-Code anlegen

`POST /v1/codes`

Für einen Ladepunkt oder einen ganzen Standort (Auswahl auf der Bezahlseite).

Parameter:

- `idempotency-key` (header, string): Wiederholbare Anfragen ohne doppelte Wirkung (24 Stunden)

Anfrage:

```json
{
  "target": "connector",
  "connector_id": "string",
  "location_id": "string",
  "label": "string"
}
```

Antwort 201:

```json
{
  "id": "qr_3c9a1e7b0d2f4a6c",
  "object": "code",
  "code": "k7m2p9x",
  "target": "connector",
  "connector_id": "string",
  "location_id": "string",
  "label": "string",
  "url": "https://hof-meier.ladehase.com/k7m2p9x",
  "display_url": "string",
  "scans": 0,
  "disabled": true,
  "created_at": "string"
}
```

## QR-Code abrufen

`GET /v1/codes/{id}`

Ein QR-Code.

Parameter:

- `id` (path, string, Pflicht)

Antwort 200:

```json
{
  "id": "qr_3c9a1e7b0d2f4a6c",
  "object": "code",
  "code": "k7m2p9x",
  "target": "connector",
  "connector_id": "string",
  "location_id": "string",
  "label": "string",
  "url": "https://hof-meier.ladehase.com/k7m2p9x",
  "display_url": "string",
  "scans": 0,
  "disabled": true,
  "created_at": "string"
}
```

## QR-Code ändern

`PATCH /v1/codes/{id}`

Bezeichnung ändern oder deaktivieren.

Parameter:

- `id` (path, string, Pflicht)

Anfrage:

```json
{
  "label": "string",
  "disabled": true
}
```

Antwort 200:

```json
{
  "id": "qr_3c9a1e7b0d2f4a6c",
  "object": "code",
  "code": "k7m2p9x",
  "target": "connector",
  "connector_id": "string",
  "location_id": "string",
  "label": "string",
  "url": "https://hof-meier.ladehase.com/k7m2p9x",
  "display_url": "string",
  "scans": 0,
  "disabled": true,
  "created_at": "string"
}
```

## QR-Code als SVG

`GET /v1/codes/{id}/qr.svg`

Mit Bildmarke in der Mitte.

Parameter:

- `id` (path, string, Pflicht)

## QR-Code als PNG

`GET /v1/codes/{id}/qr.png`

1024 × 1024 Pixel.

Parameter:

- `id` (path, string, Pflicht)
