API
Changelog
All notable changes to the Cuelinks V3 Monetization API. Subscribe to updates via your dashboard to get notified when new capabilities ship.
2026-05-18
Added
Offer type filter —
GET /offers?offer_type=coupon (or deal) filters offers by type, and every offer now returns an offer_type field. Scope: read:offers.
Added
Invoice number filter on Transactions —
GET /transactions?invoice_number=… returns only transactions linked to a given invoice (V2 parity). Scope: read:transactions.
Added
Invoice transaction fields —
GET /invoices/:id/transactions now includes merchant_reference_id and extra_info for richer reconciliation. Scope: read:invoices.
Changed
No TDS on Singapore-billed invoices — invoices billed from the Singapore entity now return
tds_amount of "0" with net_payment equal to gross, and omit the tds entry from the tax breakdown. Scope: read:invoices.
2026-04-13
Added
Invoices API —
GET /invoices, GET /invoices/:id, GET /invoices/:id/transactions. List invoices with status/date filtering, view full tax breakdown and monthly bifurcation, and see linked transactions for reconciliation. Scope: read:invoices.
Added
Missing Transactions API — full CRUD. File, view, update, and delete missing transaction claims programmatically. Scopes:
read:missing_transactions, write:missing_transactions.
Added
Unmonetized Traffic Report —
GET /reports/unmonetized_traffic. See which domains receive clicks but have no active campaign. Each domain includes a status field indicating whether a campaign is available.
Added
Earnings Report —
GET /reports/earnings. Monthly earnings summaries broken down by commission status: pending, validated, payable, claimed, rejected.
Changed
Clean decimal formatting across all report endpoints. Trailing zeros are now stripped:
14026861.00 → "14026861", 0.40 → "0.4".
Changed
Docs rebranded from "Publisher API" to "Monetization API" with infrastructure positioning, use-case framing, and expanded Quick Start.
2026-04-12
Added
Campaigns Report —
GET /reports/campaigns. Performance metrics grouped by campaign-channel combination with campaign names and types resolved.
Added
Performance Report —
GET /reports/performance. Daily aggregated clicks, transactions, commission, CR, and EPC with totals across the full date range. Scope: read:reports.
Fixed
Channel ownership validation in performance report. Passing a
channel_id not owned by the authenticated user now returns 422 instead of silently returning zeroed data.
2026-04-11
Fixed
Scope-docs mismatch — removed "Coming soon" labels from
read:transactions, read:channels, and write:channels scopes that were already live and enforced.
Fixed
write:links missing from SCOPES — the scope was enforced by LinksController but not included in ApiAccess::SCOPES, so scoped keys could never pass validation for link conversion.
Added
read:offers scope to authentication docs. Was enforced by OffersController but missing from the docs.
Added
Channels pagination —
GET /channels now returns paginated responses with meta object, consistent with all other list endpoints.
Added
Quick-start scope guidance — callouts on Introduction and Authentication pages recommending
read:campaigns + write:links for new integrations.
2026-03-31
Added
Convert Link API —
POST /links/convert. Convert any merchant URL into a trackable affiliate link with optional sub IDs and short URL support. Scope: write:links.
Added
affiliated field on link conversion response. Always returns a tracking_url — use affiliated boolean to check if the link will earn commission.
2026-03-27
Added
Offers API —
GET /offers, GET /offers/:id. Browse live coupons and deals across all campaigns. Scope: read:offers.
2026-03-26
Added
Transactions API —
GET /transactions, GET /transactions/:id. Real-time conversions with date range, status, campaign, and sub ID filtering. updated_since parameter for incremental sync. Scope: read:transactions.
2026-03-25
Added
Channels API — full CRUD. List, create, update, delete channels, and set default channel. Scopes:
read:channels, write:channels.
2026-03-22
Added
Campaigns API —
GET /campaigns, GET /campaigns/:id, POST /campaigns/:id/request_access. Search, filter, and browse campaigns with Elasticsearch. Countries and categories endpoints. Scope: read:campaigns.
2026-03-09
Added
V3 API foundation —
GET /ping, token authentication, scoped API keys, base controller, developer docs site at developers.cuelinks.com.
Older changes are tracked in the project's git history.