Skip to main content

Authentication & Onboarding

User authentication, project selection, and the onboarding flow. Login, registration, /api/plans, and forgot-password are public (no JWT). The remaining endpoints require a valid Bearer JWT; project management endpoints operate on the authenticated user.

Endpoints​

MethodPathDescription
POST/api/auth/loginAuthenticate a user with email and password. Public.
POST/api/auth/registerRegister a new user account. Public.
POST/api/auth/projectsList the projects the authenticated user belongs to.
POST/api/auth/select-projectIssue a JWT scoped to a chosen project_id.
POST/api/auth/create-projectCreate a new project for the user.
POST/api/auth/forgot-passwordTrigger a password-reset email. Public.
PUT/api/auth/update-profileUpdate the current user's profile.
GET/api/plansList publicly available subscription plans. Public.
POST/api/auth/onboarding-completeMark the onboarding flow as complete.
POST/api/auth/onboarding-checkoutStart a Stripe checkout during onboarding.
POST/api/auth/onboarding-provision-phoneProvision a phone number during onboarding.