Social — entry 037 of 39
X's API (formerly Twitter's) is documented at docs.x.com and reads and writes posts, users, and engagement data over OAuth 1.0a or 2.0. Access is no longer split into named subscription tiers; X now sells pay-per-usage credits billed per resource, purchased upfront in the developer console and drawn down per call, with an Enterprise arrangement for accounts that need custom limits beyond the standard pay-per-usage cap.
GreatAPIs Score
Auth quickstart
- Register an app / run the OAuth flow to obtain a bearer token.
- Send it as an Authorization header
Authorization: Bearer <token>
Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.
Endpoints
Account Activity5
Endpoints relating to retrieving, managing AAA subscriptions
GET/2/account_activity/subscriptions/countGet subscription count
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | SubscriptionsCountGetResponse |
default | The request has failed. | Error |
GET/2/account_activity/webhooks/{webhook_id}/subscriptions/allValidate subscription
| Name | In | Required | Type |
|---|---|---|---|
webhook_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | SubscriptionsGetResponse |
default | The request has failed. | Error |
POST/2/account_activity/webhooks/{webhook_id}/subscriptions/allCreate subscription
| Name | In | Required | Type |
|---|---|---|---|
webhook_id | path | yes | — |
application/json — SubscriptionsCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | SubscriptionsCreateResponse |
default | The request has failed. | Error |
GET/2/account_activity/webhooks/{webhook_id}/subscriptions/all/listGet subscriptions
| Name | In | Required | Type |
|---|---|---|---|
webhook_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | SubscriptionsListGetResponse |
default | The request has failed. | Error |
DELETE/2/account_activity/webhooks/{webhook_id}/subscriptions/{user_id}/allDelete subscription
| Name | In | Required | Type |
|---|---|---|---|
webhook_id | path | yes | — |
user_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | SubscriptionsDeleteResponse |
default | The request has failed. | Error |
Articles2
Endpoints related to retrieving, creating & modifying Articles
POST/2/articles/draftCreate draft Article
application/json — ArticleDraftCreateRequest (required)
| Status | Description | Schema |
|---|---|---|
201 | The request has succeeded. | ArticleDraftCreateResponse |
default | The request has failed. | Error |
POST/2/articles/{article_id}/publishPublish Article
| Name | In | Required | Type |
|---|---|---|---|
article_id | path | yes | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ArticlePublishResponse |
default | The request has failed. | Error |
Compliance3
Endpoints related to keeping X data in your systems compliant
GET/2/compliance/jobsGet Compliance Jobs
| Name | In | Required | Type |
|---|---|---|---|
type | query | yes | string |
status | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2ComplianceJobsResponse |
default | The request has failed. | Error |
POST/2/compliance/jobsCreate Compliance Job
application/json — CreateComplianceJobRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | CreateComplianceJobResponse |
default | The request has failed. | Error |
GET/2/compliance/jobs/{id}Get Compliance Job by ID
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2ComplianceJobsIdResponse |
default | The request has failed. | Error |
Connections4
Endpoints related to streaming connections
GET/2/connectionsGet Connection History
| Name | In | Required | Type |
|---|---|---|---|
status | query | no | string |
endpoints | query | no | array |
max_results | query | no | integer |
pagination_token | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2ConnectionsResponse |
default | The request has failed. | Error |
DELETE/2/connectionsTerminate multiple connections
application/json — KillConnectionsByUuidsRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | KillConnectionsByUuidsResponse |
default | The request has failed. | Error |
DELETE/2/connections/allTerminate all connections
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | KillAllConnectionsResponse |
default | The request has failed. | Error |
DELETE/2/connections/{endpoint_id}Terminate connections by endpoint
| Name | In | Required | Type |
|---|---|---|---|
endpoint_id | path | yes | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | KillConnectionsByEndpointResponse |
default | The request has failed. | Error |
Direct Messages9
Endpoints related to retrieving, managing Direct Messages
POST/2/dm_conversationsCreate DM conversation
application/json — CreateDmConversationRequest
| Status | Description | Schema |
|---|---|---|
201 | The request has succeeded. | CreateDmEventResponse |
default | The request has failed. | Error |
GET/2/dm_conversations/media/{dm_id}/{media_id}/{resource_id}Download DM Media
| Name | In | Required | Type |
|---|---|---|---|
dm_id | path | yes | — |
media_id | path | yes | — |
resource_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | BinaryPayload |
default | The request has failed. | Error |
GET/2/dm_conversations/with/{participant_id}/dm_eventsGet DM events for a DM conversation
| Name | In | Required | Type |
|---|---|---|---|
participant_id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
event_types | query | no | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2DmConversationsWithParticipantIdDmEventsResponse |
default | The request has failed. | Error |
POST/2/dm_conversations/with/{participant_id}/messagesCreate DM message by participant ID
| Name | In | Required | Type |
|---|---|---|---|
participant_id | path | yes | — |
application/json — CreateMessageRequest
| Status | Description | Schema |
|---|---|---|
201 | The request has succeeded. | CreateDmEventResponse |
default | The request has failed. | Error |
POST/2/dm_conversations/{dm_conversation_id}/messagesCreate DM message by conversation ID
| Name | In | Required | Type |
|---|---|---|---|
dm_conversation_id | path | yes | string |
application/json — CreateMessageRequest
| Status | Description | Schema |
|---|---|---|
201 | The request has succeeded. | CreateDmEventResponse |
default | The request has failed. | Error |
GET/2/dm_conversations/{id}/dm_eventsGet DM events for a DM conversation
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
event_types | query | no | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2DmConversationsIdDmEventsResponse |
default | The request has failed. | Error |
GET/2/dm_eventsGet DM events
| Name | In | Required | Type |
|---|---|---|---|
max_results | query | no | integer |
pagination_token | query | no | — |
event_types | query | no | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2DmEventsResponse |
default | The request has failed. | Error |
GET/2/dm_events/{event_id}Get DM event by ID
| Name | In | Required | Type |
|---|---|---|---|
event_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2DmEventsEventIdResponse |
default | The request has failed. | Error |
DELETE/2/dm_events/{event_id}Delete DM event
| Name | In | Required | Type |
|---|---|---|---|
event_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | DeleteDmResponse |
default | The request has failed. | Error |
General1
Miscellaneous endpoints for general API functionality
GET/2/openapi.jsonGet OpenAPI Spec.
| Status | Description | Schema |
|---|---|---|
200 | The request was successful | — |
Lists9
Endpoints related to retrieving, managing Lists
POST/2/listsCreate List
application/json — ListCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListCreateResponse |
default | The request has failed. | Error |
GET/2/lists/{id}Get List by ID
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2ListsIdResponse |
default | The request has failed. | Error |
PUT/2/lists/{id}Update List
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ListUpdateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListUpdateResponse |
default | The request has failed. | Error |
DELETE/2/lists/{id}Delete List
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListDeleteResponse |
default | The request has failed. | Error |
GET/2/lists/{id}/followersGet List followers
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2ListsIdFollowersResponse |
default | The request has failed. | Error |
GET/2/lists/{id}/membersGet List members
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2ListsIdMembersResponse |
default | The request has failed. | Error |
POST/2/lists/{id}/membersAdd List member
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ListAddUserRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListMutateResponse |
default | The request has failed. | Error |
DELETE/2/lists/{id}/members/{user_id}Remove List member
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
user_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListMutateResponse |
default | The request has failed. | Error |
GET/2/lists/{id}/tweetsGet List Posts
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2ListsIdTweetsResponse |
default | The request has failed. | Error |
Media11
Endpoints related to Media
GET/2/mediaGet Media by media keys
| Name | In | Required | Type |
|---|---|---|---|
media_keys | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2MediaResponse |
default | The request has failed. | Error |
GET/2/media/analyticsGet Media analytics
| Name | In | Required | Type |
|---|---|---|---|
media_keys | query | yes | array |
end_time | query | yes | string |
start_time | query | yes | string |
granularity | query | yes | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MediaAnalytics |
default | The request has failed. | Error |
POST/2/media/metadataCreate Media metadata
application/json — MetadataCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MetadataCreateResponse |
default | The request has failed. | Error |
POST/2/media/subtitlesCreate Media subtitles
application/json — SubtitlesCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | SubtitlesCreateResponse |
default | The request has failed. | Error |
DELETE/2/media/subtitlesDelete Media subtitles
application/json — SubtitlesDeleteRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | SubtitlesDeleteResponse |
default | The request has failed. | Error |
GET/2/media/uploadGet Media upload status
| Name | In | Required | Type |
|---|---|---|---|
media_id | query | yes | — |
command | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MediaUploadResponse |
default | The request has failed. | Error |
POST/2/media/uploadUpload media
application/json — MediaUploadRequestOneShot
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MediaUploadResponse |
default | The request has failed. | Error |
POST/2/media/upload/initializeInitialize media upload
application/json — MediaUploadConfigRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MediaUploadResponse |
default | The request has failed. | Error |
POST/2/media/upload/{id}/appendAppend Media upload
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — MediaUploadAppendRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MediaUploadAppendResponse |
default | The request has failed. | Error |
POST/2/media/upload/{id}/finalizeFinalize Media upload
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MediaUploadResponse |
default | The request has failed. | Error |
GET/2/media/{media_key}Get Media by media key
| Name | In | Required | Type |
|---|---|---|---|
media_key | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2MediaMediaKeyResponse |
default | The request has failed. | Error |
News2
Endpoint for retrieving news stories
GET/2/news/searchSearch News
| Name | In | Required | Type |
|---|---|---|---|
query | query | yes | string |
max_results | query | no | integer |
max_age_hours | query | no | integer |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2NewsSearchResponse |
default | The request has failed. | Error |
GET/2/news/{id}Get news stories by ID
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2NewsIdResponse |
default | The request has failed. | Error |
Spaces6
Endpoints related to retrieving, managing Spaces
GET/2/spacesGet Spaces by IDs
| Name | In | Required | Type |
|---|---|---|---|
ids | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2SpacesResponse |
default | The request has failed. | Error |
GET/2/spaces/by/creator_idsGet Spaces by creator IDs
| Name | In | Required | Type |
|---|---|---|---|
user_ids | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2SpacesByCreatorIdsResponse |
default | The request has failed. | Error |
GET/2/spaces/searchSearch Spaces
| Name | In | Required | Type |
|---|---|---|---|
query | query | yes | string |
state | query | no | string |
max_results | query | no | integer |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2SpacesSearchResponse |
default | The request has failed. | Error |
GET/2/spaces/{id}Get space by ID
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2SpacesIdResponse |
default | The request has failed. | Error |
GET/2/spaces/{id}/buyersGet Space ticket buyers
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | string |
pagination_token | query | no | — |
max_results | query | no | integer |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2SpacesIdBuyersResponse |
default | The request has failed. | Error |
GET/2/spaces/{id}/tweetsGet Space Posts
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | string |
max_results | query | no | integer |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2SpacesIdTweetsResponse |
default | The request has failed. | Error |
Stream17
Endpoints related to streaming
GET/2/likes/compliance/streamStream Likes compliance data
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | LikesComplianceStreamResponse |
default | The request has failed. | Error |
GET/2/likes/firehose/streamStream all Likes
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | StreamingLikeResponseV2 |
default | The request has failed. | Error |
GET/2/likes/sample10/streamStream sampled Likes
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | StreamingLikeResponseV2 |
default | The request has failed. | Error |
GET/2/tweets/compliance/streamStream Posts compliance data
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | TweetComplianceStreamResponse |
default | The request has failed. | Error |
GET/2/tweets/firehose/streamStream all Posts
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | StreamingTweetResponse |
default | The request has failed. | Error |
GET/2/tweets/firehose/stream/lang/enStream English Posts
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | StreamingTweetResponse |
default | The request has failed. | Error |
GET/2/tweets/firehose/stream/lang/jaStream Japanese Posts
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | StreamingTweetResponse |
default | The request has failed. | Error |
GET/2/tweets/firehose/stream/lang/koStream Korean Posts
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | StreamingTweetResponse |
default | The request has failed. | Error |
GET/2/tweets/firehose/stream/lang/ptStream Portuguese Posts
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | StreamingTweetResponse |
default | The request has failed. | Error |
GET/2/tweets/label/streamStream Post labels
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | TweetLabelStreamResponse |
default | The request has failed. | Error |
GET/2/tweets/sample/streamStream sampled Posts
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | StreamingTweetResponse |
default | The request has failed. | Error |
GET/2/tweets/sample10/streamStream 10% sampled Posts
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsSample10StreamResponse |
default | The request has failed. | Error |
GET/2/tweets/search/streamStream filtered Posts
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | FilteredStreamingTweetResponse |
default | The request has failed. | Error |
GET/2/tweets/search/stream/rulesGet stream rules
| Name | In | Required | Type |
|---|---|---|---|
ids | query | no | array |
max_results | query | no | integer |
pagination_token | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | RulesLookupResponse |
default | The request has failed. | Error |
POST/2/tweets/search/stream/rulesUpdate stream rules
| Name | In | Required | Type |
|---|---|---|---|
dry_run | query | no | boolean |
delete_all | query | no | boolean |
application/json — AddOrDeleteRulesRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | AddOrDeleteRulesResponse |
default | The request has failed. | Error |
GET/2/tweets/search/stream/rules/countsGet stream rule counts
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsSearchStreamRulesCountsResponse |
default | The request has failed. | Error |
GET/2/users/compliance/streamStream Users compliance data
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
partition | query | yes | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UserComplianceStreamResponse |
default | The request has failed. | Error |
Tweets16
Endpoints related to retrieving, searching, and modifying Tweets
GET/2/insights/28hrGet 28-hour Post insights
| Name | In | Required | Type |
|---|---|---|---|
tweet_ids | query | yes | array |
granularity | query | yes | string |
requested_metrics | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2Insights28hrResponse |
default | The request has failed. | Error |
GET/2/insights/historicalGet historical Post insights
| Name | In | Required | Type |
|---|---|---|---|
tweet_ids | query | yes | array |
end_time | query | yes | string |
start_time | query | yes | string |
granularity | query | yes | string |
requested_metrics | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2InsightsHistoricalResponse |
default | The request has failed. | Error |
GET/2/tweetsGet Posts by IDs
| Name | In | Required | Type |
|---|---|---|---|
ids | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsResponse |
default | The request has failed. | Error |
POST/2/tweetsCreate or Edit Post
application/json — TweetCreateRequest (required)
| Status | Description | Schema |
|---|---|---|
201 | The request has succeeded. | TweetCreateResponse |
default | The request has failed. | Error |
GET/2/tweets/analyticsGet Post analytics
| Name | In | Required | Type |
|---|---|---|---|
ids | query | yes | array |
end_time | query | yes | string |
start_time | query | yes | string |
granularity | query | yes | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Analytics |
default | The request has failed. | Error |
GET/2/tweets/counts/allGet count of all Posts
| Name | In | Required | Type |
|---|---|---|---|
query | query | yes | string |
start_time | query | no | string |
end_time | query | no | string |
since_id | query | no | — |
until_id | query | no | — |
next_token | query | no | — |
pagination_token | query | no | — |
granularity | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsCountsAllResponse |
default | The request has failed. | Error |
GET/2/tweets/counts/recentGet count of recent Posts
| Name | In | Required | Type |
|---|---|---|---|
query | query | yes | string |
start_time | query | no | string |
end_time | query | no | string |
since_id | query | no | — |
until_id | query | no | — |
next_token | query | no | — |
pagination_token | query | no | — |
granularity | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsCountsRecentResponse |
default | The request has failed. | Error |
GET/2/tweets/search/allSearch all Posts
| Name | In | Required | Type |
|---|---|---|---|
query | query | yes | string |
start_time | query | no | string |
end_time | query | no | string |
since_id | query | no | — |
until_id | query | no | — |
max_results | query | no | integer |
next_token | query | no | — |
pagination_token | query | no | — |
sort_order | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsSearchAllResponse |
default | The request has failed. | Error |
GET/2/tweets/search/recentSearch recent Posts
| Name | In | Required | Type |
|---|---|---|---|
query | query | yes | string |
start_time | query | no | string |
end_time | query | no | string |
since_id | query | no | — |
until_id | query | no | — |
max_results | query | no | integer |
next_token | query | no | — |
pagination_token | query | no | — |
sort_order | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsSearchRecentResponse |
default | The request has failed. | Error |
GET/2/tweets/{id}Get Post by ID
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsIdResponse |
default | The request has failed. | Error |
DELETE/2/tweets/{id}Delete Post
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | TweetDeleteResponse |
default | The request has failed. | Error |
GET/2/tweets/{id}/liking_usersGet Liking Users
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsIdLikingUsersResponse |
default | The request has failed. | Error |
GET/2/tweets/{id}/quote_tweetsGet Quoted Posts
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
exclude | query | no | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsIdQuoteTweetsResponse |
default | The request has failed. | Error |
GET/2/tweets/{id}/retweeted_byGet Reposted by
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsIdRetweetedByResponse |
default | The request has failed. | Error |
GET/2/tweets/{id}/retweetsGet Reposts
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TweetsIdRetweetsResponse |
default | The request has failed. | Error |
PUT/2/tweets/{tweet_id}/hiddenHide reply
| Name | In | Required | Type |
|---|---|---|---|
tweet_id | path | yes | — |
application/json — TweetHideRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | TweetHideResponse |
default | The request has failed. | Error |
Users41
Endpoints related to retrieving, managing relationships of Users
GET/2/usersGet Users by IDs
| Name | In | Required | Type |
|---|---|---|---|
ids | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersResponse |
default | The request has failed. | Error |
GET/2/users/byGet Users by usernames
| Name | In | Required | Type |
|---|---|---|---|
usernames | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersByResponse |
default | The request has failed. | Error |
GET/2/users/by/username/{username}Get User by username
| Name | In | Required | Type |
|---|---|---|---|
username | path | yes | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersByUsernameUsernameResponse |
default | The request has failed. | Error |
GET/2/users/meGet my User
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersMeResponse |
default | The request has failed. | Error |
GET/2/users/public_keysGet public keys for multiple users
| Name | In | Required | Type |
|---|---|---|---|
ids | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersPublicKeysResponse |
default | The request has failed. | Error |
GET/2/users/reposts_of_meGet Reposts of me
| Name | In | Required | Type |
|---|---|---|---|
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersRepostsOfMeResponse |
default | The request has failed. | Error |
GET/2/users/searchSearch Users
| Name | In | Required | Type |
|---|---|---|---|
query | query | yes | — |
max_results | query | no | integer |
next_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersSearchResponse |
default | The request has failed. | Error |
GET/2/users/{id}Get User by ID
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdResponse |
default | The request has failed. | Error |
GET/2/users/{id}/affiliatesGet affiliates
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdAffiliatesResponse |
default | The request has failed. | Error |
GET/2/users/{id}/blockingGet blocking
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdBlockingResponse |
default | The request has failed. | Error |
GET/2/users/{id}/bookmarksGet Bookmarks
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdBookmarksResponse |
default | The request has failed. | Error |
POST/2/users/{id}/bookmarksCreate Bookmark
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — BookmarkAddRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | BookmarkMutationResponse |
default | The request has failed. | Error |
GET/2/users/{id}/bookmarks/foldersGet Bookmark folders
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | BookmarkFoldersResponse |
default | The request has failed. | Error |
GET/2/users/{id}/bookmarks/folders/{folder_id}Get Bookmarks by folder ID
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
folder_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | BookmarkFolderPostsResponse |
default | The request has failed. | Error |
DELETE/2/users/{id}/bookmarks/{tweet_id}Delete Bookmark
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
tweet_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | BookmarkMutationResponse |
default | The request has failed. | Error |
POST/2/users/{id}/dm/blockBlock DMs
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UsersDMBlockCreateResponse |
default | The request has failed. | Error |
POST/2/users/{id}/dm/unblockUnblock DMs
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UsersDMUnBlockCreateResponse |
default | The request has failed. | Error |
GET/2/users/{id}/followed_listsGet followed Lists
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdFollowedListsResponse |
default | The request has failed. | Error |
POST/2/users/{id}/followed_listsFollow List
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ListFollowedRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListFollowedResponse |
default | The request has failed. | Error |
DELETE/2/users/{id}/followed_lists/{list_id}Unfollow List
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
list_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListFollowedResponse |
default | The request has failed. | Error |
GET/2/users/{id}/followersGet followers
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdFollowersResponse |
default | The request has failed. | Error |
GET/2/users/{id}/followingGet following
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdFollowingResponse |
default | The request has failed. | Error |
POST/2/users/{id}/followingFollow User
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — UsersFollowingCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UsersFollowingCreateResponse |
default | The request has failed. | Error |
GET/2/users/{id}/liked_tweetsGet liked Posts
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdLikedTweetsResponse |
default | The request has failed. | Error |
POST/2/users/{id}/likesLike Post
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — UsersLikesCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UsersLikesCreateResponse |
default | The request has failed. | Error |
DELETE/2/users/{id}/likes/{tweet_id}Unlike Post
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
tweet_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UsersLikesDeleteResponse |
default | The request has failed. | Error |
GET/2/users/{id}/list_membershipsGet List memberships
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdListMembershipsResponse |
default | The request has failed. | Error |
GET/2/users/{id}/mentionsGet mentions
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
since_id | query | no | — |
until_id | query | no | — |
max_results | query | no | integer |
pagination_token | query | no | — |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdMentionsResponse |
default | The request has failed. | Error |
GET/2/users/{id}/mutingGet muting
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdMutingResponse |
default | The request has failed. | Error |
POST/2/users/{id}/mutingMute User
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — MuteUserRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MuteUserMutationResponse |
default | The request has failed. | Error |
GET/2/users/{id}/owned_listsGet owned Lists
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdOwnedListsResponse |
default | The request has failed. | Error |
GET/2/users/{id}/pinned_listsGet pinned Lists
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdPinnedListsResponse |
default | The request has failed. | Error |
POST/2/users/{id}/pinned_listsPin List
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ListPinnedRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListPinnedResponse |
default | The request has failed. | Error |
DELETE/2/users/{id}/pinned_lists/{list_id}Unpin List
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
list_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ListUnpinResponse |
default | The request has failed. | Error |
GET/2/users/{id}/public_keysGet user public keys
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdPublicKeysResponse |
default | The request has failed. | Error |
POST/2/users/{id}/retweetsRepost Post
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — UsersRetweetsCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UsersRetweetsCreateResponse |
default | The request has failed. | Error |
DELETE/2/users/{id}/retweets/{source_tweet_id}Unrepost Post
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
source_tweet_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UsersRetweetsDeleteResponse |
default | The request has failed. | Error |
GET/2/users/{id}/timelines/reverse_chronologicalGet Timeline
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
since_id | query | no | — |
until_id | query | no | — |
max_results | query | no | integer |
pagination_token | query | no | — |
exclude | query | no | array |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdTimelinesReverseChronologicalResponse |
default | The request has failed. | Error |
GET/2/users/{id}/tweetsGet Posts
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
since_id | query | no | — |
until_id | query | no | — |
max_results | query | no | integer |
pagination_token | query | no | — |
exclude | query | no | array |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersIdTweetsResponse |
default | The request has failed. | Error |
DELETE/2/users/{source_user_id}/following/{target_user_id}Unfollow User
| Name | In | Required | Type |
|---|---|---|---|
source_user_id | path | yes | — |
target_user_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | UsersFollowingDeleteResponse |
default | The request has failed. | Error |
DELETE/2/users/{source_user_id}/muting/{target_user_id}Unmute User
| Name | In | Required | Type |
|---|---|---|---|
source_user_id | path | yes | — |
target_user_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MuteUserMutationResponse |
default | The request has failed. | Error |
Activity6
GET/2/activity/streamActivity Stream
| Name | In | Required | Type |
|---|---|---|---|
backfill_minutes | query | no | integer |
start_time | query | no | string |
end_time | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ActivityStreamingResponse |
default | The request has failed. | Error |
GET/2/activity/subscriptionsGet X activity subscriptions
| Name | In | Required | Type |
|---|---|---|---|
max_results | query | no | integer |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ActivitySubscriptionGetResponse |
default | The request has failed. | Error |
POST/2/activity/subscriptionsCreate X activity subscription
application/json — ActivitySubscriptionCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ActivitySubscriptionCreateResponse |
default | The request has failed. | Error |
DELETE/2/activity/subscriptionsDelete X activity subscriptions by IDs
| Name | In | Required | Type |
|---|---|---|---|
ids | query | yes | array |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ActivitySubscriptionDeleteResponse |
default | The request has failed. | Error |
PUT/2/activity/subscriptions/{subscription_id}Update X activity subscription
| Name | In | Required | Type |
|---|---|---|---|
subscription_id | path | yes | — |
application/json — ActivitySubscriptionUpdateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ActivitySubscriptionUpdateResponse |
default | The request has failed. | Error |
DELETE/2/activity/subscriptions/{subscription_id}Deletes X activity subscription
| Name | In | Required | Type |
|---|---|---|---|
subscription_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ActivitySubscriptionDeleteResponse |
default | The request has failed. | Error |
Chat15
GET/2/chat/conversationsGet Chat Conversations
| Name | In | Required | Type |
|---|---|---|---|
max_results | query | no | integer |
pagination_token | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatGetConversationsResponse |
default | The request has failed. | Error |
POST/2/chat/conversations/groupCreate Chat Group Conversation
application/json — ChatCreateConversationRequest (required)
| Status | Description | Schema |
|---|---|---|
201 | The request has succeeded. | ChatCreateConversationResponse |
default | The request has failed. | Error |
POST/2/chat/conversations/group/initializeInitialize Chat Group
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatInitializeGroupResponse |
default | The request has failed. | Error |
GET/2/chat/conversations/{id}Get Chat Conversation
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatGetConversationsResponse |
default | The request has failed. | Error |
GET/2/chat/conversations/{id}/eventsGet Chat Conversation Events
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
max_results | query | no | integer |
pagination_token | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatGetConversationResponse |
default | The request has failed. | Error |
POST/2/chat/conversations/{id}/keysAdd Conversation Keys
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ChatInitializeConversationKeysRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatInitializeConversationKeysResponse |
default | The request has failed. | Error |
POST/2/chat/conversations/{id}/membersAdd members to a Chat group conversation
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ChatAddGroupMembersRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatAddGroupMembersResponse |
default | The request has failed. | Error |
POST/2/chat/conversations/{id}/messagesSend Chat Message
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ChatSendMessageRequest (required)
| Status | Description | Schema |
|---|---|---|
201 | The request has succeeded. | ChatSendMessageResponse |
default | The request has failed. | Error |
POST/2/chat/conversations/{id}/readMark Conversation as Read
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ChatMarkConversationReadRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatMarkConversationReadResponse |
default | The request has failed. | Error |
POST/2/chat/conversations/{id}/typingSend Typing Indicator
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatSendTypingIndicatorResponse |
default | The request has failed. | Error |
POST/2/chat/media/upload/initializeInitialize Chat Media Upload
application/json — ChatMediaUploadInitializeRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatMediaUploadInitializeResponse |
default | The request has failed. | Error |
POST/2/chat/media/upload/{id}/appendAppend Chat Media Upload
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | string |
application/json — ChatMediaUploadAppendRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | MediaUploadAppendResponse |
default | The request has failed. | Error |
POST/2/chat/media/upload/{id}/finalizeFinalize Chat Media Upload
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | string |
application/json — ChatMediaUploadFinalizeRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatMediaUploadFinalizeResponse |
default | The request has failed. | Error |
GET/2/chat/media/{id}/{media_hash_key}Download Chat Media
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
media_hash_key | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | BinaryPayload |
default | The request has failed. | Error |
POST/2/users/{id}/public_keysAdd public key
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
application/json — ChatAddPublicKeyRequest (required)
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ChatAddPublicKeyResponse |
default | The request has failed. | Error |
Communities2
GET/2/communities/searchSearch Communities
| Name | In | Required | Type |
|---|---|---|---|
query | query | yes | string |
max_results | query | no | integer |
next_token | query | no | — |
pagination_token | query | no | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2CommunitiesSearchResponse |
default | The request has failed. | Error |
GET/2/communities/{id}Get Community by ID
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2CommunitiesIdResponse |
default | The request has failed. | Error |
Community Notes5
POST/2/evaluate_noteEvaluate a Community Note
application/json — EvaluateNoteRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | EvaluateNoteResponse |
default | The request has failed. | Error |
POST/2/notesCreate a Community Note
application/json — CreateNoteRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | CreateNoteResponse |
default | The request has failed. | Error |
GET/2/notes/search/notes_writtenSearch for Community Notes Written
| Name | In | Required | Type |
|---|---|---|---|
test_mode | query | yes | boolean |
pagination_token | query | no | string |
max_results | query | no | integer |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2NotesSearchNotesWrittenResponse |
default | The request has failed. | Error |
GET/2/notes/search/posts_eligible_for_notesSearch for Posts Eligible for Community Notes
| Name | In | Required | Type |
|---|---|---|---|
test_mode | query | yes | boolean |
pagination_token | query | no | string |
max_results | query | no | integer |
post_selection | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2NotesSearchPostsEligibleForNotesResponse |
default | The request has failed. | Error |
DELETE/2/notes/{id}Delete a Community Note
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | DeleteNoteResponse |
default | The request has failed. | Error |
Trends2
GET/2/trends/by/woeid/{woeid}Get Trends by WOEID
| Name | In | Required | Type |
|---|---|---|---|
woeid | path | yes | integer |
max_trends | query | no | integer |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2TrendsByWoeidWoeidResponse |
default | The request has failed. | Error |
GET/2/users/personalized_trendsGet personalized Trends
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsersPersonalizedTrendsResponse |
default | The request has failed. | Error |
Usage1
GET/2/usage/tweetsGet usage
| Name | In | Required | Type |
|---|---|---|---|
days | query | no | integer |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2UsageTweetsResponse |
default | The request has failed. | Error |
Webhooks8
GET/2/tweets/search/webhooksGet stream links
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | WebhookLinksGetResponse |
default | The request has failed. | Error |
POST/2/tweets/search/webhooks/{webhook_id}Create stream link
| Name | In | Required | Type |
|---|---|---|---|
webhook_id | path | yes | — |
tweet.fields | query | no | string |
expansions | query | no | string |
media.fields | query | no | string |
poll.fields | query | no | string |
user.fields | query | no | string |
place.fields | query | no | string |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | WebhookLinksCreateResponse |
default | The request has failed. | Error |
DELETE/2/tweets/search/webhooks/{webhook_id}Delete stream link
| Name | In | Required | Type |
|---|---|---|---|
webhook_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | WebhookLinksDeleteResponse |
default | The request has failed. | Error |
GET/2/webhooksGet webhook
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | Get2WebhooksResponse |
default | The request has failed. | Error |
POST/2/webhooksCreate webhook
application/json — WebhookConfigCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | WebhookConfigCreateResponse |
default | The request has failed. | Error |
POST/2/webhooks/replayCreate replay job for webhook
application/json — WebhookReplayCreateRequest
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | ReplayJobCreateResponse |
default | The request has failed. | Error |
PUT/2/webhooks/{webhook_id}Validate webhook
| Name | In | Required | Type |
|---|---|---|---|
webhook_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | WebhookConfigPutResponse |
default | The request has failed. | Error |
DELETE/2/webhooks/{webhook_id}Delete webhook
| Name | In | Required | Type |
|---|---|---|---|
webhook_id | path | yes | — |
| Status | Description | Schema |
|---|---|---|
200 | The request has succeeded. | WebhookConfigDeleteResponse |
default | The request has failed. | Error |
Try it
Developer reference
https://api.x.comX's own docs (docs.x.com/x-api/fundamentals/rate-limits) enforce limits per endpoint on 15-minute windows for most calls (some, like post creation, use a 24-hour window instead), tracked separately for app-only Bearer-token traffic and per-user OAuth traffic -- e.g. GET /2/tweets/{id} allows 450 requests/15min per app vs 900/15min per user, while POST /2/tweets is capped at 10,000/24hrs per app but only 100/15min per user. Every response reports live standing via x-rate-limit-limit, x-rate-limit-remaining, and x-rate-limit-reset headers, and exceeding a window returns HTTP 429 with error code 88 ('Rate limit exceeded'). Access is no longer split into the named Free/Basic/Pro/Enterprise tiers X used after its 2023 relaunch -- the live pricing page (docs.x.com/x-api/getting-started/pricing) now sells pay-per-usage credits billed per resource (e.g. $0.005/Post read, $0.015/Post write), capped at 2,000,000 Post reads per billing cycle before an Enterprise plan with custom limits is required.
- GET/2/tweets/{id}
- GET/2/users/by/username/{username}
- GET/2/users/{id}/tweets
- GET/2/tweets/search/recent
- GET/2/users/me