Warenkorb API

Mit der Warenkorb API werden Positionen in den Warenkorb gelegt.

Funktionsweise

Die Warenkorb Positionen werden über Token referenziert. Jeder neue Token bedeutet ein neuer Warenkorb.

Token Anfordern

Ein neuer Token wird über den Entpunkt per POST über die URL /api/plugin/order/position/token angefordert.
Es muss der Header Accept: application/json gesendet werden.

Antwort:

{
    "dataset": {
        "token": "ielkdyU2ROvRiGQUzaa6gO.oHz2vOTST"
    },
    "sys": {
        "message": "200 OK",
        "code": 200
    }
}

Warenkorb Position anlegen / aktualisieren

Die Positionen werden per POST über die URL /api/plugin/order/position angelegt oder aktualisiert.
Es kann eine Position oder mehrere in einem Request angelegt oder aktualisiert werden.

Die Header Content-Type:application/json und Accept: application/json müssen bei verwendung von Json mitgeliefert werden.

eine Position

{
    "itemSKU": "36259745224728",
    "positionCount": 1,
    "token": "ielkdyU2ROvRiGQUzaa6gO.oHz2vOTST"
}

mehrere Positionen

{
    "dataset": [
        {
            "itemSKU": "36259745224728",
            "positionCount": 1,
            "token": "ielkdyU2ROvRiGQUzaa6gO.oHz2vOTST"
        },
        {
            "itemSKU": "36259745224728",
            "positionCount": 2,
            "token": "ielkdyU2ROvRiGQUzaa6gO.oHz2vOTST"
        },
        {
            "itemSKU": "36259745224728",
            "positionCount": 1,
            "token": "ielkdyU2ROvRiGQUzaa6gO.oHz2vOTST"
        },
        {
            "itemSKU": "36259745224728",
            "positionCount": 1,
            "token": "ielkdyU2ROvRiGQUzaa6gO.oHz2vOTST"
        }
    ]
}

Antwort

eine Position Update

{
    "dataset": [
        {
            "dataset": {
                "itemSKU": "1465948883717",
                "positionCount": 1,
                "token": "xczgFQ4PGqnHZmAw02WQfTNeUVbpC8AJ",
                "scid": 1695,
                "itemIID": 1005,
                "positionVariant": "L",
                "itemName": "Armkettchen",
                "itemNumber": "0 215 659 62"
            },
            "sys": {
                "message": "200 OK",
                "code": 200
            }
        }
    ],
    "sys": {
        "message": "200 OK",
        "code": 200
    }
}

eine Position Update und eine Position anlegen

{
    "dataset": [
        {
            "dataset": {
                "itemSKU": "1465948883717",
                "positionCount": 1,
                "token": "xczgFQ4PGqnHZmAw02WQfTNeUVbpC8AJ",
                "scid": 1695,
                "itemIID": 1005,
                "positionVariant": "L",
                "itemName": "Armkettchen",
                "itemNumber": "0 215 659 62"
            },
            "sys": {
                "message": "200 OK",
                "code": 200
            }
        },
        {
            "dataset": {
                "itemSKU": "1465948883717",
                "positionCount": 1,
                "token": "xczgFQ4PGqnHZmAw02WQfTNeUVbpC8AJ",
                "itemIID": 1005,
                "positionVariant": "L",
                "itemName": "Armkettchen",
                "itemNumber": "0 215 659 62",
                "scid": 1701
            },
            "sys": {
                "message": "201 Created",
                "code": 201
            }
        }
    ],
    "sys": {
        "message": "207 Multi-Status",
        "code": 207
    }
}

Fehler

{
    "sys": {
        "error": {
            "code": 400,
            "message": "400 Bad Request"
        }
    },
    "dataset": [
        {
            "dataset": {
                "itemSKU": "1465948883717",
                "positionCount": 0,
                "token": "xczgFQ4PGqnHZmAw02WQfTNeUVbpC8AJ",
                "scid": 1695
            },
            "sys": {
                "error": {
                    "code": 400,
                    "message": "400 Bad Request",
                    "hint": "Es wurde keine Menge angegenben. Verwenden Sie den Schlüssel:positionCount"
                }
            }
        }
    ]
}