Skip to main content
PATCH
Update a fan

Authorizations

Authorization
string
header
required

An API key (onx_sk_…) created in OnlyX under Settings → API & MCP, or an OAuth access token (onx_at_…) issued to a connected app. Send it as Authorization: Bearer <credential>. API keys may also be sent as X-API-Key: <key>.

Headers

Idempotency-Key
string

Optional. A unique value (8 to 64 letters, digits, - or _; a UUID is ideal) that makes a retry safe: the same key with the same request within 24 hours returns the stored response, with Idempotent-Replayed: true, instead of doing the work twice. The same key with a different request is 409 IDEMPOTENCY_KEY_REUSED; while the first request still runs it is 409 IDEMPOTENCY_IN_PROGRESS. A malformed key is 400 VALIDATION_ERROR.

Required string length: 8 - 64
Pattern: ^[A-Za-z0-9_-]{8,64}$

Path Parameters

fanId
string
required

The fan id (fan_…), from GET /v1/fans.

Maximum string length: 40

Body

application/json

Only your team's own fields. Anything else — including any AI setting — is refused.

customName
string | null

A name your team recognizes, shown instead of the OnlyFans name in OnlyX. "" or null clears it.

Maximum string length: 160
muted
boolean | null

Your team's mute flag. It never mutes or blocks the fan on OnlyFans.

notes
string | null

Free-text notes for your team (up to 4,000 characters). "" or null clears them.

Maximum string length: 4000

Response

The updated fan.

avatarUrl
string | null
required

The fan's OnlyFans avatar, when known.

conversationId
string | null
required

The conversation with this fan, or null if there is none yet.

createdAt
string | null
required

When OnlyX first saw this fan.

creatorId
string
required

The creator this fan subscribes (or subscribed) to.

customName
string | null
required

The name your team gave this fan in OnlyX. Only your team sees it.

displayName
string
required

The fan's OnlyFans display name.

id
string
required

The fan id (fan_…). A fan belongs to one creator.

lastActiveAt
string | null
required

The fan's last activity OnlyX saw (a message or a purchase).

lastPurchaseAt
string | null
required

The fan's last purchase.

lists
FanListRef · object[]
required

The creator's fan lists this fan is on.

muted
boolean
required

Your team's mute flag in OnlyX. It never mutes or blocks the fan on OnlyFans.

notes
string | null
required

Your team's notes on this fan.

paidMessagesCents
integer
required

Paid-message purchases, in cents.

renewOn
boolean | null
required

Whether auto-renew is on. null when OnlyFans has not said.

salesOptOut
boolean
required

true when the fan asked not to be sold to. Paid messages to this fan are refused with 409 SALES_OPTED_OUT, and the AI does not sell to them.

subscribed
boolean
required

true while the subscription is active.

subscribedAt
string | null
required

When the current (or last) subscription started.

subscriptionExpiresAt
string | null
required

When the current subscription ends or ended.

subscriptionPriceCents
integer | null
required

What the fan pays per period, in cents. 0 on a free page.

tipsCents
integer
required

Tips, in cents.

totalSpentCents
integer
required

Everything the fan has spent on this creator, in cents.

username
string | null

The fan's OnlyFans username, when known.