/
RE
rewritelifestyle
Search skmtc…
⌘K
Docs
Sign in
Docs
History
Schema
Generate
Filter operations
Access Codes
1
Admin
167
get
/api/admin/peer-reports
Client-to-client reports, newest first
get
/api/admin/peer-reports/{reportId}
One report with the messages attached to it
post
/api/admin/peer-reports/{reportId}/resolve
Dismiss, warn, suspend or ban
post
/api/admin/peer-reports/{reportId}/triage
Mark a report as looked at
post
/api/admin/peer-reports/{reportId}/freeze
Pause the thread of an open safety report while it is reviewed
post
/api/admin/peer-reports/{reportId}/unfreeze
Lift the pause on a report's thread
post
/api/admin/peer-reports/{reportId}/messages/{messageId}/remove
Remove a reported message from the thread. The report keeps its copy.
post
/api/admin/peer-reports/{reportId}/legal-hold
Keep a report past its retention period, or release it
post
/api/admin/peer-reports/users/{userId}/lift
End a client's messaging suspension or ban
get
/api/admin/chat/settings
Chat-wide settings, including the client DM release switch
patch
/api/admin/chat/settings
Turn client-to-client DMs on or off for every client
get
/api/admin/work-items
Ops queue: every work item (scheduling sweeps, alert assignments, …), filterable and paged
patch
/api/admin/work-items/{id}
Resolve, dismiss, or reassign an open work item. Items owned by a client alert or an assignment step are read-only here; assignees must be active coaches.
get
/api/admin/provisioning
Provisioning rows: filter by status, search by email or GHL contact id
get
/api/admin/provisioning/program-tags
Which GHL tag means which program
post
/api/admin/provisioning/program-tags
Map another GHL tag to a program (stored lowercased)
delete
/api/admin/provisioning/program-tags/{tagId}
Remove a tag mapping; contacts left with no mapped tag are revoked when they next change
get
/api/admin/provisioning/by-user/{userId}
The provisioning row behind a client (Sold-By), or null
get
/api/admin/provisioning/{id}
One row with its full change log
patch
/api/admin/provisioning/{id}
Change program or end date; the row stops following GHL
post
/api/admin/provisioning/{id}/retry
Re-run matching and the grant from the row's stored GHL values
post
/api/admin/provisioning/{id}/dismiss
Close a failed row, with a note
post
/api/admin/provisioning/{id}/resend-code
Send a new access code to the client's email (pending rows)
post
/api/admin/provisioning/{id}/resume-sync
Hand the row back to the poller and apply what GHL says
get
/api/admin/validate-access
Validate admin panel access token
post
/api/admin/switch-to-app
Generate token to switch from admin panel to app
get
/api/admin/dashboard-stats
Get admin dashboard statistics
get
/api/admin/dashboard-summary
Comprehensive admin dashboard with optional date range and prior-period comparison
get
/api/admin/dashboard-summary-beta
Fixed dashboard-summary (admin_data_fixes) — see docs/dashboard-validation/runbook.md
get
/api/admin/users
List users with pagination and filtering
post
/api/admin/users
Admin creates a new user account with a temporary password sent by email
get
/api/admin/users/{id}
Get full user detail including profile, subscription and macros
patch
/api/admin/users/{id}
Update user and profile fields (admin only)
get
/api/admin/programs
List available program types (admin and coach)
post
/api/admin/users/{id}/enroll
Enroll a client into a program (admin and coach; only an admin can reinstate a past client)
get
/api/admin/users/{id}/enrollments
Enrollment history for a client (admin and coach)
patch
/api/admin/enrollments/{id}/status
Complete or drop a single enrollment — the same write-through ProgramService.setStatus applies for the automatic client-enrollment-expiry sweep, so a manual fix here can never disagree with what the sweep would have done.
post
/api/admin/legal/policy-versions
Publish a new policy version — the guard and GET /legal/current pick it up immediately (cache invalidated on write)
get
/api/admin/legal/notice-campaigns
All notice campaigns with their progress, newest first
post
/api/admin/legal/notice-campaigns
Create a policy-change notice email (draft)
post
/api/admin/legal/notice-campaigns/preview
Render unsaved notice copy as a recipient would get it (sends nothing)
get
/api/admin/legal/notice-campaigns/{id}
Notice campaign progress
patch
/api/admin/legal/notice-campaigns/{id}
Edit a notice campaign that has not started sending
post
/api/admin/legal/notice-campaigns/{id}/test
Send the saved notice to 1–10 sample addresses (not recorded; no user is emailed)
get
/api/admin/legal/notice-campaigns/{id}/recipients
Review list: the users the next send would email, in send order
get
/api/admin/legal/notice-campaigns/{id}/excluded
Users excluded from a notice, with who excluded them and why
post
/api/admin/legal/notice-campaigns/{id}/exclude
Take users out of a notice (test or internal accounts); users already emailed are unchanged
post
/api/admin/legal/notice-campaigns/{id}/include
Put excluded users back in a notice
post
/api/admin/legal/notice-campaigns/{id}/send-batch
Email a reviewed batch of 1–500 users
get
/api/admin/legal/notice-campaigns/{id}/sends
Delivery log: users sent, retrying, failed or excluded, newest first
get
/api/admin/legal/notice-campaigns/{id}/failed
Sends that failed three times and were given up on, with the last error
post
/api/admin/legal/notice-campaigns/{id}/retry-failed
Put failed sends back in the queue
get
/api/admin/legal/notice-campaigns/{id}/reports
Stored delivery reports for a notice, newest first
post
/api/admin/legal/notice-campaigns/{id}/reports
Freeze a delivery report (the record of notice) into the database
get
/api/admin/legal/notice-reports/{reportId}
One stored delivery report, exactly as generated (`payload` hashes to `sha256`)
post
/api/admin/legal/notice-campaigns/{id}/start
Start (or resume) emailing every live account
post
/api/admin/legal/notice-campaigns/{id}/pause
Pause a notice campaign; emails already sent stay recorded
get
/api/admin/compliance/access-log
Coach access log, filtered by reward grant, live user or archived subject
get
/api/admin/users/{id}/compliance-record
A live user's consent events and coach access log (REW-977 evidence)
get
/api/admin/compliance/subjects/{subjectRef}
A deleted account's retained consent events and coach access log
post
/api/admin/compliance/lookup
Re-link a deleted account's compliance record by email (disputes, REW-977)
patch
/api/admin/compliance/legal-hold
Place or lift a legal hold on a compliance record (REW-1088)
post
/api/admin/programs/backfill-expired-clients
One-time backfill: flip an explicit list of clients whose program already ended to member access. Not a sweep of all history -- the caller supplies exactly who to fix.
post
/api/admin/users/{id}/reset-password
Admin resets a user password and notifies via email
post
/api/admin/users/{id}/reactivate
Reactivate a soft-deleted user within the 30-day grace window
get
/api/admin/users-with-groups
List users with their group assignments
get
/api/admin/user-macro-targets/{userId}
Get macro targets for a specific user
get
/api/admin/lead-users
Get lead/trial users with trial status, paginated
patch
/api/admin/lead-users/{id}/extend-trial
Extend trial period for a lead user by N days
delete
/api/admin/groups/{id}
Soft-delete a group (sets is_active = false)
patch
/api/admin/groups/{id}
Update group name, description, startDate, endDate, or programId
get
/api/admin/pending-subscriptions
List subscriptions awaiting user signup (pending_email set)
post
/api/admin/pending-subscriptions/{id}/attach
Manually attach a pending subscription to a user account
get
/api/admin/subscriptions
List subscriptions with optional filters and pagination
get
/api/admin/subscriptions/{id}/details
Subscription detail bundle for the troubleshooting modal
post
/api/admin/subscriptions/{id}/override
Override subscription status for support workflows
post
/api/admin/subscriptions/{id}/refresh-from-stripe
Refresh a Stripe subscription from the Stripe API
get
/api/admin/founder-stats
Get founder count and remaining marketing slots
post
/api/admin/grant-access
Grant temporary premium access to a user
get
/api/admin/access-codes
List access codes with filtering
post
/api/admin/access-codes
Create a new access code
get
/api/admin/notification-logs
Query push notification logs for debugging
get
/api/admin/error-logs
Query app error logs with filters
get
/api/admin/webhook-events
Query webhook events with filters
post
/api/admin/webhook-events/{id}/reprocess
Replay a saved webhook event through the standard handler
get
/api/admin/marketing-events
Query the AppsFlyer S2S outbox with filters
get
/api/admin/marketing-events/summary
Outbox status counts + current config posture
post
/api/admin/marketing-events/{id}/retry
Re-enqueue one failed/pending_identity marketing event
get
/api/admin/users/{id}/attribution-devices
AppsFlyer-linked devices for one user — diagnostic for the marketing attribution panel
get
/api/admin/groups
List groups with member counts
post
/api/admin/groups
Create a new group
post
/api/admin/groups/assign-user
Assign user (or pending user) to a group
post
/api/admin/groups/message
Send message to all active members of a group
get
/api/admin/groups/{id}/members
List members of a group
delete
/api/admin/groups/{id}/members/{userId}
Remove a member from a group
get
/api/admin/groups/{id}/progress
Get progress stats, nutrition panel and chart data for a group
get
/api/admin/groups/{id}/available-users
Get users not yet assigned to a group
post
/api/admin/groups/{id}/complete-program
Mark all active members of a group as program completed. Requires group name confirmation to prevent accidental bulk updates.
post
/api/admin/send-coach-note
Send coach note to a client (supports urgent flag)
post
/api/admin/update-macro-goals
Update macro goals for a user (admin override)
get
/api/admin/ai-usage-stats
Aggregate AI token usage stats
get
/api/admin/ai-usage-by-feature
AI token usage breakdown by feature
get
/api/admin/ai-usage-by-user
Top users by AI token consumption
get
/api/admin/ai-usage-timeline
AI token consumption over time
get
/api/admin/yesterday-activity/{userId}
Get a user's food and water activity from yesterday
get
/api/admin/group/{groupId}/inches-lost-timeline
Get aggregated inches-lost timeline for a group
post
/api/admin/rag/add
Add an entry to the RAG knowledge base
get
/api/admin/rag/content
Search/browse RAG knowledge base entries
get
/api/admin/rag/statistics
Get RAG knowledge base statistics by category
post
/api/admin/rag/process-transcript
Process a full transcript via AI (requires OpenAI)
post
/api/admin/rag/process-transcript-chunk
Process a transcript chunk via AI (requires OpenAI)
post
/api/admin/rag/save-processed-transcript
Save processed transcript results to RAG (requires OpenAI)
delete
/api/admin/rag/{id}
Delete a RAG knowledge base entry
get
/api/admin/questionnaire/surveys
List all surveys (admin view)
post
/api/admin/questionnaire/surveys
Create a new survey (e.g. a future H20-03 group-wide survey)
patch
/api/admin/questionnaire/surveys/{id}
Update a survey — isActive is the visibility toggle: false makes every question in it unfetchable
get
/api/admin/questionnaire/questions
List questions with options (admin view)
post
/api/admin/questionnaire/questions
Create a new question (with optional inline options)
put
/api/admin/questionnaire/questions/{id}
Update a question
delete
/api/admin/questionnaire/questions/{id}
Soft-delete a question (set is_active=false)
post
/api/admin/questionnaire/questions/{id}/options
Add an option to a question
put
/api/admin/questionnaire/options/{id}
Update an option
delete
/api/admin/questionnaire/options/{id}
Soft-delete an option (set is_active=false)
get
/api/admin/rate-limits
List all AI rate limit configs (all tiers × features)
put
/api/admin/rate-limits/{id}
Update per_hour/day/month/year limits for a tier+feature row
post
/api/admin/rate-limits/refresh
Bust rate limit config cache — changes go live within seconds
get
/api/admin/rate-limits/usage/{userId}
Get current AI usage counters for a specific user
get
/api/admin/ui-pools
List all free-user UI pool configs (lifetime limits)
put
/api/admin/ui-pools/{id}
Update max_uses for a UI pool
post
/api/admin/ui-pools/refresh-cache
Bust UI pool config cache
get
/api/admin/feedback
List user feedback submissions
get
/api/admin/feedback/{id}
Get a single feedback submission
patch
/api/admin/feedback/{id}
Update feedback status or admin notes
post
/api/admin/chat/repair-rooms
Backfill any missing DM rooms and group chat memberships (idempotent)
get
/api/admin/notification-preference-types
List all notification preference types (including inactive)
put
/api/admin/notification-preference-types/{id}
Update a notification preference type label/status/role restrictions
get
/api/admin/subscribers
List marketing subscribers with pagination
get
/api/admin/subscribers/email-templates
List available marketing email templates and their required variables
post
/api/admin/subscribers/send-email
Send a marketing email to all verified subscribers
get
/api/admin/bridge-logs
Query Lucille Bridge API interaction logs (admin only)
delete
/api/admin/bridge-logs/purge
Purge Lucille Bridge logs older than 30 days (admin only)
get
/api/admin/user/{id}/weight-progression
Get user weight progression with start/goal weight
get
/api/admin/user/{id}/trends/inches
Get user body measurement trends (total inches)
get
/api/admin/user/{id}/tracking-summary/{year}/{month}
Get daily tracking summary for a month
get
/api/admin/user/{id}/day-details/{date}
Get detailed activity for a specific day
get
/api/admin/user/{id}/coach-goals
Get current coach goals for a client
post
/api/admin/user/{id}/coach-goals/update
Save/update coach goals for a client
get
/api/admin/user/{id}/coach-goals/history
Get coach goals history for a client
get
/api/admin/user/{id}/coach-notes/all
Get all coach notes for a client
get
/api/admin/user/{id}/client-notes
Get client session/laser-coaching notes
get
/api/admin/user/{id}/food-logs-summary
Get food logging stats (total entries, days logged, streak)
get
/api/admin/users/{id}/questionnaire
Get questionnaire answers for a user
get
/api/admin/users/{id}/questionnaire/export
Export questionnaire answers as text
get
/api/admin/user/{id}/measurements/latest
Get latest body measurements for a user
get
/api/admin/user/{id}/progress-photos
Get progress photos for a user
get
/api/admin/agents
List all agents with referral counts
post
/api/admin/agents
Create a new agent
get
/api/admin/agents/{id}
Get agent details with QR codes and referral count
patch
/api/admin/agents/{id}
Update agent (name, email, phone, is_active)
get
/api/admin/agents/{id}/qr-codes
List QR codes for an agent
post
/api/admin/agents/{id}/qr-codes
Create a QR code for an agent
delete
/api/admin/agents/{agentId}/qr-codes/{qrCodeId}
Delete a QR code
patch
/api/admin/agents/{agentId}/qr-codes/{qrCodeId}
Update a QR code (label, trial_days, max_scans, is_active)
post
/api/admin/notifications/policy-v21
Deprecated (v2.1 copy) — use POST /admin/legal/notice-campaigns
delete
/api/admin/user/{id}/health-data
Delete all health-domain data for a user
get
/api/admin/pc/settings
Program Coordinator messaging settings
patch
/api/admin/pc/settings
Change how long a lead waits before another PC may take over
Admin - Activity Log
5
Admin - Admin Activity Log
2
Admin - Audit Log
2
Admin - Campaigns
12
Admin - Engagement Segments
4
Admin - Promotions
4
Admin - Provider Truth
2
Admin - Revenue Drilldown
6
Admin - Rollout Cohort
3
Admin - Subscriber Segments
6
Admin — Assignments
5
Admin — Attendance
2
Admin — Client status
3
Admin — Coach stats
2
Admin — Recordings
2
Admin Push Campaigns
3
admin-scheduling
6
AI Coach
5
Announcements
4
App
3
App sessions
1
Assignments
5
Auth
18
badges
1
Bowel Movements
7
Bridge Key Admin
8
Campaigns
7
chat
32
Coach
58
Coach — Announcements
6
Coach — Assignments
11
Coach — Attendance
5
Coach — Group overview
2
Coach — Group surveys
3
Coach — Recordings
3
coach-scheduling
31
Communication
8
Cookbook
26
Diary
9
Digestive Symptoms
8
Error Logs
1
Favorite Meals
7
Feedback
1
Food Log
17
Health
35
Journey
11
Legal
1
Location
1
Lucille Bridge
42
Lucille Seed Admin
2
Marketing Attribution
1
Meal Notes
5
Meal Plans
18
Medical Overrides
3
Medical Overrides — Admin/Coach
3
notifications
4
pc
13
Progress & Tracking
13
Promotions
1
Questionnaire
6
referral
1
Rewards
34
Rewards (admin)
54
Rewards (QA)
12
Scheduled Meals
5
scheduling
22
Shenellebot
1
Subscribers
2
Subscription
14
Users
11
Water & Vitamins
17
Weight & Measurements
10
Admin
Copy
Copy Markdown
Copy Markdown
Copying…
Copied
Copy failed
Changes to Re-run matching and the grant from the row's stored GHL values
post
/api/admin/provisioning/{id}/retry
Oct 19, 2026
0c72870a5acb
Revision changes
info
endpoint added