Fansly APIFansly API
Guide des webhooks Fansly : des événements en temps réel sans polling

Guide des webhooks Fansly : des événements en temps réel sans polling

Par Anna Krejcova

Résumé de l'article

Comment fonctionnent les webhooks Fansly et comment les configurer ?

  • Les webhooks Fansly envoient les événements à votre serveur en temps réel : chaque message, vente, abonnement, pourboire, like de publication et changement de statut de compte.
  • Les webhooks coûtent 1 crédit pour 100 événements, contre des milliers de crédits par jour pour le polling, ce qui les rend 100 à 1000 fois moins chers à grande échelle.
  • La configuration prend 5 minutes : enregistrez l'URL d'un endpoint, copiez le secret de signature, vérifiez les signatures HMAC-SHA256 et réagissez aux événements dès qu'ils se produisent.
“Les webhooks font toute la différence entre un scraper qui casse et un système de production qui passe à l'échelle. Un crédit pour 100 événements : il n'y a aucune raison de s'en priver.”
— Anna Krejcova, Rédactrice, Fansly API

Définitions clés

Webhook
Un callback HTTP que Fansly envoie à votre serveur dès qu'un événement se produit. C'est l'inverse du polling : vous ne demandez rien, la plateforme vous prévient.
Signature HMAC-SHA256
Un hachage cryptographique qui prouve qu'un webhook provient bien de Fansly et n'a pas été modifié en transit. Vérifiez-la avant de traiter chaque livraison.
Clé d'idempotence
Un identifiant unique attaché à chaque livraison de webhook. Utilisez-le pour dédoublonner en toute sécurité les événements renvoyés, afin qu'un même paiement ne soit pas crédité deux fois.

Si votre intégration Fansly interroge l'API toutes les minutes pour vérifier les nouveaux messages, ventes ou abonnements, vous brûlez des crédits, vous ajoutez de la latence et vous manquez des événements entre deux requêtes. Les webhooks Fansly inversent le modèle : chaque événement sur Fansly est envoyé à votre serveur au moment où il se produit, avec une signature cryptographique, des relances automatiques et un contrat d'idempotence intégré pour dédoublonner en toute sécurité.

Ce guide présente les événements qui déclenchent des webhooks, la façon de les configurer en moins de cinq minutes, la manière de les traiter sans risque en production, et les cas d'usage en agence qui justifient d'abandonner le polling.

Pourquoi les webhooks battent le polling sur Fansly

Le polling a l'air inoffensif : une tâche cron qui interroge l'API Fansly toutes les minutes pour demander « du nouveau ? ». En réalité, il pose trois problèmes coûteux :

  1. Le coût : chaque requête consomme des crédits, qu'il y ait eu de nouveaux événements ou non. Un polling « toutes les minutes » sur 20 comptes de créateurs consomme 28 800 appels par jour. Les webhooks offrant la même couverture ne coûtent qu'une fraction de ce montant.
  2. La latence : entre deux requêtes, les événements attendent sur la plateforme. Un pourboire de whale arrive à 9:00:15 ; votre scraper le remarque à 9:01:00. C'est dans ces 45 secondes d'écart que se referment les fenêtres de relance des chatteurs.
  3. La fiabilité : le polling est en course permanente contre les limites de requêtes. Les livraisons de webhooks sont mises en file d'attente par Fansly et relancées jusqu'à ce que votre serveur en accuse réception.

Les webhooks suppriment ces trois problèmes. Un événement = une livraison HTTP = un crédit pour 100 événements.

Types d'événements des webhooks Fansly

Chaque événement significatif sur un compte Fansly connecté déclenche un webhook. Les plus courants :

