Polity Atlas
Développer · API ouverte v1

API et données ouvertes

Chaque entité, affirmation, source et expérience est disponible sous forme de données structurées. La lecture ne nécessite aucune clé ; des limites de débit généreuses s’appliquent.

URL de basehttps://polityatlas.org/api/v1
LicenceContenu CC BY-SA 4.0 · Données ODbL

Authentification

La lecture est anonyme. L’écriture utilise le cookie de session Django : appelez une fois GET /auth/csrf, puis envoyez le jeton dans l’en-tête X-CSRFToken pour les requêtes POST, PATCH et DELETE, identifiants inclus.

Pagination et erreurs

Les listes acceptent page et page_size et renvoient {"items", "count", "page", "page_size"}. Les erreurs sont toujours de la forme {"detail": "…"} avec un statut explicite (400, 401, 403, 404, 409, 422, 429).

Localisation

Ajoutez ?lang=ru (ou envoyez Accept-Language) pour obtenir les champs en russe ; les traductions manquantes reviennent à l’anglais.

GET

/entities/{slug}

Renvoie une entité avec ses relations regroupées par type, ses affirmations accompagnées des éléments de preuve et des sources, ainsi que les évaluations.

curl "https://polityatlas.org/api/v1/entities/polycentric-law?lang=fr"
Réponse · 200
{
  "id": 11,
  "slug": "polycentric-law",
  "kind": "concept",
  "title": "Polycentric law",
  "summary": "Several coexisting centres of rule-making and dispute resolution.",
  "review_state": "published",
  "last_verified_at": "2026-10-02T00:00:00Z",
  "relations": [
    {
      "type": "implements",
      "direction": "incoming",
      "label": "implemented by",
      "items": [{ "entity": { "slug": "arbitration", "kind": "mechanism" } }]
    }
  ],
  "claims": [{
    "id": 318,
    "text": "…",
    "epistemic_status": "disputed",
    "verification_status": "verified",
    "evidence": [{ "stance": "supports", "source": { "id": 41 } }]
  }]
}

Savoir

GET/entitiesFiltres : kind, theme, tag, q
GET/entities/{slug}Entité avec relations, affirmations, évaluations
GET/entities/{slug}/graphRéseau égocentré, profondeur 1–2
GET/graphGraphe publié complet ; kinds, theme
GET/claims/{id}Affirmation, éléments de preuve, sources, contestations en cours
GET/sourcesFiltres : type, q, primary
GET/glossaryTermes ; letter, q
GET/searchq, kind, mode=keyword|semantic
POST/askRéponse construite uniquement à partir d’affirmations publiées

Atlas vivant

GET/experimentsFiltres dont bbox, autonomy, uses_ai
GET/experiments/geojsonGeoJSON FeatureCollection
GET/experiments/networkEntités politiques en réseau et mécanismes partagés
GET/experiments/facetsEffectifs par valeur de facette

Explorateur et Observatoire

GET/criteriaCritères d’évaluation
POST/explorer/compareComparaison pondérée selon des critères connus
GET/observatorykind : signal, news, research, briefing
GET/scenariosFacteurs, indicateurs, probabilité exprimée en mots

Polity Lab

GET/lab/optionsDimensions de configuration et scénarios de résistance
POST/lab/projects/{id}/analyzeAnalyse de cohérence fondée sur des règles
GET/repository/componentsComposants institutionnels versionnés
GET/export/entities.jsonlExport en masse, JSON Lines

Ontologie

Le vocabulaire employé par chaque enregistrement. Les éditeurs peuvent récupérer le schéma complet, y compris les définitions d’attributs, depuis /cp/ontology.

Types d’entitésConceptconceptMécanismemechanismThéorietheoryPenseurthinkerExpérienceexperimentType d’institutioninstitution_typeIdéologieideologyorganisationorganisation
Types de relationsmet en œuvreimplementstesté danstested_inproposé parproposed_bya influencéinfluencedcritiquecriticisesalternativealternative_tofait partie depart_ofutilise le mécanismeuses_mechanismlié àrelated_to
Statut épistémiqueÉtabliestablishedThéorietheoryContestédisputedHypothèsehypothesisPrévisionforecast
Statut de vérificationNon vérifiéunverifiedRédigé par IAai_draftedEn relecturein_reviewVérifiéverifiedRejetérejected
Export en masseLe graphe complet au format JSON Lines, actualisé chaque nuit.
GET /export/entities.jsonl