Briefe
/api/v1/debts/{id}/lettersKostenpflichtig: Druck und Versand über Briefdiener (Abo-Kontingent oder eigenes Briefdiener-Konto). Mahnstufen nutzen den Standardtext; custom braucht content. Unbedingt Idempotency-Key senden, damit Wiederholungen keinen zweiten Brief auslösen. Fehler: 402 quota_exceeded/not_available, 422 missing_address.
Berechtigung: letters:write
Pfadparameter
idstringPflichtID der Ressourcemax. 128 Zeichen
Header
Idempotency-KeystringEindeutiger Schlüssel (8–255 Zeichen). Wiederholte Anfragen mit gleichem Schlüssel liefern 24 h lang dieselbe Antwort.max. 255 Zeichen
Body (JSON) · LetterSend
kind"reminder1" | "reminder2" | "reminder3" | "custom"Pflichtregisteredbooleansubjectstringmax. 300 ZeichencontentstringPflicht bei kind=custom; sonst Standardtext der Mahnstufemax. 20000 Zeichen
Antwort 201 · Letter
idstringPflichtobject"letter"PflichtdebtIdstringPflichtcontactIdstringPflichtcontactNamestringPflichtkind"reminder1" | "reminder2" | "reminder3" | "custom"PflichtsubjectstringPflichtstatus"sending" | "sent" | "failed"PflichtdeliveryStatus"pending" | "delivered" | "failed" | "returned" | nullPflichtmode"own" | "central"Pflichteigenes Briefdiener-Konto oder Kontingent des Abostrigger"manual" | "auto"PflichtregisteredbooleanPflichtEinschreibentrackingRefstring | nullPflichttrackingUrlstring | nullPflichtpageCountinteger | nullPflicht-9007199254740991–9007199254740991priceEurostring | nullPflichterrorstring | nullPflichtcreatedAtstring (date-time)PflichtZeitpunkt (ISO 8601)sentAtstring (date-time) | nullPflichtZeitpunkt (ISO 8601)
Mögliche Fehler: 400, 401, 402, 403, 404, 409, 422, 429, 500
curl -X POST 'https://www.debt-flow.io/api/v1/debts/ID/letters' \
-H "Authorization: Bearer $DEBTFLOW_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"kind": "reminder1",
"registered": false,
"subject": "string",
"content": "string"
}'{
"id": "string",
"object": "letter",
"debtId": "string",
"contactId": "string",
"contactName": "string",
"kind": "reminder1",
"subject": "string",
"status": "sending",
"deliveryStatus": "pending",
"mode": "own",
"trigger": "manual",
"registered": false,
"trackingRef": "string",
"trackingUrl": "string",
"pageCount": 0,
"priceEuro": "string",
"error": "string",
"createdAt": "2026-11-01T09:30:00.000Z",
"sentAt": "2026-11-01T09:30:00.000Z"
}/api/v1/debts/{id}/letters/previewLiefert Text, Anschriften, Seitenzahl/Preis (falls verfügbar) und Hinderungsgründe – versendet nichts.
Berechtigung: letters:read
Pfadparameter
idstringPflichtID der Ressourcemax. 128 Zeichen
Body (JSON) · LetterSend
kind"reminder1" | "reminder2" | "reminder3" | "custom"Pflichtregisteredbooleansubjectstringmax. 300 ZeichencontentstringPflicht bei kind=custom; sonst Standardtext der Mahnstufemax. 20000 Zeichen
Antwort 200 · LetterPreview
subjectstringPflichtsalutationstringPflichtcontentstringPflichtclosingstringPflichtsignatureNamestringPflichtsenderobjectPflichtnamestringPflichtcompanystringaddressstringPflicht
recipientobjectPflichtnamestringPflichtcompanystringaddressstringPflicht
referencestringPflichtpageCountinteger | nullPflicht-9007199254740991–9007199254740991priceEurostring | nullPflichtquotaobjectPflichtmode"own" | "central" | "none"PflichtusedintegerPflicht-9007199254740991–9007199254740991limitinteger | nullPflicht-9007199254740991–9007199254740991periodStartstring | nullPflichtperiodEndstring | nullPflicht
problemsArray<string>PflichtGründe, warum der Brief so nicht versendet werden kann
curl -X POST 'https://www.debt-flow.io/api/v1/debts/ID/letters/preview' \
-H "Authorization: Bearer $DEBTFLOW_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"kind": "reminder1",
"registered": false,
"subject": "string",
"content": "string"
}'{
"subject": "string",
"salutation": "string",
"content": "string",
"closing": "string",
"signatureName": "string",
"sender": {
"name": "string",
"company": "string",
"address": "string"
},
"recipient": {
"name": "string",
"company": "string",
"address": "string"
},
"reference": "string",
"pageCount": 0,
"priceEuro": "string",
"quota": {
"mode": "own",
"used": 0,
"limit": 0,
"periodStart": "string",
"periodEnd": "string"
},
"problems": [
"string"
]
}/api/v1/lettersVersendete Briefe mit Versand- und Zustellstatus, neueste zuerst.
Berechtigung: letters:read
Query-Parameter
debtIdstringmax. 128 ZeichencontactIdstringmax. 128 ZeichenlimitintegerAnzahl Einträge (1–100)1–100 · Standard: 25cursorstring`nextCursor` der vorherigen Seitemax. 500 Zeichen
Antwort 200
object"list"PflichtdataArray<Letter>PflichtidstringPflichtobject"letter"PflichtdebtIdstringPflichtcontactIdstringPflichtcontactNamestringPflichtkind"reminder1" | "reminder2" | "reminder3" | "custom"PflichtsubjectstringPflichtstatus"sending" | "sent" | "failed"PflichtdeliveryStatus"pending" | "delivered" | "failed" | "returned" | nullPflichtmode"own" | "central"Pflichteigenes Briefdiener-Konto oder Kontingent des Abostrigger"manual" | "auto"PflichtregisteredbooleanPflichtEinschreibentrackingRefstring | nullPflichttrackingUrlstring | nullPflichtpageCountinteger | nullPflicht-9007199254740991–9007199254740991priceEurostring | nullPflichterrorstring | nullPflichtcreatedAtstring (date-time)PflichtZeitpunkt (ISO 8601)sentAtstring (date-time) | nullPflichtZeitpunkt (ISO 8601)
hasMorebooleanPflichtnextCursorstring | nullPflicht
curl 'https://www.debt-flow.io/api/v1/letters' \
-H "Authorization: Bearer $DEBTFLOW_API_KEY"{
"object": "list",
"data": [
{
"id": "string",
"object": "letter",
"debtId": "string",
"contactId": "string",
"contactName": "string",
"kind": "reminder1",
"subject": "string",
"status": "sending",
"deliveryStatus": "pending",
"mode": "own",
"trigger": "manual",
"registered": false,
"trackingRef": "string",
"trackingUrl": "string",
"pageCount": 0,
"priceEuro": "string",
"error": "string",
"createdAt": "2026-11-01T09:30:00.000Z",
"sentAt": "2026-11-01T09:30:00.000Z"
}
],
"hasMore": false,
"nextCursor": "string"
}/api/v1/letters/{id}Berechtigung: letters:read
Pfadparameter
idstringPflichtID der Ressourcemax. 128 Zeichen
Antwort 200 · Letter
idstringPflichtobject"letter"PflichtdebtIdstringPflichtcontactIdstringPflichtcontactNamestringPflichtkind"reminder1" | "reminder2" | "reminder3" | "custom"PflichtsubjectstringPflichtstatus"sending" | "sent" | "failed"PflichtdeliveryStatus"pending" | "delivered" | "failed" | "returned" | nullPflichtmode"own" | "central"Pflichteigenes Briefdiener-Konto oder Kontingent des Abostrigger"manual" | "auto"PflichtregisteredbooleanPflichtEinschreibentrackingRefstring | nullPflichttrackingUrlstring | nullPflichtpageCountinteger | nullPflicht-9007199254740991–9007199254740991priceEurostring | nullPflichterrorstring | nullPflichtcreatedAtstring (date-time)PflichtZeitpunkt (ISO 8601)sentAtstring (date-time) | nullPflichtZeitpunkt (ISO 8601)
curl 'https://www.debt-flow.io/api/v1/letters/ID' \
-H "Authorization: Bearer $DEBTFLOW_API_KEY"{
"id": "string",
"object": "letter",
"debtId": "string",
"contactId": "string",
"contactName": "string",
"kind": "reminder1",
"subject": "string",
"status": "sending",
"deliveryStatus": "pending",
"mode": "own",
"trigger": "manual",
"registered": false,
"trackingRef": "string",
"trackingUrl": "string",
"pageCount": 0,
"priceEuro": "string",
"error": "string",
"createdAt": "2026-11-01T09:30:00.000Z",
"sentAt": "2026-11-01T09:30:00.000Z"
}/api/v1/letters/quotacentral = Kontingent des Abos (used/limit je Monat), own = eigenes Briefdiener-Konto, none = nicht verfügbar (reason).
Berechtigung: letters:read
Antwort 200 · LetterQuota
mode"own" | "central" | "none"PflichtusedintegerPflicht-9007199254740991–9007199254740991limitinteger | nullPflicht-9007199254740991–9007199254740991periodStartstring | nullPflichtperiodEndstring | nullPflichtreasonstring | nullPflicht
curl 'https://www.debt-flow.io/api/v1/letters/quota' \
-H "Authorization: Bearer $DEBTFLOW_API_KEY"{
"mode": "own",
"used": 0,
"limit": 0,
"periodStart": "string",
"periodEnd": "string",
"reason": "string"
}