ofapisv1
pay per call, not per seat

Simple, usage-based OnlyFans API pricing

Every plan includes the full API. They differ only in monthly credits, linked accounts and rate limit. Start free — no card required.

Free
$0forever

Kick the tires with no card.

Start free
  • Full API — every endpoint
  • 250 credits / month
  • 1 linked account
  • 60 requests / min
  • Shared proxy pool
  • Real-time usage ledger
  • Community support
Starter
$39/ month

For a single creator in production.

Get Starter
  • Everything in Free
  • 30,000 credits / month
  • 1 linked account
  • 100 requests / min
  • Dedicated proxy for your account
  • Outbound webhooks
  • Email support
Most popular
Pro
$159/ month

For agencies running several creators.

Get Pro
  • Everything in Starter
  • 120,000 credits / month
  • 5 linked accounts
  • 500 requests / min
  • Dedicated proxy per creator
  • Account-scoped API keys
  • Priority support
Enterprise
Custom

Volume, SLA and a negotiated roster.

Contact us
  • Everything in Pro
  • Volume credit pricing
  • Linked-account count agreed on the quote
  • Custom rate limit + SLA
  • Invoicing & DPA
  • Dedicated support
Priced by the work a call causes

Most calls cost one credit, and every read does. Four writes cost more because each drives more work upstream: a media upload is 5, a scheduled post or message 3, an account-scoped send 2. A mailing trigger is 0 at the call and then bills one credit per recipient as it runs — the preview step returns the exact figure before you send. Failures outside your control cost nothing: a 401, 402, 403 or 429 is refused before metering, and a 409, 424 or server error is refunded. A malformed request that runs and returns 400, 404, 413, 415 or 422 is charged, because it ran. Every debit lands in the dashboard ledger in real time, so spend is never a black box.

What it costs

Three months of real usage, with the arithmetic

Credits are weighted by the work a call causes, so “calls per month” is not the same as credits per month. These are the weights every sum below is built from.

Any ordinary call1
POST …/chats/{chatId}/messages (account-scoped)2
POST …/scheduled/posts · …/scheduled/messages3
POST …/media (upload)5
POST …/mailings/{id}/trigger0 + 1 per recipient
Solo creator, webhook-driven

One account. Inbound DMs arrive on a message.received webhook, so nothing polls.

  • Chat replies, 40/day, account-scoped send @ 2
    40 × 2 × 302,400
  • Scheduled posts, 2/day @ 3
    2 × 3 × 30180
  • Media attached to them, 2/day @ 5
    2 × 5 × 30300
  • Weekly mailing to 1,200 fans @ 1/recipient
    1,200 × 44,800
  • Reads — /me, /subscribers, /chats — 50/day @ 1
    50 × 301,500
Monthly total9,180
Starter allowance 30,00030.6% used

Under a third of Starter, so there is room to triple the messaging before the plan bites. Free's 250 credits cover roughly four hours of this. The read line stays small only because webhooks replace polling: checking one chat every minute instead would add 43,200 calls a month and blow through Starter on its own.

Small agency, 5 creators

Five linked accounts under one token, each driven through its /accounts/{accountId}/… routes.

  • Chat replies, 60/day/creator @ 2
    60 × 2 × 30 × 518,000
  • Scheduled posts, 3/day/creator @ 3
    3 × 3 × 30 × 51,350
  • Media uploads, 3/day/creator @ 5
    3 × 5 × 30 × 52,250
  • Two mailings a month to 2,500 fans, per creator
    2,500 × 2 × 525,000
  • Reads and roster sync, 100/day/creator @ 1
    100 × 30 × 515,000
Monthly total61,600
Pro allowance 120,00051.3% used

Just over half of Pro — comfortable, with headroom to about double. The constraint that bites first here is not credits but the account ceiling: Pro links 5 creators, so a sixth model needs an Enterprise quote rather than a bigger credit bundle.

Messaging-heavy, mass-DM led

Two high-volume creators, two blasts a week each, chatters working the replies.

  • 5,000-fan blast, 2×/week, 2 creators @ 1/recipient
    5,000 × 2 × 4 × 280,000
  • Chat follow-up, 400/day @ 2
    400 × 2 × 3024,000
  • Fan lookups and reads, 500/day @ 1
    500 × 3015,000
  • Media uploads, 80/month @ 5
    80 × 5400
Monthly total119,400
Pro allowance 120,00099.5% used

99.5% of Pro. The month ends with 600 credits left, so the next 5,000-fan trigger is refused whole with 402 INSUFFICIENT_CREDITS — the debit is all-or-nothing, it does not part-send. This is the shape that outgrows the published tiers; the answer is an Enterprise quote, not a heavier Pro. Watch the clock as well as the budget: at one message per 500 ms a single 5,000-fan run occupies about 42 minutes of dispatch.

