Saltar para o conteúdo principal
O SDK JavaScript do Topsort é a biblioteca cliente oficial para integrar com as APIs de leilão e rastreamento de eventos do Topsort. Construído em TypeScript, este SDK simplifica a integração, permitindo a criação de um fluxo completo em minutos.

Instalação

<script
  async
  type="module"
  src="https://unpkg.com/@topsort/sdk@latest/dist/index.mjs"
></script>
<script>
  window.TS = {
    token: "TSE_XXXXXXXXXXXX", // Substitua pela sua chave de API do Topsort
  };
</script>

Criando um Leilão

import { TopsortClient } from "https://unpkg.com/@topsort/sdk@latest/dist/index.mjs";

const topsortClient = new TopsortClient({ apiKey: window.TS.token });

const auctionDetails = {
  auctions: [
    {
      type: "listings",
      slots: 3,
      searchQuery: "inverno",
    },
    {
      type: "banners",
      slots: 1,
      device: "desktop",
      slotId: "slot123",
    },
  ],
};

topsortClient
  .createAuction(auctionDetails)
  .then((result) => console.log("Resultado do Leilão", result))
  .catch((error) => console.error("Erro no Leilão", error));

Reportando Eventos

const winners = auctionResult.results.flatMap((result) => result.winners || []);

if (winners.length > 0) {
  const impressions = winners.map((winner) => ({
    resolvedBidId: winner.resolvedBidId,
    id: crypto.randomUUID(),
    occurredAt: new Date().toISOString(),
    opaqueUserId: crypto.randomUUID(),
    placement: { path: "/search/inverno" },
  }));

  topsortClient
    .reportEvent({ impressions })
    .then((result) => console.log("Resultado do Evento", result))
    .catch((error) => console.error("Erro no Evento", error));
}

Erros com Retry

A função reportEvent retorna retry: true para erros 429 ou 5xx:
topsortClient.reportEvent(eventPayload).then((result) => {
  if (result.retry) {
    console.warn("Erro transitório. Tente novamente a chamada.");
  }
});
Para documentação completa e exemplos completos, consulte o repositório GitHub.

Precisa de ajuda com sua integração Topsort?

Fale conosco, a equipe de engenharia de integrações.Entre em contato através do seu canal de mensagens dedicado ou em support@topsort.com.Se você ainda não é cliente, agende uma demo com nossa equipe de vendas.