KKreatoAI/Documentation API

Clés API

La gestion des clés est réservée à votre session connectée au dashboard — une clé API ne peut pas en créer d'autres.

Depuis le dashboard (recommandé)

Paramètres → Clés API : créez une clé (nom + durée de vie), copiez-la — elle n'est affichée qu'une seule fois — puis suivez son usage (dernière utilisation, expiration) et révoquez-la au besoin.

Endpoints

POST
/v1/api-keys

Créer une clé — la clé complète n'est renvoyée qu'ici

GET
/v1/api-keys

Lister vos clés (sans secret)

DELETE
/v1/api-keys/:id

Révoquer (immédiat, irréversible)

Créer une clé

curl -X POST https://api.kreatoai.com/v1/api-keys \
  -H "Authorization: Bearer <JWT_de_session>" \
  -H "Content-Type: application/json" \
  -d '{"name":"automatisation-tiktok","expiresInDays":90}'
// Réponse 201
{
  "id": "…",
  "name": "automatisation-tiktok",
  "keyPrefix": "sk-kre-v1-3f9a02b1",
  "scopes": ["media:write", "publish:tiktok"],
  "expiresAt": "2026-10-16T00:00:00.000Z",
  "key": "sk-kre-v1-…"   // ⚠️ affichée une seule fois
}

expiresInDays : 30, 90 (défaut si omis), 365 ou null (sans expiration). scopes est optionnel (tous par défaut) : media:write (héberger un média), publish:posts (publier sur plusieurs réseaux), publish:tiktok (publication TikTok dédiée) et accounts:read (lister les comptes connectés).

Lister

curl https://api.kreatoai.com/v1/api-keys \
  -H "Authorization: Bearer <JWT_de_session>"
// Réponse 200
{ "items": [ { "id": "…", "name": "…", "keyPrefix": "sk-kre-v1-…", "lastUsedAt": "…", "expiresAt": "…", "revokedAt": null, … } ] }

Révoquer

curl -X DELETE https://api.kreatoai.com/v1/api-keys/<id> \
  -H "Authorization: Bearer <JWT_de_session>"
// Réponse 200
{ "ok": true }

Effet immédiat : toute requête portant la clé révoquée reçoit 401 api_key_revoked.