top of page
Entry-Door-Sample

LIVE PULL API

Integrację z DoorVision przez API można zrealizować na kilka sposobów, ale zalecanym przez nas rozwiązaniem jest Live Pull API.
 

Pobieranie modeli drzwi z platformy sklepowej

Aby wizualizować drzwi z Państwa platformy sklepowej, DoorVision potrzebuje dostępu do wszystkich istotnych informacji o drzwiach, w tym do dostępnych opcji filtrowania i sortowania. Dane te muszą być dostępne przez API.
 

Platforma sklepowa powinna udostępniać poniższe endpointy API, dzięki którym DoorVision będzie dynamicznie pobierać potrzebne dane. Implementacja techniczna może się różnić, ponieważ przygotujemy indywidualny adapter wykonujący niezbędne wywołania API. Takie podejście zapewnia elastyczność co do struktury danych, o ile dostarczone zostaną wszystkie wymagane informacje.
 

Poniższy projekt API to najprostsza możliwa implementacja, złożona z następujących kluczowych endpointów:
 

  1. Pobranie drzwi według zewnętrznego ID

  2. Pobranie stronicowanej listy drzwi (na podstawie tablicy zewnętrznych ID)

  3. Pobranie opcji filtrowania i sortowania

  4. Pobranie stronicowanej listy drzwi (na podstawie filtrów i opcji sortowania wybranych przez użytkownika)

​

​

​

1.) Pobranie drzwi według zewnętrznego ID

Ten endpoint przyjmuje na wejściu zewnętrzne ID i zwraca następujące pola w odpowiedzi JSON:

Title
Type
Required
Description
External Id
string | number
Yes
Unikalny identyfikator modelu drzwi na Państwa platformie sklepowej (np. numer lub kod produktu)
Name
string
Yes
Nazwa modelu drzwi.
Price
number
No
Cena modelu drzwi (w pensach).
DoorType
“single” | “double”
Yes
Określa, czy model drzwi jest jednoskrzydłowy, czy dwuskrzydłowy.
Enabled
boolean
No
Określa, czy model drzwi ma być wyświetlany w DoorVision.
Shop Link*
string
Yes
Link do modelu drzwi na Państwa platformie sklepowej.
Image url
string
Yes
Zdjęcie frontalne modelu drzwi bez pustej przestrzeni wokół. Dłuższy bok powinien mieć około 1 000 px.
Thumbnail url
string
No
Tak samo jak zdjęcie frontalne, ale dłuższy bok powinien mieć około 350 px.

* Link do sklepu można zdefiniować indywidualnie dla każdego modelu drzwi albo określić ogólną strukturę URL, z której link będzie tworzony na podstawie zewnętrznego ID. Przykładowo struktura URL „https://www.brandname.com/collections/internal-doors/products/<externalId>” prowadzi do modelu drzwi o danym zewnętrznym ID.

 

Przykład:

URL: https://www.brandname.com/api/door/<externalId>

Wynik:

​2.) Pobranie stronicowanej listy drzwi (wejście: tablica zewnętrznych ID)

Aby wyświetlać użytkownikom DoorVision listę drzwi oznaczonych przez nich jako ulubione, platforma sklepowa musi udostępniać endpoint zwracający stronicowaną listę drzwi dla tablicy zewnętrznych ID. Przechowywaniem zewnętrznych ID oznaczonych jako ulubione zajmuje się DoorVision.

 

Przykład:

URL: https://www.brandname.com/api/doors/

Parametry zapytania: 

  • externalIds: Array<string>

  • page: number

  • pageSize: number

​

Wynik:

​3.) Pobranie opcji filtrowania i sortowania

Ten endpoint zwraca wszystkie dostępne opcje filtrowania i sortowania.

Najwyższy poziom filtra stanowi lista kategorii, np. „Marka”, „Styl drzwi”, „Przeszklenie”, „Wykończenie”. 

 

Kategoria ma następujące właściwości:

  • id: string

  • name: string

  • description: string (opcjonalnie)

  • enabled: boolean

  • options: lista obiektów

    • id: string

    • name: string (opcjonalnie)

    • count: string (opcjonalnie) 

Liczba drzwi objętych tą opcją kategorii filtra

 

Opcje sortowania mają postać listy obiektów:

  • id: string

  • name: string

 

Przykład:

URL: https://www.brandname.com/api/filterOptions/

Parametry: 

  • doorType: single | double (opcjonalnie)

  • selectedSortingOptionId: string (opcjonalnie)

  • selectedCategoryOptions (opcjonalnie)

    • Tablica obiektów:

      • categoryId: string

      • selectedOptionIds: Array<string>

​

Wynik:

​4.) Pobranie stronicowanej listy drzwi

To główne zapytanie, które zwraca stronicowaną listę drzwi dla wybranych filtrów, posortowaną według przekazanej opcji sortowania.

 

Przykład:

URL: https://www.brandname.com/api/doors/

Parametry: 

  • doorType: single | double (opcjonalnie)

  • selectedSortingOptionId: string (opcjonalnie)

  • selectedCategoryOptions: 

    • Tablica obiektów:

      • categoryId: string

      • selectedOptionIds: Array<string> 

  • page: number

  • pageSize: number


 

Wynik:

bottom of page