Übersicht der Metadata für Lese und Schreibzugriffe auf die Warenkörbe und Warenkorbpositionen
Erstellen eines Warenkorbs
Der Request-Body zum Erstellen eines Warenkorbs enthält die Variable „cartName“, der man den Namen des zu erstellenden Warenkorbs zuweisen kann.
URL der POST-Methode: https://api.itscope.com/2.1/business/carts
Beispiel:
POST https://api.itscope.com/2.1/business/carts
{
"cartName": "Warenkorb von Thomas"
}
Bearbeiten eines Warenkorbs (umbenennen)
Der Request-Body ist der gleiche wie beim Warenkorb erstellen. Der Variable „cartName“ ist also der neue Name des Warenkorbs zugewiesen.
Der zu editierende Warenkorb ist anhand der Warenkorb-ID (cartId) festzulegen, der beim Erstellen eines Warenkorbs vergeben wird.
URL der PUT-Methode: https://api.itscope.com/2.1/business/carts/<cartId>
Beispiel:
PUT https://api.itscope.com/2.1/business/carts/640b6b1e-01fa-423e-b072-8b7dca155c2e
{
"cartName": "Einkäufe von Thomas"
}
Löschen eines Warenkorbs
Der zu löschende Warenkorb kann mithilfe der Warenkorb-ID (cartId) bestimmt werden.
URL der DELETE-Methode: https://api.itscope.com/2.1/business/carts/<cartId>
Beispiel:
DELETE https://api.itscope.com/2.1/business/carts/640b6b1e-01fa-423e-b072-8b7dca155c2e
Einem Warenkorb Produkte hinzufügen und gleichzeitig optimieren
Bestehendem Warenkorb Produkte hinzufügen
Der Request-Body zum Hinzufügen eines Warenkorbs enthält das Objekt „cartLineItem“.
Die benötigten Variablen sind im Metadaten Thema nachzuschauen.
Der Warenkorb, dem die Produkte hinzugefügt werden sollen, wird anhand der Warenkorb-ID (cartId) bestimmt.
URL der POST-Methode: https://api.itscope.com/2.1/business/carts/<cartId>/cartlineitems
Beispiel 1:
Wir möchten das Produkt mit der PUID 1559972000 zum Warenkorb hinzufügen und möchten dieses Produkt 5 mal von Ingram Micro beziehen. Ingram hat die Lieferanten-ID 14 und das Produkt hat bei Ingram die Artikelnummer „9432GFW“. Eine Endkundenbestellreferenz oder Adressen setzen wir nicht, da wie erstere nicht brauchen und zweitere aus ITscope geladen wird.
POST https://api.itscope.com/2.1/business/carts/640b6b1e-01fa-423e-b072-8b7dca155c2e/cartlineitems
{
"cartLineItem": [
{
"puid": 1559972000,
"supplierId": 14,
"supplierItemId": "9432GFW",
"quantity": 5,
"comment": "Für den Drucker im Büro Süd"
}
]
}
Beispiel 2:
Wieder wollen wir das Produkt mit der PUID 1559972000 fünf mal dem Warenkorb hinzufügen. Dieses mal beschaffen wir das Produkt für einer unserer Kunden, dessen Bestellreferenz AB12345 entspricht. Die Bestellung soll an eine bestimmte Adresse gesendet werden, weshalb noch eine Lieferadresse (delivery) und eine Endkundenadresse (customer) gesetzt wurde. Neben Lieferadresse (delivery), kann auch noch zusätzlich eine Rechnungsadresse (invoice_recipient) und Endkundenadresse (customer) gesetzt werden.
POST https://api.itscope.com/2.1/business/carts/640b6b1e-01fa-423e-b072-8b7dca155c2e/cartlineitems
{
"cartLineItem": [
{
"puid": 1559972000,
"supplierId": 14,
"supplierItemId": "9432GFW",
"quantity": 5,
"comment": "Für den Drucker im Büro Süd",
"customerOrderReference": "AB12345",
"referencedAddresses":
{
"referencedAddress": [
{
"addressType": "delivery",
"name": "Max Mustermann",
"street": "Musterstr. 5",
"zipCode": "12345",
"city": "Karlsruhe",
"countryCoded": "DE",
"contactEmail": "Max@Mustermann.de"
},
{
"addressType": "customer",
"name": "Peter Mustermann",
"name2": "Addresszusatz1",
"name3": "Addresszusatz2",
"street": "Endkundenstrasse 5",
"zipCode": "12345",
"city": "Karlsruhe",
"countryCoded": "DE",
"contactFirstName": "Peter"
"contactLastName": "Mustermann"
"contactEmail": "peter@Mustermann.de"
}
]
}
}
]
}
Zusätzliche Optimierung des Warenkorbs beim Hinzufügen von Produkten
Mit einem Request Parameter optimisationStrategy kann man den Warenkorb optimieren, indem eine Optimierungsstrategie übermittelt wird. Das Ergebnis diese Methode ist dann der optimierte Warenkorb, inklusive Zuordnung der einzelnen Positionen zu einer passenden Bezugsquelle, je nach Optimierungsstrategie.
URL der POST-Methode: https://api.itscope.com/2.1/business/carts/<cartId>/cartlineitems?optimisationStrategy=minprice
Folgende Werte kann dieser Parameter haben
- manual: Die Anordnung der Bezugsquellen, wie sie von Ihnen initial erzeugt wurde, indem Sie Produkte auf den Warenkorb gelegt haben. Wenn Sie manuell Positionen des Warenkorbes verschieben, werden diese Positionen in der Anordnung „Manuell“ berücksichtigt.
- minpricepartner: Die Optimierung versucht alle Positionen Lieferanten zuzuordnen, bei denen Sie bereits eine Partnerschaft im System eingegangen sind. Positionen, die bei Ihren Partnern nicht lieferbar sind, verbleiben auf der manuellen Zuordnung.
- minprice: Diese Optimierung verhält sich analog zu „Bester Preis Partner“, mit dem Unterschied, dass die Positionen unabhängig vom Partnerstatus verteilt werden.
- minsuppliers: Eine Optimierungsvariante die versucht die Anzahl der Lieferanten möglichst gering zu halten. Es werden bevorzugt Partner genommen, als Rückfalloption werden jedoch auch Nicht-Partner akzeptiert.
Produkte in einem bestehenden Warenkorb optimieren
Wurde bereits eine Warenkorb erstellt, kann dieser explizit mit dieser Methode nachträglich optimiert werden
URL der PUT-Methode: https://api.itscope.com/2.1/business/carts/<cartId>/optimise?optimisationStrategy=minprice
Mit einem Request Parameter optimisationStrategy kann man den Warenkorb optimieren, indem eine Optimierungsstrategie übermittelt wird. Das Ergebnis diese Methode ist dann der optimierte Warenkorb, inklusive Zuordnung der einzelnen Positionen zu einer passenden Bezugsquelle, je nach Optimierungsstrategie.
Folgende Werte kann dieser Parameter haben
- manual: Die Anordnung der Bezugsquellen, wie sie von Ihnen initial erzeugt wurde, indem Sie Produkte auf den Warenkorb gelegt haben. Wenn Sie manuell Positionen des Warenkorbes verschieben, werden diese Positionen in der Anordnung „Manuell“ berücksichtigt.
- minpricepartner: Die Optimierung versucht alle Positionen Lieferanten zuzuordnen, bei denen Sie bereits eine Partnerschaft im System eingegangen sind. Positionen, die bei Ihren Partnern nicht lieferbar sind, verbleiben auf der manuellen Zuordnung.
- minprice: Diese Optimierung verhält sich analog zu „Bester Preis Partner“, mit dem Unterschied, dass die Positionen unabhängig vom Partnerstatus verteilt werden.
- minsuppliers: Eine Optimierungsvariante die versucht die Anzahl der Lieferanten möglichst gering zu halten. Es werden bevorzugt Partner genommen, als Rückfalloption werden jedoch auch Nicht-Partner akzeptiert.
Produkte aus einem Warenkorb entfernen
Das zu entfernende Produkt kann mithilfe der Positions-ID (lineitemId) bestimmt werden. Weiterhin muss natürlich die Warenkorb-ID (cartId) mit angegeben werden.
URL der DELETE-Methode: https://api.itscope.com/2.1/business/carts/<cartId>/cartlineitems/<lineitemId>
Beispiel:
DELETE https://api.itscope.com/2.1/business/carts/640b6b1e-01fa-423e-b072-8b7dca155c2e/cartlineitems/9f8d78d5-118e-4f9d-9a98-2e6ec551c9b1
Einen Warenkorb abrufen
Zum Abrufen eines Warenkorb wird die Warenkorb-ID (cartId) benötigt. Die Ausgabe erfolgt im Warenkorbformat.
URL der GET-Methode: https://api.itscope.com/2.1/business/carts/<cartId>/cart.json*
* oder cart.xml
Beispiel:
GET https://api.itscope.com/2.1/business/carts/640b6b1e-01fa-423e-b072-8b7dca155c2e/cart.json
Alle Warenkörbe auflisten
Zum Abrufen der Liste aller Warenkörbe. Die Ausgabe erfolgt im Warenkorbformat.
URL der GET-Methode: https://api.itscope.com/2.1/business/carts/cart.json*
* oder cart.xml
Beispiel:
GET https://api.itscope.com/2.1/business/carts/cart.json