Route Reference
Admin and Organization
Partner administration, organization settings, notices, Discord administration, and trust-safety enforcement records. Includes generated endpoint contracts from partners-api source.
First created Last updated
End-to-end developer runbook
- Step 1 - Confirm the API area: Identify the product area, route module, endpoint path, and consumer before writing or calling code.
- Step 2 - Read the endpoint contract: Check method, auth, parameters, response, errors, side effects, and related docs.
- Step 3 - Prepare authentication and input: Use the right session, bearer token, webhook secret, or internal header. Validate body and query data before sending it.
- Step 4 - Make the request: Call the endpoint from the correct origin and environment. Keep credentials and secrets out of logs.
- Step 5 - Verify response, side effects, and records: Confirm status code, response shape, database records, external side effects, and audit evidence.
- Step 6 - Add tests, docs, and handoff notes: Update route inventory, consumer notes, and certification checks before depending on the change.
Family summary
Profile formatting settings
FPH admins can open Profile settings at Admin Profile settings to enable or disable Allow line breaks in bios. The default is off. The setting applies to optional personal bios in Partners, Rego, and the external EPS staff directory. Toggling it preserves stored bio text; a later explicit bio save uses the current formatting policy.
GET /api/admin/profile-settings returns { "allowBioNewlines": false }.
PATCH /api/admin/profile-settings accepts exactly one boolean field,
allowBioNewlines, and returns the saved policy. Both require an enabled canonical
FPH admin membership. Partner administrators and other FPH roles cannot manage
this platform setting. Writes also require recent MFA verification and create
an audit record. Reload the saved setting after an interrupted request before
deciding whether another save is needed.
Partner administration, organization settings, notices, Discord administration, and trust-safety enforcement records.
Modules audited
admin.ts: 16 generated endpoint entries.adminDiscord.ts: 2 generated endpoint entries.orgSettings.ts: 3 generated endpoint entries.notices.ts: 5 generated endpoint entries.networkBans.ts: 8 generated endpoint entries.
Endpoint table
| Method | Path | Module | Auth scan | Source |
|---|---|---|---|---|
POST | /api/admin/discord/messages | adminDiscord.ts | Partner dashboard session required. | partners-api/src/routes/adminDiscord.ts:49 |
GET | /api/admin/discord/targets | adminDiscord.ts | Partner dashboard session required. | partners-api/src/routes/adminDiscord.ts:11 |
DELETE | /api/admin/events/:eventId/registrations | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:976 |
GET | /api/admin/members | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:183 |
POST | /api/admin/members | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:214 |
DELETE | /api/admin/members/:membershipId | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:321 |
PATCH | /api/admin/members/:membershipId | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:383 |
GET | /api/admin/notices | notices.ts | Partner dashboard session required. | partners-api/src/routes/notices.ts:218 |
POST | /api/admin/notices | notices.ts | Partner dashboard session required. | partners-api/src/routes/notices.ts:236 |
PATCH | /api/admin/notices/:id | notices.ts | Partner dashboard session required. | partners-api/src/routes/notices.ts:350 |
GET | /api/admin/partners | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:63 |
POST | /api/admin/partners | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:78 |
PATCH | /api/admin/partners/:partnerId | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:121 |
POST | /api/admin/partners/:partnerId/cms-token | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:465 |
GET | /api/admin/platform-fee | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:612 |
PATCH | /api/admin/platform-fee | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:625 |
GET | /api/admin/platform-security | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:932 |
PATCH | /api/admin/platform-security | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:942 |
PUT | /api/admin/settlement-payment-providers | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:798 |
GET | /api/admin/settlement-settings | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:676 |
PATCH | /api/admin/settlement-settings | admin.ts | Partner dashboard session required. | partners-api/src/routes/admin.ts:714 |
GET | /api/network-bans/:watchlistEntryId | networkBans.ts | Partner dashboard session required. | partners-api/src/routes/networkBans.ts:218 |
PATCH | /api/network-bans/:watchlistEntryId/appeal | networkBans.ts | Partner dashboard session required. | partners-api/src/routes/networkBans.ts:522 |
POST | /api/network-bans/:watchlistEntryId/appeal | networkBans.ts | Partner dashboard session required. | partners-api/src/routes/networkBans.ts:277 |
GET | /api/network-bans/:watchlistEntryId/appeal-status | networkBans.ts | Partner dashboard session required. | partners-api/src/routes/networkBans.ts:357 |
GET | /api/network-bans/:watchlistEntryId/appeals | networkBans.ts | Partner dashboard session required. | partners-api/src/routes/networkBans.ts:417 |
GET | /api/network-bans/appeals | networkBans.ts | Partner dashboard session required. | partners-api/src/routes/networkBans.ts:14 |
POST | /api/network-bans/appeals/:appealId/decision | networkBans.ts | Partner dashboard session required. | partners-api/src/routes/networkBans.ts:94 |
GET | /api/network-bans/my-appeals | networkBans.ts | Partner dashboard session required. | partners-api/src/routes/networkBans.ts:154 |
POST | /api/notices/:id/ack | notices.ts | Partner dashboard session required. | partners-api/src/routes/notices.ts:192 |
GET | /api/notices/unacked | notices.ts | Partner dashboard session required. | partners-api/src/routes/notices.ts:133 |
GET | /api/org/settings | orgSettings.ts | Partner dashboard session required. | partners-api/src/routes/orgSettings.ts:86 |
PATCH | /api/org/settings | orgSettings.ts | Partner dashboard session required. | partners-api/src/routes/orgSettings.ts:113 |
POST | /api/org/settings/data-silo/backfill | orgSettings.ts | Partner dashboard session required. | partners-api/src/routes/orgSettings.ts:207 |
Endpoint contract notes
- Action 1 - Verify unknowns: The table is source-generated, but fields marked unknown need manual handler review.
- Action 2 - Check source line: Use the source line as the starting point for exact request, response, and side-effect behavior.
- Action 3 - Review consumers: Search dashboard, rego, EMS LAN, and webhook callers before changing a path or response.
- Action 4 - Update inventory: Regenerate after any route change.