Zum Inhalt

API – Übersicht

Die REST-API des EPflicht-Portals erlaubt das Anlegen, Abrufen und Einreichen von Einlieferungen (aktuell: Monographien) sowie das Abrufen von Referenzdaten.

Basis-URL

Alle Endpunkte liegen unter dem Präfix /api/.

Authentifizierung

Schreibende und einlieferungsbezogene Endpunkte erfordern einen API-Schlüssel, der im Header X-API-Key mitgesendet wird:

curl https://<host>/api/monographs \
  -H "X-API-Key: <Ihr-Schlüssel>"

API-Schlüssel werden im Lieferantenkonto unter den Kontoeinstellungen erstellt und verwaltet. Der Schlüssel wird nur einmal bei der Erstellung im Klartext angezeigt – bewahren Sie ihn sicher auf.

Referenzdaten-Endpunkte

Die reinen Lese-Endpunkte für Referenzdaten (z. B. /api/doc-types, /api/languages) sind ohne Authentifizierung abrufbar.

Referenzdaten (IDs nachschlagen)

Beim Anlegen einer Monographie werden Fremdschlüssel als ganzzahlige IDs erwartet (z. B. doc_type_id, file_format_id, role_id). Diese IDs sind pro Installation unterschiedlich und müssen vorab abgefragt werden.

Alle benötigten Referenzlisten lassen sich gebündelt abrufen:

curl https://<host>/api/monographs/related-fields

Oder einzeln über die jeweiligen Endpunkte:

Endpunkt Liefert IDs für
GET /api/doc-types doc_type_id
GET /api/file-formats file_format_id
GET /api/access-rights access_right_archive_object_id
GET /api/access-status access_status_id
GET /api/languages language_id, language_other_ids (String-Codes, z. B. "ger")
GET /api/person-roles role_id (Personen)
GET /api/organisation-roles role_id (Organisationen)
GET /api/publisher-names name_id (Verlage)
GET /api/ddcs content_information_ddc_id
GET /api/rvks content_information_rvk_id

IDs in den Beispielen sind Platzhalter

Sämtliche numerischen IDs in dieser Dokumentation (1, 2, …) sind Platzhalter. Verwenden Sie ausschließlich die in Ihrer Installation tatsächlich vorhandenen IDs aus den obigen Endpunkten – andernfalls antwortet die API mit 422.

Statusfluss

Jede Einlieferung durchläuft folgende Stati:

open → verified → valid → finished
  • open – Die Einlieferung wird vom Lieferanten bearbeitet. Nur in diesem Status sind Änderungen über die API möglich.
  • verified – Eingereicht; liegt in der Bearbeitungsqueue der SLUB.
  • valid – Von der SLUB geprüft und freigegeben.
  • finished – Abgeschlossen.

Über die API steuerbar ist der Übergang open → verified (siehe Einreichen).