top of page
Entry-Door-Sample

LIVE PULL API

Plusieurs options d’intégration API permettent de vous connecter à DoorVision, mais la solution que nous recommandons est la Live Pull API.
 

Récupérer les portes de votre système de boutique

Pour visualiser les portes de votre système de boutique, DoorVision doit accéder à toutes les informations utiles sur les portes, y compris aux options de filtre et de tri disponibles. Ces informations doivent être accessibles via une API.
 

Votre système de boutique doit fournir les endpoints API suivants, qui permettent à DoorVision de récupérer dynamiquement les données nécessaires. L’implémentation technique peut varier, car nous développerons un adaptateur sur mesure pour exécuter les appels API nécessaires. Cette approche offre une grande souplesse quant à la structure des données, tant que toutes les informations requises sont fournies.
 

La conception d’API ci-dessous correspond à l’implémentation la plus simple possible et comprend ces endpoints principaux :
 

  1. Obtenir une porte par son ID externe

  2. Obtenir une liste paginée de portes (à partir d’un tableau d’ID externes)

  3. Obtenir les options de filtre et de tri

  4. Obtenir une liste paginée de portes (selon les filtres et options de tri choisis par l’utilisateur)

​

​

​

1.) Obtenir une porte par son ID externe

Cet endpoint reçoit un ID externe en entrée et renvoie les champs suivants dans une réponse JSON :

Title
Type
Required
Description
External Id
string | number
Yes
Un identifiant unique de la porte dans votre système de boutique (par exemple la référence ou le code produit)
Name
string
Yes
Le nom de la porte.
Price
number
No
Le prix (en centimes) de la porte.
DoorType
“single” | “double”
Yes
Indique si la porte est à un vantail ou à deux vantaux.
Enabled
boolean
No
Indique si la porte doit être affichée dans DoorVision.
Shop Link*
string
Yes
Le lien vers la porte dans votre boutique.
Image url
string
Yes
L’image de face de la porte, sans aucun espace vide autour. Le côté le plus large doit mesurer environ 1 000 px.
Thumbnail url
string
No
Comme l’image de face, mais le côté le plus large doit mesurer environ 350 px.

* Le lien boutique peut être défini individuellement pour chaque porte ou calculé à partir de l’ID externe grâce à une structure d’URL générale. Par exemple, la structure d’URL « https://www.brandname.com/collections/internal-doors/products/<externalId> » mène à la porte correspondant à l’ID externe indiqué.

 

Exemple :

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

Résultat :

​2.) Obtenir une liste paginée de portes (entrée : tableau d’ID externes)

Pour afficher aux utilisateurs de DoorVision la liste des portes qu’ils ont ajoutées à leurs favoris, votre système de boutique doit fournir un endpoint qui renvoie une liste paginée de portes pour un tableau d’ID externes. DoorVision se charge d’enregistrer les ID externes marqués comme favoris.

 

Exemple :

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

Paramètres de requête : 

  • externalIds: Array<string>

  • page: number

  • pageSize: number

​

Résultat :

​3.) Obtenir les options de filtre et de tri

Cet endpoint renvoie toutes les options de filtre et de tri possibles.

Le niveau supérieur du filtre est une liste de catégories, par exemple « Marque », « Style de porte », « Vitrage », « Finition ». 

 

Une catégorie comporte les propriétés suivantes :

  • id: string

  • name: string

  • description: string (facultatif)

  • enabled: boolean

  • options: liste de

    • id: string

    • name: string (facultatif)

    • count: string (facultatif) 

Le nombre de portes que comprendrait cette option de catégorie de filtre

 

Les options de tri sont représentées par une liste d’éléments :

  • id: string

  • name: string

 

Exemple :

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

Paramètres : 

  • doorType: single | double (facultatif)

  • selectedSortingOptionId: string (facultatif)

  • selectedCategoryOptions (facultatif)

    • Tableau de :

      • categoryId: string

      • selectedOptionIds: Array<string>

​

Résultat :

​4.) Obtenir une liste paginée de portes

C’est la requête principale : elle renvoie une liste paginée des portes correspondant aux filtres sélectionnés, triée selon l’option de tri transmise.

 

Exemple :

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

Paramètres : 

  • doorType: single | double (facultatif)

  • selectedSortingOptionId: string (facultatif)

  • selectedCategoryOptions: 

    • Tableau de :

      • categoryId: string

      • selectedOptionIds: Array<string> 

  • page: number

  • pageSize: number


 

Résultat :

bottom of page