post/v1/auth/merchant/login
Merchant rep login (password or OTP)
Request body
| Field | Type | Required |
|---|
| email | string (email) | — |
| password | string | — |
Response (200)
| Field | Type | Required |
|---|
| accessToken | string | — |
| refreshToken | string | — |
post/v1/auth/merchant/otp/request
Request email OTP for merchant rep login
Request body
| Field | Type | Required |
|---|
| email | string (email) | yes |
post/v1/auth/merchant/otp/verify
Verify merchant rep OTP and issue a session
Request body
| Field | Type | Required |
|---|
| email | string | yes |
| code | string | yes |
Response (200)
| Field | Type | Required |
|---|
| accessToken | string | — |
| refreshToken | string | — |
post/v1/auth/member/register
Direct self-registration for a Marketplace profile (Phase 22) — the primary way anyone joins TBBN now. See docs/business/conflict-resolution-log.md item 18.
Request body
| Field | Type | Required |
|---|
| name | string | yes |
| email | string (email) | — |
| phone | string | — |
post/v1/auth/member/otp/verify
Complete self-registration and issue a session
Request body
| Field | Type | Required |
|---|
| target | string | yes |
| code | string | yes |
Response (200)
| Field | Type | Required |
|---|
| accessToken | string | — |
| refreshToken | string | — |
post/v1/auth/seller/otp/request
Request OTP for a marketplace member's direct TBBN Exchange login
Request body
| Field | Type | Required |
|---|
| email | string (email) | yes |
post/v1/auth/seller/otp/verify
Verify marketplace member OTP and issue a session
Request body
| Field | Type | Required |
|---|
| email | string | yes |
| code | string | yes |
Response (200)
| Field | Type | Required |
|---|
| accessToken | string | — |
| refreshToken | string | — |
post/v1/auth/seller/magic-link/request
Request a passwordless magic link for a marketplace member
Request body
| Field | Type | Required |
|---|
| email | string (email) | yes |
get/v1/auth/seller/magic-link/consume
Consume a magic link token, issuing a session
Response (200)
| Field | Type | Required |
|---|
| accessToken | string | — |
| refreshToken | string | — |
post/v1/auth/refresh
Rotate a refresh token for a new access token
Request body
| Field | Type | Required |
|---|
| refreshToken | string | yes |
Response (200)
| Field | Type | Required |
|---|
| accessToken | string | — |
| refreshToken | string | — |
post/v1/auth/logout
Revoke the current session
get/v1/auth/me
Resolve the current principal from the bearer token
Response (200)
| Field | Type | Required |
|---|
| principalType | merchant_rep | marketplace_member | — |
| userId | string (uuid) | — |
| merchantId | string,null (uuid) | — |
| sellerId | string,null (uuid) | — |
| role | stringnull | — |