How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

X (Twitter) Stream API

Endpoints related to streaming

X (Twitter) Stream API is one of 23 APIs that X (Twitter) publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Stream. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, a getting-started guide, an API reference, authentication docs, and rate-limit docs.

This API exposes 22 operations across 20 paths, and defines 123 schemas. It is described by OpenAPI 3.2.0, at version 2.161.

Requests are made against a single base URL, https://api.x.com.

22 operations 20 paths 123 schemas 1 DELETE18 GET3 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
2.161
Base URL
https://api.x.com/2
Authentication
HTTP Bearer, OAuth 2.0, HTTP Oauth
Terms of Service
Resource Areas
1

Authentication & Security 3

X (Twitter) Stream API declares 3 security schemes for authenticating requests. It accepts HTTP bearer tokens (BearerToken). It supports OAuth 2.0 (OAuth2UserToken) using the authorizationCode flow, exposing 21 scopes. It uses HTTP oauth authentication (UserToken).

Paths & Operations 22

Across 20 paths, the API surfaces 22 operations — 1 DELETE, 18 GET, 3 POST. Each is listed below with its method, path, parameters, and response codes.

Stream 22

Endpoints related to streaming

GET
/2/activity/stream
X Activity Stream
activityStream 3 params → 200default
POST
/2/activity/subscriptions
X Create X Activity Subscription
createActivitySubscription body → 200default
GET
/2/likes/compliance/stream
X Stream Likes Compliance Data
streamLikesCompliance 3 params → 200default
GET
/2/likes/firehose/stream
X Stream All Likes
streamLikesFirehose 9 params → 200default
GET
/2/likes/sample10/stream
X Stream Sampled Likes
streamLikesSample10 9 params → 200default
GET
/2/tweets/compliance/stream
X Stream Posts Compliance Data
streamPostsCompliance 4 params → 200default
GET
/2/tweets/firehose/stream
X Stream All Posts
streamPostsFirehose 10 params → 200default
GET
/2/tweets/firehose/stream/lang/en
X Stream English Posts
streamPostsFirehoseEn 10 params → 200default
GET
/2/tweets/firehose/stream/lang/ja
X Stream Japanese Posts
streamPostsFirehoseJa 10 params → 200default
GET
/2/tweets/firehose/stream/lang/ko
X Stream Korean Posts
streamPostsFirehoseKo 10 params → 200default
GET
/2/tweets/firehose/stream/lang/pt
X Stream Portuguese Posts
streamPostsFirehosePt 10 params → 200default
GET
/2/tweets/label/stream
X Stream Post Labels
streamLabelsCompliance 3 params → 200default
GET
/2/tweets/sample/stream
X Stream Sampled Posts
streamPostsSample 7 params → 200default
GET
/2/tweets/sample10/stream
X Stream 10% Sampled Posts
streamPostsSample10 10 params → 200default
GET
/2/tweets/search/stream
X Stream Filtered Posts
streamPosts 9 params → 200default
GET
/2/tweets/search/stream/rules
X Get Stream Rules
getRules 3 params → 200default
POST
/2/tweets/search/stream/rules
X Update Stream Rules
updateRules 2 params body → 200default
GET
/2/tweets/search/stream/rules/counts
X Get Stream Rule Counts
getRuleCounts 1 param → 200default
GET
/2/tweets/search/webhooks
X Get Stream Links
getWebhooksStreamLinks → 200default
DELETE
/2/tweets/search/webhooks/{webhook_id}
X Delete Stream Link
deleteWebhooksStreamLink 1 param → 200default
POST
/2/tweets/search/webhooks/{webhook_id}
X Create Stream Link
createWebhooksStreamLink 7 params → 200default
GET
/2/users/compliance/stream
X Stream Users Compliance Data
streamUsersCompliance 4 params → 200default

Schemas 123

The contract defines 123 schemas that model the data the API accepts and returns. The most detailed are Tweet (29 properties), User (21 properties), UrlFields (9 properties), Place (8 properties). Each schema is shown below with its type and property counts.

