Step 10 — Verify
One call that says what is still missing, in order — and how to tell a broken setup from one that is merely waiting.
Everything up to here was configuration. This step asks whether it worked.
Pressing Finish in the wizard is not verification
onboarding_completed means one thing: a person pressed Finish. Every step
of the wizard is skippable, so it is not evidence that any step is done. On
prod, 12 of 32 profiles were "onboarded" while 8 had an ad platform and 4 a
Meta destination.
The setup-status strip at the top of the dashboard is this checklist, rendered: what is done, what is missing, and the one next thing to do. It does not disappear after your first connection — it stays until the profile is actually finished.
Beyond it, three places tell you whether the numbers can be trusted:
- Data quality — attribution coverage, UTM health, instrumentation health.
- Trust signals — the honesty banners that say what a number cannot see.
- Customer journeys — open one customer and look at their touchpoints. If a known payer shows a journey ending in a real ad click, the whole chain works.
curl -H "Authorization: Bearer atb_live_YOUR_KEY" \
"https://api.atribu.app/api/v1/profile/readiness"{
"data": {
"summary": { "done": 9, "total": 12, "next_step": "capi_destination_enabled" },
"steps": [{ "key": "…", "status": "…", "why": "…", "next": {}, "docs_url": "…" }]
}
}summary.next_step is the first non-done step in golden-path order —
first, not "most important": the order is the priority. Every non-done step
carries a next that is either {method, path} (a call you can make right now)
or {handoff_kind} (a class of action only a person can take).
Four statuses, and degraded is the one clients get wrong: it means
configured and not working, so the fix is to re-connect. Drawing it as
missing tells someone to connect what they already connected.
Over MCP: get_readiness (and whoami reports the same summary).
curl -sX POST https://api.atribu.app/api/v1/attribution/recompute \
-H "Authorization: Bearer atb_live_YOUR_KEY"GET /api/v1/quality/attribution shows how many conversions carry a touch at
all, and GET /api/v1/profile/freshness says when the profile was last
recomputed — the usual explanation for a dashboard that looks wrong.
Nothing is attributed yet — broken, or waiting?
first_conversion_attributed is an outcome of the earlier steps, not a
setting, so it is the one step you cannot fix directly. Work through this
order:
- Is
attribution_enabledblocked? A partner-provisioned profile deliberately does not hold the entitlement — every other step can be perfect and it will still attribute nothing. - Is there a
cash+ attribution-eligible definition? Step 9. - Did any conversion happen at all?
GET /api/v1/goals/outcome-counts. - Do your visitors carry ad clicks?
GET /api/v1/quality/utmfinds links that lost their parameters. - Has a recompute run since?
GET /api/v1/profile/freshness.