Skip to main content
Two endpoints power creator affiliate links: mint the links for a creator, and read that creator’s performance. Both authenticate with the publishable key only; no HMAC.
For the scenario (surfacing links in your creator dashboard, link semantics, geo guidance), see the Creator Links guide.

Authentication

Pass your publishable key in the X-API-Key header (pk_live_* for production, pk_test_* for development). Multi-app projects also send X-Platform: api. A test key mints links and returns stats, but clicks against a test-key link are not counted. Full model: overview’s Authentication section.

POST /creators/links

Mints (or fetches) the tracking links for one creator. Idempotent: the same creatorId always returns the same linkUrl per campaign, so it is safe to call on every dashboard load. Links are minted for the campaigns enabled for your app, in your configured campaign order (both controlled from the dashboard).

Request

Response

Each entry carries the same presentation fields as POST /offers/catalog (name, perk, badge, prices, the advertiser organization, and the creatives set), plus a payout block, categories, and the creator’s entry-level linkUrl. The one catalog field it drops is the per-creative clickUrl: for creator links the tracking link lives once at the entry level.

Example

GET /creators//stats

Reads a creator’s real-time performance: per-campaign aggregates, totals, and a chart-ready daily series.

Path parameters

Query parameters

Both date bounds are optional. Omit them for all-time stats, or pass a window to scope everything the endpoint returns: per-campaign aggregates, totals, and the daily series are all filtered to the range. A malformed date or a startDate later than endDate returns a 400.

Response

Which day a metric lands on. clicks count on the transaction’s created date. completions and earnings count on the completion (verification) date. So a click on the 1st that completes on the 3rd shows its click on the 1st and its completion plus earnings on the 3rd. All dates are UTC, and this is what the daily series and the startDate/endDate filter operate on.

Example

Status codes