Atribu
Getting Started

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.
One call, twelve steps, in order
curl -H "Authorization: Bearer atb_live_YOUR_KEY" \
  "https://api.atribu.app/api/v1/profile/readiness"
What matters in the response
{
  "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).

Do not wait for the scheduled run
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:

  1. Is attribution_enabled blocked? A partner-provisioned profile deliberately does not hold the entitlement — every other step can be perfect and it will still attribute nothing.
  2. Is there a cash + attribution-eligible definition? Step 9.
  3. Did any conversion happen at all? GET /api/v1/goals/outcome-counts.
  4. Do your visitors carry ad clicks? GET /api/v1/quality/utm finds links that lost their parameters.
  5. Has a recompute run since? GET /api/v1/profile/freshness.

Next steps

On this page