The Superhive Affiliate API
You can now pull your affiliate data out of Superhive programmatically, instead of logging into the dashboard and exporting by hand. This page explains what that means, what you get, and how to start.
Part 1: What this is (read this first)
Basic
The affiliate dashboard is your data made for you to look at. You log in and export a CSV when you want your numbers.
An API is the same data made for software. Your own program, or a tool you use, sends a request to a web address and gets back your data in a structured format it can work with automatically. Nobody has to log in or export anything by hand.
Who this is for
This is a developer feature. Getting value out of it means writing a bit of code or using a tool that can talk to an API.
What you can get
Five things, matching what you already see in the dashboard:
- Your visits. The clicks you've sent to Superhive through your referral links and whether each one turned into a sale.
- Your referrals. The commissions you've earned, with their status: unpaid, paid, or revoked (revoked means a sale was refunded and the commission was pulled back).
- Your partnerships. Which creators you have an affiliate relationship with, your commission rate with each, and whether it's active.
- What you can promote. Every product you're allowed to promote across your partnerships, with your rate for each.
- Your coupons. The discount codes creators have granted you, including the discount, how many times each has been used, and whether it's still valid.
What it can't do
It only reads. Every part of this API reads your data. There is nothing you can create, change, or delete through it. You can't break anything, and you can't touch anyone else's data.
It's yours only. You see your own visits, referrals, partnerships, and coupons. Nothing else.
Part 2: Developer reference
Base URL
https://superhivemarket.com/api/v1
Every endpoint below hangs off that. The full reference with request and response schemas lives at the API docs.
Authentication
Every request needs your personal token in a custom header. There is no OAuth or login flow.
Get your token:
- Log into your Superhive account
- Go to Account → Auth Token
- Click Generate Token, or copy the one already there
Send it on every request:
SH-Auth-Token: YOUR_TOKEN_HERE
Treat the token like a password. Anyone holding it can read everything your account can read. You can always regenerate it from the same account page, and the old one stops working.
The endpoints
All of them are GET. All of them need theSH-Auth-Tokenheader.
| Endpoint | What it returns | Filters |
|---|---|---|
GET /affiliate/visits |
Your tracked visits, each flagged as converted or not | start_date,end_date,converted |
GET /affiliate/visits/{guid} |
One visit by its GUID | — |
GET /affiliate/referrals |
Commissions earned from converted visits | start_date,end_date,status,referral_type |
GET /affiliate/referrals/{id} |
One referral by ID | — |
GET /affiliate/creators |
Your creator partnerships | active |
GET /affiliate/creators/{slug} |
One partnership plus its promotable products | — |
GET /affiliate/products |
Everything you can promote, across active partnerships | — |
GET /affiliate/products/{slug} |
One promotable product plus your rate for it | — |
GET /affiliate/coupons |
Coupons creators have granted you | — |
Filter values worth knowing:
convertedandactivetake the stringstrueorfalse.status(on referrals) isunpaid,paid, orrevoked.referral_type(on referrals) issuperhive,self_referral, orcreator_ally.start_date/end_dateare dates like2026-01-01. Leave them off and you get the full range.
Pagination
Every list endpoint pages the same way.
pagesets which page you want (default1).per_pagesets how many results per page (default20, max100).
Each list response includes a paginationobject. It carriesnext_pageandnext_url, so your code can walk through pages untilnext_pagecomes back empty rather than guessing where the data ends.
A worked example
Say you want every unpaid commission you've earned in one shot:
curl -H "SH-Auth-Token: YOUR_TOKEN_HERE" "https://superhivemarket.com/api/v1/affiliate/referrals?status=unpaid&per_page=100"
What comes back (values below are illustrative, not real):
{"referrals":[{"id": 48213,"status":"unpaid","referral_type": "creator_ally","created_at": "2026-06-14T09:32:00Z","amount": 1250,"visit_guid":"a1b2c3d4-...","order":{"guid": "ord_9f8e7d..." },"product":{ "title": "Hard Ops", "slug": "hard-ops" },"creator": { "display_name": "masterxeon1001", "rate": 25 }}],"pagination": {"current_page": 1,"per_page": 100, "total_pages": 1,"total_entries": 1,"next_page": null,"next_url": null}}
That amountof1250is $12.50. See the next note.
Field notes that will save you time
Money is in cents. amount, coupon discounts, all of it. Divide by 100 for dollars. 1250is $12.50, not $1,250.
rateis a percent, as a whole number. A rate of25means 25%.
The two{slug}lookups take different identifiers. GET /affiliate/creators/{slug}wants the creator's shop slug (the one in public shop URLs, e.g.cgcookie).GET /affiliate/products/{slug}wants the product slug. They aren't interchangeable. Passing one where the other belongs gets you a 404.
/affiliate/productsgives you thin product objects (title, slug, url, your rate). For full product details (description, pricing, images, versions), take the slug and call the publicGET /api/v1/products/{slug}.
When something goes wrong
| Code | Means |
|---|---|
400 |
Bad parameters. Usually a malformed date or an out-of-range per_page. |
401 |
Missing or invalid token. Check the SH-Auth-Tokenheader. |
403 |
Your token is valid, but the account isn't an approved affiliate. |
404 |
The thing doesn't exist, or it isn't yours. |
Ideas for what to build
- A live earnings view that never needs a manual export.
- Commissions piped straight into a spreadsheet or your bookkeeping.
- Conversion tracking per link, so you know which campaigns actually pay.
- Your full promotable-product list pulled into whatever you use to plan content.