API Access
Katalys syncs its data to a third-party provider called Tune (also known by HasOffers). Tune offers APIs for Publisher and Advertiser access to be able to some of their Katalys data for automation, forecasting, and downstream data syncing. Due to Tune’s limitations, the sync is not perfect. Read on for use cases we support, and limitations of using the Tune API.
Supported Use Cases
Katalys supports the following use cases via the Tune API.
Advertisers Running Reports
Advertisers can produce commission reports by using the Advertiser_Report::getStats
method.
Read more on the Tune API documentation →
Partners Running Reports
Partners can produce commission reports by using the Affiliate_Report::getStats
method.
Read more on the Tune API documentation →
Partners Listing Available Programs
Partners can find Programs (called “Offers” via the API) they are approved for. The Affiliate_Offer::findMyApprovedOffers
method returns a list of all available open-marketplace offers AND invite-only+approved offers.
Read more on the Tune API documentation →
Getting Access to the API
Access is granted based on your use case. Reach out to the Katalys Tech Support Team by submitting a Support Request describing your use case.
The support team will review your case and once authorized they will deliver your API key. Your API key is used to authenticate each request you make to the API.
FAQs
Why does the Tune API show different data than the KMP Portal?
The Katalys marketplace offers much more in-depth reporting and more flexibility than Tune can offer. Some of those restrictions are:
Tune conversions can never be changed, which means any errors or corrections from upstream systems cannot be corrected;
Tune cannot fix or process data in the past, which means if the Katalys' advance attribution attempts to sync affiliate sessions, Tune may throw away Katalys’s reported data in favor of Tune’s partial data;
Tune’s system will sometimes a) reject data from Katalys irreparably or b) not trigger any downstream postbacks.
We have developed a best-guess implementation that attempts to report all our known conversion data into Tune. However, due to these restrictions, a partner using Tune postbacks or the Tune API might notice:
Multiple copies of a conversion. This occurs because Tune’s API will report failure or empty-response, so our API will “try again” to sync the information into Tune. We attempt to clean up these duplicates during daily backend processing jobs.
Missing conversions for users of postbacks. This occurs because do to a documented weakness in Tune’s API, where some API calls to create conversions do not trigger downstream postbacks. We only leverage these API calls when absolutely necessary to get unmatched data into Tune’s reporting.
Mis-matched Transaction IDs. The Katalys system processes data in realtime, but some of our partners do not. Sometimes our partners will batch updates to us after 24-36 hours, resulting in the Katalys system needing to re-analyze traffic from the previous day. Our system handles this robustly, accurately producing a conversion result based on all known data about an order; Tune, however, requires “rejecting” the old conversion and creating a new one with new attribution information.
These discrepancies typically result in the Tune API containing just a few duplicates that could not be purged automatically, so we tend to see that numbers in the Tune API are just-slightly over-reported.