Where the account is in its setup, and its plan
Build a request to copy
This page never sends a request. Fill in the fields, then copy the request and run it from your server.
curl -X GET 'https://api.whatsable.app/v1/setup-status'
Returns the setup stage of the organization, the facts behind it, the next step in plain words, and the plan with each limit and its use: people this period, numbers, seats, and AI bot conversations on a plan that caps them.
Like GET /v1/me, it needs no scope and answers also without an active plan, so an integration that connects can read it first. The numbers, messages and templates it counts are those of the numbers this key may use.
bearerAuthAuthorizationBearer <nfy_live_<32 characters>>An API key from Settings > API keys, sent as Authorization: Bearer <key>.
The setup stage and the plan.
application/json- response
Where the organization is in its setup, the next step, and the plan with its use.
object*stringstage*|no_number, number_connecting (Meta's signup started, or a number connect link is open), connected_no_messages or in_use.
next_step*stringWhat to do next, in plain words.
numbers*array<>The numbers this key may use, oldest first.
open_connect_links*integerNumber connect links created and not yet used or expired.
0 <= value <= 9007199254740991has_messages*booleanWhether any message, sent or received, exists on these numbers.
templates*Templates of these numbers' WhatsApp Business Accounts, counted by Meta's review status.
ai_app_connected*booleanWhether an AI app is connected to the organization through OAuth.
plan*The plan and its use. No price.
curl -X GET 'https://api.whatsable.app/v1/setup-status'{ "object": "setup_status", "stage": "in_use", "next_step": "The number is in use. Read the recent chats for people waiting for an answer and for sales opportunities.", "numbers": [ { "id": "cm2v8a1b20002qz8h9i0j1k2l", "display_name": "Acme Store", "phone": "+15551230001", "status": "active" } ], "open_connect_links": 0, "has_messages": true, "templates": { "pending": 1, "approved": 3, "rejected": 0, "paused": 0, "disabled": 0 }, "ai_app_connected": true, "plan": { "code": "growth", "name": "Growth", "status": "active", "active": true, "trial_ends_at": null, "period_start": "2026-11-01T00:00:00Z", "period_end": "2026-12-01T00:00:00Z", "limits": { "people": { "used": 412, "limit": 1500 }, "numbers": { "used": 1, "limit": 2 }, "seats": { "used": 2, "limit": 3 }, "bot_conversations": { "used": 57, "limit": 200 } }, "features": [ "inbox", "templates", "broadcasts", "team", "scheduling", "analytics", "mcp", "ai" ] }}