Find content to send
Search the vault by title or tag and pull the media_ids for a chat or PPV send.
Who this is for: chatters and team members composing a message.
Search is a LIKE match over the vault index — titles, tags, and folder names — so it's instant
and costs nothing. It never touches OnlyFans directly; see
the vault index.
curl "https://app.tease.link/api/admin/vault/search?q=lingerie&scope=all&limit=200" \
-H "Authorization: Bearer $TEASE_API_KEY"Query parameters
| Field | Type | Required | Description |
|---|---|---|---|
q | string | no | Search text, matched against title/tag/folder tokens. Empty returns everything up to limit. |
scope | string | no | all (default), sorted (only items filed into a folder), or unsorted (loose items). |
limit | integer | no | 1–1000. Caps the loose list only — folders are always returned in full. Defaults to 200. |
uploaded_by | string | no | Filter to files a specific team member uploaded (matches their login string). |
export | boolean | no | See DLP export gates — leave false for a normal panel search. |
Response shape
Results come back grouped by folder, with folderless items separated into loose — this is
so a content picker can render a tree in one read.
{
"query": "lingerie",
"scope": "all",
"folders": [
{
"folder_id": "f_2291",
"name": "Red lingerie set",
"items": [ { "media_id": "m_88120", "media_type": "photo", "sorted": true, "..." : "..." } ],
"counts": { "items": 12, "photos": 8, "videos": 4 }
}
],
"loose": [],
"uploaded_by": "",
"uploaders": [ { "actor": "jane", "operator_id": 4, "name": "Jane", "count": 87 } ],
"counts": { "folders": 1, "items": 1, "loose": 0 }
}folders[].items is a preview (first 24 per folder) — pull the whole folder with
GET /vault/folder/{folder_id} when you need every item.
Each item carries: media_id, media_type, folder_id, folder_name, sorted, title,
has_cover, duration_sec, favorite, note, blocked, and an uploaded_by object
(operator_id, actor, name — empty when the file came from a scan rather than a panel
upload).
uploaders is the "who uploaded" facet for a filter menu — it's computed before the
uploaded_by filter is applied, so picking one uploader doesn't remove the others from the menu.
Pull the whole folder
To grab every item in one folder (not just the search preview), read it directly:
curl "https://app.tease.link/api/admin/vault/folder/f_2291" \
-H "Authorization: Bearer $TEASE_API_KEY"This returns a flat media_ids array — ready to drop straight into a PPV or broadcast composer —
plus the full items list.
Always DLP-gated
Unlike search, /vault/folder/{folder_id} is an unbounded full-folder dump and always
trips the export gate — daily
quota plus a 2FA step-up for 2FA-enabled callers. This is by design, not a bug.
What's next
If a folder is a natural sellable unit (a main video plus a photoset), pull it as an
already-ordered bundle with Pull a whole drop
instead of assembling media_ids by hand.