Public and Internal Endpoints
This page helps integration teams separate supported public routes from internal automation routes.Public routes (no member session required)
Health and branding
GET /api/v1/healthGET /api/v1/public/workspaces/:workspaceId/logoGET /api/v1/public/brand/email-icon.pngPOST /api/v1/public/marketing/chat
Invite token validation/acceptance
GET /api/v1/invites/:tokenGET /api/v1/email-invites/:tokenPOST /api/v1/invites/:token/acceptPOST /api/v1/email-invites/:token/accept
Proposal portal (tokenized)
GET /api/v1/public/proposals/:tokenPOST /api/v1/public/proposals/:token/viewPOST /api/v1/public/proposals/:token/acceptPOST /api/v1/public/proposals/:token/declinePOST /api/v1/public/proposals/:token/request-changesGET /api/v1/public/proposals/:token/messagesPOST /api/v1/public/proposals/:token/messages
Occupant portal (tokenized)
GET /api/v1/occupant/:token/metaPOST /api/v1/occupant/:token/submitPOST /api/v1/occupant/:token/issues/:issueId/reference-photos/presignPOST /api/v1/occupant/:token/issues/:issueId/reference-photos/complete
Internal automation routes (not customer integration APIs)
These are intended for trusted infrastructure (scheduled jobs/ops) only:GET /api/v1/internal/collab-metricsPOST /api/v1/internal/om-maintenance-reminders— daily PPM email + push digests (assignees + workspace managers; meter-threshold schedules labeled Meter/calendar). Authenticate with headerx-plansync-cron-secret: INTERNAL_CRON_SECRET.POST /api/v1/internal/om-inspection-reminders— daily inspection template digests (managers) for templates overdue or due within 7 days (UTC). Same cron secret header.POST /api/v1/internal/om-work-order-aging-reminders— daily manager digests for open/in-progress work orders older than 7 and 30 days. Same cron secret header.POST /api/v1/internal/proposal-reminders
Stripe webhook route
POST /api/stripe/webhook
Security recommendations
- Do not expose internal endpoints in public API clients
- Rotate and revoke leaked tokens quickly
- Keep audit and observability around all external callback and public-token traffic