Reference overview
API Reference
All routes live under /v1/. Most endpoints are scoped to a connected OnlyFans account and accept account_id as the first path segment. Authentication is by API key.
Reference directory
Chats
11Messages
10Subscribers
8Fans
5Notifications
7System
1Mass Messages
10Schedules
4User Lists
10Subscriptions
1Tracking Links
6Trial Links
9Tags
8Activity
1Highlights
1Reach
5Referrals
4Payouts
7Vault
13- List Vault Medialive
- List Vault Listslive
- List Vault Media Processinglive
- Get Vault Media Typeslive
- Sort Vault Listslive
- Get Vault Media Release Formslive
- Lookup Vault Media by Hashlive
- Delete Vault Medialive
- Create Vault Listlive
- Rename Vault Listlive
- Delete Vault Listlive
- Add Media To Vault Listlive
- Remove Media From Vault Listlive
Media Upload
2Base URL and authentication
Every authenticated route lives under /v1/. Pass your API key in one of two ways: Authorization: Bearer fm_api_... or X-API-Key: fm_api_....
Rate limits are enforced per organization, so all keys in the same org share the same limit windows.
- Base URL:
https://public-api.fansmetric.com - Health check (no auth):
GET /health - Auth header:
Authorization: Bearer fm_api_...orX-API-Key: fm_api_...
Response envelope
Successful responses are wrapped in a standard envelope with data, optional _pagination, and _meta. The data shape varies per endpoint. _pagination is omitted on the last page. _meta is present on every authenticated response and contains credit usage and rate-limit info.
data— the response payload (object, array, or wrapper)_pagination.next_page— relative URL to the next page, or omitted_meta._credits.used— credits consumed:1on success and on any error past the auth gate (400, 402, 403, 404, 413, 424, 5xx);0only when auth itself fails (401) or you are throttled (429)_meta._rate_limits—limit_minute,remaining_minute,limit_day,remaining_day- Errors do not use the envelope:
{ "error": "..." }
Available endpoints
Each endpoint has a per-route permission. An API key only sees the routes its role grants.
- Accounts: list accounts, get current account
- Chats: list, hide, delete, mute/unmute, mark as read, list chat media, list chat lists
- Messages: list, search, send, unsend, like/unlike, pin/unpin
- Mass messages: list, send, list queue, cancel queue, list fan lists
- User lists: full CRUD plus member add/remove
- Subscribers: counts, list, top, latest, following, restricted, blocked, profile by username
- Fans: detail by id, batch detail by ids, update display name, update/delete notes
- User actions: block, report, restrict/unrestrict
- Subscriptions: history
- Notifications: list, mark read, count, get/update tabs order
- GIFs: trending, search
- Tracking links: list, share-access, claimers, get, create, delete
- Campaigns: list (alias of tracking-links), chart, overview
- Trial links: list, share-access, subscribers, chart, overview, stats, get, create, delete
- Tags: list, create, set/bulk add/remove on tracking and trial links