Zum Hauptinhalt springen
Dieses Beispiel demonstriert einen vollständigen Workflow unter Verwendung der APIs von Topsort für eine gesponserte Produktkampagne mit Kategorie-Targeting. Ersetzen Sie API-Schlüssel und IDs durch Ihre tatsächlichen Anmeldedaten und Werte. Schritte:
1

Katalog synchronisieren

Synchronisieren Sie Ihren Produktkatalog mit Topsort
2

Kampagne erstellen

Richten Sie eine gesponserte Produktkampagne ein
3

Auktionsanfragen senden

Fordern Sie Auktionsgewinner an
4

Ereignisse verfolgen

Melden Sie Impressionen, Klicks und Käufe
5

Bericht abrufen

Rufen Sie Kampagnen-Leistungsdaten ab
  • Verwenden Sie für die Verwaltung von Produkten, Kampagnen und Berichten einen Advanced API-Schlüssel (TSC_…). - Verwenden Sie für Auktionen und Ereignisse einen Marketplace API-Schlüssel (TSE_…).

1. Katalog synchronisieren

Ein Beispielprodukt example-product-coca-cola aus der Kategorie soft-drinks wird in diesem Beispiel verwendet. Denken Sie daran, Ihren Advanced API-Schlüssel zu verwenden.
const apikey = "TSC_...";

const body = {
  products: [
    {
      active: true,
      categories: ["soft-drinks"],
      id: "example-product-coca-cola",
      imageURL:
        "https://intl.cokestore.com/media/catalog/product/1/6/16181_squeeze-ko-can-maria-2.png",
      name: "Coca Cola Dose",
      price: "9.99",
      vendors: ["coca-cola"],
    },
  ],
};

try {
  const response = await fetch(
    "https://api.topsort.com/public/v1/catalog-search-service/catalogs/products",
    {
      method: "PUT",
      mode: "cors",
      headers: {
        Authorization: `Bearer ${apikey}`,
        "Content-Type": "application/json; charset=utf-8",
      },
      body: JSON.stringify(body),
    }
  );
  if (!response.ok) {
    console.error("unerwarteter Status: " + response.status);
  } else {
    console.log("Erfolgsstatus: " + response.status);
  }
} catch (error) {
  console.error(error);
}

2. Kampagne erstellen

In diesem Beispiel wird eine Kampagne erstellt, um das Produkt example-product-coca-cola zu bewerben, mit einem Keyword-Trigger (soft drink). Denken Sie daran, Ihren Advanced API-Schlüssel zu verwenden.
const apikey = "TSC_...";

const body = {
  bids: [
    {
      target: {
        type: "product",
        id: "example-product-coca-cola",
      },
      triggers: [
        {
          type: "keyword",
          value: {
            matchType: "exact",
            words: ["soft drink"],
          },
        },
      ],
    },
  ],
  budget: {
    type: "daily",
    amount: 10000,
  },
  campaignType: "autobidding",
  isActive: true,
  status: "approved",
  adFormat: "listing",
  name: "Eine Beispielkampagne",
};

try {
  const response = await fetch(
    "https://api.topsort.com/public/v1/campaign-service/campaigns?vendor_id=demo-vendor",
    {
      method: "POST",
      mode: "cors",
      headers: {
        Authorization: `Bearer ${apikey}`,
        "Content-Type": "application/json; charset=utf-8",
      },
      body: JSON.stringify(body),
    }
  );
  if (!response.ok) {
    console.error("unerwarteter Status: " + response.status);
  } else {
    console.log("Erfolgsstatus: " + response.status);
  }
} catch (error) {
  console.error(error);
}

3. Auktionsanfrage senden

In diesem Beispiel wird eine Auktionsanfrage erstellt, um Gewinner zurückzugeben, die durch den Suchbegriff “soft drink” ausgelöst wurden. Denken Sie daran, Ihren Marketplace API-Schlüssel zu verwenden.
const apikey = "TSE_...";

const body = {
  auctions: [
    {
      searchQuery: "soft drink",
      slots: 1,
      type: "listings",
    },
  ],
};

try {
  const response = await fetch("https://api.topsort.com/v2/auctions", {
    method: "POST",
    mode: "cors",
    headers: {
      Authorization: `Bearer ${apikey}`,
      "Content-Type": "application/json; charset=utf-8",
    },
    body: JSON.stringify(body),
  });
  if (!response.ok) {
    console.error("unerwarteter Status: " + response.status);
  } else {
    console.log("Erfolgsstatus: " + response.status);
  }
} catch (error) {
  console.error(error);
}

4. Ereignisverfolgung

In diesem Beispiel wird ein Klick auf ein beworbenes Produkt mit unserer API verfolgt. Die resolvedBidId des vom Auktionsaufruf zurückgegebenen Gewinners muss im Anfragekörper gesendet werden, um eine korrekte Verkaufszuordnung sicherzustellen. Denken Sie daran, Ihren Marketplace API-Schlüssel zu verwenden.
const apikey = "TSE_...";

const body = {
  clicks: [
    {
      id: "d0cf3f56-a719-4e02-9c88-625f965ae6e7",
      occurredAt: "2024-07-23T11:49:04+00:00",
      opaqueUserId: "71303ce0-de89-496d-8270-6434589615e2",
      resolvedBidId:
        "ChAGafmNzX5wy4sEaDnXi4iWEhABjxq1RG513IkbvRgIVcd6GhABjmiyW3t2Ur066CLC3jWVIgoKBjExMjYzNRABMPuVDw",
    },
  ],
};

try {
  const response = await fetch("https://api.topsort.com/v2/events", {
    method: "POST",
    mode: "cors",
    headers: {
      Authorization: `Bearer ${apikey}`,
      "Content-Type": "application/json; charset=utf-8",
    },
    body: JSON.stringify(body),
  });

  if (!response.ok) {
    console.error("unerwarteter Status: " + response.status);
  } else {
    console.log("Erfolgsstatus: " + response.status);
  }
} catch (error) {
  console.error(error);
}
Agustin - Integrations Team MemberAmelia - Integrations Team MemberBernardita - Integrations Team MemberBorumy - Integrations Team MemberFelipe - Integrations Team MemberGui - Integrations Team MemberJaviera - Integrations Team MemberLinn - Integrations Team MemberMarcio - Integrations Team MemberMateus - Integrations Team MemberMax - Integrations Team MemberRodrigo - Integrations Team Member

Brauchen Sie Hilfe bei Ihrer Topsort-Integration?

Sprechen Sie mit uns, dem Integrations-Engineering-Team.Erreichen Sie uns über Ihren dedizierten Nachrichtenkanal oder unter support@topsort.com.Falls Sie noch kein Kunde sind, buchen Sie eine Demo mit unserem Vertriebsteam.