BetterFans Link SDK — OnlyFans APIBetterFans Link SDK
API Reference

Vault

Manage vault lists, media items, and visibility settings.

Vault routes give you access to the media vault — organize media into lists, manage visibility, and query media items.

List vault lists

const [error, lists] = await account.request("GET /vault/lists", {
  query: { limit: 20 },
})

if (!error) {
  for (const list of lists.list) {
    console.log(list.name, `${list.mediaCount} items`)
  }
}

Create a vault list

const [error, list] = await account.request("POST /vault/lists", {
  body: { name: "Best content" },
})

if (!error) {
  console.log("Created list:", list.id)
}

Update a vault list

const [error] = await account.request("PATCH /vault/lists/:id", {
  pathParams: { id: "12345" },
  body: { name: "Renamed list" },
})

Delete a vault list

const [error] = await account.request("DELETE /vault/lists/:id", {
  pathParams: { id: "12345" },
})

Add media to a vault list

const [error] = await account.request(
  "POST /vault/lists/:id/media",
  {
    pathParams: { id: "12345" },
    body: { mediaIds: [111, 222, 333] },
  },
)

Remove media from a vault list

const [error] = await account.request(
  "DELETE /vault/lists/:id/media",
  {
    pathParams: { id: "12345" },
    body: { mediaIds: [111] },
  },
)

Toggle media visibility

Hide or unhide media items from your profile:

const [error] = await account.request("PUT /vault/media/hidden", {
  body: { mediaIds: [111, 222], hidden: true },
})

Query vault media

By type

const [error, types] = await account.request(
  "GET /vault/media/types",
  {},
)

All media in a list

const [error, media] = await account.request(
  "GET /vault/lists/:id/media",
  {
    pathParams: { id: "12345" },
    query: { limit: 20 },
  },
)

On this page