Modèles de données
Category
| Champ |
Type |
Description |
id |
integer |
Identifiant unique |
name |
string |
Nom de la catégorie |
parentId |
integer | null |
ID de la catégorie parente. null = catégorie racine (occasion) |
occasion |
string |
Type d'occasion : entertainment, gift, birthday, business, bachelor-party, internship, b2b_location |
Listing
Champs requis : id, slug, title, pictureUrl, atHome, isInstant, minPerson, maxPerson, displayListingEndTime, listingItems, checkoutLinks, status, updated.
| Champ |
Type |
Description |
id |
integer |
Identifiant unique |
slug |
string |
Slug URL |
title |
string |
Titre de l'activité |
pictureUrl |
string |
URL de l'image principale |
description |
string? |
Description de l'activité |
atHome |
boolean |
L'activité se déroule au domicile du client |
isInstant |
boolean |
Confirmation immédiate (sans validation du pro) |
minPerson |
number |
Nombre minimum de participants |
maxPerson |
number |
Nombre maximum de participants |
displayListingEndTime |
boolean |
Afficher l'heure de fin |
status |
integer |
Statut du listing |
averageRating |
number? |
Note moyenne |
ratingCount |
integer? |
Nombre d'avis |
duration |
object? |
Durée : hours, minutes, real_time (en minutes) |
minAge |
integer? |
Age minimum. 0 = non renseigné |
maxAge |
integer? |
Age maximum. 0 = non renseigné |
isTopSales |
boolean? |
Fait partie des meilleures ventes |
isNew |
boolean? |
Activité récente sur la plateforme |
categories |
Category[]? |
Catégories associées |
address |
Address? |
Adresse de l'activité |
latitude |
float? |
Latitude |
longitude |
float? |
Longitude |
funpro |
ShortFunpro? |
Prestataire |
listingItems |
ListingItem[] |
Variantes tarifaires |
cancellationPolicy |
CancellationPolicy? |
Politique d'annulation |
specialCondition |
string? |
Conditions particulières |
checkoutLinks |
CheckoutLink[] |
Liens de réservation |
updated |
datetime |
Date de dernière mise à jour |
ListingItem
| Champ |
Type |
Description |
id |
integer |
Identifiant unique |
listingId |
integer |
ID du listing parent |
label |
string |
Libellé (ex: "Adulte", "Enfant", "Groupe de 10") |
description |
string? |
Description |
price |
integer |
Prix en centimes |
priceType |
string |
per_person, plan, ou option |
isOption |
boolean |
Option supplémentaire (ex: pack photo) |
isDisabled |
boolean |
Item désactivé |
minCapacity |
integer |
Quantité minimum |
maxCapacity |
integer |
Quantité maximum |
numberOfPersons |
integer |
Nombre de personnes incluses |
durationTime |
integer? |
Durée en minutes |
Address
| Champ |
Type |
Description |
city |
string |
Ville |
country |
string |
Pays |
route |
string? |
Rue |
streetNumber |
string? |
Numéro |
zip |
string? |
Code postal |
ShortFunpro
| Champ |
Type |
Description |
id |
integer |
Identifiant du prestataire |
name |
string |
Nom |
pictureUrl |
string |
URL de la photo de profil |
CancellationPolicy
| Champ |
Type |
Description |
count |
integer |
Nombre d'heures ou de jours |
timeUnit |
string? |
hour ou days |
CheckoutLink
| Champ |
Type |
Description |
href |
string |
URL de réservation |
shortLabel |
string |
Libellé du lien (ex: "Réserver", "Offrir un bon cadeau") |
GiftCardItem
| Champ |
Type |
Description |
code |
string |
Code unique (format XXXX-XXXX-XXXX) |
amount |
integer |
Montant en centimes |
expirationDate |
string |
Date d'expiration (YYYY-MM-DD), 1 an après création |
status |
string |
available, used, expired, ou canceled |
partnerReference |
string |
Votre référence de vente |
usageUrl |
string |
URL d'utilisation pour le bénéficiaire |
VoucherItem
Objet envoyé dans le body de POST /voucher/create.
| Champ |
Type |
Description |
listingItemId |
integer |
ID de l'option tarifaire |
quantity |
integer |
Quantité |
unitPrice |
integer |
Prix unitaire en centimes |
VoucherResponse
| Champ |
Type |
Description |
voucherCode |
string |
Code du bon |
bookingUrl |
string |
URL de réservation pour le bénéficiaire |
price |
Money |
Prix total |
Money
| Champ |
Type |
Description |
amount |
number |
Montant en euros (ex: 50.00) |
currency |
string |
Devise (EUR) |
| Champ |
Type |
Description |
page |
integer |
Page courante |
pageCount |
integer |
Nombre total de pages |
totalItems |
integer |
Nombre total de résultats |
perPage |
integer |
Résultats par page |
SearchResponse
| Champ |
Type |
Description |
hits |
ResponseHit[] |
Résultats de recherche |
nbHits |
integer |
Nombre total de résultats |
page |
integer |
Page courante |
nbPages |
integer |
Nombre de pages |
hitsPerPage |
integer |
Résultats par page |
query |
string |
Requête envoyée |
pagination |
object |
Pagination : pages_count (integer), page (integer) |
ResponseHit
Format retourné par le moteur de recherche (diffère du format Listing).
Champs requis : title, price, image_name, categories.
| Champ |
Type |
Description |
id |
integer |
ID du listing |
title |
string |
Titre |
slug |
string |
Slug URL |
type |
string |
Occasion (entertainment, birthday, etc.) |
price |
integer |
Prix en centimes |
image_name |
string |
Nom de l'image (Cloudinary) |
teaser |
string |
Présentation courte |
priceFrom |
string |
Description du prix (ex: "12 enfants") |
status |
integer |
Statut : 1 (new), 2 (published), 4 (suspended), 5 (deleted), 6 (under review) |
averageRating |
integer |
Note moyenne |
commentCount |
integer |
Nombre d'avis |
minAge |
integer |
Age minimum |
maxAge |
integer |
Age maximum |
home |
boolean |
Activité à domicile |
isTopSales |
boolean |
Fait partie des meilleures ventes |
isNew |
boolean |
Activité récente sur la plateforme |
onDiscount |
integer |
Pourcentage de réduction |
duration |
object |
Durée : hours, minutes, real_time |
departments |
integer[] |
Départements où l'activité est disponible |
videoUrl |
string |
URL de la vidéo |
sort_scoring |
integer |
Score de pertinence Algolia |
objectID |
string |
Référence Algolia (correspond à l'ID du listing) |
user_picture |
string |
Photo de profil du prestataire |
_geoloc |
object |
Géolocalisation : lat, lng, department_code, city, zip |
categories |
object[] |
Catégories avec root, parent, id, name, short_name, occasion, lvl, isLeaf |
user |
object[] |
Prestataire : name, average_offerer_rating |