Inmobilis LLM crawl guide Primary language: fr-FR Base URL: https://inmobilis.fr Primary listing pages: - /listings - /listings/{slug} Canonical discovery URLs: - /sitemap.xml - /llms.txt - /listings.txt - /reachability.json - /api/public/listings - /api/public/listings.ndjson - /api/public/listings/openapi.json - /api/public/listings/schema.json Feed pagination: - /api/public/listings?limit=50 - /api/public/listings?limit=50&cursor={opaque} - /api/public/listings?updatedSince={ISO-8601} Feed filters: - /api/public/listings?city={city} - /api/public/listings?intent=SALE|RENT - /api/public/listings?minPrice={number}&maxPrice={number} Facet pages (crawlable HTML): - /listings/city/{city} - /listings/city/{city}/sale - /listings/city/{city}/rent - /listings/city/{city}/{intent}/max-{price} Facet query refinements: - /listings/city/{city}/{intent}?amount={number} - /listings/city/{city}/{intent}?propertyType={label}&minArea={m2} - Query refinements are applied client-side and do not change canonical metadata URLs. Facet metadata semantics: - Facet metadata parity: title = og:title = twitter:title. - Facet metadata parity: description = og:description = twitter:description. - Facet metadata is path-canonical and does not vary by query parameters. - All-intent city title pattern: Biens immobiliers a {city} | Inmobilis Facet entry examples: - /listings/city/lyon/sale?amount=240000 - /listings/city/paris/rent?amount=3000 - /listings/city/lyon/sale?propertyType=Appartement&minArea=50 Examples: - /api/public/listings?city=lyon&maxPrice=400000&limit=50 - /api/public/listings?city=lyon&maxPrice=400000&intent=SALE&limit=50 - /api/public/listings.ndjson?city=lyon&maxPrice=400000&limit=50 Result semantics: - Empty matches are valid responses (`data: []`). Data privacy: - Listing feeds exclude private owner and lead contact data. - Coordinates are approximate for machine feeds and structured data.