BIO.RE Developer Portal
Complete API documentation for the BIO.RE creator monetization platform — 19 modules, 175 endpoints. Every endpoint verified against the live backend (controller + DTO + service + Prisma + live response).
The BIO.RE Developer Portal documents every client-facing endpoint of the BIO.RE creator monetization platform. 19 modules, 175 endpoint pages — every claim cited back to the backend code (path:line), every response shape derived from a real DTO, every error code traced to the exception that throws it.
Use the sidebar to browse, the search bar to find a specific endpoint, or the module cards below to jump straight to a section.
Browse by module
🔐 Authentication
Register, login, 2FA, OAuth, password reset, OTP, sessions — 29 endpoints covering the full identity lifecycle.
👤 User
Profile, settings, avatar, username, email change, blocking, attribution, deactivation, GDPR export/delete — 26 endpoints.
✨ Creator
Bio page, links, social accounts, KYC, payout settings, Stripe Connect, vacation mode, newsletter — 37 endpoints.
💬 Messages
Send, list, search, conversations, reply, reject, rate — 9 endpoints.
🔔 Notifications
Inbox, preferences, web push, mark read, unsubscribe — 12 endpoints.
💳 Payment
Wallet balance, load, packages, transaction activity — 4 endpoints.
💰 Payout
Creator payout request + monthly report — 2 endpoints.
🔍 Discover
Search, trending, featured, category, recently-viewed history — 7 endpoints.
📈 Analytics
Event tracking + anonymous session/pageview/heartbeat lifecycle — 6 user-facing endpoints.
📊 Creator Analytics
Creator dashboard reads — overview, traffic, geo, devices, trend, sessions, links + CSV export — 8 endpoints.
📰 Content
CMS pages, blog (RSS/Atom), help center, FAQ, contact, cookie policy — 15 endpoints.
🌍 i18n
Locale catalog + translation bundle delivery (full + namespace) — 3 endpoints.
🎟️ Referral
Referral link, click tracking, dashboard, coupon apply — 4 endpoints.
🎫 Support
User-facing tickets — list, create, detail, reply, reopen — 5 endpoints.
📤 Upload
Pre-signed direct-to-storage upload URLs (avatar / media / document) — 1 endpoint.
🎨 Theme
Public theme presets for the consumer-app theming — 2 endpoints.
📡 Presence
Last-seen + isOnline read for any user — 1 endpoint.
📊 Platform
Public aggregate counters — total creators / messages / earned — 1 endpoint.
⚖️ Legal
Privacy policy + Terms of service — 2 endpoints.
Quick start by use case
| If you are building... | Start here |
|---|---|
| Sign-up + login flow | Register → Verify Email → Login |
| Forgotten password flow | Forgot Password → Reset Password |
| Two-factor authentication | Setup 2FA → Verify → Login with 2FA |
| OAuth (Google, etc.) | List Providers → OAuth Login → Link to Account |
| Creator onboarding | Upgrade to Creator → Update Bio → Add Bio Links → Stripe Connect → KYC |
| Send + receive messages | Send Message → List Conversations → Reply |
| Wallet top-up | Wallet Packages → Load Wallet → Activity |
| Bio page traffic instrumentation | Create Session → Record Pageview → Heartbeat → Page Leave |
| Creator analytics dashboard | Overview → Traffic → Trend → Links → CSV Export |
| Notification preferences UI | List Notifications → Preferences → Update Preferences → Web Push Subscribe |
| GDPR data export / delete | Request Export → Check Status → Download → Request Delete |
| Localization | List Locales → Bundle → Namespace Bundle |
| Support ticketing | List My Tickets → Create → Reply |
How to read an endpoint page
Every endpoint page follows the same shape:
- Header — method + path + scope badge (🌐 Public / 🔑 Bearer / 👤 Admin) + rate limit.
- Callouts — non-obvious behavior, gotchas, kill switches, vendor abstraction notes.
- Request — path / query / body / header tables, with
class-validatorrules preserved. - Response — success envelope + every error code with
i18nKey. - Side effects — DB writes, queued jobs, audit log entries, kill-switch gates, cache invalidations.
- Code samples —
curl+TypeScript fetch+TanStack Queryhook (copy-paste ready). - Try it — interactive playground with auto-generated cURL/JS/Go/Python/Java/C# samples.
- Source —
path:linereferences back to the backend code (5-source verify: controller + DTO + service + Prisma + cache/util).
Conventions across the API
- Response envelope — every successful response is
{ "success": true, "data": T }. Errors are{ "success": false, "error": { code, message, i18nKey?, details?, correlationId } }. - Refresh tokens — set as
httpOnly,secure,SameSite=Strictcookie scoped to.bio.re. Browsers send + receive automatically; mobile clients can pass via body. - Idempotency — mutating endpoints accept
Idempotency-Keyheader where supported; the side-effects table notes which writes are atomic. - Locales — 20 active locales, error responses include
i18nKeyfor UI mapping. - Admin-managed providers — every external integration (email, SMS, push, captcha, KYC, payment, OAuth, storage) is selected by admin at runtime. The portal never names the active vendor (e.g., "SendGrid" / "Twilio"); endpoints reference the abstraction (
external.email.active_provider, etc.). Frontend reads the abstract token; the backend resolves to whichever vendor is currently active. Stripe is the lone exception — load-bearing infra, not a swappable vendor. - Two databases — most endpoints write to the main Postgres (
@biore/prisma). Analytics tracking endpoints write to a separate Analytics DB (@biore/prisma-analytics) — joins between the two happen in application code.
Machine-readable surfaces
| Surface | URL | Purpose |
|---|---|---|
| OpenAPI spec | /openapi/full.json | Full Swagger spec — feeds the "Try it" playground on every endpoint page (945 KB). |
| Public-only OpenAPI | /openapi/public.json | Public endpoints only. |
| User-auth OpenAPI | /openapi/user.json | Public + JWT-bearer endpoints. |
| Admin OpenAPI | /openapi/admin.json | Admin-scope endpoints. |
| Sitemap | /sitemap.xml | Every URL on this site (179 entries). |
llms.txt | /llms.txt | Compact module + endpoint index for LLMs. |
llms-full.txt | /llms-full.txt | Full content of every endpoint page in one file (1.4 MB) for LLM consumption. |
| Per-page Markdown | /llms.mdx/docs/<path>/content.md | Raw MDX of any individual page. |