TEASEDocs
ProductsClubHow-to

Check a fan's purchase history before pitching

See everything one fan has already bought from the vault, instantly, from the durable ledger.

Who this is for: chatters, before pitching a fan anything — so you never re-sell them something they already own.

This reads straight from the content_sale ledger — instant, zero OnlyFans calls, and it's the complete captured purchase history, not just what's visible in a live chat window right now.

curl "https://app.tease.link/api/admin/content/purchased-by/12345" \
  -H "Authorization: Bearer $TEASE_API_KEY"

Response shape

{
  "items": [
    { "content_id": 88130, "media_type": "video", "price_cents": 1500, "opened_at": "2026-08-14T10:22:00Z", "has_cover": true }
  ],
  "total": 1
}

One row per distinct content_id — if a fan bought the same content more than once (e.g. resold in a different bundle later), the newest purchase wins.

Refresh with live chat

curl "https://app.tease.link/api/admin/content/purchased-by/12345?refresh=1" \
  -H "Authorization: Bearer $TEASE_API_KEY"

refresh=1 first pulls the fan's freshest captured chat into the ledger (re-hosting any missing covers along the way), then returns the updated list. The deep history of an old whale — bought long before the chat window we can page through — is filled by the background DM-harvest sweep, not by this on-demand refresh.

An honest 'bought', never a fabricated one

There is no payment→media link in OnlyFans (see content_id vs vault media_id). This answers "the fan bought these pieces of content" from what was actually captured — it never asserts "this exact payment paid for this exact content" beyond what's in the ledger.

What's next

For one specific PPV that isn't already in the ledger, resolve what a fan actually bought directly.

On this page