Anfragen ermöglichen den Abruf von aktuellen Daten zu Produkten aus dem Online-Shop. Bitte beachten Sie diese Dokumentation für eine korrekte Verarbeitung unserer Anfragen.
Beispiel für einen HTTP-Request:
GET http://www.{yourdomain}/index.php?route={yourRoute}&token={tokenNumber}&selectMethod={method}&offset={offsetValue}&limit={limitValue}
1.Init-Anfrage (Init request)
Dies ist die erste Anfrage, bei der PriceInfo nach den vom Händler unterstützten Währungen gemäß dem ISO 4217-Standard fragt.
Beispiel für eine Init-Anfrage:
{
"type": "init"
}
Beispiel für die Init-Anfrage-Antwort:
{
"currencies": [
{
"code": "EUR"
},
{
"code": "PLN"
}
]
}
Feldbeschreibungen:
currencies: Ein Array von Währungsobjekten. Jedes Objekt im Array enthält das Feld "code".
code: Währungscode.
2.Anfrage nach Limit (By limit)
In dieser Anfrage fordert PriceInfo Produktinformationen an:
Beispielanfrage:
{
"currency": "EUR",
"type": "prods",
"token": 12345,
"selectMethod": "limit",
"offset": 0,
"limit": 10
}
Beispiel für eine MySQL-Abfrage (Die Abfrage wählt alle Einträge aus der Tabelle aus und begrenzt die Ergebnisse auf 10 Einträge, beginnend mit dem ersten Eintrag):
SELECT * FROM prods LIMIT 0, 10
Wenn Sie numerische Produkt-IDs verwenden, lassen Sie in der Antwort bitte die höchste ID (SKU-ID) der gesammelten Produkte. PriceInfo sendet beim nächsten Mal eine Anfrage unter Verwendung der letzten ID (lastId).
3.Anfrage nach letzter ID (By last id)
In dieser Anfrage fordert PriceInfo Produktinformationen an, bei denen die ID (SKU-ID) größer als die angegebene lastId ist.
Beispielanfrage:
{
"currency": "EUR",
"type": "prods",
"token": 12345,
"selectMethod": "lastId",
"lastId": 22,
"limit": 10
}
Beispiel für eine MySQL-Abfrage (Die Abfrage wählt alle Einträge aus der Tabelle aus, bei denen der ID-Wert größer als 22 ist, und begrenzt die Ergebnisse auf 10 Einträge):
SELECT * FROM prods WHERE id > 22 LIMIT 10
Feldbeschreibungen der Anfragen (By lastId & By limit):
currency: Der Währungscode, in dem die Preise der Produkte angezeigt werden sollen (z. B. "EUR", "USD").
type: Der Fragetyp, der auf Produktinformationen hinweist (z. B. "prods" oder "init").
selectMethod: Die Methode zum Abrufen der Daten, die entweder "limit" oder "lastId" sein kann.
token: Ein eindeutiger Händler-Identifikator zum Zugriff auf die Produktinformationen.
offset: Der Offset (Startposition) für die Produktauswahl (nur für die Methode "limit" verwendet).
limit: Die maximale Anzahl der zu erhaltenden Produkte.
lastId: Die ID des zuletzt erhaltenen Produkts (nur für die Methode "lastId" verwendet).
Beispielantwort auf eine korrekte Anfrage:
{
"prods": [
{
"sku": 1234,
"url": "https://example.com",
"price": 9.99,
"data": {
"title": "Beispielprodukt",
"model": "Beispielmodell",
"description": "Beispielproduktbeschreibung",
"manufacturer": "Beispielhersteller",
"weight": 10,
"ean": [
"1234567890",
"0987654321"
]
},
"delivery": [
{
"country": [
"BE",
"DE"
],
"carriers": [
{
"price": 9.99,
"name": "UPS",
"deliveryDaysEst": 3
},
{
"price": 0,
"name": "Abholung im Geschäft",
"deliveryDaysEst": 0,
"inStore": ""
}
]
},
{
"country": "PL",
"carriers": [
{
"price": 5,
"name": "UPS",
"deliveryDaysEst": 3
},
{
"price": 9.99,
"name": "UPS",
"deliveryDaysEst": 2
}
]
}
],
"itemsAvailable": 42,
"images": [
{
"url": "https://example.com/image1.jpg"
},
{
"url": "https://example.com/image2.jpg"
}
]
}
],
"lastId": 1234
}
Tabelle mit Feldern und Beschreibungen:
Feldname | Feldbeschreibung | Feldtyp | Erforderlich/Optional |
---|---|---|---|
result | Liste der erforderlichen Produkte | Array | Erforderlich |
result[0].sku | Produkt-SKU-ID | String / Integer | Erforderlich |
result[0].url | Produkt-URL | String | Erforderlich |
result[0].price | Produktpreis inklusive aller Steuern | Float | Erforderlich |
result[0].available | Anzahl der verfügbaren Artikel | Integer | Erforderlich |
result[0].detail | Detaillierte Informationen zum Produkt | Array | Erforderlich (wenn der Anfrageparameter "get" gleich "detail" ist) |
result[0].detail.title | Produkttitel | String | Erforderlich |
result[0].detail.model | Produktmodell | String | Optional |
result[0].detail.description | Produktbeschreibung | String | Optional |
result[0].detail.manufacturer | Produkt-Hersteller | String | Optional |
result[0].detail.weight | Produktgewicht in kg | Float | Optional |
result[0].detail.ean | Liste der Produkt-EAN(s) oder Produkt-EAN | Array / String | Erforderlich |
result[0].detail.images | Liste der Produktbilder | Array | Erforderlich |
result[0].detail.images[0] | Produktbild | Object | Erforderlich |
result[0].detail.images[0].url | Produktbild-URL | String | Erforderlich |
result[0].delivery | Liste der möglichen Liefermethoden für das Produkt | String | Erforderlich (wenn der Anfrageparameter "get" gleich "delivery" ist) |
result[0].delivery[0].country | Ländercode der Lieferung nach ISO 3166 oder Array von Ländercodes | Array / String | Erforderlich |
result[0].delivery[0].carriers | Lieferdienste | Array | Erforderlich |
result[0].delivery[0].carriers[0] | Lieferdienst-Objekt | Object | Erforderlich |
result[0].delivery[0].carriers[0].price | Lieferpreis des Produkts inklusive aller Steuern | Float | Erforderlich |
result[0].delivery[0].carriers[0].name | Name der Liefermethode | Float | Erforderlich |
result[0].delivery[0].carriers[0].deliveryDaysEst | Voraussichtliche Lieferzeit der Liefermethode | Float | Erforderlich |
next | Nächster Tokenwert, der in der nächsten E-Katalog-Anfrage verwendet wird | Beliebig | Erforderlich |