The per-minute limit never enters these sums. A mailing is one request no matter how many fans it reaches, and even the messaging-heavy example averages well under one request a minute against Pro's 500 — rpm shapes bursts, the credit allowance shapes the month. Inbound webhook deliveries are not metered at all, which is why the read lines stay small: the same workloads polled once a minute would each add 43,200 calls.

Estimating your usage

Credits map directly to actions, so you can size a plan from your workflow. Two rules cover most of it:

  • Most calls cost one credit. Reads all do. Four writes cost more, because each drives substantially more work upstream: a media upload is 5, a scheduled post or message 3, and an account-scoped send 2.
  • Mailings are billed per recipient. A mass DM is a single HTTP request — cheap against your rate limit — but it debits recipientCount × perRecipientWeight credits, one per fan by default. A blast to 3,000 subscribers costs about 3,000 credits, so always run the preview endpoint before you trigger.

Polling a chat every minute for one account is ~43,000 calls a month, which already argues for signed webhooks over polling. A rough guide:

Workload Approx. credits / mo
One creator, event-driven via webhooks 2,000–8,000
One creator, active messaging bot polling 30,000–60,000
Weekly mass DM to 3,000 fans ~12,000 (campaign spend alone)
Small agency, 5 creators, mixed automation 80,000–150,000

If polling dominates your bill, switch the noisy paths to webhooks. Inbound deliveries are not metered at all, so the event is free where the poll that would have found it costs a credit every single time it runs.

Why per-call beats "unlimited"

"Unlimited" pricing usually hides its cost in per-account seat fees that grow with an agency's roster. Per-call pricing keeps the bill proportional to the work your integration does, and the errors outside your control cost nothing: a 401, 402, 403 or 429 is refused before metering, and a 409, 424 or 5xx is refunded automatically. A malformed request that runs and returns 400, 404, 413, 415 or 422 is charged. See the alternatives overview for how this compares to seat-based providers, or read how to make your first call.

Pricing FAQ

Is there a free OnlyFans API plan?+

Yes — Free gives you 250 credits a month and one linked account, with no credit card required. Make your first call in minutes and upgrade only when your volume needs it.

What counts as a credit?+

Credits are weighted by how much work a call causes, not flat. An ordinary call is 1. An account-scoped chat send is 2, creating a scheduled post or message is 3, and a media upload is 5. A mailing trigger is 0 at the call itself — the run then debits one credit per recipient, so a 5,000-fan blast costs 5,000 credits. Run the preview step for the exact figure before you trigger; every debit lands in the dashboard ledger in real time.

Do failed calls cost credits?+

Not the ones outside your control. A 401, 402, 403 or 429 is refused before anything is debited, and a server error, an expired OnlyFans session or an idempotency conflict is refunded automatically. A malformed request that reaches the API and comes back 400, 404 or 422 is charged, because it ran — so validate input rather than probing.

Can I link more than one creator account?+

Yes — Pro includes 5 linked accounts, and above that the roster size is negotiated on an Enterprise quote. Each account is addressable under scoped routes for clean multi-creator automation.

What happens if I run out of credits mid-month?+

Every further call returns 402 INSUFFICIENT_CREDITS and stops at the gateway — nothing reaches OnlyFans and nothing is charged past your plan. The debit is all-or-nothing against the call's weight, so a 5-credit media upload is refused outright while you still hold 4 credits, and a mailing whose recipient count exceeds your balance never starts rather than part-sending. Upgrading in the dashboard applies the new allowance immediately.

Are rate limits the same as credits?+

No. Credits are your monthly budget; the rate limit (rpm) caps how many requests you can send per minute. A plan can have credits remaining and still return 429 if you exceed its per-minute ceiling.

Can I burn a whole month of credits in one minute?+

With a mailing, yes — which is the one place the two limits come apart. The rate limit is checked before the credit debit, so a 429 never costs you anything, and each limit is counted separately: a blast to 5,000 fans is a single request against your rpm ceiling but 5,000 credits against your allowance. Ordinary calls can't outrun the monthly budget nearly as fast; Pro's 500 rpm would need about four hours of flat-out requests to spend 120,000 credits.

When do credits refill, and do unused ones roll over?+

They do not roll over. Each account has a rolling one-month period anchored to when the plan started, not to the first of the calendar month; an hourly job resets any balance whose period has elapsed. The reset overwrites your balance with the plan allowance — it does not add to it — and writes a MONTHLY_RESET line in the ledger, so an unused 20,000 credits is gone at the boundary rather than banked.

What does the proxy tier actually mean on each plan?+

Free routes your account through a shared pool, which is fine for evaluation and wrong for production — other accounts share that egress IP. Starter and Pro dedicate a static residential proxy to each linked account, held for you rather than rotated, so a creator's traffic keeps a consistent origin. Pro's five accounts get five dedicated proxies, one per creator.

Can I change or cancel my plan?+

Anytime, from the dashboard. Credits refill monthly and unused credits do not roll over.

Start free — 250 credits, no card
Generate a token and make your first call in minutes.
Get started