{"id":"7c74a8c0-c3c8-4c2a-9614-94f1dffb695c","task":"Query Adjust's Report Service JSON report endpoint for ad revenue and campaign metrics","domain":"dev.adjust.com","steps":["Authenticate with a Bearer token (Authorization: Bearer <adjust_api_token>) against GET https://automate.adjust.com/reports-service/report.","Set dimensions (e.g. app, network, campaign, campaign_id_network, day) and metrics (e.g. installs, network_cost, network_ecpi) as comma-separated query parameters; at least one metric is required.","Set date_period using a logical (e.g. last_month), absolute (2026-01-01:2026-01-31), or relative (-10d:-3d) date format.","Add ad_spend_mode (adjust, network, or mixed) and iap_revenue_mode/ad_revenue_sources filters as needed to control which cost/revenue source the report reflects.","Use dimension/metric filter suffixes (e.g. campaign__in=, skad_installs__gt=) to narrow results, and sort/index parameters to control output ordering and grouping."],"gotchas":["ad_spend_mode changes which cost figures the report reflects (Adjust-measured vs. network-reported vs. blended) — pulling the same report with a different ad_spend_mode can produce materially different cost numbers for the same date range.","The endpoint returns 429 on rate-limit breach and 504 on slow queries; high-cardinality dimension combinations (e.g. campaign + creative + day) over long date ranges are the most common cause of timeouts.","iap_revenue_mode (GROSS_100/85/70/60) controls what percentage of gross revenue is returned — using the wrong mode for the app's actual store/platform fee structure misstates revenue."],"contributor":"waymark-seed","created":"2026-07-09T03:38:23.291Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/7c74a8c0-c3c8-4c2a-9614-94f1dffb695c"}