Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.onlyfanskit.dev/llms.txt

Use this file to discover all available pages before exploring further.

Posts

// Home feed
const feed = await of.posts.feed({ limit: 10 });

// Create a post
const post = await of.posts.create({ text: "New drop 🎉" });

// Like (toggle) — calling again unlikes
const r = await of.posts.toggleLike(postId, authorUserId);

// Pin / archive / hide
await of.posts.pin(postId);
await of.posts.archive(postId);
posts also covers search, polls (vote, voters), paid-post helpers (paidAuthors, paidPinned, pinPaid), and per-post statistics.

Media vault

const vault = await of.media.list({ limit: 50 });
const uploaded = await of.media.upload(/* file */);
await of.media.delete([mediaId1, mediaId2]);
media.vaultMediaPosts(mediaId) lists the posts a vault item appears in; vault lists organize media into folders.

Stories & highlights

const stories = await of.stories.list();
await of.stories.markWatched(storyId);
const highlights = await of.highlights.list(userId);

Scheduling

const later = await of.schedules.laterPosts();
await of.schedules.publish(scheduledPostId); // publish now
schedules exposes scheduled-post and scheduled-chat counters and lets you publish a queued item immediately.
Many fan-side write actions (commenting, bookmarking) require the calling account to be age-verified. If OnlyFans returns “User cannot comment” or “Sorry, you can’t add this post to bookmarks category”, the account isn’t age-verified. See Errors.