Affiliate Program Terms & Commission Monitor avatar

Affiliate Program Terms & Commission Monitor

Pricing

from $10.00 / 1,000 affiliate program page processeds

Go to Apify Store
Affiliate Program Terms & Commission Monitor

Affiliate Program Terms & Commission Monitor

Extract evidence-backed affiliate commission, cookie, payout, network, and application terms from public program pages and detect structured changes.

Pricing

from $10.00 / 1,000 affiliate program page processeds

Rating

0.0

(0)

Developer

Kayorama

Kayorama

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Share

Extract evidence-backed affiliate program terms from public pages and detect meaningful changes between runs.

What it extracts

  • percentage and fixed-amount commission claims;
  • recurring versus one-time commission signals;
  • cookie/attribution windows normalized to days;
  • payout thresholds and payment cadence;
  • named affiliate networks;
  • open, closed, invite-only, or unknown application status;
  • short evidence snippets, confidence level, hashes, redirects, and typed changes.

Why use it

Affiliate publishers and partner teams often maintain terms in spreadsheets long after a program changes. This Actor produces structured snapshots that can be scheduled, compared, exported, or fed into an automation. It is designed for monitoring known public program pages—not for discovering every affiliate program on the web.

Example input

{
"programUrls": [
{ "url": "https://vendor.example/affiliate-program" },
{ "url": "https://vendor.example/partners/terms" }
],
"useStoredState": true,
"stateStoreName": "affiliate-program-terms-monitor-aipick",
"includeEvidence": true,
"maxPrograms": 20
}

Output

Each successful page produces one program_snapshot. Fetch failures produce page_fetch_error records. A final summary reports requested, attempted, analyzed, failed, and changed counts.

Snapshots include terms, termsHash, contentHash, extractionConfidence, and changes. A structured change is emitted only when an extracted term differs from the matching previous snapshot. A content-only change is reported separately when page text changed but extracted terms did not.

Comparison modes

  1. Stored state (default on Apify): the Actor compares with a named key-value store and replaces that record only when every requested page completed and spending did not stop the run. By default, its record key is a stable hash of the normalized URL set, so independent monitoring sets do not overwrite one another. stateRecordKey can override that namespace explicitly.
  2. Explicit snapshots: pass prior program_snapshot rows in previousSnapshots. Explicit snapshots take precedence over stored state.

Named state is necessary because each Apify cloud run has its own default stores. Deleting the named key-value store or record resets the baseline. Explicit previousSnapshots take precedence without modifying how successful state is saved.

Detection limits

Extraction is deterministic and heuristic. It does not use an LLM and does not provide legal advice. Dynamic client-rendered content, login walls, bot protection, unusual wording, images, PDFs, and ambiguous marketing copy can produce missing or inconclusive fields. Evidence snippets help a human verify each claim. none or low confidence means review is recommended.

The Actor does not claim that a program accepts a specific applicant, will pay, or still honors terms shown on a cached or stale public page.

Network safety

User-controlled URLs and every redirect hop are limited to HTTP(S) public-network destinations. DNS results are checked before requests and again through a connection-time lookup policy. Redirect count, response size, request time, URL count, and concurrency are bounded. The Actor does not bypass logins, CAPTCHAs, or bot controls.

Local use

npm ci
npm test
node src/cli.js examples/input.json examples/output.local.json

The CLI creates the output file exclusively and will not overwrite an existing file.

Billing semantics

The primary event is program-page-processed at $0.01 per attempted public program page. It is charged immediately before the attempt. A page that later times out or returns an error may therefore still be billable, but the run emits a visible page_fetch_error record for that attempt. Processing stops cleanly if the spending cap rejects the next event. Dataset rows are not billed again.

Apify also charges its recommended apify-actor-start event at $0.00005 per run for memory allocations up to 1 GB. The minimum run budget is $0.01005, covering one start and one attempted page.

Privacy

The Actor processes user-supplied URLs, public page text, DNS and HTTP metadata, redirects, short evidence snippets, hashes, run settings, and generated change records. Apify stores run inputs, datasets, logs, and optional named-state records according to the user's plan and retention settings. The operator does not sell submitted data, add unrelated analytics, or use page contents for model training.

Do not submit authentication tokens, private dashboards, intranet addresses, personal inboxes, or URLs containing secrets. Users are responsible for having a lawful basis to monitor supplied pages and for complying with applicable website, copyright, database, privacy, and affiliate-program rules.

Disable useStoredState to avoid persistent snapshots, or delete the relevant run, dataset, and named key-value record in Apify Console.

Support

For product help, privacy requests, or responsible security reports, email info@kayorama.nl and include the Actor name and relevant run ID. Do not send credentials or sensitive page content. Support covers reproducible Actor defects and documented input/output behavior; it does not include legal advice, guaranteed extraction from blocked or dynamic pages, or affiliate-program acceptance and payout disputes.