Authentification#
Chaque requête API doit comporter une clé API valide. Les clés sont émises par utilisateur ; une requête sans clé reçoit 401, et une requête avec une clé incorrecte ou révoquée est rejetée.
L’API est une fonctionnalité auto-hébergée, donc les clés sont émises sur votre propre instance, pas sur le service hébergé seurch.eu.
Obtenir une clé#
Sur votre instance :
- Dans l’interface web : Paramètres → Clés API, créez une clé (nommez-la optionnellement). La clé complète est affichée une seule fois ; copiez-la immédiatement.
- Depuis la ligne de commande (administrateurs) :
python manage.py create_api_key <nom_utilisateur> --name "mon script", voir Gestion des clés API.
Une clé ressemble à :
seurch_sk_<préfixe>.<secret>Seul un préfixe et un hachage du secret sont stockés côté serveur, de sorte qu’une clé perdue ne peut pas être récupérée, uniquement révoquée et remplacée.
Envoyer une clé#
Envoyez la clé dans l’en-tête Authorization. Api-Key est le schéma documenté ; Bearer est accepté comme synonyme.
curl -H "Authorization: Api-Key seurch_sk_<préfixe>.<secret>" \
"https://search.example.com/api/v1/web/?q=climat"Un en-tête X-Api-Key est également accepté, utile là où vous ne pouvez pas définir Authorization :
curl -H "X-Api-Key: seurch_sk_<préfixe>.<secret>" \
"https://search.example.com/api/v1/web/?q=climat"Python#
import requests
BASE = "https://search.example.com/api/v1"
HEADERS = {"Authorization": "Api-Key seurch_sk_<préfixe>.<secret>"}
r = requests.get(f"{BASE}/web/", params={"q": "climat", "lang": "fr"}, headers=HEADERS)
r.raise_for_status()
print(r.json()["results"])Vérifier une clé#
Appelez le point de terminaison key/ pour confirmer qu’une clé fonctionne et voir ses métadonnées (ce point de terminaison ne compte pas dans votre usage) :
curl -H "Authorization: Api-Key seurch_sk_<préfixe>.<secret>" \
"https://search.example.com/api/v1/key/"{
"name": "mon script",
"prefix": "seurch_sk_1a2b3c4d",
"created_at": "2026-06-01T10:00:00Z",
"last_used_at": "2026-06-30T09:15:00Z",
"revoked": false
}Gardez les clés secrètes ; quiconque en possède une peut rechercher à votre place et consommer votre limite de débit. Le préfixe de marque
seurch_sk_permet aux scanners de secrets de détecter une clé compromise. Révoquez une clé compromise et émettez-en une nouvelle.