Base app architecture:
Route groups for customer, staff and owner.
* Reusable design system with around 20 UI components.
* Complete Prisma schema.
* Authentication with email/password and Google.
* Role and permission model.
* Protected routes.
* Clean separation between features, services, components and shared utilities.
2.2 KiB
2.2 KiB
management-api
Use Prisma Management API for programmatic provisioning and workspace/project/database management.
Priority
CRITICAL
Why It Matters
When you need backend automation, multi-tenant onboarding flows, or controlled resource provisioning, the Management API is the source of truth and is more reliable than interactive workflows.
Base URL
https://api.prisma.io/v1
API exploration
- OpenAPI docs:
https://api.prisma.io/v1/doc - Swagger Editor:
https://api.prisma.io/v1/swagger-editor
Authentication methods
- Service token: best for server-to-server operations in your own workspace
- OAuth 2.0: best for acting on behalf of users across workspaces
Service token flow
- Create token in Prisma Console workspace settings.
- Send token as Bearer auth:
Authorization: Bearer $TOKEN
OAuth flow summary
- Redirect user to
https://auth.prisma.io/authorizewithclient_id,redirect_uri,response_type=code, and scopes. - Receive
codeon callback. - Exchange code at
https://auth.prisma.io/token. - Use returned access token in Management API requests.
Resource model
Workspace -> Project -> Branch -> Database. Branches are a first-class resource: databases attach to a Branch, and branch-scoped env/databases are how preview isolation works.
Common endpoints
GET /workspacesGET /projectsPOST /projectsGET/POST /projects/:projectId/branchesGET/PATCH/DELETE /branches/:branchId- Databases at both
/databases(flat) and/projects/:projectId/databases - Connection responses return structured
endpoints.directandendpoints.pooledobjects; the flat top-levelconnectionStringis deprecated in favor ofendpoints.direct.connectionString/endpoints.pooled.connectionString - Connection secrets are one-time view: revealed at creation, never re-readable from later GETs
Notes
- Management API responses may include direct connection credentials for databases.
- Build PostgreSQL
DATABASE_URLfrom direct connection values when needed.