v1

API Publi-Score v1

Intégrez les scores de fiabilité méthodologique dans vos outils, scripts et extensions.

Limites d'accès (clé obligatoire)

Premium

100 req/jour

Premium+

500 req/jour

Lab

2 000 req/jour

Institution / Consortium

10 000 req/jour / contractuel

Headers de réponse : X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset

Authentification par clé API

Passez votre clé dans le header X-Api-Key ou en Authorization: Bearer.

curl -H "X-Api-Key: ps_live_votre_cle" \
  https://publi-score.ai/api/v1/score/32678530

Créez votre clé depuis /account/api-keys (connexion requise). Max 10 clés actives.

Endpoints

GET
/api/v1/score/{pmid}

Score condensé d'un article (score, palier, label, fiabilité)

Exemple : /api/v1/score/32678530

GET
/api/v1/article/{pmid}

Métadonnées complètes + score détaillé par catégorie

Exemple : /api/v1/article/32678530

GET
/api/v1/search?q={query}&tier={A-E}&cluster={slug}

Recherche dans le catalogue (titre, auteur, PMID, MeSH) avec filtres tier et cluster

Exemple : /api/v1/search?q=hydroxychloroquine&tier=A

GET
/api/v1/clusters

Liste des clusters MeSH avec nombre d'articles

Exemple : /api/v1/clusters

GET
/api/v1/cluster/{slug}

Articles d'un cluster MeSH (paginés)

Exemple : /api/v1/cluster/covid-19

GET
/api/v1/scores?pmids={pmids}

Scores batch — jusqu'à 50 PMIDs en une requête (extension navigateur)

Exemple : /api/v1/scores?pmids=32678530,32205204

Gestion des clés API

GET
/api/v1/keys

Lister vos clés API actives

POST
/api/v1/keys

Générer une nouvelle clé API

DELETE
/api/v1/keys/{id}

Révoquer une clé API

Ces endpoints requièrent une session authentifiée (cookie Supabase).

Exemple de réponse — /api/v1/score/{pmid}

{
  "pmid": "32678530",
  "doi": "10.1056/NEJMoa2034577",
  "score": 89,
  "tier": "A",
  "label": "Fiable",
  "reliability": "complet",
  "mode": "pdf_ai",
  "badge_url": "https://publi-score.ai/og/article/32678530",
  "url": "https://publi-score.ai/score/32678530"
}

Schéma OpenAPI 3.0

Spécification complète disponible pour Postman, Insomnia ou génération de client.

/api/v1/openapi.json

CORS & Extensions navigateur

L'API accepte les requêtes cross-origin depuis n'importe quel domaine — y compris les extensions Chrome/Firefox. Access-Control-Allow-Origin: *