Aller au contenu

Authentification

L’API Sangho utilise des clés API pour authentifier les requêtes. Chaque App dispose d’une clé publique et d’une clé secrète.

Types de clés

TypePréfixe (live)Préfixe (test)Usage
Clé Publiqueapk_live_apk_test_Initialisation SDK côté client uniquement
Clé Secrètesk_live_sk_test_Requêtes serveur uniquement — ne jamais exposer

Utilisation en header HTTP

Ajoutez votre clé secrète dans le header Authorization de chaque requête, préfixée par Bearer.

Sandbox vs. Production

Les clés sk_test_ pointent vers la base Sandbox — aucune transaction réelle. Les clés sk_live_ déclenchent des transactions réelles.

Important

Ne jamais utiliser une clé sk_live_ en frontend ou dans du code JavaScript côté client. Elle pourrait être exposée et compromise.

Rotation de clés

  • 1. Créez une nouvelle clé depuis Dashboard → Paramètres → Clés API
  • 2. Mettez à jour votre configuration serveur avec la nouvelle clé
  • 3. Révoquez l’ancienne clé — elle est immédiatement invalidée
  • 4. Toutes les requêtes avec l’ancienne clé retourneront 401

Idempotency Key

Pour les requêtes POST critiques (PaymentIntent, Refund), ajoutez un header Idempotency-Key unique. Si vous re-soumettez la même requête dans les 24h, Sangho retourne la même réponse sans créer de doublon.

Header d’authentification

http
Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx
Content-Type: application/json

Avec Idempotency Key

http
Authorization: Bearer sk_live_xxxx
Content-Type: application/json
Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000

Exemple d’appel authentifié

bash
curl https://api.sangho.com/v1/apps/ \
  -H "Authorization: Bearer sk_live_xxxx" \
  -H "Content-Type: application/json"

Réponse — Clé invalide (401)

Response Réponse
json
{
  "error": {
    "code": "SANGHO_INVALID_API_KEY",
    "message": "Aucune clé API valide fournie.",
    "status": 401,
    "doc_url": "https://docs.sangho.ga/api/errors#SANGHO_INVALID_API_KEY"
  }
}
Note

Récupérez vos clés depuis Dashboard → Développeurs → Clés API. Les clés test sont visibles dès l’inscription, sans KYC requis.