Skip to main content
OnlyFans Events is a beta Realtime surface that relays upstream OnlyFans websocket activity to your webhook endpoint. It is designed for teams that want to react to live upstream activity before every payload shape has a finalized first-class reference.
Beta status: The delivery path is usable now, but this event family is still being documented. Expect new payload shapes to appear over time, and expect the nested data.json body to evolve as we classify more upstream websocket traffic.

Quick Reference

FieldValue
Delivery typeSvix webhook delivery
Current top-level event typeof.websocket.event.received
SourceUpstream OnlyFans websocket messages
DestinationYour HTTPS webhook endpoint
StatusBeta

How It Works

  1. OFAuth listens to supported upstream OnlyFans websocket traffic for connected accounts.
  2. When a websocket message is received, OFAuth wraps it in a Realtime event envelope.
  3. OFAuth publishes that event through Svix, which handles delivery attempts and delivery logs.
  4. Svix sends the event to the webhook endpoint you configured for your organization.

Connect Your Endpoint

Use the Svix dashboard as the delivery control plane for this beta flow:
  1. Create or select a webhook endpoint in Svix with your public HTTPS receiver URL.
  2. Enable delivery for the Realtime beta event family.
  3. Point your application handler at that endpoint and return 2xx quickly after receipt.
  4. Use the Svix dashboard to inspect deliveries, retries, and failures while you validate your integration.
This page is intentionally brief because the API Reference should describe the surface area, not walk through a full production setup.

Event Envelope

Today, beta websocket relay deliveries use the Realtime event type below:
{
  "type": "of.websocket.event.received",
  "timestamp": "2026-04-18T10:30:00Z",
  "data": {
    "receivedAt": "2026-04-18T10:30:00Z",
    "environment": "production",
    "messageType": "websocket",
    "truncated": false,
    "connection": {
      "id": "conn_abc123",
      "clientReferenceId": "user_456"
    },
    "json": {
      "api2_chat_message": {
        "...": "example upstream payload"
      }
    }
  }
}
If OFAuth cannot parse the upstream websocket body as structured JSON, the event may include raw text instead of data.json. During beta, your handler should be tolerant of both structured and unclassified payloads.

Integration Notes

  • Return 2xx quickly and process asynchronously when possible
  • Keep a copy of raw payloads during beta so you can adapt to newly documented shapes
  • Use Svix delivery logs to debug retries and endpoint failures
  • Prefer defensive parsing of data.json rather than assuming every upstream payload is finalized

Next Steps

Realtime Overview

Stable connection and system events

Error Handling

Retry and delivery basics