Dieses Dokument beschreibt die REST-Schnittstellen für Produktdaten.
| User Story | Ein User kann ein Produkt mit Hilfe der Produkt-ID abfragen. |
| HTTP | GET |
| URL | http://api.mairdumont.com/data/product/api/product/ |
Es kommen Informationen zu einem Produkt zurück.
| User Story | Ein User kann ein Produkt mit Hilfe der seiner External-ID abfragen. |
|---|---|
| HTTP | GET |
| URL | http://api.mairdumont.com/data/product/api/product/external/ |
| User Story | Ein User kann die Produkten abfragen, die einer Destination zugeordnet sind. |
| HTTP | GET |
| URL | http://api.mairdumont.com/data/destination/api/destination/4/?filter=product |
| User Story | Ein User kann die Produkte über einen Geocode abfragen. |
| HTTP | GET |
| URL | http://api.mairdumont.com/data/product/api/product/all?geocode=<lat>,<lon> |
Es werden zuerst die Destinationen gesucht, deren Polygon den Geocode enthält. Zu diesen Destinationen werden dann die Produkte gesucht. Dabei werden die Produkte von lokalem Interesse bevorzugt ausgegeben, d.h. Produkte an Destinationen vom Typ AdminCity oder TravelRegion werden vor die Produkte von Destinationen der Typen AdminRegion, AdminCountry und AdminContinent sortiert. So liefert die Suche mit dem Geocode von Florenz die Produkte Flozenz und Toskana vor dem Produkt Italien, unabhängig von der gewählten Sortierung.
Wird der "geocode" Parameter weggelassen, so erfolgt eine Suche über alle Produkte. Dies beinhaltet auch Produkte, die aktuell keiner Destination zugeordnet sind.
| User Story | Ein User kann ein Produkt Top-Sellers abfragen. |
|---|---|
| HTTP | GET |
| URL | http://api.mairdumont.com/data/product/api/product/topseller |
Es wird nur die Top-Seller Produkten vom den aktuellen Customer zurückliefern.
| User Story | Ein User kann Abfragen der Produkte auf Marken und Produkt-Type einschränken. |
|---|---|
| HTTP | GET |
| URL | http://api.mairdumont.com/data/destination/api/destination/4/?filter=product?brand=1,3&producttype=1,2 http://api.mairdumont.com/data/product/api/product/all?geocode=,&brand=1,3 http://api.mairdumont.com/data/product/api/product/topseller?producttype=1,2 |
Bei der Einschränkung nach Marken-Id und Produkt-Typ ist eine Mehrfachauswahl möglich. Die Werte werden durch Kommas voneinander getrennt. Beim Abfragen für Top-Sellers ist die Produkten schon nach aktuellen Customer Brand eingeschränkt, deswegen ist die Einschränkung in diesem Fall nur noch nach Produkt-Typ möglich.
| User Story | Ein User kann Abfragen der Produkte auf Suchbegriffe einschränken. |
|---|---|
| HTTP | GET |
| URL |
http://api.mairdumont.com/data/product/api/product/all?lang=de&search=London |
Gesucht wird im Titel sowie in den Tags der Produkte.
| User Story | Ein User kann Abfragen der Produkte auf Autorennamen einschränken. |
|---|---|
| HTTP | GET |
| URL | http://api.mairdumont.com/data/destination/api/destination/4?filter=product&lang=de&author=Max+Mustermann http://api.mairdumont.com/data/product/api/product/all?lang=de&author=Max+Mustermann |
| User Story | Ein User kann die Sortierreihenfolge der Produkte bestimmen. Über den Parameter "sort" kann zwischen der Sortierung nach Verkaufszahlen ("sales") im Shop der Marke, der Sortierung nach Preis ("price", günstige zuerst), der Sortierung nach Erscheinungsdatum ("date", aktuellstes Produkt zuerst) und der Sortierung nach Such-Relevanz ("rel", bei Volltextsuchen über Parameter "search" oder "author") gewählt werden. Voreingestellt ist die Sortierung nach Verkaufszahlen. |
|---|---|
| HTTP | GET |
| URL | http://api.mairdumont.com/data/destination/api/destination/4?filter=product&sort=price http://api.mairdumont.com/data/product/api/product/all?geocode=<lat>,<lon>&sort=price |
Bei der Produktsuche über Geocode werden die Produkte primär nach den zugeordneten Destination sortiert, d.h. Produkte über Städte oder Reiseziele haben immer Vorrang vor Produkten von Landesteilen oder Ländern. Die Sortierung nach Verkaufszahlen oder Preis ist in diesem Fall nur sekundär.
| User Story | |
|---|---|
| HTTP | GET |
| URL | http://api.mairdumont.com/data/destination/api/destination/4?filter=multiproduct http://api.mairdumont.com/data/destination/api/product/all?filter=multiproduct&geocode=<lat,lon> |
Es gibt keine eigenständigen Produkte für eBooks oder Apps mehr, die Zuordnung über "multiChannel" ist entfallen. Der Filter "multiproduct" unterscheidet sich nicht mehr vom Filter "product" und das Element "children" wird nicht mehr unterstützt.
Als Ersatz für "children" wird jetzt das neue Boolean-Element "ebook" gesetzt, wenn ein Produkt auch als eBook verfügbar ist.
|
Wie üblich, wird ein Array von Produkten als Wert der "entries"-Eigenschaft der Globalen Response Datenstruktur gesetzt.
Globales Response Format
{
"entries": [{
"id": 18913,
"externalId": "9783829725606",
"title": "Norwegen MARCO POLO Reiseführer",
"price": 11.99,
"currency": "EUR",
"description": "Entdecken Sie Norwegen mit all ... ist der Autor ein aufmerksamer und kritischer Beobachter geblieben. Für MARCO POLO schreibt er auch den Band #Oslo#.",
"author": "Jens Uwe Kumpch Sprak & Tekst",
"manufacturer": "Marco Polo",
"isbn": "9783829725606",
"productType": 1,
"category": "Reiseführer > Europa",
"imageUrl": "http://pic.123poi.com/api/content/images/image/0/5/o8/vg/t150/u/photo-9529324.jpg",
"topSeller": false,
"releaseDate": 1522533600000,
"sales": 154,
"brand": {
"id": 3,
"name": "MarcoPolo"
},
"productLinks": [{
"url": "http://shop.marcopolo.de/9783829725606",
"type": "PRODUCT_LINK",
"brand": {
"id": 3,
"name": "MarcoPolo"
}
}],
"destinationIds": [
5691
],
"tags": [{
"id": 150775,
"value": "Norwegen",
"language": "de"
}, {
"id": 150636,
"value": "Europa",
"language": "de"
}],
"creationDate": 1418659429837,
"lastUpdate": 1430794371098,
"ebook": true
},
{
...
}],
"totalResults": 28,
"startIndex": 0,
"itemsPerPage": 10,
"searchTime": 206
}