API Reference
Authentication Endpoints
POST
/auth/register
Register new user
No
POST
/auth/login
Login with email/password
No
POST
/auth/google-login
Login with Google
No
GET
/auth/verify-email
Verify email address
No
POST
/auth/reset-password/request
Request password reset
No
POST
/auth/reset-password/confirm
Confirm password reset
No
POST
/auth/refresh
Refresh access token
Refresh Token
Tenant Endpoints
POST
/tenants
Create new tenant
Yes
GET
/tenants
List user's tenants
Yes
GET
/tenant
Get tenant details
Yes
PUT
/tenant
Update tenant
Yes (Admin)
DELETE
/tenant
Delete tenant
Yes (Admin)
Member Endpoints
GET
/members
List tenant members
Yes
PATCH
/members/role
Change member role
Yes (Admin)
DELETE
/members
Remove member
Yes (Admin)
Invitation Endpoints
POST
/invite
Invite user to tenant
Yes (Admin)
GET
/invitations/{token}/accept
Accept invitation
No
POST
/invitations/{token}/set-password
Set password for invitation
No
Payment Endpoints
GET
/payments/plans
Get available plans (with monthly & annual prices)
Yes
GET
/payments/subscription
Get tenant subscription
Yes
POST
/payments/checkout
Create Stripe Checkout session (includes billing_interval)
Yes (Admin)
POST
/payments/subscription
Create subscription
Yes (Admin)
PATCH
/payments/subscription
Update subscription
Yes (Admin)
DELETE
/payments/subscription
Cancel subscription
Yes (Admin)
POST
/payments/subscription/uncancel
Uncancel subscription
Yes (Admin)
GET
/payments/payment-methods
List payment methods
Yes
POST
/payments/payment-methods
Add payment method
Yes (Admin)
DELETE
/payments/payment-methods/{id}
Delete payment method
Yes (Admin)
PATCH
/payments/payment-methods/{id}/set-default
Set default payment method
Yes (Admin)
POST
/payments/setup-intent
Create setup intent
Yes (Admin)
GET
/payments/invoices
List invoices
Yes
GET
/payments/invoices/{id}/download
Download invoice PDF
Yes
Item Endpoints
POST
/items
Create item
Yes
GET
/items
List items
Yes
GET
/items/{uuid}
Get item
Yes
PATCH
/items/{uuid}
Update item
Yes
DELETE
/items/{uuid}
Delete item
Yes
Super Admin Endpoints
GET
/super-admin/tenants
List all tenants
Yes (Super Admin)
GET
/super-admin/tenants/{uuid}
Get tenant details
Yes (Super Admin)
Webhook Endpoints
POST
/payments/webhooks/stripe
Stripe webhook handler
Stripe Signature
Utility Endpoints
GET
/health
Health check
No
GET
/docs
API documentation (Swagger)
No
GET
/sentry-debug
Test Sentry integration
No
Common Workflows
Adding a New User to a Tenant
Admin invites user: POST /invite
User receives email with invitation link
User clicks link: GET /invitations/{token}/accept
If new user: Set password via POST /invitations/{token}/set-password
User is added to tenant with specified role
Setting Up Billing
Create tenant: POST /tenants
Add payment method:
Get setup intent:
POST /payments/setup-intentCollect card with Stripe.js on frontend
Attach payment method:
POST /payments/payment-methods
Create subscription: POST /payments/subscription
Subscription status updated via webhooks
Changing Subscription Plans
Get available plans: GET /payments/plans
Update subscription: `PATCH /payments/subscription` {%{% step %}
Stripe prorates the charges automatically
Webhook updates subscription status
Additional Resources
FastAPI Documentation: https://fastapi.tiangolo.com
SQlAlchemy Documentation: https://www.sqlalchemy.org/
Stripe API Reference: https://stripe.com/docs/api
React Documentation: https://react.dev
Tailwind CSS: https://tailwindcss.com
Support
For questions or issues, contact: [email protected]
Last updated
