Aller au contenu

SDKs serveur

Les SDKs serveur envoient des événements depuis votre backend avec la write key secrète de votre projet. Les événements envoyés ainsi sont des faits : la plateforme les marque source=server et verified=true, car détenir la clé secrète est l’authentification. C’est ce qui en fait le bon canal pour tout ce dont dépendent l’argent ou la messagerie — commandes, remboursements, changements d’abonnement — plutôt qu’un track('purchase') dans le navigateur que n’importe qui peut falsifier depuis la console.

Ils sont volontairement petits. Pas d’autocapture, pas de session replay, pas d’identité persistée : vous passez le distinct_id à chaque appel. Cinq langages, une spécification partagée — même comportement, même format de wire, mêmes test vectors : ce que vous apprenez dans l’un vaut dans les autres.

Langage Paquet Dépôt
PHP composer require kilden/kilden-php kilden-sdk-php
Node.js npm install @kilden-io/node kilden-sdk-node
Python pip install kilden kilden-sdk-python
Ruby gem install kilden --pre kilden-sdk-ruby
Go go get go.kilden.io/sdk kilden-sdk-go

Le cœur PHP alimente aussi kilden/laravel, qui ajoute à une app Laravel une facade, l’envoi par queue et une route POST /kilden/identity prête à l’emploi.

Les SDKs serveur prennent la clé secrète (sk_…), jamais la publique. Le constructeur rejette d’emblée une clé publique. L’inverse vaut aussi : la clé secrète ne doit jamais atteindre un navigateur — traitez-la comme le mot de passe de votre base de données. Le modèle complet est décrit dans niveaux de confiance.

  • Événementstrack, identify, alias, mis en lot en mémoire et livrés en arrière-plan avec retries, gzip et UUIDs idempotents. Vous appelez close() à l’arrêt ; le reste est automatique (sous PHP-FPM le shutdown hook flushe après l’envoi de la réponse).
  • Signature d’identitéIdentitySigner produit le JWT de courte durée qu’exige la vérification d’identité, en trois lignes, sans dépendance JWT. C’est la raison d’être de ces SDKs.
  • Feature flagsisEnabled / getFeatureFlag évalués par Kilden (/decide) avec un cache in-process de 30 secondes, un timeout strict et un default que vous contrôlez, pour que votre chemin de requête ne dépende jamais de nous.

Commencez par le quickstart : premier événement, identify et un jeton d’identité signé dans chaque langage.