---
title: Wiederverwendbare Dokumente abrufen
description: Prüfen Sie, ob für einen Nutzer bereits ein wiederverwendbares Dokument vorliegt, bevor Sie einen neuen Erfassungsflow starten.
canonical: https://developer.unico.io/de/developers/api-reference/get-document
locale: de
generated_by: markdown-export
---

- [/de/](/de/)
- API-Referenz
- Wiederverwendbare Dokumente abrufen

**Auf dieser Seite# Wiederverwendbare Dokumente abrufen

Verwenden Sie diesen Endpunkt, um zu prüfen, ob für einen Nutzer bereits ein wiederverwendbares Dokument vorliegt, bevor Sie einen neuen Document-Erfassungsflow starten. Wird ein Dokument gefunden, kann dessen `documentId` direkt an `POST /processes/v1` (Typ Document) übergeben werden, um den Erfassungsschritt zu überspringen.
### Endpunkt​

UmgebungURL**Produktion**`GET https://api.idcloud.unico.app/documents/v1`**Sandbox**`GET https://api.idcloud.uat.unico.app/documents/v1`
### Request​

Headers
HeaderWert`Authorization``Bearer <access_token>` (siehe [Authentifizierung](/de/developers/start/authentication))`APIKEY`Bereitgestellter API-Schlüssel mit aktivierter Dokumentenerfassung und Wiederverwendung.
Query-Parameter
ParameterTypErforderlichBeschreibung`code`stringjaNutzerkennung (CPF oder CURP, ohne Formatierung).`type`stringjaAbzufragender Dokumenttyp. Zulässige Werte: `BR_RG`, `BR_CNH`, `BR_CIN`, `BR_PASSPORT`.
HinweisDie oben genannten `type`-Werte sind spezifisch für diesen Endpunkt. Verwechseln Sie sie nicht mit:
`subject.duiType` in POST-Requests — verwendet das Präfix `DUI_TYPE_*` und identifiziert die Person, nicht den Dokumenttyp (z. B. `DUI_TYPE_BR_CPF`).
`documentType` in der Antwort — verwendet den vollständigen Registrierungspfad (z. B. `unico.moja.dictionary.br.cnh.v2.Cnh`).

### Beispiel​

cURLNode.js```
curl -X GET "https://api.idcloud.unico.app/documents/v1?code=12345678909&type=BR_CNH" \  -H "Authorization: Bearer $TOKEN" \  -H "APIKEY: $API_KEY"
```