NextToken
string
The next token.
CashtagFields
object
Represent the portion of text recognized as a Cashtag, and its start and end position within the text.
1 property 1 required
TweetLabelStreamResponse
Tweet label stream events.
WebhookLinksDeleteResponse
object
2 properties
NoteTweetText
string
The note content of the Tweet.
AddRulesRequest
object
A request to add a user-specified stream filtering rule.
1 property 1 required
LikeWithTweetAuthor
object
A Like event, with the tweet author user and the tweet being liked
5 properties
LikeId
string
The unique identifier of this Like.
UserUnsuspendComplianceSchema
object
1 property 1 required
PlaceId
string
The identifier for this place.
Poll
object
Represent a Poll attached to a Tweet.
5 properties 2 required
ActivitySubscriptionFilter
object
An XAA subscription filter.
3 properties
ActivityEventId
string
The unique identifier of an Activity event.
WebhookConfigId
string
The unique identifier of this webhook config.
Keyword
string
A keyword to filter on.
Media
object
4 properties 1 required
DisplayTextRange
array
Represent a boundary range (start and end zero-based indices) for the portion of text that is displayed for a post. start must be smaller than end. The start i…
ActivitySubscriptionId
string
The unique identifier of this subscription.
RulesResponseMetadata
object
4 properties 1 required
FilteredStreamingTweetResponse
object
A Tweet or error that can be returned by the streaming Tweet API. The values returned with a successful streamed Tweet includes the user provided rules that th…
4 properties
NewsActivityResponsePayload
object
4 properties
UserWithheld
object
Indicates withholding details for [withheld content](https://help.twitter.com/en/rules-and-policies/tweet-withheld-by-country).
2 properties 1 required
Place
object
8 properties 2 required
MediaWidth
integer
The width of the media in pixels.
TweetDropComplianceSchema
object
1 property 1 required
HashtagFields
object
Represent the portion of text recognized as a Hashtag, and its start and end position within the text.
1 property 1 required
TopicId
string
Unique identifier of this Topic.
UserComplianceSchema
object
2 properties 2 required
LikesComplianceStreamResponse
Likes compliance stream events.
MentionFields
object
Represent the portion of text recognized as a User mention, and its start and end position within the text.
2 properties 1 required
EntityIndicesInclusiveExclusive
object
Represent a boundary range (start and end index) for a recognized entity (for example a hashtag or a mention). start must be smaller than end. The start index…
2 properties 2 required
Rule
object
A user-provided stream filtering rule.
3 properties 1 required
TweetWithheldComplianceSchema
object
1 property 1 required
Error
object
2 properties 2 required
AppRulesCount
object
A count of user-provided stream filtering rules at the client application level.
2 properties
TweetUndropComplianceSchema
object
1 property 1 required
RuleNoId
object
A user-provided stream filtering rule.
2 properties 1 required
UserSuspendComplianceSchema
object
1 property 1 required
RuleTag
string
A tag meant for the labeling of user provided rules.
TweetWithheld
object
Indicates withholding details for [withheld content](https://help.twitter.com/en/rules-and-policies/tweet-withheld-by-country).
3 properties 2 required
UserComplianceData
User compliance data.
TweetText
string
The content of the Tweet.
ContextAnnotationEntityFields
object
Represents the data for the context annotation entity.
3 properties 1 required
AddOrDeleteRulesResponse
object
A response from modifying user-specified stream filtering rules.
3 properties 1 required
Expansions
object
6 properties
TweetUnviewableSchema
object
1 property 1 required
Tweet
object
29 properties
MediaKey
string
The Media Key identifier for this attachment.
TweetDeleteComplianceSchema
object
1 property 1 required
HashtagEntity
StreamingTweetResponse
object
3 properties
Get2TweetsSearchStreamRulesCountsResponse
object
2 properties
UserProtectComplianceSchema
object
1 property 1 required
RulesLookupResponse
object
2 properties 1 required
LikeComplianceSchema
object
1 property 1 required
RulesRequestSummary
CashtagEntity
PollOptionLabel
string
The text of a poll choice.
UserWithheldComplianceSchema
object
1 property 1 required
Url
string
A validly formatted URL.
TweetComplianceStreamResponse
Tweet compliance stream events.
UnlikeComplianceSchema
object
2 properties 2 required
Problem
object
An HTTP Problem Details object, as defined in IETF RFC 7807 (https://tools.ietf.org/html/rfc7807).
4 properties 2 required
Point
object
A [GeoJson Point](https://tools.ietf.org/html/rfc7946section-3.1.2) geometry object.
2 properties 2 required
TweetComplianceData
Tweet compliance data.
UserProfileModificationComplianceSchema
object
1 property 1 required
UrlImage
object
Represent the information for the URL image.
3 properties
Topic
object
The topic of a Space, as selected by its creator.
3 properties 2 required
TweetNotice
object
7 properties 4 required
StreamingLikeResponseV2
object
3 properties
UrlEntity
Represent the portion of text recognized as a URL, and its start and end position within the text.
FullTextEntities
object
5 properties
TweetEditComplianceObjectSchema
object
4 properties 4 required
HttpStatusCode
integer
HTTP Status Code.
UserTakedownComplianceSchema
object
3 properties 3 required
ClientAppId
string
The ID of the client application
TweetEditComplianceSchema
object
1 property 1 required
UrlFields
object
Represent the portion of text recognized as a URL.
9 properties 1 required
UserName
string
The X handle (screen name) of this user.
MediaHeight
integer
The height of the media in pixels.
ProfileUpdateActivityResponsePayload
object
2 properties
TweetComplianceSchema
object
3 properties 2 required
TweetNoticeSchema
object
1 property 1 required
AddOrDeleteRulesRequest
PollId
string
Unique identifier of this poll.
PollOption
object
Describes a choice in a Poll object.
3 properties 3 required
TweetUnviewable
object
3 properties 3 required
MentionEntity
RulesCount
object
A count of user-provided stream filtering rules at the application and project levels.
5 properties
UserProfileModificationObjectSchema
object
4 properties 4 required
WebhookLinksCreateResponse
object
2 properties
ActivityStreamingResponsePayload
UserDeleteComplianceSchema
object
1 property 1 required
DeleteRulesRequest
object
A response from deleting user-specified stream filtering rules.
1 property 1 required
TweetTakedownComplianceSchema
object
4 properties 3 required
ContextAnnotation
object
Annotation inferred from the Tweet text.
2 properties 2 required
CountryCode
string
A two-letter ISO 3166-1 alpha-2 country code.
Get2TweetsSample10StreamResponse
object
3 properties
ReplySettingsWithVerifiedUsers
string
Shows who can reply a Tweet. Fields returned are everyone, mentionedusers, subscribers, verified and following.
UserUnprotectComplianceSchema
object
1 property 1 required
ContextAnnotationDomainFields
object
Represents the data for the context annotation domain.
3 properties 1 required
RuleId
string
Unique identifier of this rule.
TweetId
string
Unique identifier of this Tweet. This is returned as a string in order to avoid complications with languages and tools that cannot handle large integers.
Position
array
A [GeoJson Position](https://tools.ietf.org/html/rfc7946section-3.1.1) in the format [longitude,latitude].
RuleValue
string
The filterlang value of the rule.
UserScrubGeoObjectSchema
object
3 properties 3 required
UserScrubGeoSchema
object
1 property 1 required
AllProjectClientApps
array
Client App Rule Counts for all applications in the project
WebhookLinksGetResponse
object
2 properties
UserId
string
Unique identifier of this User. This is returned as a string in order to avoid complications with languages and tools that cannot handle large integers.
ActivityStreamingResponse
object
An activity event or error that can be returned by the x activity streaming API.
2 properties
Geo
object
4 properties 3 required
UserUndeleteComplianceSchema
object
1 property 1 required
CommunityId
string
The unique identifier of this Community.
TweetLabelData
Tweet label data.
EntityIndicesInclusiveInclusive
object
Represent a boundary range (start and end index) for a recognized entity (for example a hashtag or a mention). start must be smaller than end. The start index…
2 properties 2 required
UserComplianceStreamResponse
User compliance stream events.
ActivitySubscription
object
An XActivity subscription.
7 properties 5 required
ActivitySubscriptionCreateResponse
object
3 properties
PlaceType
string
User
object
The X User object.
21 properties 3 required
FollowActivityResponsePayload
object
2 properties
ActivitySubscriptionCreateRequest
object
4 properties 2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

twitter-stream-api-openapi.yml Raw ↑

Other APIs X (Twitter) publishes across the network.

X Ads API
X Activity API
X (Twitter) Account Activity API
X (Twitter) Activity API
X (Twitter) Bookmarks API
X (Twitter) Chat API
X (Twitter) Communities API
X (Twitter) Community Notes API
X (Twitter) Compliance API
X (Twitter) Connections API
X (Twitter) Direct Messages API
X (Twitter) General API
Where this information came from

This is an independent, third-party profile of X (Twitter) Stream API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.