# Löschen eines Belegs prüfen (https://developer.bimetrics.de/reference/documents/preview-document-deletion)

`GET https://app.bimetrics.de/api/document/{id}/delete-preview`

operationId: `previewDocumentDeletion` · Berechtigung (Scope): `read` · Bereich: Belege

Sagt, was `DELETE /api/document/{id}` gerade tun würde, und ändert nichts: `outcome` `deleted` (Beleg, Datei und offene Buchungen verschwinden aus bimetrics, es gibt keinen Papierkorb), `cancelled` (festgeschriebene Buchungen bleiben und werden in ihren Monaten storniert, `reversedFinalizedMonths`, der Beleg bleibt als storniert stehen) oder `retained_copy` (eine hochgeladene Kopie derselben Datei übernimmt, Beleg, Buchungen und Zuordnung bleiben). Geht es nicht, nennt `refusedBecause` den Grund. Sende `version`, `outcome` und `currentRepresentativeId` beim Löschen unverändert mit.

Benötigt einen Schlüssel mit der Berechtigung `read`.

### Authentifizierung

`Authorization: Bearer bm_…` (alternativ `X-API-KEY: bm_…`, nie beide zugleich).

### Parameter

| Name | Ort | Pflicht | Typ | Beschreibung |
| --- | --- | --- | --- | --- |
| `id` | path | ja | string (uuid) | ID des Objekts in dieser Firma (UUID). |

### Beispiel

```sh
curl --fail-with-body "https://app.bimetrics.de/api/document/{id}/delete-preview" \
  -H "Authorization: Bearer $BIMETRICS_API_KEY"
```

### Antworten

| Status | Beschreibung | Inhalt |
| --- | --- | --- |
| 200 | Erfolg. | `application/json`: DocumentDeletionPreview |
| 400 | Ungültige Anfrage, z. B. ein Parameter mit ungültigem Wert wie eine ID, die keine UUID ist; korrigieren statt wiederholen. Mehr unter [Fehler](https://developer.bimetrics.de/errors). | `application/json`: Error |
| 401 | Kein gültiger Schlüssel: fehlt (`Unauthorized`), ist unbekannt, abgelaufen oder widerrufen oder wurde nicht in genau einem Header gesendet (`InvalidAPIKey`). Schlüssel prüfen, nicht wiederholen. Auch eine ID, die zu einer anderen Firma gehört, ergibt `401 Unauthorized`. | `application/json`: Error |
| 403 | Dem Schlüssel fehlt die Berechtigung für diese Route (`APIKeyPermissionDenied`), oder die Firma hat keinen API-Zugang (mehr), etwa nach Ende der Testphase oder des Abos (`APIUnavailable`). | `application/json`: Error |
| 404 | Nicht gefunden (`NotFound`). | `application/json`: Error |
| 413 | Die Anfrage ist zu groß (`APIRequestTooLarge`), siehe `x-bimetrics-limits`. | `application/json`: Error |
| 429 | Zu viele Anfragen; nach `Retry-After` Sekunden erneut senden. Mehr unter [Fehler](https://developer.bimetrics.de/errors). (Header: Retry-After) | `application/json`: Error |
| 500 | Serverfehler; die Anfrage später wiederholen. Mehr unter [Fehler](https://developer.bimetrics.de/errors). | `application/json`: Error |

#### Felder der Antwort 200 (`DocumentDeletionPreview`)

| Feld | Typ | Beschreibung |
| --- | --- | --- |
| `copies` | integer | Hochgeladene Kopien derselben Datei. Mit Kopie ist das Ergebnis `retained_copy`. |
| `currentRepresentativeId` | string (uuid) | Aktuelle Datei-Generation des Belegs; beim Löschen als `expectedRepresentativeId` senden. Fehlt ohne hochgeladene Datei. |
| `documentId` | string (uuid) | ID des Belegs. |
| `fromInboxMail` | boolean | Der Beleg kam aus einer Mail des Belegpostfachs: Nach dem Löschen zeigt die Mail den Anhang weiter als übernommen, und er lässt sich nicht erneut übernehmen. |
| `outcome` | string | `deleted`, `cancelled` oder `retained_copy`. Fehlt, wenn der Beleg sich nicht löschen lässt; beim Löschen als `expectedOutcome` senden. |
| `refusedBecause` | string | Warum es nicht geht: `matched`, `issued`, `recorded_payments`, `contract`, `series`, `already_cancelled` oder `exported`. |
| `reversedFinalizedMonths` | Array<string>, kann null sein | Monate (`YYYY-MM`), in denen festgeschriebene Buchungen storniert werden. Ist die Umsatzsteuer-Voranmeldung eines dieser Monate schon abgegeben, muss sie unter Umständen berichtigt werden. |
| `version` | string | Fachlicher Versionsdigest; beim Löschen als `expectedVersion` senden. |

Verschachtelte Schemas stehen vollständig in der OpenAPI-Beschreibung: https://app.bimetrics.de/api/openapi.json
