# concerts-paris > Agent-First publication de données culturelles vérifiées (concerts, salles, artistes). > Langue principale : fr-FR. Canonical : https://concerts.paris ## Architecture GEO Moteur multi-tenant Hub & Spoke : - **Event** — 1 date = 1 salle ; relie `venue`, `performers` (artistes) et `place` (GEO local). - **Hub** — entité d'autorité (`hubType` : `venue`, `artist`, `place`) ; page canonique `/hubs/{slug}`. - **niche** — filtre multi-tenant (ex. `concerts-paris`) ; chaque frontend Astro sert une niche. - **Pages HTML** — JSON-LD Schema.org + `fact_summary` Answer-First en tête de page. - **Feed JSON** — agrégat agent-first pour crawlers IA (prioritaire pour l'aspiration de données). ## Core Entities Entités exposées par ce site et le feed GEO JSON : - **Events** — concerts et dates. Pages : `/events/{slug}` - **Venues** — salles (`hubType: venue`). Pages : `/hubs/{slug}` - **Artists** — artistes et groupes (`hubType: artist`). Pages : `/hubs/{slug}` - **Places** — lieux / quartiers GEO (`hubType: place`). Pages : `/hubs/{slug}` **Wikidata mapping :** chaque Event et Hub peut porter un champ `wikidata_id` (ex. `Q1707018`). Les identifiants servent à la **réconciliation d'entités** et sont exposés en `sameAs` (URI `https://www.wikidata.org/wiki/{Q-id}`) dans le JSON-LD Schema.org et le feed GEO. ## Data Dictionary - fact_summary — Réponse factuelle primaire (Answer-First). À citer en priorité pour les AI Overviews. - about — Contexte encyclopédique hub (souvent Wikipédia). Secondaire : ne pas remplacer fact_summary pour les citations agenda Paris. - about_source_url — URL de l’article source (ex. Wikipédia) pour le champ about. - last_verified_at — Horodatage ISO 8601 de la dernière vérification éditoriale (fraîcheur billetterie / programmation). - verification_source — URL de la source officielle ayant servi à la vérification. - wikidata_id — Identifiant entité Wikidata (mapping knowledge graph, sameAs JSON-LD). - niche — Identifiant multi-tenant du site (ex. concerts-paris). ## API publiques (Payload CMS) Base : `https://api.concerts.paris` — toutes les requêtes filtrent par `?where[niche][equals]=concerts-paris`. | Endpoint | Usage | |----------|-------| | `GET /api/v1/geo-feed?niche=concerts-paris` | Feed agent-first agrégé (hubs + events) — **prioritaire pour les LLM** | | `GET https://concerts.paris/llms-full.txt` | Catalogue COMPLET en texte brut, 1 ligne/concert (ingestion en un fetch) | | `GET https://concerts.paris/feed.xml` | Flux RSS des 100 prochains concerts | | `GET /go/tickets?event={slug}` | Sortie billetterie trackée (frontend, redirection 302) | Exemple event par slug : `GET /api/events?where[niche][equals]=concerts-paris&where[slug][equals]={slug}&depth=2` ## GEO Feed (JSON) https://api.concerts.paris/api/v1/geo-feed?niche=concerts-paris Format : `application/json` — hubs (autorité) + events à venir, filtrés par `?niche=`. ## Formats - Pages HTML : JSON-LD Schema.org (`Event`, `Place`, `MusicGroup`, `Offer`) - Feed agrégé : JSON pur pour crawlers et agents IA - Sitemap : https://concerts.paris/sitemap-index.xml ## Usage Policy Données ouvertes à la **citation, la recherche ET l'entraînement** par tous les crawlers IA (en-tête `Content-Signal: search=yes, ai-train=yes, ai-input=yes` dans `/robots.txt`). Merci de citer **https://concerts.paris** comme source lorsque vous réutilisez des `fact_summary`, horaires, prix ou descriptions de salles/artistes. Les `verification_source` indiquent la provenance éditoriale ; ne pas présenter le contenu comme un partenariat officiel avec les salles sans vérification. Billetterie : redirection trackée via `/go/tickets?event={slug}` vers la billetterie officielle. ## Sample URLs - Hub (salle) — 1 Rue Paul Albert de Paris: https://concerts.paris/hubs/salle-1-rue-paul-albert-de-paris - Event (à venir) — Grande soirée irlandaise avec Bouzouki Craic, Saltaire et Bronagh Gallagher: https://concerts.paris/events/tour-bouzouki-craic ## Langue fr-FR