REST API

Informationen effizient organisieren.
Mit der Dr.DOC Komplettlösung für revisionssichere Archivierung.


  Anfragen Preise berechnen Demo anfordern Mehr über Dr.DOC erfahren


REST API

REST API

Diese API ist für die Verwendung aus Web Apps, Desktop Apps und Server Services konzipiert und bietet keine Benutzerinteraktion oder GUI. Der HTTP(S) Response erfolgt als JSON Objekt. System-Eigenschaften wird ein "$" (z.B. $id, $ref, ..) vorangestellt. Es können Benutzer angemeldet, sowie Metadaten und Dokumente abgerufen/bearbeitet werden.

Anmeldung und Benutzerverwaltung:

Die REST API für Metadaten ist über folgenden Pfad über HTTP/HTTPS zugänglich: "/user". Die Parameter werden im GET übergeben.

  • signin: Meldet den User in allen Benutzermanagern (siehe server.conf, [USER]) und zugriffsberechtigten Archiven an.
    • username
    • password
  • signout: Meldet den Benutzer aus alles Archiven ab.
  • status: gint ein JSON-kodiertes Status Objekt des angemeldeten User zurück.
Aktion GET Parameter
Anmelden
Meldet den User in allen Benutzermanagern (siehe server.conf, [USER]) und zugriffsberechtigten Archiven an.
  • action: signin
  • username
  • password
Abmelden
Zerstört die User-Session und meldet den Benutzer aus allen Archiven ab.
Beispiel: https://drdoc.com/user?action=signout
  • action: signout
Alle abmelden
Zerstört alle User-Sessions des Benutzers und meldet den Benutzer aus allen Archiven ab.
  • action: signout-all
Status holen
Gibt ein JSON-kodiertes Status Objekt des angemeldeten User zurück.
Beispiel: https://drdoc.com/user?action=status
  • action: status
User erstellen
  • action: create-user
  • username: <Benutzername>
  • password: <Passowort>
  • groups: <Liste von Gruppen, bei denen der User Mitglied werden soll mit ";" getrennt>
  • value:
    • anonymerBenutzer: 1|0
    • managerBerechtigung: 1|0
    • ..
Gruppe erstellen
  • action: create-group
  • group: <Name der Gruppe>
  • value:
    • besitzerGruppe: 1|0
    • berechtigungsGruppe: 1|0
    • wiedervorlageGruppe: 1|0
    • workflowGruppe: 1|0
Mitgliedschaft eines Benutzer oder Gruppe ("grantee") einer Gruppe ("group") hinzufügen
  • action: add-to-group
  • grantee: <Berechtigter/Group-Name>
  • group: <Group-Name>
Mitgliedschaft eines Benutzer oder Gruppe ("grantee") aus einer Gruppe ("group") entfernen
  • action: delete-from-group
  • grantee: <Berechtigter/Group-Name>
  • group: <Group-Name>
Gruppe löschen
  • action: delete-group
  • value: <Group-Name>
Benutzer/User löschen
  • action: delete-user
  • value: <Username>

Metadaten:

Die REST API für Metadaten ist über folgenden Pfad über HTTP/HTTPS zugänglich: "/model/crud". Die Request Parameter werden im POST übergeben. Hintergrund ist, dass Metadaten die maximal zulässige Länge des Query Strings übersteigen können. Der Response (JSON) hat folgende Struktur:

  • $ModelType (Dr.DOC Archiv)
  • Result
  • MetaSortTree (nur bei Sortierung)
  • HasArray
  • Count
  • CountTotal
  • HasError
  • Error
    • Message
    • InternalMessage

Als ID wird das eindeutige Systemfeld "Dokumet-Nr." gewählt. Parameter, die in "[..]" eingefasst sind, sind optional.

Aktion POST Parameter
auth
Authentifizierung/Anmeldung via HTTP Authorisation Header für "auth" = "basic" oder "digest";
Bzw. für "auth" = "post" Anmeldedaten als POST Data
  • auth:
    • "basic"
    • "digest"
    • "post"
  • [username]: username für auth=post
  • [password]: Passwort für auth=post
  • [totp]: TOTP für auth=post