Événement Se déclenche quand
message.received Un fan envoie un message privé à un créateur
message.sent Le créateur envoie un message privé (via l'API ou la plateforme)
sale.completed Un fan finalise un achat (PPV, pourboire, abonnement)
subscription.created Un fan s'abonne pour la première fois
subscription.renewed L'abonnement d'un fan se renouvelle automatiquement
subscription.expired L'abonnement d'un fan prend fin
tip.received Un fan envoie un pourboire
post.liked Un fan aime une publication
typing.started Un fan commence à écrire dans un chat
account.status_changed Un compte connecté change d'état

La liste complète est visible dans le tableau de bord dès que vous enregistrez un endpoint. De nouveaux événements sont ajoutés régulièrement sans casser les handlers existants.

Comment configurer les webhooks Fansly en 5 minutes

  1. Ouvrez le tableau de bord Fansly API : allez dans la section Webhooks
  2. Ajoutez un endpoint : collez l'URL de votre serveur (HTTPS uniquement : Fansly ne livre pas en HTTP)
  3. Choisissez les événements auxquels vous abonner : commencez par message.received, sale.completed, subscription.renewed et subscription.expired. Élargissez ensuite.
  4. Copiez le secret de signature : stockez-le dans votre environnement sous le nom FANSLY_WEBHOOK_SECRET
  5. Testez depuis le tableau de bord : Fansly déclenche un événement de test pour que vous puissiez vérifier que votre serveur l'accepte et répond 200
  6. Passez en production : basculez l'endpoint sur Active

C'est tout. Votre serveur commence à recevoir les événements au moment où ils se produisent.

Vérifier les signatures des webhooks Fansly

Chaque livraison inclut un en-tête X-Fansly-Signature. Vérifiez-le avant de traiter la moindre charge utile : sinon, un attaquant pourrait forger de faux événements.

import { createHmac } from 'crypto'
 
function verifyWebhook(rawBody, signatureHeader, secret) {
  const expected = createHmac('sha256', secret)
    .update(rawBody)
    .digest('hex')
  return signatureHeader === expected
}
 
// Dans votre handler :
if (!verifyWebhook(req.rawBody, req.headers['x-fansly-signature'], process.env.FANSLY_WEBHOOK_SECRET)) {
  return res.status(401).send('invalid signature')
}

Notez l'utilisation de rawBody : vous devez hacher le corps de la requête avant le parsing JSON ou toute modification par un middleware. La plupart des frameworks web proposent un mode raw-body qu'il faut activer.

Gérer sans risque les renvois de webhooks Fansly

Fansly relance toute livraison qui ne renvoie pas une réponse 2xx, avec un backoff exponentiel. Votre serveur peut recevoir le même événement 2 à 5 fois quand le réseau est instable.

Dédoublonnez à l'aide de la clé d'idempotence présente sur chaque événement :

const seen = new Set() // utilisez Redis ou une base de données pour les déploiements multi-instances
 
async function handleWebhook(event) {
  if (seen.has(event.idempotencyKey)) {
    return // déjà traité, on ignore
  }
  seen.add(event.idempotencyKey)
  await processEvent(event) // la logique métier peut maintenant s'exécuter sans risque
}

Pour les faibles volumes (moins de 10k événements par jour et par serveur), un Set en mémoire suffit. En production avec plusieurs workers, stockez les clés dans Redis avec un TTL de 24 heures.

Cas d'usage en agence : ce que les webhooks permettent vraiment

Les webhooks ne sont pas un simple confort pour les développeurs. Ils sont le socle de toutes les automatisations génératrices de revenus d'une agence.

Alertes whale en temps réel → captez les pourboires en quelques minutes

Abonnez-vous à tip.received, filtrez les montants ≥ $100 et envoyez-les dans un canal Slack ou sur le Telegram des chatteurs. Résultat : les chatteurs relancent le fan pendant qu'il est encore dans la conversation, et non le lendemain matin quand l'occasion est passée.

Séquences de bienvenue → activez les nouveaux abonnés dès la première heure

Abonnez-vous à subscription.created. Attendez 1 heure. Envoyez un message de bienvenue personnalisé via l'API de messagerie. Attendez 24 heures. Relancez avec un PPV. Résultat : un revenu de première semaine 3 à 5 fois supérieur par nouvel abonné, par rapport à l'attente d'une prise de contact manuelle par un chatteur.

Reconquête après churn → récupérez 15 à 25 % des abonnés expirés

Abonnez-vous à subscription.expired. Attendez 7 jours. Envoyez un message privé personnalisé avec un code de réduction issu de l'endpoint Promotions et un lien de tracking. Résultat : des milliers de dollars de MRR récupérés grâce à un workflow qui tourne tout seul.

Routage des chatteurs → la bonne personne sur le bon fan

Abonnez-vous à message.received. Récupérez le niveau de dépenses du fan depuis l'endpoint Fans. Envoyez les fans à forte LTV aux chatteurs seniors, les nouveaux fans aux chatteurs chargés de l'accueil et les fans inactifs aux spécialistes de la rétention. Résultat : chaque fan reçoit le bon niveau d'attention, sans tri manuel.

Tableaux de bord de revenus en temps réel → la finance arrête de demander

Abonnez-vous à sale.completed et subscription.renewed. Envoyez le flux vers BigQuery, Snowflake ou une Google Sheet via n8n / Zapier / Make.com. Résultat : l'équipe finance voit les revenus arriver dans son tableau de bord en quelques secondes, et non au rapprochement de fin de mois.

Conformité et surveillance du contenu → repérez les problèmes avant qu'ils ne s'aggravent

Abonnez-vous à message.received. Faites passer le texte dans un classifieur de modération (OpenAI Moderation API, Perspective API ou votre propre modèle). Signalez les messages problématiques et transmettez-les aux opérations. Résultat : un risque réduit pour la sécurité des comptes et des heures de relecture manuelle supprimées.

Conseils de production pour les webhooks Fansly

  • Répondez 200 rapidement. Accusez réception, puis mettez l'événement en file d'attente pour un traitement asynchrone. Les handlers synchrones trop longs provoquent des timeouts et déclenchent des relances.
  • Journalisez chaque livraison. Même avec des clés d'idempotence, conservez un journal de la charge utile et de la réponse pour l'audit et le débogage. Le tableau de bord dispose d'une page Webhook Logs qui montre la vue côté Fansly.
  • Testez les scénarios d'échec. Simulez des requêtes de base de données lentes, des pannes d'API tierces et des défaillances de stockage. Votre handler ne doit jamais planter à cause d'un seul événement défectueux.
  • Utilisez HTTPS avec des certificats valides. Fansly ne livre pas aux endpoints HTTP ni aux certificats TLS invalides. Mettez en place Let's Encrypt ou AWS ACM si ce n'est pas déjà fait.
  • Surveillez le tableau de bord. La page Webhook Logs affiche chaque tentative de livraison, le nombre de relances et le statut final. Configurez une alerte quand le taux d'échec dépasse 1 % sur une fenêtre de 5 minutes.

Tarifs des webhooks Fansly

Les livraisons de webhooks coûtent 1 crédit pour 100 événements, soit généralement 100 à 1000 fois moins cher qu'une couverture équivalente par polling.

Un compte de créateur avec une forte activité de fans (plus de 5 000 événements par jour entre messages, likes, pourboires et abonnements) coûte environ 50 crédits par jour en livraisons de webhooks. La même couverture avec un polling toutes les minutes consommerait 1 440 appels par jour au coût standard en crédits.

Offres et crédits inclus :

  • Basic : $69/mois : 20 000 crédits, 1 compte, accès complet aux webhooks
  • Pro : $299/mois : 100 000 crédits, 5 comptes, accès complet aux webhooks
  • Enterprise : plus de 100 comptes : tarification dynamique à partir de $11,60 par compte, crédits sur mesure

Les webhooks sont inclus dans toutes les offres payantes : aucune offre premium n'est nécessaire.

Consultez la page de tarifs complète pour les crédits inclus et les tarifs de dépassement.

Questions fréquentes sur les webhooks Fansly

Quelle est la différence entre le polling et les webhooks Fansly ? Avec le polling, votre serveur demande à l'API Fansly toutes les minutes (ou toutes les secondes) s'il s'est passé quelque chose de nouveau. Avec les webhooks, Fansly prévient votre serveur au moment même où cela se produit. À grande échelle, les webhooks sont 100 à 1000 fois moins chers, plus rapides et plus fiables : il n'y a pas de situation de concurrence dans laquelle vous manquez des événements entre deux requêtes.

Les webhooks Fansly sont-ils assez fiables pour la production ? Oui. Chaque livraison inclut une signature HMAC-SHA256 pour la vérification, une clé d'idempotence pour des renvois sans risque et une relance automatique avec backoff exponentiel en cas d'échec. Nous avons traité plus de 150 millions d'événements avec des garanties de livraison conformes aux standards des entreprises.

Quels événements Fansly déclenchent des webhooks ? Les messages reçus et envoyés, les ventes finalisées, les abonnements créés, renouvelés et expirés, les pourboires reçus, les PPV achetés, les interactions avec les publications, les indicateurs de saisie, les changements de statut de compte, et plus encore. La liste complète des événements est disponible dans le tableau de bord dès que vous enregistrez un endpoint.

Comment gérer sans risque les renvois de webhooks Fansly ? Chaque livraison de webhook inclut une clé d'idempotence unique. Stockez les clés déjà traitées (dans Redis, une base de données, ou même un set en mémoire pour les faibles volumes) et ignorez tout doublon. Les livraisons en échec sont relancées avec un backoff exponentiel jusqu'à ce qu'elles réussissent ou expirent.

Puis-je utiliser les webhooks Fansly sans écrire de code ? Oui. n8n, Zapier et Make.com proposent tous des nodes de déclenchement par webhook. Collez l'URL dans le tableau de bord Fansly API et votre workflow no-code démarre dès que l'événement se déclenche : pas de serveur, pas de code, pas d'infrastructure à maintenir.

Ce qui a changé avec la version de juin 2025

Ce guide reflète la version de juin 2025 de Fansly API, qui a introduit :

  • Des webhooks de production : la livraison d'événements en temps réel pour les messages, les ventes, les abonnements, les pourboires, les interactions avec les publications, les indicateurs de saisie et les changements d'état des comptes
  • L'intégration Make.com : la première plateforme no-code couvrant entièrement Fansly API, avec des scénarios préconfigurés pour la synchronisation des transactions et le suivi des liens
  • Des endpoints de gestion des médias : téléversement de photos, vidéos et fichiers audio, organisation des médias du coffre-fort, création de listes dans le coffre-fort
  • La gestion des publications : programmation de publications avec labels, médias, sondages (classiques et quiz), objectifs de collecte de fonds et dates d'expiration
  • Une messagerie avancée : PPV, pièces jointes multimédias, tags de créateurs
  • La mise en forme du texte : gras, italique, couleur et taille dans les publications et les messages

Suivez @onlyfansapi_updates sur Telegram pour les dernières nouveautés.


Prêt à abandonner le polling ? Inscrivez-vous gratuitement : 100 premiers crédits inclus, sans carte bancaire.

Des questions ? Contactez-nous par e-mail ou sur Telegram.

FAQ

Quelle est la différence entre le polling et les webhooks Fansly ?

Avec le polling, votre serveur demande à l'API Fansly toutes les minutes (ou toutes les secondes) s'il s'est passé quelque chose de nouveau. Avec les webhooks, Fansly prévient votre serveur au moment même où cela se produit. À grande échelle, les webhooks sont 100 à 1000 fois moins chers, plus rapides et plus fiables : il n'y a pas de situation de concurrence dans laquelle vous manquez des événements entre deux requêtes.

Les webhooks Fansly sont-ils assez fiables pour la production ?

Oui. Chaque livraison inclut une signature HMAC-SHA256 pour la vérification, une clé d'idempotence pour des renvois sans risque et une relance automatique avec backoff exponentiel en cas d'échec. Nous avons traité plus de 150 millions d'événements avec des garanties de livraison conformes aux standards des entreprises.

Quels événements Fansly déclenchent des webhooks ?

Les messages reçus et envoyés, les ventes finalisées, les abonnements créés, renouvelés et expirés, les pourboires reçus, les PPV achetés, les interactions avec les publications, les indicateurs de saisie, les changements de statut de compte, et plus encore. La liste complète des événements est disponible dans le tableau de bord dès que vous enregistrez un endpoint.

Comment gérer sans risque les renvois de webhooks Fansly ?

Chaque livraison de webhook inclut une clé d'idempotence unique. Stockez les clés déjà traitées (dans Redis, une base de données, ou même un set en mémoire pour les faibles volumes) et ignorez tout doublon. Les livraisons en échec sont relancées avec un backoff exponentiel jusqu'à ce qu'elles réussissent ou expirent.

Puis-je utiliser les webhooks Fansly sans écrire de code ?

Oui. n8n, Zapier et Make.com proposent tous des nodes de déclenchement par webhook. Collez l'URL dans le tableau de bord Fansly API et votre workflow no-code démarre dès que l'événement se déclenche : pas de serveur, pas de code, pas d'infrastructure à maintenir.

Prêt à développer sur Fansly ?

Commencer gratuitement