Getting started
Workspace → project → offer (optional) → /go/ link → test the redirect → watch the first click land.
- Create a workspace and project
- Add an offer, then a /go/ link
- Test the redirect and check link health
Create a workspace, add a project, and publish a branded /go/ link. Offers are optional — a link only needs a project and a destination URL.
Create a workspace
Name it and set your default timezone.
Add a project
The project holds your offers and links.
Publish a /go/ link
Set a destination, open the link to test the redirect, then check the click in analytics.
Guides
Task-based walkthroughs for setting up projects, links, routing, and embeds.
Workspace → project → offer (optional) → /go/ link → test the redirect → watch the first click land.
The data model is Workspace → Project → Offer (optional) → /go/ link → destination, with a fallback URL per link.
Rules are evaluated by ascending priority; the first match wins. Country, device, and fallback rules are supported today.
Copy-paste code generated per link: React and Next.js components, HTML, a JS loader, product box, Webflow, WordPress, Shopify, email, and social captions.
Reference
Endpoints, payloads, roles, and security specs.
Reference · Developers
REST endpoints for links and clicks. Keys are scoped to one workspace and rate limited per minute.
Reference · All users
Destinations are probed on a schedule. Broken links are flagged in the dashboard and raise an alert you can resolve.
Reference · Admins
Owner, admin, editor and viewer roles, row-level workspace isolation, TOTP two-factor, session revocation, and an exportable audit log.
API
Available now: links and clicks. Every request is authenticated with a workspace API key and scoped to that workspace. API access is included on Agency and Enterprise plans.
Create a key in Settings → API keys. Keys start with tl_live_, are shown once, and are scoped to a single workspace. Delete a key in the same screen to revoke it, then create a replacement to rotate.
curl https://tracklume.com/api/public/v1/links \ -H "Authorization: Bearer $TRACKLUME_TOKEN"
Base URL: https://tracklume.com/api/public/v1
name, destination_url and project_id are required. Optional: slug, fallback_url, merchant, category, channel_tag, disclosure_label.
curl -X POST https://tracklume.com/api/public/v1/links \
-H "Authorization: Bearer $TRACKLUME_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"Hosting deal",
"destination_url":"https://example.com/offer",
"project_id":"<project-uuid>"}'Returns 201 with { "data": { … } }. Example response fields: id, name, slug, destination_url, fallback_url, status, project_id, created_at.
| Method | Path | Description | Parameters |
|---|---|---|---|
| GET | /v1/links | List links in the workspace, newest first. | limit (max 200), project_id |
| POST | /v1/links | Create a link in a project you own. | JSON body |
| GET | /v1/links/:id | Fetch a single link. | — |
| PATCH | /v1/links/:id | Update editable link fields. | JSON body |
| DELETE | /v1/links/:id | Delete a link. Returns 204. | — |
| GET | /v1/clicks | List clicks (last 7 days by default). | limit (max 500), link_id, since |
Errors return JSON as { "error": "message" }.
Requests are limited per API key in a rolling one-minute window (default 60 requests/minute). Every response carries the current window state:
X-RateLimit-Limit: 60 X-RateLimit-Remaining: 58 X-RateLimit-Reset: 1765000000
Over the limit returns 429 with a Retry-After header in seconds.