Skip to main content
GET
Twitter bookmark folders API & saved tweet export
List Twitter bookmark folders for one connected account. Each row contains a folder ID and name for a saved tweet export. X documents bookmark folders as private, authenticated-user content.
1 credit per call · All plans from $0.00012/credit
The route reads bookmark folders through your connected X account. Without one, it returns 424 account_required. Use Connect X account to add one. When your connected X accounts are busy, it returns 503. Retry after the Retry-After delay. X shows bookmark folders only to X Premium accounts. For any other account, the route returns 424 bookmark_folders_unavailable, & a retry returns the same. Upgrade that account on X, or read all saved tweets with Bookmarks without folderId. Use folder IDs from this response with GET /x/bookmarks?folderId=... to read tweets saved inside a folder.
The Node.js and Python snippets build bookmark folder rows. They do not print the full response. Store folderRows or folder_rows. Then pass folder_id into GET /x/bookmarks?folderId=....

Direct bookmark folder handoff

Use GET /x/bookmarks/folders for an authenticated X account. It serves a saved-tweet workflow, CRM enrichment job, research queue, or agent. Store folder_id and folder_name with the connected account ID. The route returns one folder page. has_next_page stays false, and next_cursor stays empty. Use each folder ID with Bookmarks to fetch its saved tweets.

Twitter bookmark folder workflow

1. Discover existing folders

Call the route with the connected account’s Xquik API key. It lists that account’s private folders. It cannot create, rename, move, or delete folders. An empty folders array means the X Premium account has no folders.

2. Build a folder index

Use folder_id as the stable join key. Folder names can change or repeat. Protect folder names like saved tweets. Exclude them from public logs, URLs, and shared filenames.

3. Export saved tweets by folder

Pass each folder ID to GET /x/bookmarks?folderId=.... Saved tweet rows can include text, authors, likes, replies, reposts, views, media, and cursors. Write the folder ID beside every row to keep folder membership.

4. Resume and audit the export

The folder list has no next page. The bookmarked-tweet route paginates per folder. Store its next_cursor, collection time, and connected account ID.

Export Twitter bookmark folders

Every folder list is a snapshot for one account. Compare folder IDs with the preceding snapshot. Match renamed folders by ID. A missing ID only means the current snapshot omitted it. Keep prior exports until verification.

Store one checkpoint per folder

Store the folder ID, bookmark cursor, completion state, and collection time. Retry only the incomplete folder after 424, 429, or 502 responses. Upsert rows by account, folder, and tweet IDs. Save every row before advancing the cursor.

Define folder export records

Store account_id, folder_id, and folder_name beside each saved tweet. Keep tweet, author, engagement, media, and timestamp fields. Store source_cursor beside each page. Validate IDs before exporting to a spreadsheet, CRM, research queue, or storage system.

Twitter bookmark folder questions

Do Twitter bookmarks have folders?

Yes, for X Premium accounts. This endpoint lists the named folders visible to the connected account.

Can this API create or rename bookmark folders?

No. This route only reads folder IDs and names.

Can I access folders from mobile and desktop?

Yes. The endpoint works independently of the device. It returns folders available to the connected account.

How do I back up Twitter bookmark folders?

Save the folder index as JSON Lines or CSV. Export each folder’s saved tweets. Join both files by folder_id. Include the account ID and collection time.

What errors can stop a folder export?

A 401 response means the key cannot access the connected account. A 402 response requires more credits. Respect retry guidance in a 429 response. 424 account_required means you have no connected X account. 424 bookmark_folders_unavailable means the account has no X Premium. Retry other 424, 502 & 503 read failures later.

Query parameters

string
Pass next_cursor from the previous page. Omit it for the first page.

Headers

string
required
Your API key. Session cookie authentication is also supported.

Response

200 OK

object[]
Array of bookmark folders. Folder object fields.
string
This value contains the folder ID.
string
This value contains the folder name.
object
Public folder cover image metadata. Omitted if unavailable.
boolean
Always false for the bookmark folder route.
string
Always an empty string for the bookmark folder route.
Related. Bookmarks · Timeline