get
Beispiel: POST https://drdoc.com/model/crud POST Data: action=get&archive=scan&id=123
  • archive: Zu wählendes Archiv
  • action: get
  • id: Dokument-Nr.
  • [id_field]: Feld der ID
  • [lock]: true|false, gibt an, ob der Datensatz zur Bearbeitung gesperrt werden soll.
set
  • archive: Zu wählendes Archiv
  • action: set
  • value: zu speichernder Datensatz als JSON-Objekt kodiert.
create
  • archive: Zu wählendes Archiv
  • action: create
  • value: zu erstellender Datensatz als JSON-Objekt kodiert.
remove
  • archive: Zu wählendes Archiv
  • action: get
  • id: Dokument-Nr. des zu löschenden Datensatzes + Dokuments
searchfields
  • archive: Zu wählendes Archiv
  • value: Suchbedigung der zu suchenden Datensätze als JSON-Objekt kodiert
  • [selection]: Auswahl-Felder mit ";" separiert
  • [sort]: Sortierungs-Felder mit ";" separiert
  • [duplicate]: Ausgabedubletten-Felder mit ";" separiert
  • [max]: Maximale Anzahl der intern Treffer-Datensätze (nicht der Zurückgegebenen). Für unbegrenzt: -1
  • [start]: Absoluter Startindex in der internen Treffer-Liste
  • [count]: Anzahl der maximal zurückgegebenen Datensätze
  • [recursive]: new, true
textretrieval
  • archive: Zu wählendes Archiv
  • value: Suchbedingung
  • [selection]: Auswahl-Felder mit ";" separiert
  • [sort]: Sortierungs-Felder mit ";" separiert
  • [duplicate]: Ausgabedubletten-Felder mit ";" separiert
  • [max]: Maximale Anzahl der intern Treffer-Datensätze (nicht der Zurückgegebenen). Für unbegrenzt: -1
  • [start]: Absoluter Startindex in der internen Treffer-Liste
  • [count]: Anzahl der maximal zurückgegebenen Datensätze
  • [recursive]: new, true
unlock
  • archive: Zu wählendes Archiv
  • action: unlock
tree
  • archive: Zu wählendes Archiv
  • action: tree
wf-set-completed
  • archive: Zu wählendes Archiv
  • action: wf-set-completed
thesaurus
  • archive: Zu wählendes Archiv
  • action: thesaurus
reo-unlock
Entsperrt alle Datensätze des Archivs. Es müssen sich zuvor alle User abmelden.
  • archive: Zu wählendes Archiv
  • action: reo-unlock

Document

Die REST API für Dokumente ist über folgenden Pfad über HTTP/HTTPS zugänglich: "/model/document".

Aktion GET Parameter
get
Dokument laden
Beispiel: https://drdoc.com/model/document?action=get&archive=scan&id=123
  • archive: Zu wählendes Archiv
  • action: get
  • id: ID
  • [id_field]: Feld der ID
  • [original]: Default: "true; "false" gibt an, dass aus Intern TIFF eine PDF generiert werden soll
  • [download]: Default: "false"; "true" gibt an, ob ein Download gestartet werden soll
set
Erstellt ein Dokument, welches in FILE angegeben ist. Je nach Versionsverwaltung wird eine neue Version erzeugt.
  • archive: Zu wählendes Archiv
  • action: set
  • id: ID
  • [id_field]: Feld der ID
+ Dokument in FILE
create
Erstellt eins oder mehrere Dokumente mit Feldvorbelegung.
  • archive: Zu wählendes Archiv
  • action: create
  • [preset]: Feldvorbelegung
+ Dokument(e) in FILE

Diese Website verwendet aus technischen Gründen Cookies für das Caching bzw. Bereitstellen von Session-bezogenen Inhalten. Diese Website verwendet Cookies und nutzt Website Tracking-Technologien von Dritten, um ihre Dienste anzubieten, stetig zu verbessern und Werbung entsprechend der Interessen der Nutzer anzuzeigen.
Ich bin mit der Datenschutzerklärung einverstanden und kann meine Einwilligung jederzeit mit Wirkung für die Zukunft widerrufen oder ändern.
Aus Gründen der Vernunft und besseren Lesbarkeit verzichten wir auf die gleichzeitige Verwendung der Sprachformen männlich und weiblich. Sämtliche Personenbezeichnungen gelten daher gleichermaßen für alle Geschlechter.