# WeeTrip > Portail de tourisme : fiches (hébergements, restaurants, activités, agenda, balades, infos pratiques) et moteur de recherche de disponibilités pour les territoires partenaires. Tourism portal with a date-based availability search for partner destinations. ## Moteur de recherche de disponibilités (hébergements) Certaines pages de rubrique (hébergements) contiennent un **moteur de recherche par dates** : on choisit une date d'arrivée et de départ (et le nombre de voyageurs), et la page ne garde que les hébergements réellement disponibles sur la période, avec le prix du séjour et un lien de réservation. **Pour un agent IA : n'interrogez pas la page HTML pour les disponibilités.** Les résultats de la page sont calculés par JavaScript ; sans navigateur, la page n'affiche pas de liste filtrée. Utilisez l'API JSON ci-dessous, qui renvoie les mêmes résultats sans JavaScript. ### API (recommandée) `GET https://weetrip.fr/api/availability.php` | Paramètre | Requis | Description | |---|---|---| | `checkin` | oui | Date d'arrivée `YYYY-MM-DD` (pas dans le passé) | | `checkout` | oui | Date de départ `YYYY-MM-DD` (après checkin, 60 nuits max) | | `territory` | oui | Slug du territoire (liste ci-dessous) | | `persons` | non | Nombre de voyageurs : ne garde que les hébergements pouvant les accueillir | | `category` | non | Slug de rubrique (par défaut : toutes celles qui ont le moteur) | | `commune` | non | Nom exact d'une commune | | `poi` | non | Slug d'une fiche précise (dernier segment de son URL) — n'utiliser que pour vérifier UN établissement précis, à omettre pour une recherche générale | | `lang` | non | fr, en, de, it, nl, es, pt (défaut : fr) | | `limit` | non | 1 à 100 (défaut 50) | Exemple : [https://weetrip.fr/api/availability.php?checkin=2026-11-21&checkout=2026-11-28&persons=2&territory=bassin-arcachon](https://weetrip.fr/api/availability.php?checkin=2026-11-21&checkout=2026-11-28&persons=2&territory=bassin-arcachon) Réponse : `{ ok, territory, checkin, checkout, total, returned, results: [ { name, city, category, stars, sleeps_max, total_price, currency, nights, page_url, booking_url } ] }`, triée par prix croissant. En cas d'erreur : `{ ok: false, error }` avec un code HTTP 4xx/5xx. ### Page web (pour un humain ou un navigateur) Les mêmes dates se passent dans l'URL de la page de rubrique : `?checkin=YYYY-MM-DD&checkout=YYYY-MM-DD&persons=N`. Exemple : [https://destination-bassindarcachon.com/campings?checkin=2026-11-21&checkout=2026-11-28&persons=2](https://destination-bassindarcachon.com/campings?checkin=2026-11-21&checkout=2026-11-28&persons=2) ### Pages avec moteur de recherche par territoire - Destination Bassin d'Arcachon (`territory=bassin-arcachon`) — [Campings & Plein air](https://destination-bassindarcachon.com/campings) - Destination Bassin d'Arcachon (`territory=bassin-arcachon`) — [Meublés & Gîtes ruraux](https://destination-bassindarcachon.com/meubles-gites) - Destination Bassin d'Arcachon (`territory=bassin-arcachon`) — [Chambres d'hôtes & B&B](https://destination-bassindarcachon.com/chambres-hotes) - Destination Bassin d'Arcachon (`territory=bassin-arcachon`) — [Hébergements insolites](https://destination-bassindarcachon.com/hebergements-insolites) - Destination Comminges Pyrénées (`territory=destination-comminges-pyrenees`) — [Meublés & Gîtes ruraux](https://comminges.weetrip.fr/meubles-gites) - Destination Comminges Pyrénées (`territory=destination-comminges-pyrenees`) — [Chambres d'hôtes & B&B](https://comminges.weetrip.fr/chambres-hotes) - Destination Comminges Pyrénées (`territory=destination-comminges-pyrenees`) — [Hébergements insolites](https://comminges.weetrip.fr/hebergements-insolites) - Destination Comminges Pyrénées (`territory=destination-comminges-pyrenees`) — [Hébergements collectifs](https://comminges.weetrip.fr/hebergements-collectifs) ## Règles pour les agents - Une fiche d'hébergement sans dates ne prouve **aucune disponibilité**. Pour « disponible du X au Y », appelez l'API avec `checkin`/`checkout`. - **Recherche générale** (« trouve-moi un hébergement… ») : appelez l'API avec seulement `checkin`/`checkout` (+ `persons`/`category`/`commune` au besoin) — **n'ajoutez jamais `poi`** dans ce cas, il ne sert qu'au cas suivant. - **Une seule fiche déjà identifiée** (URL du type `https://weetrip.fr/{rubrique}/{slug-fiche}`) : pour connaître SON tarif/dispo, ajoutez `?checkin=YYYY-MM-DD&checkout=YYYY-MM-DD` à l'URL de la fiche (le prix du séjour est alors affiché dans la page), ou appelez l'API avec `poi={slug-fiche}` (dernier segment de l'URL, facultatif) en plus de `checkin`/`checkout` : `total` = 0 signifie non disponible sur ces dates. - Les dates sont au format `YYYY-MM-DD` ; convertissez « du 26 septembre au 3 octobre 2026 » en `2026-09-26` / `2026-10-03`. - `total_price` est le prix du séjour complet (`nights` nuits), pas le prix par nuit ; il peut être `null` (prix non communiqué) : ne l'inventez pas. - La réservation se fait via `booking_url` (partenaire de réservation) ; ce site ne prend pas de paiement. - Si `total` vaut 0, aucun hébergement n'est disponible sur ces dates : proposez d'autres dates plutôt que des fiches générales. - Les réponses de disponibilité sont mises en cache 5 minutes. **Limite : 30 requêtes par minute et par IP** — au-delà, l'API répond `429` avec un en-tête `Retry-After`. ## Structure du site - Langues : fr, en, de, it, nl, es, pt ; la langue par défaut (`fr`) n'a pas de préfixe, les autres sont préfixées (`https://weetrip.fr/en/…`). - Territoire : `https://weetrip.fr/{lang}/tourisme/{slug-territoire}` ; rubrique d'un territoire : `https://weetrip.fr/{slug-territoire}/{slug-rubrique}`. - Certains territoires ont leur propre site (sous-domaine ou domaine dédié), avec sa propre `/llms.txt` : voir la liste des territoires. - [Plan du site](https://weetrip.fr/sitemap.xml) - [Version détaillée de ce document](https://weetrip.fr/llms-full.txt) ## Territoires - [Ardèche](https://ardeche.weetrip.fr) (`ardeche`) - [Aude](https://aude.weetrip.fr) (`aude`) - [Aveyron](https://aveyron.weetrip.fr) (`aveyron`) - [Calvados](https://calvados.weetrip.fr) (`calvados`) - [Cantal](https://cantal.weetrip.fr) (`cantal`) - [Charente](https://charente.weetrip.fr) (`charente`) - [Charente-Maritime](https://charente-maritime.weetrip.fr) (`charente-maritime`) - [Corrèze](https://correze.weetrip.fr) (`correze`) - [Côte-d’Or](https://cote-d-or.weetrip.fr) (`cote-d-or`) - [Côtes-d’Armor](https://cotes-d-armor.weetrip.fr) (`cotes-d-armor`) - [Destination Bassin d'Arcachon](https://destination-bassindarcachon.com) (`bassin-arcachon`) - [Destination Comminges Pyrénées](https://comminges.weetrip.fr) (`destination-comminges-pyrenees`) - [Dordogne](https://dordogne.weetrip.fr) (`dordogne`) - [Gironde](https://gironde.weetrip.fr) (`gironde`) - [Haute-Garonne](https://haute-garonne.weetrip.fr) (`haute-garonne`) - [Haute-Savoie](https://haute-savoie.weetrip.fr) (`haute-savoie`) - [Haute-Vienne](https://haute-vienne.weetrip.fr) (`haute-vienne`) - [Hautes-Pyrénées](https://hautes-pyrenees.weetrip.fr) (`hautes-pyrenees`) - [Île de Ré](https://iledere.weetrip.fr) (`iledere`) - [Isère](https://isere.weetrip.fr) (`isere`) - [Jura](https://jura.weetrip.fr) (`jura`) - [Landes](https://landes.weetrip.fr) (`landes`) - [Loir-et-Cher](https://loir-et-cher.weetrip.fr) (`loir-et-cher`) - [Loire](https://loire.weetrip.fr) (`loire`) - [Loiret](https://loiret.weetrip.fr) (`loiret`) - [Lot-et-Garonne](https://lot-et-garonne.weetrip.fr) (`lot-et-garonne`) - [Menuires Tourism](https://menuires.weetrip.fr) (`menuires-tourism`) - [Orne](https://orne.weetrip.fr) (`orne`) - [Pays Basque](https://paysbasque.weetrip.fr) (`pays-basque`) - [Pyrénées-Atlantiques](https://pyrenees-atlantiques.weetrip.fr) (`pyrenees-atlantiques`) - [Pyrénées-Orientales](https://pyrenees-orientales.weetrip.fr) (`pyrenees-orientales`) - [Saône-et-Loire](https://saone-et-loire.weetrip.fr) (`saone-et-loire`) - [Savoie](https://savoie.weetrip.fr) (`savoie`) - [Var](https://var.weetrip.fr) (`var`) - [Vaucluse](https://vaucluse.weetrip.fr) (`vaucluse`) - [Yonne](https://yonne.weetrip.fr) (`yonne`) ## Exemple pas à pas Demande : « Trouve-moi un hébergement pour 2 personnes du 26 septembre au 3 octobre 2026. » 1. Repérer le territoire voulu (liste ci-dessus, `territory=`). 2. Convertir les dates : `checkin=2026-09-26`, `checkout=2026-10-03`, `persons=2`. 3. Appeler : `https://weetrip.fr/api/availability.php?checkin=2026-09-26&checkout=2026-10-03&persons=2&territory=bassin-arcachon` 4. Présenter les `results` (nom, commune, prix du séjour, `page_url` pour la fiche, `booking_url` pour réserver). 5. Pour plus de détails sur un établissement (photos, description, équipements, contact), ouvrir sa `page_url`. ## Réponse type ```json { "ok": true, "territory": "bassin-arcachon", "checkin": "2026-09-26", "checkout": "2026-10-03", "persons": 2, "total": 1, "returned": 1, "results": [ { "name": "Nom de l'hébergement", "city": "Commune", "category": "campings", "stars": 3, "sleeps_max": 4, "total_price": 640, "currency": "EUR", "nights": 7, "page_url": "https://weetrip.fr/campings/nom-de-l-hebergement", "booking_url": "https://…" } ] } ``` ## Erreurs - 400 : paramètre manquant ou invalide (dates mal formatées, checkout ≤ checkin, séjour > 60 nuits, checkin passé). - 404 : territoire ou rubrique inconnu, ou pas de moteur de disponibilité. - 502 : service de disponibilités momentanément injoignable — réessayer plus tard. ## Contenu des fiches Chaque fiche (`page_url`) contient des données structurées schema.org (JSON-LD) : nom, adresse, coordonnées GPS, contacts, description, photos, horaires quand ils existent. Les pages de rubrique contiennent un `WebSite` + `SearchAction` décrivant le moteur de recherche par dates. ## Découverte - [https://weetrip.fr/llms.txt](https://weetrip.fr/llms.txt) : synthèse - [https://weetrip.fr/robots.txt](https://weetrip.fr/robots.txt) : règles d'exploration (les agents IA sont autorisés ; `/admin/` et `/includes/` sont exclus) - [https://weetrip.fr/sitemap.xml](https://weetrip.fr/sitemap.xml) : toutes les pages indexables