xDokument API

Im eserp Web (esweb) sind zwei Endpunkte vorhanden, über die Clients eine Liste von Dokumentversionen abrufen und eine bestimmte Dokumentversion herunterladen können.

Verwaltung Token im esweb

Für die Nutzung der API Endpunkte im esweb ist die Verwendung eines Tokens erforderlich. Diese Tokens ermöglichen es Dritten oder externen Clients, sich zum Beispiel mit den xDokument-Endpunkten zu verbinden. Standardmäßig können alle esweb-Endpunkte nur von der Webanwendung selbst oder intern mit Hilfe von Session-Tokens, die im Browser des Benutzers als Cookie gespeichert sind, angesprochen werden.

Erstellen des Zugriffstokens

Gehen Sie folgendermaßen vor, um das Access-Token zu erzeugen:

  1. Stellen Sie sicher, dass ein Benutzer der Art Personal verwendet wird und dem Benutzer die Berechtigung Externe Programme | esweb | esweb - Tokenverwaltung zugewiesen wurde.

  2. Melden Sie sich im esweb an und öffnen Sie den Menüpunkt Einstellungen | Tokenverwaltung.

  3. Geben Sie einen beliebigen Token-Namen an und lassen Sie das Ablaufdatum leer. Wenn das Datum leer ist, läuft das Token nicht ab.

  4. Klicken Sie auf die Schaltfläche Token erstellen.

  5. Kopieren Sie den Wert des Tokens über das Zwischenablage-Symbol rechts neben dem Token-Feld.

  6. Speichern Sie den Token-Wert an einem sicheren Ort.

Zugriff auf die Endpunkte

Bitte beachten Sie die folgenden Punkte für den Zugriff auf die Endpunkte.

Beide Endpunkte können über die esweb-URL, gefolgt von /xDokument, aufgerufen werden.

Es ist erforderlich, dass jede Anfrage an einen Endpunkt authentifiziert wird. Es gibt keine aktive Sitzung für einen Benutzer. Bei jeder Anfrage an den Endpunkt (GET, POST, etc.) ist es notwendig, dass das generierte Token in der Anfrage enthalten ist. Stellen Sie dazu sicher, dass Ihre Anfrage einen Header namens X-Token-Auth mit dem Token als Wert enthält.

Zum Testen wird ein Tool wie Postman empfohlen (https://www.postman.com/downloads/)

Endpunkt: /GetDokVersions

Dieser Endpunkt gibt eine JSON-Liste der DokVersionen zurück, die größer als die angegebene Version sind.

Endpunkt: /xDokument/GetDokVersions

Anfragetyp

GET

Antwortformat

JSON

Erforderliche Parameter

FromVersionNr

Optionale Parameter

  • DokumentNr

  • Seite

  • PageSize

Beispiel-Anfrage

(Mit Token im Header)

Kopieren
Beispielanfrage (HTTP)
GET /esweb_eserp/xDokument/GetDokVersions?FromVersionNr=38&PageSize=1&Page=0 HTTP/1.1
Host: webserver
X-Token-Auth: WRZJqN3OpX+gss5naaGhkrcsS2hxnH45D+ljlrKQJ1WCDQBB

Beispiel-Antwort
Kopieren

Beispielantwort (JSON)

{
    "success": true,
    "body": {
        "PageMaxVersionNr": 38,
        "PageSize": 1,
        "CurrentPageIndex": 0,
        "TotalRowCount": 142,
        "TotalPageCount": 142,
        "SearchText": "",
        "SortField": "DokVersionNr",
        "SortDir": 1,
        "Rows": [
            {
                "Author": {
                    "PersonellNr": 1,
                    "FirstName": "Klaus",
                    "LastName": "Spitzenverkäufer",
                    "Title": "Herr"
                },
                "DocumentNr": 33,
                "DocVersionNr": 38,
                "DocTitle": "Rechnung 900010",
                "DocType": ".pdf",
                "Description": "",
                "DocStatus": "verfuegbar",
                "Comment": "Neue Version erstellt",
                "FileSize": 452724,
                "CreatedDate": "2019-10-29T14:59:30.6230000",
                "UploadDate": "2019-10-29T14:59:30.6400000",
                "RetentionDate": "2022-10-29T14:59:30.6400000",
                "Path": "900010.pdf",
                "Folder": null,
                "MainProcess": {
                    "ProcessNr": 900010,
                    "ProcessTypeNr": 18,
                    "ProcessTypeName": "Rechnung"
                },
                "AdditionalProcesses": [
                    {
                        "ProcessNr": 13141,
                        "ProcessTypeNr": 1,
                        "ProcessTypeName": "Kunden"
                    },
                    {
                        "ProcessNr": 900010,
                        "ProcessTypeNr": 18,
                        "ProcessTypeName": "Rechnung"
                    },
                    {
                        "ProcessNr": 14,
                        "ProcessTypeNr": 25,
                        "ProcessTypeName": "Kalkulation"
                    },
                    {
                        "ProcessNr": 600024,
                        "ProcessTypeNr": 100,
                        "ProcessTypeName": "Kontakt"
                    }
                ]
            }
        ]
    }
}

Endpunkt: /DownloadDokVersion

Liefert den Dateiinhalt einer bestimmten Version einer Dokumentendatei

Endpunkt: /xDokument/DownloadDokVersion

Anfragetyp

GET

Antwortformat

Byte-Stream

Erforderliche Parameter

DokVersionNr

Beispiel-Anfrage

Kopieren
Beispielabfrage DownloadDokVersion
https://webserver/esweb_eserp/xDokument/DownloadDokVersion?DokVersionNr=41

Die Antwort kann direkt als Datei lokal gespeichert werden.