BetterFans Link: the OnlyFans APIBetterFans Link

Workspace

Check what a BetterFans Link API key can reach. One call to GET /v1/me returns its workspace, mode, scopes, accounts and rate limit.

Product page: OnlyFans agency API

GET /v1/me takes no account id, so it is the first call to make with a new key. Every route can also return the authentication errors, rate_limited and internal_error.

RouteMethod and pathPlatforms
Who am IGET /v1/meOnlyFans and Fansly

Who am I

GET /v1/me

The workspace, key and rate limit behind the key you sent. Call it to check that a key works.

Needs the read scope.

Returns

200 with a Me object in data.

Example request

curl "https://betterfans.link/v1/me" \
  -H "Authorization: Bearer $BFL_KEY"

Example response

{
  "data": {
    "workspace": {
      "id": "c8Vn2QxT5mRw9LpK4yHb7ZsD",
      "name": "Rivers Agency"
    },
    "key": {
      "id": "key_5Rt8YpLm2QwN6ZxC4VbH9KjD",
      "name": "Reporting script",
      "kind": "secret",
      "mode": "live",
      "scopes": [
        "read"
      ],
      "prefix": "bfl_live_7Kx",
      "accountIds": null
    },
    "accounts": 3,
    "rateLimit": {
      "perSecond": 20,
      "burst": 60
    }
  },
  "meta": {
    "source": "synced",
    "asOf": null,
    "requestId": "req_7Hq2LmX9pRt4VbN8cKe3WzYa"
  }
}

The Me object

What GET /v1/me returns.

FieldTypeDescription
workspaceobjectThe workspace the key belongs to.
workspace.idstringWorkspace id.
workspace.namestringWorkspace name.
keyobjectThe key that made this request.
key.idstringKey id.
key.namestringThe name given to the key when it was created.
key.kindenumsecret for keys made in the dashboard, oauth for keys an MCP client got through OAuth, dashboard for the dashboard itself.
key.modeenumlive reads linked accounts, test reads the sandbox creators.
key.scopesarray of enumsread covers every GET and creating links; write also creates actions. Each one of read or write.
key.prefixstringThe first 12 characters of the key, safe to show and log.
key.accountIdsarray of strings or nullThe accounts the key is limited to. null means every account in the workspace.
accountsintegerHow many accounts this key can use.
rateLimitobjectThis key's rate limit.
rateLimit.perSecondnumberRequests per second the limit refills.
rateLimit.burstnumberThe most requests allowed at once.

On this page