
LIVE PULL API
Für die Anbindung an DoorVision stehen mehrere API-Integrationsoptionen zur Verfügung; unsere empfohlene Lösung ist die Live Pull API.
Visuelle Türen aus Ihrem Shopsystem abrufen
Um die Türen aus Ihrem Shopsystem zu visualisieren, benötigt DoorVision Zugriff auf alle relevanten Türinformationen, einschließlich der verfügbaren Filter- und Sortieroptionen. Diese Informationen müssen über eine API abrufbar sein.
Ihr Shopsystem sollte die folgenden API-Endpoints bereitstellen, damit DoorVision die benötigten Daten dynamisch abrufen kann. Die technische Umsetzung kann variieren, da wir einen individuellen Adapter entwickeln, der die notwendigen API-Calls ausführt. Dieser Ansatz bietet Flexibilität bei der Datenstruktur, solange alle erforderlichen Informationen bereitgestellt werden.
Das folgende API-Design stellt die einfachste mögliche Implementierung dar und besteht aus diesen zentralen Endpoints:
-
Tür anhand der externen ID abrufen
-
Paginierte Liste von Türen abrufen (anhand eines Arrays externer IDs)
-
Filter- und Sortieroptionen abrufen
-
Paginierte Liste von Türen abrufen (anhand der vom Nutzer gewählten Filter und Sortieroptionen)
1.) Tür anhand der externen ID abrufen
Dieser Endpoint erhält eine externe ID als Eingabe und liefert die folgenden Felder als JSON-Antwort:
Title | Type | Required | Description |
|---|---|---|---|
External Id | string | number | Yes | Eindeutige Kennung der Tür in Ihrem Shopsystem (zum Beispiel Artikelnummer oder -code) |
Name | string | Yes | Der Name der Tür. |
Price | number | No | Der Preis der Tür (in Cent). |
DoorType | “single” | “double” | Yes | Legt fest, ob es sich um eine ein- oder zweiflügelige Tür handelt. |
Enabled | boolean | No | Legt fest, ob die Tür in DoorVision angezeigt wird. |
Shop Link* | string | Yes | Der Link zur Tür in Ihrem Shopsystem. |
Image url | string | Yes | Frontalansicht der Tür ohne Weißraum ringsum. Die längste Seite sollte etwa 1000 px messen. |
Thumbnail url | string | No | Wie die Frontalansicht, die längste Seite sollte jedoch etwa 350 px messen. |
* Der Shop-Link kann entweder für jede visuelle Tür einzeln festgelegt werden, oder es wird eine allgemeine URL-Struktur definiert, aus der der Shop-Link mithilfe der externen ID berechnet wird. Zum Beispiel würde die URL-Struktur „https://www.brandname.com/collections/internal-doors/products/<externalId>“ zur visuellen Tür mit der angegebenen externen ID führen.
Beispiel:
URL: https://www.brandname.com/api/door/<externalId>
Ergebnis:
2.) Paginierte Liste von Türen abrufen (Input: Array externer IDs)
Um DoorVision-Nutzern eine Liste der Türen anzuzeigen, die sie als Favoriten markiert haben, muss Ihr Shopsystem einen Endpoint bereitstellen, der eine paginierte Liste von Türen für ein Array externer IDs liefert. Das Speichern der als Favorit markierten externen IDs übernimmt DoorVision.
Beispiel:
URL: https://www.brandname.com/api/doors/
Query-Parameter:
-
externalIds: Array<string>
-
page: number
-
pageSize: number
Ergebnis:
3.) Filter- und Sortieroptionen abrufen
Dieser Endpoint liefert alle möglichen Filter- und Sortieroptionen.
Die oberste Ebene des Filters ist eine Liste von Kategorien, zum Beispiel „Marke“, „Türstil“, „Verglasung“, „Oberfläche“.
Eine Kategorie besteht aus den folgenden Eigenschaften:
-
id: string
-
name: string
-
description: string (optional)
-
enabled: boolean
-
options: Liste von
-
id: string
-
name: string (optional)
-
count: string (optional)
-
Die Anzahl der Türen, die in dieser Option der Filterkategorie enthalten wären
Die Sortieroptionen werden dargestellt als Liste von:
-
id: string
-
name: string
Beispiel:
URL: https://www.brandname.com/api/filterOptions/
Parameter:
-
doorType: single | double (optional)
-
selectedSortingOptionId: string (optional)
-
selectedCategoryOptions (optional)
-
Array von:
-
categoryId: string
-
selectedOptionIds: Array<string>
-
-
Ergebnis:
4.) Paginierte Liste von Türen abrufen
Dies ist der zentrale Request, um eine paginierte Liste von Türen für die ausgewählten Filter abzurufen, sortiert nach der übergebenen Sortieroption.
Beispiel:
URL: https://www.brandname.com/api/doors/
Parameter:
-
doorType: single | double (optional)
-
selectedSortingOptionId: string (optional)
-
selectedCategoryOptions:
-
Array von:
-
categoryId: string
-
selectedOptionIds: Array<string>
-
-
-
page: number
-
pageSize: number
Ergebnis: