Skip to main content
Le SDK JavaScript de Topsort est la bibliothèque cliente officielle pour s’intégrer avec les API d’enchères et de suivi d’événements de Topsort. Construit en TypeScript, ce SDK simplifie l’intégration, permettant la création d’un flux de bout en bout en quelques minutes.

Installation

Installez le paquet depuis npm et importez-le dans votre code :
Ou importez-le depuis un CDN dans un script de module :
Les exemples de cette page sont des modules ES : ils utilisent import et await de premier niveau, exécutez-les donc dans un <script type="module"> ou dans votre code bundlé.

Création d’une enchère

Signalement des événements

Signalez un render lorsque vous insérez un gagnant dans la page, et une impression lorsque ce gagnant devient visible pour l’acheteur. Envoyez le même opaqueUserId pour un acheteur dans chaque enchère et chaque événement, par exemple un identifiant que vous conservez dans un cookie ou dans votre session de connexion. Un nouvel identifiant par événement casse l’attribution.
Si la page charge également analytics.js, celle-ci signale déjà les renders, les impressions et les clics pour chaque élément portant data-ts-resolved-bid. Ne signalez pas ces événements une seconde fois avec le SDK.

Renders

Un render enregistre qu’une publicité sponsorisée a été insérée dans la page, qu’elle devienne visible ou non. Les renders concernent uniquement les publicités sponsorisées, c’est pourquoi resolvedBidId est obligatoire et il n’y a pas de champ entity.

Impressions

Une impression enregistre qu’une publicité ou un produit est devenu visible pour l’acheteur.

Clics

Un clic enregistre que l’acheteur a cliqué sur une publicité ou un produit.
Pour les résultats organiques, envoyez entity: { type: "product", id: "<product id>" } au lieu de resolvedBidId, dans les impressions comme dans les clics.

Achats

Un achat enregistre les produits achetés par l’acheteur. Topsort l’attribue aux publicités avec lesquelles l’acheteur a interagi.
Consultez la référence de l’API des événements pour la liste complète des champs d’événement.

Erreurs réessayables

reportEvent se résout avec retry: true pour les réponses 429 et 5xx. Les autres erreurs, comme une erreur 400 ou une défaillance réseau, rejettent la promesse : interceptez-les donc également :
Pour la documentation complète et des exemples de bout en bout, consultez le dépôt GitHub.