Search recent X Posts · Twitter / X API
Search recent public X Posts matching a query string and return a cursor-paginated list of Posts with author and metrics — a drop-in Twitter search API for tracking keywords, hashtags, cashtags, brand mentions, and breaking conversations in near real time.
Try it without an API key: Twitter viewer — see any X profile, post or trend, Twitter reply viewer — read replies to any X post, Twitter advanced search — search X without login.
Using ChatGPT, Claude Code or another client? See the setup steps
curl https://api.unifapi.com/x/tweets/search/recent?query= \ -H "Authorization: Bearer $UNIFAPI_KEY"
Parameters
- expansionsquery
- tweet.fieldsquery
- user.fieldsquery
- media.fieldsquery
- place.fieldsquery
- poll.fieldsquery
- pagination_tokenquery
- next_tokenquery
- max_resultsquery
- Integer from 1 to 100.
- queryqueryrequired
- Recent search query.
This operation is part of the Twitter / X API in the social platforms category. It uses the same Bearer token, request tracing, error model, and billing envelope as every UnifAPI endpoint, so agents can switch between platforms without custom per-vendor glue code.
Use it when a workflow needs Twitter / X public data alongside other social networks, but should still keep one API key, one account balance, and one predictable JSON contract.
Common agent workflows
- Search Twitter / X for public mentions, creators, posts, or topics matching a user query.
- Feed ranked Twitter / X results into research, monitoring, and enrichment workflows.
- Give an AI agent a stable Twitter / X data source without building a per-platform integration.
- Normalize Twitter / X responses into the same UnifAPI envelope used across the catalog.
Unified envelope, platform-native fields
- List-style responses return `data` as an array of top-level records plus optional `pagination` for continuation tokens or cursors.
- The `billing.records_charged` field reports the charged billable-record quantity for the successful response.
- If the workspace balance cannot cover every result, the response can be truncated and `billing.truncated_due_to_balance` tells the caller why.
Response status codes
Billing
This operation charges 1 credit per billable record, with a 1 credit ($0.001) operation minimum. Public responses include billing metadata with credits charged, records charged, and remaining workspace balance. Incorrect Credit deductions caused by platform failures can be restored as billing corrections.
Errors and retries
Authentication, validation, rate-limit, not-found, and provider errors use the unified UnifAPI error format. Agents should log `request_id`, retry only retryable failures, and treat invalid API keys, disabled keys, and expired keys as the same public `unauthorized` error type.
Fields on each record in data
A successful Search recent X Posts call returns data as an array; each record carries these fields.
- idstring
- textstring
- author_idstring
- created_atstring
- conversation_idstring
- langstring
- possibly_sensitiveboolean
- public_metricsobject
- attachmentsobject
- edit_history_tweet_idsstring[]
- authorobject
- mediaobject[]
Agents & Skills built on Twitter / X
You rarely call Search recent X Posts by hand. These prebuilt agents and skills already read Twitter / X data inside Claude or Codex — start from one of them, or call this endpoint yourself.
Try it free in the browser
Twitter viewer — see any X profile, post or trend
Free X viewer: paste a handle, post link, hashtag or search. No account, no login to X.
Twitter reply viewer — read replies to any X post
Paste a post link to read its public replies, sorted by engagement or time.
Twitter advanced search — search X without login
Search recent public posts with from:, since:, min_faves: and more, no account needed.
Social media handle availability checker
Check a username across every social platform in one shot.
Agents
More Twitter / X operations
Combine endpoints from the same platform, then join the results with other UnifAPI categories without changing authentication or response parsing.
Translate an X Post
Return a machine translation of an X Post's text into a target language code (e.g. `zh`, `es`). Useful for monitoring non-native-language conversations and normalizing multilingual Posts into one working language.
Get X users by IDs
Batch-resolve up to 100 X accounts in one call from a comma-separated list of numeric user IDs, returning the same profile fields as the single-user lookup. Useful for hydrating profiles behind a list of IDs without one request per account.
Get X Posts by IDs
Batch-fetch up to 100 Posts in one call from a comma-separated list of numeric Post IDs, returning the same full object as the single-Post lookup. Useful for hydrating a set of Posts without one request each.
Get X Post by ID
Fetch a single X (Twitter) Post by its numeric ID — the classic get-tweet-by-ID lookup — returning text, author, timestamp, language, and public metrics (likes, reposts, replies, quotes, and views). Useful for hydrating a known Post or checking its current engagement.
Get the article-style payload for an X Post
Return the long-form X Article payload attached to a Post, including its full text body and authoring metadata. Useful for extracting complete article content from Posts that carry it, rather than only the short Post text.
Get users who liked an X Post
Return the accounts that liked a given X Post, as a cursor-paginated list of full profiles. Useful for analyzing who engaged with a Post and surfacing an interested audience.