Get setup status
Where a new account is in setup (website, researching, review, payment, start or done) and the exact next step. Works before the account has paid.
Response. ```json { "setup": { "stage": "review", "next": "Show the customer what Revnu understood…", "account": { "name": "Acme", "website": "https://acme.com" }, "dashboardUrl": "https://revnu.com/dashboard", "review": { "businessName": "Acme", "researchFailed": false, "rows": [{ "id": "sells", "kind": "fact", "label": "What You Sell", "found": "Invoicing for agencies", "sources": ["https://acme.com"], "required": true }] } } }
`stage` is one of `website`, `researching`, `review`, `payment`, `start` and `done`. Every stage carries `next`, the step to take in words. Follow it.
| Stage | Extra fields | Next step |
|---|---|---|
| `website` | none | [`POST /setup/website`](/docs/setup-website) |
| `researching` | `research`: the current `step`, `findings` so far, `startedAt` | Poll again in about 20 seconds |
| `review` | `review`: `businessName`, `researchFailed`, and `rows` of `{ id, kind, label, question?, found, sources, required }` | Show the customer every row, then [`POST /setup/confirm`](/docs/setup-confirm) |
| `payment` | `payment`: `priceUsdPerMonth`, `trialDays`, `freeMonths`, `cardAtCheckout`, `status` | [`POST /setup/checkout`](/docs/setup-checkout), then poll until `start` |
| `start` | `payment`: `status`, `trialEndsAt` | [`POST /setup/finish`](/docs/setup-finish) |
| `done` | `payment`: `status` | Nothing; Revnu is working |
Offers differ by account, so read `payment` before telling the customer what checkout means: `trialDays` is the free period (0 for none), `freeMonths` covers invite offers with free months, and `cardAtCheckout` says whether Stripe's page asks for a card. An account with a YC deal has no `payment` at the `payment` stage; `next` sends the customer to the dashboard to add a card. When research failed, `review.researchFailed` is `true` and a corrected address can go to [`POST /setup/website`](/docs/setup-website) again.
The CLI runs this whole flow: `npx @revnu/cli setup --json`. See [Install the CLI](/docs/cli).
Request
- Base URL: https://revnu.com
- URL: https://revnu.com/api/v1/setup
- Auth: HTTP bearer
Response
``json { "setup": { "stage": "review", "next": "Show the customer what Revnu understood…", "account": { "name": "Acme", "website": "https://acme.com" }, "dashboardUrl": "https://revnu.com/dashboard", "review": { "businessName": "Acme", "researchFailed": false, "rows": [{ "id": "sells", "kind": "fact
Changes
No recorded changes to this operation across all 1 revision of this API.