DRUCKSHOP Order-API Methoden

Einführung

Die API-Schnittstelle ist ab Version 7.1.0 verfügbar.

Die API-Schnittstelle des Printshops ermöglicht einen automatisierten, maschinengeeigneten Zugriff auf Daten aus des Printshops. Dies ermöglicht eine Integration in interne Prozesse und Tools. Die API ist ein zusätzliches Modul und kann für jeden Mandanten aktiviert werden. Für die Nutzung sind keine speziellen Pakete oder Optionen erforderlich. Die verfügbaren Daten entsprechen den Daten aus dem Printshop. Auf dieser Seite werden generelle API-Informationen bereitgestellt. Der Abruf von Printshop-Daten geschieht über ihre Shop URL.

API-Authentifizierung

Die Authentifizierung erfolgt durch eine Basic-Authentication. Hierfür werden API-Benutzer und API-Key übermittelt.

Der API-Benutzer/API-Key kann in der Administration unter Module → API Einstellungen gesetzt werden.

Der API-Benutzer/API-Key muss bei allen Abfragen übermittelt werden. Geschieht dieses nicht oder werden ungültige API-Daten verwendet, meldet die API den Fehlercode „401 Unauthorized“. Um API-Daten zu erhalten, kontaktieren Sie bitte Ihren Shopbetreiber.

Wird bei der Authentifizierung mehrfach ein falsches Passwort verwendet, wird der Zugriff für 15 Minuten gesperrt. Nach der Sperrzeit ist keine manuelle Freischaltung notwendig, dies passiert automatisch und kann anschließend wieder verwendet werden.


Cart / Bestellposten

Verfügbare Daten

HTTP-MethodeDomainDatenParameterBeispiel Rückgabe
GET{{domain}}/api/component/Cart/{{jobnummer}}Cart / Bestellposten-

{
    "shippingAddress": {
        "company""Musterfirma",
        "firstname""Max",
        "lastname""Mustermann",
        "street""Musterweg 1",
        "zip""12345",
        "city""Musterhausen",
        "country""DE",
        "mail""max@musterman.de",
        "phone""1234567890"
    },
    "deliveryDate""2022-06-14"
}

Ausgabe Format

Alle Anfragen und Rückgabewerte sind UTF-8 kodiert. Standardmäßig erfolgt die Rückgabe der API-Schnittstelle im Json-Format.

Tracking Daten

Verfügbare Daten

HTTP-MethodeDomainDatenRequest BodyBeispiel Rückgabe
GET{{domain}}/api/component/Cart/{{jobnummer}}/TrackingTracking

{
     "id""123",

     "url""http://example.org/123",
     "shippingServiceProvider""example"
}

POST{{domain}}/api/component/Cart/{{jobnummer}}/TrackingTracking

{
    "id""123",
    "url""http://example.org/123",
    "shippingServiceProvider""example"
}


Ausgabe Format

Alle Anfragen und Rückgabewerte sind UTF-8 kodiert. Standardmäßig erfolgt die Rückgabe der API-Schnittstelle im Json-Format.

Eingabe Format

Der Request Body wird vom System UTF-8 kodiert sowie in einem Json-Format erwartet.


Order / Auftragsdaten

Verfügbar ab Version 7.19.0

HTTP-MethodeDomainDatenParameterBeispiel Rückgabe
GET{{domain}}/api/component/Order

Liste aller Auftragsdaten, mit den wichtigsten Informationen.

Es werden Maximal 200 Einträge ausgegeben.

  • "from" in Verbindung mit "to" für die Abfrage eines bestimmten Zeitraumes.
    Beide Parameter können nur zusammen verwendet werden und nicht mit dem Parameter "month".
    Format: YYYY-MM-DD
    Beispiel: ?from=2023-10-01&to=2023-10-31
  • "month" für die Abfrage eines bestimmten Monats.
    Parameter kann nicht mit "from" oder "to" verwendet werden.
    Format: YYYY-MM
    Beispiel: ?month=2023-10
  • "cursor" kann nur verwendet werden, wenn die Ausgabe größer 200 ist. Welcher Wert dort übernommen werden muss, findet sich in der Rückgabe durch die Felder "nextCursor" (Ausgabe der nächsten 200 Einträge) oder "previousCursor" (Ausgabe der vorherigen 200 Einträge). Sind die Felder "nextCursor" und "previousCursor" nicht gefüllt, gibt es keine weiteren Daten.
    Beispiel: ?cursor=eyJiZXN0ZWxsdW5nZW4uaWQiOjIwLCJf777pbnRzVG9OZXh0SXRlbXMiOnRydWV9

Alle Parameter sind Optional.