```
import fetch from 'node-fetch';const params = new URLSearchParams({ code: '12345678909', type: 'BR_CNH' });const res = await fetch(  `https://api.idcloud.unico.app/documents/v1?${params}`,  {    headers: {      Authorization: `Bearer ${accessToken}`,      APIKEY: apiKey    }  });const data = await res.json();// data.items[0].documentId → an POST /processes/v1 zur Wiederverwendung übergeben
```

### Antworten​

200 OK
```
{  "items": [    {      "documentType": "unico.moja.dictionary.br.cnh.v2.Cnh",      "documentId": "doc-abc-123"    }  ]}
```

FeldTypBeschreibung`items`arrayListe der für den Nutzer gefundenen wiederverwendbaren Dokumente. Leeres Array, wenn für den angegebenen `code` und `type` kein wiederverwendbares Dokument gefunden wurde.`items[].​documentType`stringBezeichner des Dokumenttyps. Mögliche Werte: `unico.​moja.​dictionary.​br.​rg.​v2.​Rg`, `unico.​moja.​dictionary.​br.​cnh.​v2.​Cnh`, `unico.​moja.​dictionary.​br.​cin.​v1.​Cin`, `unico.​moja.​dictionary.​br.​passaporte.​v1.​Passaporte`.`items[].documentId`stringDokumentkennung. Übergeben Sie diesen Wert in `document.documentId` bei `POST /processes/v1`, um das Dokument wiederzuverwenden.
### Verwendung der documentId zur Wiederverwendung​

Sobald Sie eine `documentId` haben, übergeben Sie sie im Document-Prozess-Request, um die Erfassung zu überspringen:
```
{  "subject": {    "code": "12345678909",    "name": "Luke Skywalker"  },  "document": {    "purpose": "onboarding",    "authProcessId": "<biometric-process-id>",    "documentId": "doc-abc-123"  }}
```

FeldBeschreibung`document.purpose`Geschäftlicher Zweck für diesen Dokumentprozess. Zulässige Werte: `creditprocess`, `carpurchase`, `paybypaycheck`, `onboarding`, `fgts`. Diese Werte sind spezifisch für die Document-API und unterscheiden sich vom `purpose`-Enum des biometrischen SDK.`document.​authProcessId`ID des zuvor für diesen Nutzer erstellten biometrischen Prozesses (aus `POST /processes/v1`).`document.documentId`Dokument-ID aus der Antwort dieses Endpunkts. Wenn angegeben, kann `document.files` weggelassen werden — die Plattform ruft das zuvor erfasste Dokument automatisch ab.
### Fehlercodes​

400 Bad Request403 Forbidden404 Not Found429 Too Many Requests500 Internal Server ErrorCodeNachrichtBeschreibung`20507`O parâmetro subject.code é inválido.Fehlerhafter oder nicht existierender Kennungswert (CPF oder CURP).`20002`O parâmetro APIKey não foi informado.Fehlender APIKEY-Header.`20001`O parâmetro authtoken não foi informado.Fehlender Authentifizierungstoken-Header.Bearer-Token oder `APIKEY` fehlt, ist abgelaufen oder ungültig.CodeNachrichtBeschreibung`30020`The provided authorization token does not have permission to perform this action.Token hat keine Berechtigung für den Zugriff auf das Dokument-Selfie.`30017`User does not have permission to perform this action.Fehlerhaftes JWT oder Nutzer ohne Berechtigung für diesen Vorgang.`10502`O token informado está expirado.Abgelaufenes Access-Token.`10501`O token informado é inválido.Ungültiger Authentifizierungstoken.`10201`O AppKey informado é inválido.Fehlender oder nicht existierender APIKEY.CodeNachrichtBeschreibung`99987`Attachment not found.Zum Dokument gehörender Anhang wurde nicht gefunden.`50001`The process is not found.Für die angegebenen Parameter wurde kein Dokument gefunden.Rate-Limit erreicht. Wenn Ihr System einen HTTP-429-Fehler erhält, müssen Sie Mechanismen implementieren, um kaskadierende Ausfälle zu verhindern und eine Verschärfung der Einschränkung zu vermeiden.
**Best Practices:**

**Abkühlphase (Backoff):** Stoppen oder drosseln Sie nachfolgende Anfragen aus Ihrem System sofort. Wiederholen Sie fehlgeschlagene Anfragen nicht kontinuierlich in einer engen Schleife.
**Warteschlange & Drosselung:** Puffern oder reihen Sie ausgehende Anfragen auf Ihrer Seite ein, um den Datenverkehr zu kontrollieren, bevor Sie sie erneut senden.
**Exponentieller Backoff mit Jitter:** Erhöhen Sie beim erneuten Versuch die Wartezeit zwischen den Versuchen exponentiell (z. B. 1 s, 2 s, 4 s, 8 s) und fügen Sie eine kleine zufällige Verzögerung ("Jitter") hinzu, um einen Herdeneffekt zu vermeiden, bei dem alle in der Warteschlange befindlichen Anfragen exakt zur gleichen Millisekunde erneut versucht werden.

WarnungDas kontinuierliche Ansprechen eines rate-limitierten Endpunkts ohne Backoff kann **die Einschränkungsperiode verlängern** und den operativen Durchsatz Ihres Systems erheblich beeinträchtigen. Eine ordnungsgemäße Drosselung der Anfragen auf Ihrer Seite gewährleistet eine reibungslosere und widerstandsfähigere Integration.
Informationen zu Standardlimits, Erhöhung von Anfragen und weiteren Details finden Sie unter [Rate Limits](/de/developers/start/rate-limits).CodeNachrichtBeschreibung`99999`Internal failure! Try again later.Serverseitiger Verarbeitungsfehler.Zuletzt aktualisiert am 8. Okt. 2026**