Skip to content

POST /api/v1/admin/orgs/:slug/onboarding/complete

This page is auto-generated from src/admin/routes.ts. Do not edit by hand — see docs/dev/docs-auto-sync.md.

:warning: Heuristic extraction — not a contract. Response shapes below are mined from c.json(...) literals in the handler via an AST walker. Computed fields, ternaries, and non-literal returns are shown as placeholders. Refer to the linked source file for the authoritative behaviour.

POST /api/v1/admin/orgs/:slug/onboarding/complete

Section titled “POST /api/v1/admin/orgs/:slug/onboarding/complete”

Requires the following capability(ies):

  • policy:w

Other middleware observed on this route (heuristic):

  • requireCapability

POST /api/v1/admin/orgs/:slug/onboarding/complete — #401 first-time admin wizard finish. Sets tenants.onboarding_completed_at = NOW() (idempotent — re-completion is a no-op success) so the org-detail handler stops 303-ing to the wizard on subsequent visits.

Gated on policy:w because the wizard’s primary state-changing step is the default-policy preset selection (the same surface PATCH /policies covers). An admin who can edit policies can finish the wizard; a viewer cannot.

{
"error": "Org not found"
}
{
"slug": <slug>,
"onboardingCompletedAt": <member-expr>
}
{
"slug": <slug>,
"onboardingCompletedAt": <call>
}
  • File: src/admin/routes.ts
  • Line: 5491