Docs
Agents

On this page
Agents is a private API for marketing and CRM. It describes the people who have a Notifiable account: who they are, where they heard about Notifiable, and the workspaces they belong to.
How it works
The routes live at /api/agents, beside /api/v1. They are not part of the SDK. A caller sends Authorization: Bearer with the AGENTS_API_TOKEN value. A missing, wrong, or unset token is rejected. A dashboard session does not grant access. Scalar lists these routes under Agents at /docs/api in a local environment. The OpenAPI document is /docs/api.json.
GET /api/agents/users lists accounts, newest first. Each person includes their first name, last name, email, the role they gave when they registered, where they heard about Notifiable, and a lifecycle stage. That discovery answer is stored as discovery_source and is empty until it is collected.
The stage follows workspaces the person owns. A free plan is not a paid subscription. Prospect and Lead are not used, because those people are not on the platform yet.
- Signup — registered, with no workspace or no app. A deleted app does not count. A member of someone else’s workspace stays here until they own an app.
- Activated User — owns at least one app, and has not yet created a notification, recorded an event, or saved a workflow or automation.
- Engaged User — owns an app that has a notification, an event, a workflow, or an automation.
- Customer — owns a workspace on a paid plan that is still active.
- Power User — a customer with at least two completed payments, or whose first completed payment was within two weeks of registration.
- Churned — paid before, is not on an active paid plan now, and the last completed payment was at least a month ago. A yearly plan that still covers today stays a customer.
- Closed — no sign-in, workspace, app, notification, event, workflow, automation, or payment for at least a month. An active paid plan stays a customer or power user.
php artisan db:seed --class=LifecycleStageSeeder replaces seven example accounts, one for each stage: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], and [email protected].
Each workspace membership is included. A workspace shows its name, the person’s role there, the current subscription when one exists, and how many apps it has. A deleted app is not counted. A person with no workspace has an empty list. A workspace created in the product starts on the free plan, so a subscription is present for that workspace.
