GET /onboarding/status
Returns the completion status of each guided setup step for your active Organizational Unit. kenbun uses this data to power the setup checklist shown on the Overview dashboard, automatically checking off steps as you configure your account.
When to Use This
- Check setup progress programmatically: Integrate with internal tooling or onboarding workflows that need to know whether a new organization has completed initial configuration
- Build custom onboarding dashboards: Surface setup completion status in your own internal tools or CRM
- Automate provisioning checks: Confirm that a newly created OU has connected an integration, created scoring rules, and configured engagement levels before enabling it for production use
Authentication
Required: Yes — authenticated session (OU-scoped)
Results are automatically scoped to your active Organizational Unit.
Request
Endpoint: GET /onboarding/status
Headers:
Accept: application/json
Example:
curl -X GET "https://api.kenbun.io/onboarding/status" \
-H "Authorization: Bearer <token>" \
-H "Accept: application/json"
No query parameters or request body required.
Response
200 OK
| Field | Type | Description |
|---|---|---|
steps | array | Ordered list of setup steps |
steps[].id | string | Unique identifier for the step |
steps[].label | string | Human-readable step name |
steps[].completed | boolean | Whether this step has been completed |
steps[].action_path | string | URL path to the relevant configuration page |
all_complete | boolean | true when every step is complete |
completed_count | integer | Number of steps currently marked complete |
total_count | integer | Total number of steps |
Example Response:
{
"steps": [
{
"id": "connect_integration",
"label": "Connect an integration",
"completed": true,
"action_path": "/settings/integrations"
},
{
"id": "create_scoring_rules",
"label": "Create your first scoring rule",
"completed": false,
"action_path": "/configure/scoring/engagement"
},
{
"id": "set_engagement_levels",
"label": "Set up engagement levels",
"completed": false,
"action_path": "/configure/levels/engagement"
}
],
"all_complete": false,
"completed_count": 1,
"total_count": 3
}
Step IDs
| Step ID | What It Checks |
|---|---|
connect_integration | At least one integration is connected (HubSpot, Slack, Teams, SFMC, or web beacon) |
create_scoring_rules | At least one scoring rule exists in your active OU |
set_engagement_levels | At least one engagement level has been configured |
Common Errors
| Status | Meaning | Solution |
|---|---|---|
| 401 | Unauthorized | Check your authentication token or session |
| 403 | Forbidden | Your account does not have access to this OU |
Notes
- Completion is detected automatically from real data in your account — there is nothing to manually mark as complete
- This endpoint returns the same response whether called as
/onboarding/statusor/onboarding-status(both paths are supported) - When all steps are complete, the setup checklist on the Overview dashboard displays a success message and automatically hides itself
Related
- Getting Started — Overview of the initial setup process
- Integrations — Connect HubSpot, Slack, Teams, and more
- Configure > Scoring — Create your first scoring rule
- Configure > Levels — Set up engagement levels