openapi: 3.0.0 info: description: X API v2 available endpoints version: '2.161' title: X API v2 Account Activity Tweets API termsOfService: https://developer.x.com/en/developer-terms/agreement-and-policy.html contact: name: X Developers url: https://developer.x.com/ license: name: X Developer Agreement and Policy url: https://developer.x.com/en/developer-terms/agreement-and-policy.html servers: - description: X API url: https://api.x.com tags: - name: Tweets description: Endpoints related to retrieving, searching, and modifying Tweets externalDocs: description: Find out more url: https://developer.twitter.com/en/docs/twitter-api/tweets/lookup paths: /2/insights/28hr: get: security: - OAuth2UserToken: - tweet.read - UserToken: [] tags: - Tweets summary: X Get 28-hour Post Insights description: Retrieves engagement metrics for specified Posts over the last 28 hours. operationId: getInsights28Hr parameters: - name: tweet_ids in: query description: List of PostIds for 28hr metrics. required: true schema: type: array minItems: 1 maxItems: 25 uniqueItems: true items: $ref: '#/components/schemas/TweetId' example: - '20' style: form example: - '20' - name: granularity in: query description: granularity of metrics response. required: true schema: type: string enum: - Daily - Hourly - Weekly - Total example: Total style: form example: Total - name: requested_metrics in: query description: request metrics for historical request. required: true schema: type: array minItems: 1 uniqueItems: true items: type: string enum: - AppInstallAttempts - AppOpens - DetailExpands - EmailTweet - Engagements - Follows - HashtagClicks - Impressions - Likes - LinkClicks - MediaEngagements - MediaViews - PermalinkClicks - ProfileVisits - QuoteTweets - Replies - Retweets - UniqueVideoViews - UrlClicks - UserProfileClicks - VideoCompletions - VideoPlayed25Percent - VideoPlayed50Percent - VideoPlayed75Percent - VideoStarts - VideoViews style: form example: - AppInstallAttempts - $ref: '#/components/parameters/EngagementFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2Insights28hrResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/insights/historical: get: security: - OAuth2UserToken: - tweet.read - UserToken: [] tags: - Tweets summary: X Get Historical Post Insights description: Retrieves historical engagement metrics for specified Posts within a defined time range. operationId: getInsightsHistorical parameters: - name: tweet_ids in: query description: List of PostIds for historical metrics. required: true schema: type: array minItems: 1 maxItems: 25 uniqueItems: true items: $ref: '#/components/schemas/TweetId' example: - '20' style: form example: - '20' - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The UTC timestamp representing the end of the time range. required: true example: '2021-02-01T18:40:40.000Z' schema: type: string format: date-time style: form - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The UTC timestamp representing the start of the time range. required: true example: '2021-02-01T18:40:40.000Z' schema: type: string format: date-time style: form - name: granularity in: query description: granularity of metrics response. required: true schema: type: string enum: - Daily - Hourly - Weekly - Total example: Total style: form example: Total - name: requested_metrics in: query description: request metrics for historical request. required: true schema: type: array minItems: 1 uniqueItems: true items: type: string enum: - AppInstallAttempts - AppOpens - DetailExpands - EmailTweet - Engagements - Follows - HashtagClicks - Impressions - Likes - LinkClicks - MediaEngagements - MediaViews - PermalinkClicks - ProfileVisits - QuoteTweets - Replies - Retweets - UniqueVideoViews - UrlClicks - UserProfileClicks - VideoCompletions - VideoPlayed25Percent - VideoPlayed50Percent - VideoPlayed75Percent - VideoStarts - VideoViews style: form example: - AppInstallAttempts - $ref: '#/components/parameters/EngagementFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2InsightsHistoricalResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/lists/{id}/tweets: get: security: - BearerToken: [] - OAuth2UserToken: - list.read - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get List Posts description: Retrieves a list of Posts associated with a specific List by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/lists/list-tweets/api-reference/get-lists-id-tweets operationId: getListsPosts parameters: - name: id in: path description: The ID of the List. required: true schema: $ref: '#/components/schemas/ListId' style: simple example: '1234567890' - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 1 maximum: 100 format: int32 default: 100 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2ListsIdTweetsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/spaces/{id}/buyers: get: security: - OAuth2UserToken: - space.read - tweet.read - users.read tags: - Tweets summary: X Get Space Ticket Buyers description: Retrieves a list of Users who purchased tickets to a specific Space by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id-buyers operationId: getSpacesBuyers parameters: - name: id in: path description: The ID of the Space to be retrieved. required: true example: 1YqKDqWqdPLsV schema: type: string description: The unique identifier of this Space. pattern: ^[a-zA-Z0-9]{1,13}$ example: 1SLjjRYNejbKM style: simple - name: pagination_token in: query description: This parameter is used to get a specified 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken32' style: form example: next_token_abc123 - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 1 maximum: 100 format: int32 default: 100 style: form example: 10 - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/UserExpansionsParameter' - $ref: '#/components/parameters/TweetFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2SpacesIdBuyersResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/spaces/{id}/tweets: get: security: - BearerToken: [] - OAuth2UserToken: - space.read - tweet.read - users.read tags: - Tweets summary: X Get Space Posts description: Retrieves a list of Posts shared in a specific Space by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/spaces/lookup/api-reference/get-spaces-id-tweets operationId: getSpacesPosts parameters: - name: id in: path description: The ID of the Space to be retrieved. required: true example: 1YqKDqWqdPLsV schema: type: string description: The unique identifier of this Space. pattern: ^[a-zA-Z0-9]{1,13}$ example: 1SLjjRYNejbKM style: simple - name: max_results in: query description: The number of Posts to fetch from the provided space. If not provided, the value will default to the maximum of 100. required: false schema: type: integer minimum: 1 maximum: 100 format: int32 default: 100 example: 25 style: form example: 25 - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2SpacesIdTweetsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets: get: security: - BearerToken: [] - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Posts by IDs description: Retrieves details of multiple Posts by their IDs. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/lookup/api-reference/get-tweets operationId: getPostsByIds parameters: - name: ids in: query description: A comma separated list of Post IDs. Up to 100 are allowed in a single request. required: true schema: type: array minItems: 1 maxItems: 100 items: $ref: '#/components/schemas/TweetId' explode: false style: form example: [] - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: security: - OAuth2UserToken: - tweet.read - tweet.write - users.read - UserToken: [] tags: - Tweets summary: X Create or Edit Post description: Creates a new Post for the authenticated user, or edits an existing Post when edit_options are provided. Supports paid partnership disclosure via the paid_partnership field. externalDocs: url: https://developer.x.com/en/docs/twitter-api/tweets/manage-tweets/api-reference/post-tweets operationId: createPosts parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/TweetCreateRequest' required: true responses: '201': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/TweetCreateResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/analytics: get: security: - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Post Analytics description: Retrieves analytics data for specified Posts within a defined time range. operationId: getPostsAnalytics parameters: - name: ids in: query description: A comma separated list of Post IDs. Up to 100 are allowed in a single request. required: true schema: type: array minItems: 1 maxItems: 100 items: $ref: '#/components/schemas/TweetId' explode: false style: form example: [] - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The UTC timestamp representing the end of the time range. required: true example: '2021-02-01T18:40:40.000Z' schema: type: string format: date-time style: form - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The UTC timestamp representing the start of the time range. required: true example: '2021-02-01T18:40:40.000Z' schema: type: string format: date-time style: form - name: granularity in: query description: The granularity for the search counts results. required: true schema: type: string enum: - hourly - daily - weekly - total default: total style: form example: hourly - $ref: '#/components/parameters/AnalyticsFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Analytics' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/counts/all: get: security: - BearerToken: [] tags: - Tweets summary: X Get Count of All Posts description: Retrieves the count of Posts matching a search query from the full archive. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/search/api-reference/get-tweets-search-all operationId: getPostsCountsAll parameters: - name: query in: query description: One query/rule/filter for matching Posts. Refer to https://t.co/rulelength to identify the max query length. required: true schema: type: string minLength: 1 maxLength: 4096 example: (from:TwitterDev OR from:TwitterAPI) has:media -is:retweet style: form example: (from:TwitterDev OR from:TwitterAPI) has:media -is:retweet - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The oldest UTC timestamp from which the Posts will be provided. Timestamp is in second granularity and is inclusive (i.e. 12:00:01 includes the first second of the minute). required: false schema: type: string format: date-time style: form example: '2026-04-17T12:00:00Z' - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The newest, most recent UTC timestamp to which the Posts will be provided. Timestamp is in second granularity and is exclusive (i.e. 12:00:01 excludes the first second of the minute). required: false schema: type: string format: date-time style: form example: '2026-04-17T12:00:00Z' - name: since_id in: query description: Returns results with a Post ID greater than (that is, more recent than) the specified ID. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: until_id in: query description: Returns results with a Post ID less than (that is, older than) the specified ID. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: next_token in: query description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled directly from the response provided by the API, and should not be modified. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled directly from the response provided by the API, and should not be modified. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: granularity in: query description: The granularity for the search counts results. required: false schema: type: string enum: - minute - hour - day default: hour style: form example: minute - $ref: '#/components/parameters/SearchCountFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsCountsAllResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/counts/recent: get: security: - BearerToken: [] tags: - Tweets summary: X Get Count of Recent Posts description: Retrieves the count of Posts from the last 7 days matching a search query. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/counts/api-reference/get-tweets-counts-recent operationId: getPostsCountsRecent parameters: - name: query in: query description: One query/rule/filter for matching Posts. Refer to https://t.co/rulelength to identify the max query length. required: true schema: type: string minLength: 1 maxLength: 4096 example: (from:TwitterDev OR from:TwitterAPI) has:media -is:retweet style: form example: (from:TwitterDev OR from:TwitterAPI) has:media -is:retweet - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The oldest UTC timestamp (from most recent 7 days) from which the Posts will be provided. Timestamp is in second granularity and is inclusive (i.e. 12:00:01 includes the first second of the minute). required: false schema: type: string format: date-time style: form example: '2026-04-17T12:00:00Z' - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The newest, most recent UTC timestamp to which the Posts will be provided. Timestamp is in second granularity and is exclusive (i.e. 12:00:01 excludes the first second of the minute). required: false schema: type: string format: date-time style: form example: '2026-04-17T12:00:00Z' - name: since_id in: query description: Returns results with a Post ID greater than (that is, more recent than) the specified ID. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: until_id in: query description: Returns results with a Post ID less than (that is, older than) the specified ID. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: next_token in: query description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled directly from the response provided by the API, and should not be modified. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled directly from the response provided by the API, and should not be modified. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: granularity in: query description: The granularity for the search counts results. required: false schema: type: string enum: - minute - hour - day default: hour style: form example: minute - $ref: '#/components/parameters/SearchCountFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsCountsRecentResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/firehose/stream: get: security: - BearerToken: [] tags: - Tweets summary: X Stream All Posts description: Streams all public Posts in real-time. operationId: streamPostsFirehose parameters: - name: backfill_minutes in: query description: The number of minutes of backfill requested. required: false schema: type: integer minimum: 0 maximum: 5 format: int32 style: form example: 42 - name: partition in: query description: The partition number. required: true schema: type: integer minimum: 1 maximum: 20 format: int32 style: form example: 42 - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/StreamingTweetResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-twitter-streaming: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/firehose/stream/lang/en: get: security: - BearerToken: [] tags: - Tweets summary: X Stream English Posts description: Streams all public English-language Posts in real-time. operationId: streamPostsFirehoseEn parameters: - name: backfill_minutes in: query description: The number of minutes of backfill requested. required: false schema: type: integer minimum: 0 maximum: 5 format: int32 style: form example: 42 - name: partition in: query description: The partition number. required: true schema: type: integer minimum: 1 maximum: 8 format: int32 style: form example: 42 - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/StreamingTweetResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-twitter-streaming: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/firehose/stream/lang/ja: get: security: - BearerToken: [] tags: - Tweets summary: X Stream Japanese Posts description: Streams all public Japanese-language Posts in real-time. operationId: streamPostsFirehoseJa parameters: - name: backfill_minutes in: query description: The number of minutes of backfill requested. required: false schema: type: integer minimum: 0 maximum: 5 format: int32 style: form example: 42 - name: partition in: query description: The partition number. required: true schema: type: integer minimum: 1 maximum: 2 format: int32 style: form example: 42 - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/StreamingTweetResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-twitter-streaming: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/firehose/stream/lang/ko: get: security: - BearerToken: [] tags: - Tweets summary: X Stream Korean Posts description: Streams all public Korean-language Posts in real-time. operationId: streamPostsFirehoseKo parameters: - name: backfill_minutes in: query description: The number of minutes of backfill requested. required: false schema: type: integer minimum: 0 maximum: 5 format: int32 style: form example: 42 - name: partition in: query description: The partition number. required: true schema: type: integer minimum: 1 maximum: 2 format: int32 style: form example: 42 - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/StreamingTweetResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-twitter-streaming: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/firehose/stream/lang/pt: get: security: - BearerToken: [] tags: - Tweets summary: X Stream Portuguese Posts description: Streams all public Portuguese-language Posts in real-time. operationId: streamPostsFirehosePt parameters: - name: backfill_minutes in: query description: The number of minutes of backfill requested. required: false schema: type: integer minimum: 0 maximum: 5 format: int32 style: form example: 42 - name: partition in: query description: The partition number. required: true schema: type: integer minimum: 1 maximum: 2 format: int32 style: form example: 42 - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/StreamingTweetResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-twitter-streaming: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/sample/stream: get: security: - BearerToken: [] tags: - Tweets summary: X Stream Sampled Posts description: Streams a 1% sample of public Posts in real-time. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/volume-streams/api-reference/get-tweets-sample-stream operationId: streamPostsSample parameters: - name: backfill_minutes in: query description: The number of minutes of backfill requested. required: false schema: type: integer minimum: 0 maximum: 5 format: int32 style: form example: 42 - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/StreamingTweetResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-twitter-streaming: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/sample10/stream: get: security: - BearerToken: [] tags: - Tweets summary: X Stream 10% Sampled Posts description: Streams a 10% sample of public Posts in real-time. operationId: streamPostsSample10 parameters: - name: backfill_minutes in: query description: The number of minutes of backfill requested. required: false schema: type: integer minimum: 0 maximum: 5 format: int32 style: form example: 42 - name: partition in: query description: The partition number. required: true schema: type: integer minimum: 1 maximum: 2 format: int32 style: form example: 42 - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsSample10StreamResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-twitter-streaming: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/search/all: get: security: - BearerToken: [] tags: - Tweets summary: X Search All Posts description: Retrieves Posts from the full archive matching a search query. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/search/api-reference/get-tweets-search-all operationId: searchPostsAll parameters: - name: query in: query description: One query/rule/filter for matching Posts. Refer to https://t.co/rulelength to identify the max query length. required: true schema: type: string minLength: 1 maxLength: 4096 example: (from:TwitterDev OR from:TwitterAPI) has:media -is:retweet style: form example: (from:TwitterDev OR from:TwitterAPI) has:media -is:retweet - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The oldest UTC timestamp from which the Posts will be provided. Timestamp is in second granularity and is inclusive (i.e. 12:00:01 includes the first second of the minute). required: false schema: type: string format: date-time style: form example: '2026-04-17T12:00:00Z' - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The newest, most recent UTC timestamp to which the Posts will be provided. Timestamp is in second granularity and is exclusive (i.e. 12:00:01 excludes the first second of the minute). required: false schema: type: string format: date-time style: form example: '2026-04-17T12:00:00Z' - name: since_id in: query description: Returns results with a Post ID greater than (that is, more recent than) the specified ID. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: until_id in: query description: Returns results with a Post ID less than (that is, older than) the specified ID. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: max_results in: query description: The maximum number of search results to be returned by a request. required: false schema: type: integer minimum: 10 maximum: 500 format: int32 default: 10 style: form example: 10 - name: next_token in: query description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled directly from the response provided by the API, and should not be modified. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled directly from the response provided by the API, and should not be modified. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: sort_order in: query description: This order in which to return results. required: false schema: type: string enum: - recency - relevancy style: form example: recency - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsSearchAllResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/search/recent: get: security: - BearerToken: [] - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Search Recent Posts description: Retrieves Posts from the last 7 days matching a search query. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/search/api-reference/get-tweets-search-recent operationId: searchPostsRecent parameters: - name: query in: query description: One query/rule/filter for matching Posts. Refer to https://t.co/rulelength to identify the max query length. required: true schema: type: string minLength: 1 maxLength: 4096 example: (from:TwitterDev OR from:TwitterAPI) has:media -is:retweet style: form example: (from:TwitterDev OR from:TwitterAPI) has:media -is:retweet - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The oldest UTC timestamp from which the Posts will be provided. Timestamp is in second granularity and is inclusive (i.e. 12:00:01 includes the first second of the minute). required: false schema: type: string format: date-time style: form example: '2026-04-17T12:00:00Z' - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The newest, most recent UTC timestamp to which the Posts will be provided. Timestamp is in second granularity and is exclusive (i.e. 12:00:01 excludes the first second of the minute). required: false schema: type: string format: date-time style: form example: '2026-04-17T12:00:00Z' - name: since_id in: query description: Returns results with a Post ID greater than (that is, more recent than) the specified ID. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: until_id in: query description: Returns results with a Post ID less than (that is, older than) the specified ID. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: max_results in: query description: The maximum number of search results to be returned by a request. required: false schema: type: integer minimum: 10 maximum: 100 format: int32 default: 10 style: form example: 10 - name: next_token in: query description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled directly from the response provided by the API, and should not be modified. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled directly from the response provided by the API, and should not be modified. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: sort_order in: query description: This order in which to return results. required: false schema: type: string enum: - recency - relevancy style: form example: recency - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsSearchRecentResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/search/stream: get: security: - BearerToken: [] tags: - Tweets summary: X Stream Filtered Posts description: Streams Posts in real-time matching the active rule set. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream operationId: streamPosts parameters: - name: backfill_minutes in: query description: The number of minutes of backfill requested. required: false schema: type: integer minimum: 0 maximum: 5 format: int32 style: form example: 42 - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp from which the Posts will be provided. required: false example: '2021-02-01T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/FilteredStreamingTweetResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-twitter-streaming: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/search/stream/rules: get: security: - BearerToken: [] tags: - Tweets summary: X Get Stream Rules description: Retrieves the active rule set or a subset of rules for the filtered stream. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream-rules operationId: getRules parameters: - name: ids in: query description: A comma-separated list of Rule IDs. required: false schema: type: array items: $ref: '#/components/schemas/RuleId' style: form example: [] - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 1 maximum: 1000 format: int32 default: 1000 style: form example: 10 - name: pagination_token in: query description: This value is populated by passing the 'next_token' returned in a request to paginate through results. required: false schema: type: string minLength: 16 maxLength: 16 style: form example: next_token_abc123 responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/RulesLookupResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: security: - BearerToken: [] tags: - Tweets summary: X Update Stream Rules description: Adds or deletes rules from the active rule set for the filtered stream. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/post-tweets-search-stream-rules operationId: updateRules parameters: - name: dry_run in: query description: Dry Run can be used with both the add and delete action, with the expected result given, but without actually taking any action in the system (meaning the end state will always be as it was when the request was submitted). This is particularly useful to validate rule changes. required: false schema: type: boolean style: form example: true - name: delete_all in: query description: Delete All can be used to delete all of the rules associated this client app, it should be specified with no other parameters. Once deleted, rules cannot be recovered. required: false schema: type: boolean style: form example: true requestBody: content: application/json: schema: $ref: '#/components/schemas/AddOrDeleteRulesRequest' required: true responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/AddOrDeleteRulesResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/search/stream/rules/counts: get: security: - BearerToken: [] tags: - Tweets summary: X Get Stream Rule Counts description: Retrieves the count of rules in the active rule set for the filtered stream. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/api-reference/get-tweets-search-stream-rules-counts operationId: getRuleCounts parameters: - $ref: '#/components/parameters/RulesCountFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsSearchStreamRulesCountsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/{id}: delete: security: - OAuth2UserToken: - tweet.read - tweet.write - users.read - UserToken: [] tags: - Tweets summary: X Delete Post description: Deletes a specific Post by its ID, if owned by the authenticated user. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/manage-tweets/api-reference/delete-tweets-id operationId: deletePosts parameters: - name: id in: path description: The ID of the Post to be deleted. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/TweetDeleteResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK get: security: - BearerToken: [] - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Post by ID description: Retrieves details of a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/lookup/api-reference/get-tweets-id operationId: getPostsById parameters: - name: id in: path description: A single Post ID. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsIdResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/{id}/liking_users: get: security: - OAuth2UserToken: - like.read - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Liking Users description: Retrieves a list of Users who liked a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-tweets-id-liking_users operationId: getPostsLikingUsers parameters: - name: id in: path description: A single Post ID. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 1 maximum: 100 format: int32 default: 100 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/UserExpansionsParameter' - $ref: '#/components/parameters/TweetFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsIdLikingUsersResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/{id}/quote_tweets: get: security: - BearerToken: [] - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Quoted Posts description: Retrieves a list of Posts that quote a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/quote-tweets/api-reference/get-tweets-id-quote_tweets operationId: getPostsQuotedPosts parameters: - name: id in: path description: A single Post ID. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' - name: max_results in: query description: The maximum number of results to be returned. required: false schema: type: integer minimum: 10 maximum: 100 format: int32 default: 10 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get a specified 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: exclude in: query description: The set of entities to exclude (e.g. 'replies' or 'retweets'). required: false schema: type: array minItems: 1 uniqueItems: true items: type: string enum: - replies - retweets example: - replies - retweets explode: false style: form example: - replies - retweets - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsIdQuoteTweetsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/{id}/retweeted_by: get: security: - BearerToken: [] - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Reposted by description: Retrieves a list of Users who reposted a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/get-tweets-id-retweeted_by operationId: getPostsRepostedBy parameters: - name: id in: path description: A single Post ID. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 1 maximum: 100 format: int32 default: 100 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/UserExpansionsParameter' - $ref: '#/components/parameters/TweetFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsIdRetweetedByResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/{id}/retweets: get: security: - BearerToken: [] - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Reposts description: Retrieves a list of Posts that repost a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/get-tweets-id-retweets operationId: getPostsReposts parameters: - name: id in: path description: A single Post ID. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 1 maximum: 100 format: int32 default: 100 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2TweetsIdRetweetsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/tweets/{tweet_id}/hidden: put: security: - OAuth2UserToken: - tweet.moderate.write - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Hide Reply description: Hides or unhides a reply to a conversation owned by the authenticated user. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/hide-replies/api-reference/put-tweets-id-hidden operationId: hidePostsReply parameters: - name: tweet_id in: path description: The ID of the reply that you want to hide or unhide. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' requestBody: content: application/json: schema: $ref: '#/components/schemas/TweetHideRequest' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/TweetHideResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/users/{id}/liked_tweets: get: security: - OAuth2UserToken: - like.read - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Liked Posts description: Retrieves a list of Posts liked by a specific User by their ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/get-users-id-liked_tweets operationId: getUsersLikedPosts parameters: - name: id in: path description: The ID of the User to lookup. required: true example: '2244994945' schema: $ref: '#/components/schemas/UserId' style: simple - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 5 maximum: 100 format: int32 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2UsersIdLikedTweetsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/users/{id}/likes: post: security: - OAuth2UserToken: - like.write - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Like Post description: Causes the authenticated user to Like a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/post-users-id-likes operationId: likePost parameters: - name: id in: path description: The ID of the authenticated source User that is requesting to like the Post. required: true schema: $ref: '#/components/schemas/UserIdMatchesAuthenticatedUser' style: simple example: '1234567890' requestBody: content: application/json: schema: $ref: '#/components/schemas/UsersLikesCreateRequest' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/UsersLikesCreateResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/users/{id}/likes/{tweet_id}: delete: security: - OAuth2UserToken: - like.write - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Unlike Post description: Causes the authenticated user to Unlike a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/likes/api-reference/delete-users-id-likes-tweet_id operationId: unlikePost parameters: - name: id in: path description: The ID of the authenticated source User that is requesting to unlike the Post. required: true schema: $ref: '#/components/schemas/UserIdMatchesAuthenticatedUser' style: simple example: '1234567890' - name: tweet_id in: path description: The ID of the Post that the User is requesting to unlike. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/UsersLikesDeleteResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/users/{id}/mentions: get: security: - BearerToken: [] - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Mentions description: Retrieves a list of Posts that mention a specific User by their ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-mentions operationId: getUsersMentions parameters: - name: id in: path description: The ID of the User to lookup. required: true example: '2244994945' schema: $ref: '#/components/schemas/UserId' style: simple - name: since_id in: query description: The minimum Post ID to be included in the result set. This parameter takes precedence over start_time if both are specified. required: false schema: $ref: '#/components/schemas/TweetId' style: form example: '1234567890' - name: until_id in: query description: The maximum Post ID to be included in the result set. This parameter takes precedence over end_time if both are specified. required: false example: '1346889436626259968' schema: $ref: '#/components/schemas/TweetId' style: form - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 5 maximum: 100 format: int32 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp from which the Posts will be provided. The since_id parameter takes precedence if it is also specified. required: false example: '2021-02-01T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. The until_id parameter takes precedence if it is also specified. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2UsersIdMentionsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/users/{id}/retweets: post: security: - OAuth2UserToken: - tweet.read - tweet.write - users.read - UserToken: [] tags: - Tweets summary: X Repost Post description: Causes the authenticated user to repost a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/post-users-id-retweets operationId: repostPost parameters: - name: id in: path description: The ID of the authenticated source User that is requesting to repost the Post. required: true schema: $ref: '#/components/schemas/UserIdMatchesAuthenticatedUser' style: simple example: '1234567890' requestBody: content: application/json: schema: $ref: '#/components/schemas/UsersRetweetsCreateRequest' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/UsersRetweetsCreateResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/users/{id}/retweets/{source_tweet_id}: delete: security: - OAuth2UserToken: - tweet.read - tweet.write - users.read - UserToken: [] tags: - Tweets summary: X Unrepost Post description: Causes the authenticated user to unrepost a specific Post by its ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/retweets/api-reference/delete-users-id-retweets-tweet_id operationId: unrepostPost parameters: - name: id in: path description: The ID of the authenticated source User that is requesting to repost the Post. required: true schema: $ref: '#/components/schemas/UserIdMatchesAuthenticatedUser' style: simple example: '1234567890' - name: source_tweet_id in: path description: The ID of the Post that the User is requesting to unretweet. required: true schema: $ref: '#/components/schemas/TweetId' style: simple example: '1234567890' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/UsersRetweetsDeleteResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/users/{id}/timelines/reverse_chronological: get: security: - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Timeline description: Retrieves a reverse chronological list of Posts in the authenticated User’s Timeline. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-reverse-chronological operationId: getUsersTimeline parameters: - name: id in: path description: The ID of the authenticated source User to list Reverse Chronological Timeline Posts of. required: true schema: $ref: '#/components/schemas/UserIdMatchesAuthenticatedUser' style: simple example: '1234567890' - name: since_id in: query description: The minimum Post ID to be included in the result set. This parameter takes precedence over start_time if both are specified. required: false example: '791775337160081409' schema: $ref: '#/components/schemas/TweetId' style: form - name: until_id in: query description: The maximum Post ID to be included in the result set. This parameter takes precedence over end_time if both are specified. required: false example: '1346889436626259968' schema: $ref: '#/components/schemas/TweetId' style: form - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 1 maximum: 100 format: int32 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: exclude in: query description: The set of entities to exclude (e.g. 'replies' or 'retweets'). required: false schema: type: array uniqueItems: true items: type: string enum: - replies - retweets example: - replies - retweets explode: false style: form example: - replies - retweets - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp from which the Posts will be provided. The since_id parameter takes precedence if it is also specified. required: false example: '2021-02-01T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. The until_id parameter takes precedence if it is also specified. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2UsersIdTimelinesReverseChronologicalResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK /2/users/{id}/tweets: get: security: - BearerToken: [] - OAuth2UserToken: - tweet.read - users.read - UserToken: [] tags: - Tweets summary: X Get Posts description: Retrieves a list of posts authored by a specific User by their ID. externalDocs: url: https://developer.twitter.com/en/docs/twitter-api/tweets/timelines/api-reference/get-users-id-tweets operationId: getUsersPosts parameters: - name: id in: path description: The ID of the User to lookup. required: true example: '2244994945' schema: $ref: '#/components/schemas/UserId' style: simple - name: since_id in: query description: The minimum Post ID to be included in the result set. This parameter takes precedence over start_time if both are specified. required: false example: '791775337160081409' schema: $ref: '#/components/schemas/TweetId' style: form - name: until_id in: query description: The maximum Post ID to be included in the result set. This parameter takes precedence over end_time if both are specified. required: false example: '1346889436626259968' schema: $ref: '#/components/schemas/TweetId' style: form - name: max_results in: query description: The maximum number of results. required: false schema: type: integer minimum: 5 maximum: 100 format: int32 style: form example: 10 - name: pagination_token in: query description: This parameter is used to get the next 'page' of results. required: false schema: $ref: '#/components/schemas/PaginationToken36' style: form example: next_token_abc123 - name: exclude in: query description: The set of entities to exclude (e.g. 'replies' or 'retweets'). required: false schema: type: array minItems: 1 uniqueItems: true items: type: string enum: - replies - retweets example: - replies - retweets explode: false style: form example: - replies - retweets - name: start_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp from which the Posts will be provided. The since_id parameter takes precedence if it is also specified. required: false example: '2021-02-01T18:40:40.000Z' schema: type: string format: date-time style: form - name: end_time in: query description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. The until_id parameter takes precedence if it is also specified. required: false example: '2021-02-14T18:40:40.000Z' schema: type: string format: date-time style: form - $ref: '#/components/parameters/TweetFieldsParameter' - $ref: '#/components/parameters/TweetExpansionsParameter' - $ref: '#/components/parameters/MediaFieldsParameter' - $ref: '#/components/parameters/PollFieldsParameter' - $ref: '#/components/parameters/UserFieldsParameter' - $ref: '#/components/parameters/PlaceFieldsParameter' responses: '200': description: The request has succeeded. content: application/json: schema: $ref: '#/components/schemas/Get2UsersIdTweetsResponse' default: description: The request has failed. content: application/json: schema: $ref: '#/components/schemas/Error' application/problem+json: schema: $ref: '#/components/schemas/Problem' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: AddOrDeleteRulesRequest: oneOf: - $ref: '#/components/schemas/AddRulesRequest' - $ref: '#/components/schemas/DeleteRulesRequest' PollId: type: string description: Unique identifier of this poll. pattern: ^[0-9]{1,19}$ example: '1365059861688410112' Media: type: object required: - type properties: height: $ref: '#/components/schemas/MediaHeight' media_key: $ref: '#/components/schemas/MediaKey' type: type: string width: $ref: '#/components/schemas/MediaWidth' discriminator: propertyName: type mapping: animated_gif: '#/components/schemas/AnimatedGif' photo: '#/components/schemas/Photo' video: '#/components/schemas/Video' AllProjectClientApps: type: array description: Client App Rule Counts for all applications in the project items: $ref: '#/components/schemas/AppRulesCount' TweetHideResponse: type: object properties: data: type: object properties: hidden: type: boolean Geo: type: object required: - type - bbox - properties properties: bbox: type: array minItems: 4 maxItems: 4 items: type: number minimum: -180 maximum: 180 format: double example: - -105.193475 - 39.60973 - -105.053164 - 39.761974 geometry: $ref: '#/components/schemas/Point' properties: type: object type: type: string enum: - Feature Get2UsersIdTweetsResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: newest_id: $ref: '#/components/schemas/NewestId' next_token: $ref: '#/components/schemas/NextToken' oldest_id: $ref: '#/components/schemas/OldestId' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' PlaceId: type: string description: The identifier for this place. example: f7eb2fa2fea288b1 TweetCount: type: integer description: The count for the bucket. ContextAnnotationDomainFields: type: object description: Represents the data for the context annotation domain. required: - id properties: description: type: string description: Description of the context annotation domain. example: Example description for this resource. id: type: string description: The unique id for a context annotation domain. pattern: ^[0-9]{1,19}$ example: '1234567890' name: type: string description: Name of the context annotation domain. example: Example User TweetCreateRequest: type: object properties: card_uri: type: string description: Card Uri Parameter. This is mutually exclusive from Quote Tweet Id, Poll, Media, and Direct Message Deep Link. community_id: $ref: '#/components/schemas/CommunityId' direct_message_deep_link: type: string description: Link to take the conversation from the public timeline to a private Direct Message. edit_options: type: object description: Options for editing an existing Post. When provided, this request will edit the specified Post instead of creating a new one. required: - previous_post_id properties: previous_post_id: $ref: '#/components/schemas/TweetId' additionalProperties: false for_super_followers_only: type: boolean description: Exclusive Tweet for super followers. default: false geo: type: object description: Place ID being attached to the Tweet for geo location. properties: place_id: type: string additionalProperties: false made_with_ai: type: boolean description: Whether this Post contains AI-generated media. When true, the Post will be labeled accordingly. media: type: object description: Media information being attached to created Tweet. This is mutually exclusive from Quote Tweet Id, Poll, and Card URI. required: - media_ids properties: media_ids: type: array description: A list of Media Ids to be attached to a created Tweet. minItems: 1 maxItems: 4 items: $ref: '#/components/schemas/MediaId' tagged_user_ids: type: array description: A list of User Ids to be tagged in the media for created Tweet. minItems: 0 maxItems: 10 items: $ref: '#/components/schemas/UserId' additionalProperties: false nullcast: type: boolean description: Nullcasted (promoted-only) Posts do not appear in the public timeline and are not served to followers. default: false paid_partnership: type: boolean description: Whether this Post is a paid partnership. When true, the Post will be labeled as a paid promotion. poll: type: object description: Poll options for a Tweet with a poll. This is mutually exclusive from Media, Quote Tweet Id, and Card URI. required: - options - duration_minutes properties: duration_minutes: type: integer description: Duration of the poll in minutes. minimum: 5 maximum: 10080 format: int32 options: type: array minItems: 2 maxItems: 4 items: type: string description: The text of a poll choice. minLength: 1 maxLength: 25 reply_settings: type: string description: Settings to indicate who can reply to the Tweet. enum: - following - mentionedUsers - subscribers - verified additionalProperties: false quote_tweet_id: $ref: '#/components/schemas/TweetId' reply: type: object description: Tweet information of the Tweet being replied to. required: - in_reply_to_tweet_id properties: auto_populate_reply_metadata: type: boolean description: If set to true, reply metadata will be automatically populated. exclude_reply_user_ids: type: array description: A list of User Ids to be excluded from the reply Tweet. items: $ref: '#/components/schemas/UserId' in_reply_to_tweet_id: $ref: '#/components/schemas/TweetId' additionalProperties: false reply_settings: type: string description: Settings to indicate who can reply to the Tweet. enum: - following - mentionedUsers - subscribers - verified share_with_followers: type: boolean description: Share community post with followers too. default: false text: $ref: '#/components/schemas/TweetText' additionalProperties: false PreviousToken: type: string description: The previous token. minLength: 1 Get2TweetsSample10StreamResponse: type: object properties: data: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' HashtagEntity: allOf: - $ref: '#/components/schemas/EntityIndicesInclusiveExclusive' - $ref: '#/components/schemas/HashtagFields' MentionFields: type: object description: Represent the portion of text recognized as a User mention, and its start and end position within the text. required: - username properties: id: $ref: '#/components/schemas/UserId' username: $ref: '#/components/schemas/UserName' ReplySettingsWithVerifiedUsers: type: string description: Shows who can reply a Tweet. Fields returned are everyone, mentioned_users, subscribers, verified and following. pattern: ^[A-Za-z]{1,12}$ enum: - everyone - mentionedUsers - following - other - subscribers - verified Get2UsersIdLikedTweetsResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: next_token: $ref: '#/components/schemas/NextToken' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' Topic: type: object description: The topic of a Space, as selected by its creator. required: - id - name properties: description: type: string description: The description of the given topic. example: All about technology id: $ref: '#/components/schemas/TopicId' name: type: string description: The name of the given topic. example: Technology UsersLikesCreateRequest: type: object required: - tweet_id properties: tweet_id: $ref: '#/components/schemas/TweetId' TweetCreateResponse: type: object properties: data: type: object required: - id - text properties: id: $ref: '#/components/schemas/TweetId' text: $ref: '#/components/schemas/TweetText' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' Get2SpacesIdBuyersResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/User' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: next_token: $ref: '#/components/schemas/NextToken' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' Place: type: object required: - id - full_name properties: contained_within: type: array minItems: 1 items: $ref: '#/components/schemas/PlaceId' country: type: string description: The full name of the county in which this place exists. example: United States country_code: $ref: '#/components/schemas/CountryCode' full_name: type: string description: The full name of this place. example: Lakewood, CO geo: $ref: '#/components/schemas/Geo' id: $ref: '#/components/schemas/PlaceId' name: type: string description: The human readable name of this place. example: Lakewood place_type: $ref: '#/components/schemas/PlaceType' UserWithheld: type: object description: Indicates withholding details for [withheld content](https://help.twitter.com/en/rules-and-policies/tweet-withheld-by-country). required: - country_codes properties: country_codes: type: array description: Provides a list of countries where this content is not available. minItems: 1 uniqueItems: true items: $ref: '#/components/schemas/CountryCode' scope: type: string description: Indicates that the content being withheld is a `user`. enum: - user CountryCode: type: string description: A two-letter ISO 3166-1 alpha-2 country code. pattern: ^[A-Z]{2}$ example: US PollOption: type: object description: Describes a choice in a Poll object. required: - position - label - votes properties: label: $ref: '#/components/schemas/PollOptionLabel' position: type: integer description: Position of this choice in the poll. votes: type: integer description: Number of users who voted for this choice. StreamingTweetResponse: type: object properties: data: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' DeleteRulesRequest: type: object description: A response from deleting user-specified stream filtering rules. required: - delete properties: delete: type: object description: IDs and values of all deleted user-specified stream filtering rules. properties: ids: type: array description: IDs of all deleted user-specified stream filtering rules. items: $ref: '#/components/schemas/RuleId' values: type: array description: Values of all deleted user-specified stream filtering rules. items: $ref: '#/components/schemas/RuleValue' PaginationToken32: type: string description: A base32 pagination token. minLength: 16 CashtagEntity: allOf: - $ref: '#/components/schemas/EntityIndicesInclusiveExclusive' - $ref: '#/components/schemas/CashtagFields' Get2TweetsIdRetweetedByResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/User' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: next_token: $ref: '#/components/schemas/NextToken' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' UsersRetweetsCreateResponse: type: object properties: data: type: object properties: id: $ref: '#/components/schemas/TweetId' retweeted: type: boolean errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' Get2Insights28hrResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Engagement' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' UsersLikesDeleteResponse: type: object properties: data: type: object properties: liked: type: boolean errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' ClientAppId: type: string description: The ID of the client application minLength: 1 maxLength: 19 Analytics: type: object properties: data: type: array items: type: object properties: id: $ref: '#/components/schemas/TweetId' timestamped_metrics: type: array title: Timestamped Metrics description: Array containing metrics data along with the timestamps of their recording. items: $ref: '#/components/schemas/TimestampedMetrics' example: [] errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' example: [] NoteTweetText: type: string description: The note content of the Tweet. example: Learn how to use the user Tweet timeline and user mention timeline endpoints in the X API v2 to explore Tweet\u2026 https:\/\/t.co\/56a0vZUx7i RuleNoId: type: object description: A user-provided stream filtering rule. required: - value properties: tag: $ref: '#/components/schemas/RuleTag' value: $ref: '#/components/schemas/RuleValue' OldestId: type: string description: The oldest id in this response. Point: type: object description: A [GeoJson Point](https://tools.ietf.org/html/rfc7946#section-3.1.2) geometry object. required: - type - coordinates properties: coordinates: $ref: '#/components/schemas/Position' type: type: string enum: - Point example: Point UserIdMatchesAuthenticatedUser: type: string description: Unique identifier of this User. The value must be the same as the authenticated user. example: '2244994945' Get2TweetsIdQuoteTweetsResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: next_token: $ref: '#/components/schemas/NextToken' result_count: $ref: '#/components/schemas/ResultCount' PollOptionLabel: type: string description: The text of a poll choice. minLength: 1 maxLength: 25 PlaceType: type: string enum: - poi - neighborhood - city - admin - country - unknown example: city TweetDeleteResponse: type: object properties: data: type: object required: - deleted properties: deleted: type: boolean errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' Metrics: type: object properties: app_install_attempts: type: integer title: App Install Attempts description: Tracks number of App Install Attempts app_opens: type: integer title: App Opens description: Tracks number of App opens detail_expands: type: integer title: Detail Expands description: Tracks number of Detail expands email_tweet: type: integer title: Email Tweet description: Tracks number of Email Tweet actions engagements: type: integer title: Engagements description: Tracks total Engagements follows: type: integer title: Follows description: Tracks number of Follows hashtag_clicks: type: integer title: Hashtag Clicks description: Tracks number of Hashtag clicks impressions: type: integer title: Impressions description: Tracks number of Impressions likes: type: integer title: Likes description: Tracks number of Likes link_clicks: type: integer title: Link Clicks description: Tracks number of Link clicks media_engagements: type: integer title: Media Engagements description: Tracks number of Media engagements media_views: type: integer title: Media Views description: Tracks number of Media views permalink_clicks: type: integer title: Permalink Clicks description: Tracks number of Permalink clicks profile_visits: type: integer title: Profile Visits description: Tracks number of Profile visits quote_tweets: type: integer title: Quote Tweets description: Tracks number of Quote Tweets replies: type: integer title: Replies description: Tracks number of Replies retweets: type: integer title: Retweets description: Tracks number of Retweets url_clicks: type: integer title: URL Clicks description: Tracks number of URL clicks user_profile_clicks: type: integer title: User Profile Clicks description: Tracks number of User Profile clicks CommunityId: type: string description: The unique identifier of this Community. pattern: ^[0-9]{1,19}$ example: '1146654567674912769' End: type: string description: The end time of the bucket. format: date-time DisplayTextRange: type: array description: 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 index is inclusive, the end index is exclusive. minItems: 2 maxItems: 2 items: type: integer minimum: 0 User: type: object description: The X User object. required: - id - name - username properties: affiliation: type: object description: Metadata about a user's affiliation. properties: badge_url: type: string description: The badge URL corresponding to the affiliation. format: uri description: type: string description: The description of the affiliation. url: type: string description: The URL, if available, to details about an affiliation. format: uri user_id: type: array minItems: 1 items: $ref: '#/components/schemas/UserId' connection_status: type: array description: Returns detailed information about the relationship between two users. minItems: 0 items: type: string description: Type of connection between users. enum: - follow_request_received - follow_request_sent - blocking - followed_by - following - muting created_at: type: string description: Creation time of this User. format: date-time description: type: string description: The text of this User's profile description (also known as bio), if the User provided one. entities: type: object description: A list of metadata found in the User's profile description. properties: description: $ref: '#/components/schemas/FullTextEntities' url: type: object description: Expanded details for the URL specified in the User's profile, with start and end indices. properties: urls: type: array minItems: 1 items: $ref: '#/components/schemas/UrlEntity' id: $ref: '#/components/schemas/UserId' location: type: string description: The location specified in the User's profile, if the User provided one. As this is a freeform value, it may not indicate a valid location, but it may be fuzzily evaluated when performing searches with location queries. most_recent_tweet_id: $ref: '#/components/schemas/TweetId' name: type: string description: The friendly name of this User, as shown on their profile. pinned_tweet_id: $ref: '#/components/schemas/TweetId' profile_banner_url: type: string description: The URL to the profile banner for this User. format: uri profile_image_url: type: string description: The URL to the profile image for this User. format: uri protected: type: boolean description: Indicates if this User has chosen to protect their Posts (in other words, if this User's Posts are private). public_metrics: type: object description: A list of metrics for this User. required: - followers_count - following_count - tweet_count - listed_count properties: followers_count: type: integer description: Number of Users who are following this User. following_count: type: integer description: Number of Users this User is following. like_count: type: integer description: The number of likes created by this User. listed_count: type: integer description: The number of lists that include this User. tweet_count: type: integer description: The number of Posts (including Retweets) posted by this User. receives_your_dm: type: boolean description: Indicates if you can send a DM to this User subscription_type: type: string description: 'The X Blue subscription type of the user, eg: Basic, Premium, PremiumPlus or None.' enum: - Basic - Premium - PremiumPlus - None url: type: string description: The URL specified in the User's profile. username: $ref: '#/components/schemas/UserName' verified: type: boolean description: Indicate if this User is a verified X User. verified_type: type: string description: 'The X Blue verified type of the user, eg: blue, government, business or none.' enum: - blue - government - business - none withheld: $ref: '#/components/schemas/UserWithheld' example: created_at: '2013-12-14T04:35:55Z' id: '2244994945' name: X Dev protected: false username: TwitterDev MentionEntity: allOf: - $ref: '#/components/schemas/EntityIndicesInclusiveExclusive' - $ref: '#/components/schemas/MentionFields' FullTextEntities: type: object properties: annotations: type: array minItems: 1 items: description: Annotation for entities based on the Tweet text. allOf: - $ref: '#/components/schemas/EntityIndicesInclusiveInclusive' - type: object description: Represents the data for the annotation. properties: normalized_text: type: string description: Text used to determine annotation. example: Barack Obama probability: type: number description: Confidence factor for annotation type. minimum: 0 maximum: 1 format: double type: type: string description: Annotation type. example: Person cashtags: type: array minItems: 1 items: $ref: '#/components/schemas/CashtagEntity' hashtags: type: array minItems: 1 items: $ref: '#/components/schemas/HashtagEntity' mentions: type: array minItems: 1 items: $ref: '#/components/schemas/MentionEntity' urls: type: array minItems: 1 items: $ref: '#/components/schemas/UrlEntity' UrlFields: type: object description: Represent the portion of text recognized as a URL. required: - url properties: description: type: string description: Description of the URL landing page. example: This is a description of the website. display_url: type: string description: The URL as displayed in the X client. example: twittercommunity.com/t/introducing-… expanded_url: $ref: '#/components/schemas/Url' images: type: array minItems: 1 items: $ref: '#/components/schemas/UrlImage' media_key: $ref: '#/components/schemas/MediaKey' status: $ref: '#/components/schemas/HttpStatusCode' title: type: string description: Title of the page the URL points to. example: Introducing the v2 follow lookup endpoints unwound_url: type: string description: Fully resolved url. format: uri example: https://twittercommunity.com/t/introducing-the-v2-follow-lookup-endpoints/147118 url: $ref: '#/components/schemas/Url' Tweet: type: object properties: attachments: type: object description: Specifies the type of attachments (if any) present in this Tweet. properties: media_keys: type: array description: A list of Media Keys for each one of the media attachments (if media are attached). minItems: 1 items: $ref: '#/components/schemas/MediaKey' media_source_tweet_id: type: array description: A list of Posts the media on this Tweet was originally posted in. For example, if the media on a tweet is re-used in another Tweet, this refers to the original, source Tweet.. minItems: 1 items: $ref: '#/components/schemas/TweetId' poll_ids: type: array description: A list of poll IDs (if polls are attached). minItems: 1 items: $ref: '#/components/schemas/PollId' author_id: $ref: '#/components/schemas/UserId' community_id: $ref: '#/components/schemas/CommunityId' context_annotations: type: array minItems: 1 items: $ref: '#/components/schemas/ContextAnnotation' conversation_id: $ref: '#/components/schemas/TweetId' created_at: type: string description: Creation time of the Tweet. format: date-time example: '2021-01-06T18:40:40.000Z' display_text_range: $ref: '#/components/schemas/DisplayTextRange' edit_controls: type: object required: - is_edit_eligible - editable_until - edits_remaining properties: editable_until: type: string description: Time when Tweet is no longer editable. format: date-time example: '2021-01-06T18:40:40.000Z' edits_remaining: type: integer description: Number of times this Tweet can be edited. is_edit_eligible: type: boolean description: Indicates if this Tweet is eligible to be edited. example: false edit_history_tweet_ids: type: array description: A list of Tweet Ids in this Tweet chain. minItems: 1 items: $ref: '#/components/schemas/TweetId' entities: $ref: '#/components/schemas/FullTextEntities' geo: type: object description: The location tagged on the Tweet, if the user provided one. properties: coordinates: $ref: '#/components/schemas/Point' place_id: $ref: '#/components/schemas/PlaceId' id: $ref: '#/components/schemas/TweetId' in_reply_to_user_id: $ref: '#/components/schemas/UserId' lang: type: string description: Language of the Tweet, if detected by X. Returned as a BCP47 language tag. example: en non_public_metrics: type: object description: Nonpublic engagement metrics for the Tweet at the time of the request. properties: impression_count: type: integer description: Number of times this Tweet has been viewed. format: int32 note_tweet: type: object description: The full-content of the Tweet, including text beyond 280 characters. properties: entities: type: object properties: cashtags: type: array minItems: 1 items: $ref: '#/components/schemas/CashtagEntity' hashtags: type: array minItems: 1 items: $ref: '#/components/schemas/HashtagEntity' mentions: type: array minItems: 1 items: $ref: '#/components/schemas/MentionEntity' urls: type: array minItems: 1 items: $ref: '#/components/schemas/UrlEntity' text: $ref: '#/components/schemas/NoteTweetText' organic_metrics: type: object description: Organic nonpublic engagement metrics for the Tweet at the time of the request. required: - impression_count - retweet_count - reply_count - like_count properties: impression_count: type: integer description: Number of times this Tweet has been viewed. like_count: type: integer description: Number of times this Tweet has been liked. reply_count: type: integer description: Number of times this Tweet has been replied to. retweet_count: type: integer description: Number of times this Tweet has been Retweeted. possibly_sensitive: type: boolean description: Indicates if this Tweet contains URLs marked as sensitive, for example content suitable for mature audiences. example: false promoted_metrics: type: object description: Promoted nonpublic engagement metrics for the Tweet at the time of the request. properties: impression_count: type: integer description: Number of times this Tweet has been viewed. format: int32 like_count: type: integer description: Number of times this Tweet has been liked. format: int32 reply_count: type: integer description: Number of times this Tweet has been replied to. format: int32 retweet_count: type: integer description: Number of times this Tweet has been Retweeted. format: int32 public_metrics: type: object description: Engagement metrics for the Tweet at the time of the request. required: - retweet_count - reply_count - like_count - impression_count - bookmark_count properties: bookmark_count: type: integer description: Number of times this Tweet has been bookmarked. format: int32 impression_count: type: integer description: Number of times this Tweet has been viewed. format: int32 like_count: type: integer description: Number of times this Tweet has been liked. quote_count: type: integer description: Number of times this Tweet has been quoted. reply_count: type: integer description: Number of times this Tweet has been replied to. retweet_count: type: integer description: Number of times this Tweet has been Retweeted. referenced_tweets: type: array description: A list of Posts this Tweet refers to. For example, if the parent Tweet is a Retweet, a Quoted Tweet or a Reply, it will include the related Tweet referenced to by its parent. minItems: 1 items: type: object required: - type - id properties: id: $ref: '#/components/schemas/TweetId' type: type: string enum: - retweeted - quoted - replied_to reply_settings: $ref: '#/components/schemas/ReplySettingsWithVerifiedUsers' scopes: type: object description: The scopes for this tweet properties: followers: type: boolean description: Indicates if this Tweet is viewable by followers without the Tweet ID example: false source: type: string description: This is deprecated. suggested_source_links: type: array minItems: 0 items: $ref: '#/components/schemas/UrlEntity' suggested_source_links_with_counts: type: object description: Suggested source links and the number of requests that included each link. properties: count: type: integer description: Number of note requests that included the source link. url: $ref: '#/components/schemas/UrlEntity' text: $ref: '#/components/schemas/TweetText' username: $ref: '#/components/schemas/UserName' withheld: $ref: '#/components/schemas/TweetWithheld' example: author_id: '2244994945' created_at: Wed Jan 06 18:40:40 +0000 2021 id: '1346889436626259968' text: Learn how to use the user Tweet timeline and user mention timeline endpoints in the X API v2 to explore Tweet\u2026 https:\/\/t.co\/56a0vZUx7i username: XDevelopers RuleId: type: string description: Unique identifier of this rule. pattern: ^[0-9]{1,19}$ example: '120897978112909812' RulesCount: type: object description: A count of user-provided stream filtering rules at the application and project levels. properties: all_project_client_apps: $ref: '#/components/schemas/AllProjectClientApps' cap_per_client_app: type: integer description: Cap of number of rules allowed per client application format: int32 cap_per_project: type: integer description: Cap of number of rules allowed per project format: int32 client_app_rules_count: $ref: '#/components/schemas/AppRulesCount' project_rules_count: type: integer description: Number of rules for project format: int32 Problem: type: object description: An HTTP Problem Details object, as defined in IETF RFC 7807 (https://tools.ietf.org/html/rfc7807). required: - type - title properties: detail: type: string status: type: integer title: type: string type: type: string discriminator: propertyName: type mapping: about:blank: '#/components/schemas/GenericProblem' https://api.twitter.com/2/problems/client-disconnected: '#/components/schemas/ClientDisconnectedProblem' https://api.twitter.com/2/problems/client-forbidden: '#/components/schemas/ClientForbiddenProblem' https://api.twitter.com/2/problems/conflict: '#/components/schemas/ConflictProblem' https://api.twitter.com/2/problems/disallowed-resource: '#/components/schemas/DisallowedResourceProblem' https://api.twitter.com/2/problems/duplicate-rules: '#/components/schemas/DuplicateRuleProblem' https://api.twitter.com/2/problems/invalid-request: '#/components/schemas/InvalidRequestProblem' https://api.twitter.com/2/problems/invalid-rules: '#/components/schemas/InvalidRuleProblem' https://api.twitter.com/2/problems/noncompliant-rules: '#/components/schemas/NonCompliantRulesProblem' https://api.twitter.com/2/problems/not-authorized-for-field: '#/components/schemas/FieldUnauthorizedProblem' https://api.twitter.com/2/problems/not-authorized-for-resource: '#/components/schemas/ResourceUnauthorizedProblem' https://api.twitter.com/2/problems/operational-disconnect: '#/components/schemas/OperationalDisconnectProblem' https://api.twitter.com/2/problems/resource-not-found: '#/components/schemas/ResourceNotFoundProblem' https://api.twitter.com/2/problems/resource-unavailable: '#/components/schemas/ResourceUnavailableProblem' https://api.twitter.com/2/problems/rule-cap: '#/components/schemas/RulesCapProblem' https://api.twitter.com/2/problems/streaming-connection: '#/components/schemas/ConnectionExceptionProblem' https://api.twitter.com/2/problems/unsupported-authentication: '#/components/schemas/UnsupportedAuthenticationProblem' https://api.twitter.com/2/problems/usage-capped: '#/components/schemas/UsageCapExceededProblem' RulesLookupResponse: type: object required: - meta properties: data: type: array items: $ref: '#/components/schemas/Rule' meta: $ref: '#/components/schemas/RulesResponseMetadata' Get2SpacesIdTweetsResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: next_token: $ref: '#/components/schemas/NextToken' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' TweetWithheld: type: object description: Indicates withholding details for [withheld content](https://help.twitter.com/en/rules-and-policies/tweet-withheld-by-country). required: - copyright - country_codes properties: copyright: type: boolean description: Indicates if the content is being withheld for on the basis of copyright infringement. country_codes: type: array description: Provides a list of countries where this content is not available. minItems: 1 uniqueItems: true items: $ref: '#/components/schemas/CountryCode' scope: type: string description: Indicates whether the content being withheld is the `tweet` or a `user`. enum: - tweet - user Url: type: string description: A validly formatted URL. format: uri example: https://developer.twitter.com/en/docs/twitter-api Expansions: type: object properties: media: type: array minItems: 1 items: $ref: '#/components/schemas/Media' places: type: array minItems: 1 items: $ref: '#/components/schemas/Place' polls: type: array minItems: 1 items: $ref: '#/components/schemas/Poll' topics: type: array minItems: 1 items: $ref: '#/components/schemas/Topic' tweets: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' users: type: array minItems: 1 items: $ref: '#/components/schemas/User' Aggregate: type: integer description: The sum of results returned in this response. format: int32 RuleValue: type: string description: The filterlang value of the rule. example: coffee -is:retweet Get2TweetsIdRetweetsResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: next_token: $ref: '#/components/schemas/NextToken' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' TweetText: type: string description: The content of the Tweet. example: Learn how to use the user Tweet timeline and user mention timeline endpoints in the X API v2 to explore Tweet\u2026 https:\/\/t.co\/56a0vZUx7i EntityIndicesInclusiveInclusive: type: object description: 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 is inclusive, the end index is inclusive. required: - start - end properties: end: type: integer description: Index (zero-based) at which position this entity ends. The index is inclusive. minimum: 0 example: 61 start: type: integer description: Index (zero-based) at which position this entity starts. The index is inclusive. minimum: 0 example: 50 Get2UsersIdTimelinesReverseChronologicalResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: newest_id: $ref: '#/components/schemas/NewestId' next_token: $ref: '#/components/schemas/NextToken' oldest_id: $ref: '#/components/schemas/OldestId' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' Get2ListsIdTweetsResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: next_token: $ref: '#/components/schemas/NextToken' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' ContextAnnotationEntityFields: type: object description: Represents the data for the context annotation entity. required: - id properties: description: type: string description: Description of the context annotation entity. example: Example description for this resource. id: type: string description: The unique id for a context annotation entity. pattern: ^[0-9]{1,19}$ example: '1234567890' name: type: string description: Name of the context annotation entity. example: Example User SearchCount: type: object description: Represent a Search Count Result. required: - end - start - tweet_count properties: end: $ref: '#/components/schemas/End' start: $ref: '#/components/schemas/Start' tweet_count: $ref: '#/components/schemas/TweetCount' Get2TweetsCountsAllResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/SearchCount' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' meta: type: object properties: newest_id: $ref: '#/components/schemas/NewestId' next_token: $ref: '#/components/schemas/NextToken' oldest_id: $ref: '#/components/schemas/OldestId' total_tweet_count: $ref: '#/components/schemas/Aggregate' Engagement: type: object description: An Engagement Api Response. properties: errors: type: array minItems: 1 items: type: object properties: error: type: string tweets: type: array items: type: string measurement: type: object properties: metrics_time_series: type: array minItems: 1 items: type: object properties: tweet_id: $ref: '#/components/schemas/TweetId' value: type: object properties: metric_values: type: array items: type: object properties: metric_type: type: string metric_value: type: number timestamp: type: object properties: iso8601_time: type: string metrics_total: type: array minItems: 1 items: type: object properties: tweet_id: $ref: '#/components/schemas/TweetId' value: type: array minItems: 1 items: type: object properties: metric_type: type: string metric_value: type: number UrlEntity: description: Represent the portion of text recognized as a URL, and its start and end position within the text. allOf: - $ref: '#/components/schemas/EntityIndicesInclusiveExclusive' - $ref: '#/components/schemas/UrlFields' ListId: type: string description: The unique identifier of this List. pattern: ^[0-9]{1,19}$ example: '1146654567674912769' PaginationToken36: type: string description: A base36 pagination token. minLength: 1 MediaId: type: string description: The unique identifier of this Media. pattern: ^[0-9]{1,19}$ example: '1146654567674912769' TweetHideRequest: type: object required: - hidden properties: hidden: type: boolean HttpStatusCode: type: integer description: HTTP Status Code. minimum: 100 maximum: 599 Get2TweetsIdLikingUsersResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/User' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: next_token: $ref: '#/components/schemas/NextToken' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' RuleTag: type: string description: A tag meant for the labeling of user provided rules. example: Non-retweeted coffee Posts EntityIndicesInclusiveExclusive: type: object description: 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 is inclusive, the end index is exclusive. required: - start - end properties: end: type: integer description: Index (zero-based) at which position this entity ends. The index is exclusive. minimum: 0 example: 61 start: type: integer description: Index (zero-based) at which position this entity starts. The index is inclusive. minimum: 0 example: 50 TweetId: type: string description: 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. pattern: ^[0-9]{1,19}$ example: '1346889436626259968' MediaKey: type: string description: The Media Key identifier for this attachment. pattern: ^([0-9]+)_([0-9]+)$ Error: type: object required: - code - message properties: code: type: integer format: int32 message: type: string Get2TweetsSearchRecentResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: newest_id: $ref: '#/components/schemas/NewestId' next_token: $ref: '#/components/schemas/NextToken' oldest_id: $ref: '#/components/schemas/OldestId' result_count: $ref: '#/components/schemas/ResultCount' CashtagFields: type: object description: Represent the portion of text recognized as a Cashtag, and its start and end position within the text. required: - tag properties: tag: type: string example: TWTR AppRulesCount: type: object description: A count of user-provided stream filtering rules at the client application level. properties: client_app_id: $ref: '#/components/schemas/ClientAppId' rule_count: type: integer description: Number of rules for client application format: int32 example: 10 ResultCount: type: integer description: The number of results returned in this response. format: int32 AddOrDeleteRulesResponse: type: object description: A response from modifying user-specified stream filtering rules. required: - meta properties: data: type: array description: All user-specified stream filtering rules that were created. items: $ref: '#/components/schemas/Rule' example: [] errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' example: [] meta: $ref: '#/components/schemas/RulesResponseMetadata' AddRulesRequest: type: object description: A request to add a user-specified stream filtering rule. required: - add properties: add: type: array items: $ref: '#/components/schemas/RuleNoId' example: [] MediaWidth: type: integer description: The width of the media in pixels. minimum: 0 Position: type: array description: A [GeoJson Position](https://tools.ietf.org/html/rfc7946#section-3.1.1) in the format `[longitude,latitude]`. minItems: 2 maxItems: 2 items: type: number example: - -105.18816086351444 - 40.247749999999996 Get2TweetsIdResponse: type: object properties: data: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' UsersLikesCreateResponse: type: object properties: data: type: object properties: liked: type: boolean errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' UrlImage: type: object description: Represent the information for the URL image. properties: height: $ref: '#/components/schemas/MediaHeight' url: $ref: '#/components/schemas/Url' width: $ref: '#/components/schemas/MediaWidth' UserName: type: string description: The X handle (screen name) of this user. pattern: ^[A-Za-z0-9_]{1,15}$ ContextAnnotation: type: object description: Annotation inferred from the Tweet text. required: - domain - entity properties: domain: $ref: '#/components/schemas/ContextAnnotationDomainFields' entity: $ref: '#/components/schemas/ContextAnnotationEntityFields' NextToken: type: string description: The next token. minLength: 1 Get2TweetsCountsRecentResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/SearchCount' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' meta: type: object properties: newest_id: $ref: '#/components/schemas/NewestId' next_token: $ref: '#/components/schemas/NextToken' oldest_id: $ref: '#/components/schemas/OldestId' total_tweet_count: $ref: '#/components/schemas/Aggregate' Get2TweetsSearchStreamRulesCountsResponse: type: object properties: data: $ref: '#/components/schemas/RulesCount' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' TimestampedMetrics: type: object properties: metrics: $ref: '#/components/schemas/Metrics' timestamp: type: string title: Timestamp description: ISO8601 Time example: '2025-03-17T06:30:00Z' Get2UsersIdMentionsResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: newest_id: $ref: '#/components/schemas/NewestId' next_token: $ref: '#/components/schemas/NextToken' oldest_id: $ref: '#/components/schemas/OldestId' previous_token: $ref: '#/components/schemas/PreviousToken' result_count: $ref: '#/components/schemas/ResultCount' Poll: type: object description: Represent a Poll attached to a Tweet. required: - id - options properties: duration_minutes: type: integer minimum: 5 maximum: 10080 format: int32 end_datetime: type: string format: date-time id: $ref: '#/components/schemas/PollId' options: type: array minItems: 2 maxItems: 4 items: $ref: '#/components/schemas/PollOption' voting_status: type: string enum: - open - closed FilteredStreamingTweetResponse: type: object description: 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 the Tweet matched. properties: data: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' matching_rules: type: array description: The list of rules which matched the Tweet items: type: object required: - id properties: id: $ref: '#/components/schemas/RuleId' tag: $ref: '#/components/schemas/RuleTag' Rule: type: object description: A user-provided stream filtering rule. required: - value properties: id: $ref: '#/components/schemas/RuleId' tag: $ref: '#/components/schemas/RuleTag' value: $ref: '#/components/schemas/RuleValue' HashtagFields: type: object description: Represent the portion of text recognized as a Hashtag, and its start and end position within the text. required: - tag properties: tag: type: string description: The text of the Hashtag. example: MondayMotivation Get2InsightsHistoricalResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Engagement' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' MediaHeight: type: integer description: The height of the media in pixels. minimum: 0 Start: type: string description: The start time of the bucket. format: date-time UsersRetweetsCreateRequest: type: object required: - tweet_id properties: tweet_id: $ref: '#/components/schemas/TweetId' additionalProperties: false TopicId: type: string description: Unique identifier of this Topic. RulesResponseMetadata: type: object required: - sent properties: next_token: $ref: '#/components/schemas/NextToken' result_count: type: integer description: Number of Rules in result set. format: int32 sent: type: string summary: $ref: '#/components/schemas/RulesRequestSummary' RulesRequestSummary: oneOf: - type: object description: A summary of the results of the addition of user-specified stream filtering rules. required: - created - not_created - valid - invalid properties: created: type: integer description: Number of user-specified stream filtering rules that were created. format: int32 example: 1 invalid: type: integer description: Number of invalid user-specified stream filtering rules. format: int32 example: 1 not_created: type: integer description: Number of user-specified stream filtering rules that were not created. format: int32 example: 1 valid: type: integer description: Number of valid user-specified stream filtering rules. format: int32 example: 1 - type: object required: - deleted - not_deleted properties: deleted: type: integer description: Number of user-specified stream filtering rules that were deleted. format: int32 not_deleted: type: integer description: Number of user-specified stream filtering rules that were not deleted. format: int32 UsersRetweetsDeleteResponse: type: object properties: data: type: object properties: retweeted: type: boolean errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' Get2TweetsResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' Get2TweetsSearchAllResponse: type: object properties: data: type: array minItems: 1 items: $ref: '#/components/schemas/Tweet' errors: type: array minItems: 1 items: $ref: '#/components/schemas/Problem' includes: $ref: '#/components/schemas/Expansions' meta: type: object properties: newest_id: $ref: '#/components/schemas/NewestId' next_token: $ref: '#/components/schemas/NextToken' oldest_id: $ref: '#/components/schemas/OldestId' result_count: $ref: '#/components/schemas/ResultCount' UserId: type: string description: 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. pattern: ^[0-9]{1,19}$ example: '2244994945' NewestId: type: string description: The newest id in this response. parameters: RulesCountFieldsParameter: name: rules_count.fields in: query description: A comma separated list of RulesCount fields to display. required: false schema: type: array description: The fields available for a RulesCount object. minItems: 1 uniqueItems: true items: type: string enum: - all_project_client_apps - cap_per_client_app - cap_per_project - client_app_rules_count - project_rules_count example: - all_project_client_apps - cap_per_client_app - cap_per_project - client_app_rules_count - project_rules_count explode: false style: form SearchCountFieldsParameter: name: search_count.fields in: query description: A comma separated list of SearchCount fields to display. required: false schema: type: array description: The fields available for a SearchCount object. minItems: 1 uniqueItems: true items: type: string enum: - end - start - tweet_count example: - end - start - tweet_count explode: false style: form PollFieldsParameter: name: poll.fields in: query description: A comma separated list of Poll fields to display. required: false schema: type: array description: The fields available for a Poll object. minItems: 1 uniqueItems: true items: type: string enum: - duration_minutes - end_datetime - id - options - voting_status example: - duration_minutes - end_datetime - id - options - voting_status explode: false style: form MediaFieldsParameter: name: media.fields in: query description: A comma separated list of Media fields to display. required: false schema: type: array description: The fields available for a Media object. minItems: 1 uniqueItems: true items: type: string enum: - alt_text - duration_ms - height - media_key - non_public_metrics - organic_metrics - preview_image_url - promoted_metrics - public_metrics - type - url - variants - width example: - alt_text - duration_ms - height - media_key - non_public_metrics - organic_metrics - preview_image_url - promoted_metrics - public_metrics - type - url - variants - width explode: false style: form UserFieldsParameter: name: user.fields in: query description: A comma separated list of User fields to display. required: false schema: type: array description: The fields available for a User object. minItems: 1 uniqueItems: true items: type: string enum: - affiliation - confirmed_email - connection_status - created_at - description - entities - id - is_identity_verified - location - most_recent_tweet_id - name - parody - pinned_tweet_id - profile_banner_url - profile_image_url - protected - public_metrics - receives_your_dm - subscription - subscription_type - url - username - verified - verified_followers_count - verified_type - withheld example: - affiliation - confirmed_email - connection_status - created_at - description - entities - id - is_identity_verified - location - most_recent_tweet_id - name - parody - pinned_tweet_id - profile_banner_url - profile_image_url - protected - public_metrics - receives_your_dm - subscription - subscription_type - url - username - verified - verified_followers_count - verified_type - withheld explode: false style: form EngagementFieldsParameter: name: engagement.fields in: query description: A comma separated list of Engagement fields to display. required: false schema: type: array description: The fields available for a Engagement object. minItems: 1 uniqueItems: true items: type: string enum: - errors - measurement example: - errors - measurement explode: false style: form PlaceFieldsParameter: name: place.fields in: query description: A comma separated list of Place fields to display. required: false schema: type: array description: The fields available for a Place object. minItems: 1 uniqueItems: true items: type: string enum: - contained_within - country - country_code - full_name - geo - id - name - place_type example: - contained_within - country - country_code - full_name - geo - id - name - place_type explode: false style: form TweetExpansionsParameter: name: expansions in: query description: A comma separated list of fields to expand. schema: type: array description: The list of fields you can expand for a [Tweet](#Tweet) object. If the field has an ID, it can be expanded into a full object. minItems: 1 uniqueItems: true items: type: string enum: - article.cover_media - article.media_entities - attachments.media_keys - attachments.media_source_tweet - attachments.poll_ids - author_id - edit_history_tweet_ids - entities.mentions.username - geo.place_id - in_reply_to_user_id - entities.note.mentions.username - referenced_tweets.id - referenced_tweets.id.attachments.media_keys - referenced_tweets.id.author_id example: - article.cover_media - article.media_entities - attachments.media_keys - attachments.media_source_tweet - attachments.poll_ids - author_id - edit_history_tweet_ids - entities.mentions.username - geo.place_id - in_reply_to_user_id - entities.note.mentions.username - referenced_tweets.id - referenced_tweets.id.attachments.media_keys - referenced_tweets.id.author_id explode: false style: form UserExpansionsParameter: name: expansions in: query description: A comma separated list of fields to expand. schema: type: array description: The list of fields you can expand for a [User](#User) object. If the field has an ID, it can be expanded into a full object. minItems: 1 uniqueItems: true items: type: string enum: - affiliation.user_id - most_recent_tweet_id - pinned_tweet_id example: - affiliation.user_id - most_recent_tweet_id - pinned_tweet_id explode: false style: form TweetFieldsParameter: name: tweet.fields in: query description: A comma separated list of Tweet fields to display. required: false schema: type: array description: The fields available for a Tweet object. minItems: 1 uniqueItems: true items: type: string enum: - article - attachments - author_id - card_uri - community_id - context_annotations - conversation_id - created_at - display_text_range - edit_controls - edit_history_tweet_ids - entities - geo - id - in_reply_to_user_id - lang - media_metadata - non_public_metrics - note_tweet - organic_metrics - possibly_sensitive - promoted_metrics - public_metrics - referenced_tweets - reply_settings - scopes - source - suggested_source_links - suggested_source_links_with_counts - text - withheld example: - article - attachments - author_id - card_uri - community_id - context_annotations - conversation_id - created_at - display_text_range - edit_controls - edit_history_tweet_ids - entities - geo - id - in_reply_to_user_id - lang - media_metadata - non_public_metrics - note_tweet - organic_metrics - possibly_sensitive - promoted_metrics - public_metrics - referenced_tweets - reply_settings - scopes - source - suggested_source_links - suggested_source_links_with_counts - text - withheld explode: false style: form AnalyticsFieldsParameter: name: analytics.fields in: query description: A comma separated list of Analytics fields to display. required: false schema: type: array description: The fields available for a Analytics object. minItems: 1 uniqueItems: true items: type: string enum: - app_install_attempts - app_opens - bookmarks - detail_expands - email_tweet - engagements - follows - hashtag_clicks - id - impressions - likes - media_views - permalink_clicks - quote_tweets - replies - retweets - shares - timestamp - unfollows - unlikes - url_clicks - user_profile_clicks example: - app_install_attempts - app_opens - bookmarks - detail_expands - email_tweet - engagements - follows - hashtag_clicks - id - impressions - likes - media_views - permalink_clicks - quote_tweets - replies - retweets - shares - timestamp - unfollows - unlikes - url_clicks - user_profile_clicks explode: false style: form securitySchemes: BearerToken: type: http scheme: bearer OAuth2UserToken: type: oauth2 flows: authorizationCode: authorizationUrl: https://api.x.com/2/oauth2/authorize tokenUrl: https://api.x.com/2/oauth2/token scopes: block.read: View accounts you have blocked. bookmark.read: Read your bookmarked Posts. bookmark.write: Create and delete your bookmarks. dm.read: Read all your Direct Messages. dm.write: Send and manage your Direct Messages. follows.read: View accounts you follow and accounts following you. follows.write: Follow and unfollow accounts on your behalf. like.read: View Posts you have liked and likes you can see. like.write: Like and unlike Posts on your behalf. list.read: View Lists, members, and followers of Lists you created or are a member of, including private Lists. list.write: Create and manage Lists on your behalf. media.write: Upload media, such as photos and videos, on your behalf. mute.read: View accounts you have muted. mute.write: Mute and unmute accounts on your behalf. offline.access: Request a refresh token for the app. space.read: View all Spaces you have access to. timeline.read: View all Custom Timelines you can see, including public Custom Timelines from other developers. tweet.moderate.write: Hide and unhide replies to your Posts. tweet.read: View all Posts you can see, including those from protected accounts. tweet.write: Post and repost on your behalf. users.read: View any account you can see, including protected accounts. UserToken: type: http scheme: OAuth