Adjoin
AnmeldenApp monetarisieren
← Dokumentation

SDK-Referenz

Ein Skript, fünf Aufrufe. Keine Cookies, keine Kennungen, und eine fehlgeschlagene Anzeige blockiert nie Ihre Seite.

Laden

Setzen Sie einen Container an die Stelle der Anzeige und laden Sie das Skript einmal. Die Container-id ist adjoin- plus die Placement-ID.

<!-- one script per page; data-placement renders that slot automatically -->
<div id="adjoin-plc_ab12" data-format="card"></div>
<script async src="https://cdn.adjoin.dev/v1.js" data-placement="plc_ab12"></script>
data-placement
Rendert dieses Placement, sobald die Seite bereit ist.
data-format
Am Container: banner, card, inline_native, sidebar oder newsletter. Standard card.
data-tenant
Partner-Slug, wenn Sie über einen Partner kamen (siehe Partner-Integration).
data-analytics="off"
Schaltet die kostenlose Seitenaufruf-Analyse ab.

Größen: banner 728×90 · card 320×250 · inline_native 600×120 · sidebar 300×250 · newsletter 600×200

adjoin.render(options)

Rendert ein Placement in seinen Container. Die Höhe wird vorab reserviert, es gibt also keinen Layout-Sprung, und die Anzeige lebt im Shadow DOM, sodass sich Ihr und unser CSS nie treffen. Passt nichts, klappt der Slot auf Höhe null zusammen.

adjoin.render({
  placement: 'plc_cd34',        // required — the id from your dashboard
  format: 'sidebar',            // banner | card | inline_native | sidebar | newsletter
  onEmpty: () => showMyOwnPromo()  // optional — called when the slot collapses
});

adjoin.trigger(moment, options?)

Markiert einen Moment in Ihrer App — signup_complete, empty_state, quota_hit usw. Er wird auch ohne Placement erfasst, Ihr Funnel zählt also weiter, wenn Sie Anzeigen abschalten.

// record a moment; with a placement it also renders an ad there
adjoin.trigger('signup_complete', { placement: 'plc_ab12' });

adjoin.pageview(path?)

Kostenlose Analyse. Nur die ersten zwei Pfadsegmente werden gesendet, IDs darin durch :id ersetzt.

// sent automatically on load; call it yourself on client-side route changes
adjoin.pageview('/pricing');

<!-- or turn analytics off -->
<script async src="https://cdn.adjoin.dev/v1.js" data-analytics="off"></script>

adjoin.segment(label, on?)

Zielgruppen-Labels. Versehen Sie die aktuelle Sitzung mit einem beschreibenden Wort — Tarif, Rolle, Phase. Werbetreibende können ein Label ansprechen oder ausschließen, gelabeltes Inventar erzielt also mehr. Das Label liegt nur in diesem Tab (sessionStorage) und wird nur mit den Anzeigenanfragen und Seitenaufrufen dieser Website gesendet; es folgt Besuchern nie auf andere Websites. Gespeichert werden nur Seitenaufruf-Summen pro Label. Format: Kleinbuchstaben, Ziffern, _ : -, bis 32 Zeichen, keine Folgen von 6+ Ziffern. Bis zu 5 pro Sitzung. Ein Label wird ansprechbar, sobald es netzwerkweit 100 Seitenaufrufe in 7 Tagen erreicht.

// label this visitor's session — plain words, never ids or emails
adjoin.segment('plan:free');
adjoin.segment('role:developer');
adjoin.segment('plan:free', false);   // remove one
adjoin.segment(null);                 // remove all

// suggested labels: plan:free · plan:paid · plan:trial · role:developer · role:designer
//                   role:founder · stage:onboarding · stage:active · intent:upgrade

adjoin.convert(valueUsd?, orderId?)

Für Werbetreibende mit CPA oder Affiliate. Rufen Sie es nach einem Kauf auf Ihrer eigenen Seite auf. Das Klick-Token wird nur in diesem Tab gehalten (sessionStorage) und verbindet Conversions innerhalb desselben Besuchs. Mit einer Bestell-ID wird dieselbe Bestellung nie doppelt berechnet, und Sie können sie über diese ID erstatten. Für Conversions Tage später nutzen Sie Server-zu-Server (REST-API).

// on your own site, after checkout
adjoin.convert(29.00, 'order_1234');   // value in USD, your order id

Datenschutz

Keine Cookies, kein localStorage, kein Fingerprinting. Besucher werden mit einem täglich wechselnden Hash gezählt, dieselbe Person lässt sich also nicht über Tage hinweg verknüpfen.

Fragen: [email protected]