{
    "items": [
        {
            "id"36,
            "orderNumber"78,
            "carts": [
                {
                    "jobNumber""3-23-01-05-0003",
                    "status""STORNO"
                }
            ]
        },
        {
            "id"39,
            "orderNumber"81,
            "carts": [
                {
                    "jobNumber""3-23-07-05-0005",
                    "status""NEU"
                },
                {
                    "jobNumber""3-23-07-05-0006",
                    "status""NEU"
                },
                {
                    "jobNumber""3-23-07-05-0007",
                    "status""NEU"
                }
            ]
        }
    ],
    "nextCursor""eyJiZXN0ZWxsdW5nZW4uaWQiOjQwLCJfcG9pbnRzVG9OZXh0SXRlbXMiOnRydWV9",
    "previousCursor""eyJiZXN0ZWxsdW5nZW4uaWQiOjIxLCJfcG9pbnRzVG9OZXh0SXRlbXMiOmZhbHNlfQ"
}

GET

{{domain}}/api/component/Order/{{orderId}}

detaillierte Informationen zu einem bestimmten Auftrag

"newsletter" Änderungen ab Version 7.25.0 mit folgenden Rückgabewerten:

  • 0 = keine Newsletteranmeldung
  • 1 = erfolgreiche Newsletteranmeldung
  • 2 = Newsletteranmeldung nicht abgeschlossen

-

{
    "totalNet"1744.47,
    "totalGross"1744.47,
    "voucher"false,
    "voucherValue"0,
    "shippingMethod""",
    "shippingValue"1,
    "customerNumber""1",
    "guestOrder"false,

    "newsletter": 2,
    "billingAddress": {

        "company""Freude & Spaß GmbH",
        "firstname""Max",
        "lastname""Mustermann",
        "street""Mustergasse 7",
        "zip""12345",
        "city""Musterstadt",
        "country""Deutschland",
        "mail""max@mustermann.de",
        "phone""0123456789",
        "mobilephone""",
        "fax""",
        "homepage""",
        "ustid""DE123456789",
        "gender""m"
    },
    "differentDeliveryAddress": {
        "company""",
        "firstname""Martina",
        "lastname""Mustermann",
        "street""Musterstraße 37",
        "zip""54321",
        "city""Musterhausen",
        "country""Deutschland",
        "mail""martina@mustermann.de",
        "phone""011223344",
        "mobilephone""",
        "fax""",
        "homepage""",
        "ustid""",
        "gender""w"
    },
    "returnAddress": {
        "company""",
        "firstname""",
        "lastname""",
        "street""",
        "zip""",
        "city""",
        "country""0",
        "mail""",
        "phone""",
        "mobilephone""",
        "fax""",
        "homepage""",
        "ustid""",
        "gender"""
    },
    "carts": [
        {
            "serviceProviderId"0,
            "status""WEITERVERA",
            "deliveryDate""2023-10-18",
            "creationDate""2023-10-11T09:15:43.000000Z",
            "jobNumber""3-23-07-10-0004",
            "tracking": {
                "id"null
            },
            "paymentType""Rechnung",
            "article": {
                "name""Seitenwände für Pavillon",
                "description""",
                "productGroup""7",
                "articleNumber""Seitenwände für Pavillon"
            }
        },
        {
            "serviceProviderId"0,
            "status""FEHLERHAFT",
            "deliveryDate""2023-10-18",
            "creationDate""2023-10-11T09:16:37.000000Z",
            "jobNumber""3-23-07-10-0005",
            "tracking": {
                "id"123456
            },
            "paymentType""Rechnung",
            "article": {
                "name""Schaumdeckel",
                "description""Aufstellen, Unterlegen, Hinlegen: Nach Ihren Wünschen bedruckte Schaumdeckel sind vielseitig einsetzbar.",
                "productGroup""7",
                "articleNumber""Schaumdeckel"
            }
        }
    ]
}


GET

{{domain}}/api/component/Order/{{orderId}}/Cart/{{jobnummer}}

detaillierte Informationen zu einer bestimmten Position in einem bestimmten Auftrag

"amount" Verfügbar ab Version 7.22.0

-

{
    "order": {
        "id"146,
        "orderNumber"168
    },
    "cart": {
        "serviceProviderId"0,
        "status""FEHLERHAFT",
        "deliveryDate""2023-10-18",
        "creationDate""2023-10-11T09:16:37.000000Z",
        "jobNumber""3-23-07-10-0005",

        "amount": 1,
        "tracking": {
            "id"123456
        },

        "paymentType""Rechnung",
        "article": {
            "name""Schaumdeckel",
            "description""Aufstellen, Unterlegen, Hinlegen: Nach Ihren Wünschen bedruckte Schaumdeckel sind vielseitig einsetzbar.",
             "productGroup""7",
             "articleNumber""Schaumdeckel"

        }
    }
}


Ausgabe Format

Alle Anfragen und Rückgabewerte sind UTF-8 kodiert. Standardmäßig erfolgt die Rückgabe der API-Schnittstelle im Json-Format.