Webhooks

Abonnez un point de terminaison aux événements de la plateforme et vérifiez les livraisons signées.

Les webhooks sortants poussent les événements de la plateforme vers un endpoint que vous contrôlez, pour que des systèmes externes réagissent à ce qui se passe sur Gheima. Ils se gèrent via l’API.

Créer un webhook#

Envoyez une URL et les événements souhaités. Une liste d'événements vide ([]) abonne le webhook à tous les événements. Le secret de signature n'est affiché qu'une seule fois — conservez-le en lieu sûr.

Shell
curl -X POST https://gheima.ma/api/v1/webhooks \
  -H "Authorization: Bearer gh_xxxxx" -H "content-type: application/json" \
  -d '{"url":"https://example.com/hook","events":["DEPLOYMENT_CREATED"]}'

Événements#

  • DEPLOYMENT_CREATED — un déploiement a démarré (livré comme deployment.created).
  • SERVICE_CREATED / SERVICE_DELETED — un service a été créé ou supprimé (service.created / service.deleted).
  • DATABASE_CREATED — une base de données a été provisionnée (database.created).
  • PING — l'événement de test (ping).

Vérifier les livraisons#

Chaque livraison est un corps JSON { event, data, timestamp } avec un en-tête x-gheima-event et un en-tête x-gheima-signature (sha256=HMAC du corps brut avec votre secret). Vérifiez la signature avant de faire confiance à la charge utile. Envoyez un exemple de livraison à tout moment :

Shell
curl -X POST https://gheima.ma/api/v1/webhooks/<id>/test \
  -H "Authorization: Bearer gh_xxxxx"
Envoie un événement ping à votre endpoint.

Vos systèmes réagissent aux événements Gheima en temps réel, avec des charges signées vérifiables.