{"openapi":"3.1.0","info":{"title":"TwexAPI","description":"TwexAPI is an affordable Twitter/X API replacement for developers, AI agents, researchers, and growth teams.\n\nA comprehensive Twitter API service that provides various Twitter operations including:\n        \n        * **Search Operations**: Advanced search, hashtags, cashtags\n        * **Tweet Operations**: Post, like, retweet, quote, bookmark, delete\n        * **User Operations**: Batch user information retrieval\n        * **Influencer Operations**: Get tweets from top influencers\n        \n        All endpoints return standardized responses in the format:\n        ```json\n        {\n            \"code\": 200,\n            \"msg\": \"success\", \n            \"data\": {...}\n        }\n        ```\n        \n        ## Authentication\n        \n        This API uses Bearer token authentication. Include your token in the Authorization header:\n        ```\n        Authorization: Bearer your_token_here\n        ```","contact":{"name":"TwexAPI Support","email":"support@twexapi.io","url":"https://twexapi.io/contact"},"license":{"name":"MIT"},"version":"1.0.0","summary":"Affordable Twitter/X API replacement with complete endpoint coverage.","termsOfService":"https://twexapi.io/terms"},"servers":[{"url":"https://api.twexapi.io","description":"Production API"}],"paths":{"/twitter/{auth_token}/cookie":{"get":{"tags":["Cookie Endpoints"],"summary":"Get cookie by auth token","description":"Retrieve Twitter authentication cookie using the provided auth token. This endpoint converts an auth token into a usable cookie for Twitter API requests.","operationId":"get_cookie_by_auth_token_endpoint_twitter__auth_token__cookie_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"auth_token","in":"path","required":true,"schema":{"type":"string","title":"Auth Token"}}],"responses":{"200":{"description":"Twitter authentication cookie","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/{auth_token}/user_info":{"get":{"tags":["Cookie Endpoints"],"summary":"Get user info by auth token","description":"Retrieve Twitter user info using the provided auth token.","operationId":"get_user_info_by_auth_token_endpoint_twitter__auth_token__user_info_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"auth_token","in":"path","required":true,"schema":{"type":"string","title":"Auth Token"}}],"responses":{"200":{"description":"Twitter user info","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserInfoResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/advanced_search":{"post":{"tags":["Search Endpoints"],"summary":"Advanced Twitter Search","description":"Perform advanced search on Twitter with multiple search terms and filters, $0.14/1000 tweets. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"get_data_twitter_advanced_search_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchQuery"}}},"required":true},"responses":{"200":{"description":"List of tweets matching search criteria","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/advanced_search/page":{"post":{"tags":["Search Endpoints"],"summary":"Advanced Twitter Search by Page","description":"Perform advanced Twitter search with cursor-based pagination. Each page returns up to 20 tweets. Pass next_cursor from the previous response to continue. Pricing: $0.14 per 1,000 tweets. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"get_data_page_twitter_advanced_search_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdvancedSearchCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 20 tweets) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdvancedSearchCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/cashtags":{"post":{"tags":["Search Endpoints"],"summary":"Search Cashtags","description":"Search for tweets containing specific cashtags (stock symbols), $0.14/1000 tweets. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"get_cashtags_twitter_cashtags_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CashtagsQuery"}}},"required":true},"responses":{"200":{"description":"List of tweets containing the specified cashtag","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/hashtags":{"post":{"tags":["Search Endpoints"],"summary":"Search Hashtags","description":"Search for tweets containing specific hashtags. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"get_hashtags_twitter_hashtags_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HashtagsQuery"}}},"required":true},"responses":{"200":{"description":"List of tweets containing the specified hashtag","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/{tweet_id}/like":{"post":{"tags":["Tweet Actions Endpoints"],"summary":"Like a Tweet","description":"Likes a specific tweet on behalf of the user associated with the provided cookie,$0.0025 per call.","operationId":"like_tweet_endpoint_twitter_tweets__tweet_id__like_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The numeric ID of the tweet to like.","title":"Tweet Id"},"description":"The numeric ID of the tweet to like."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LikeActionBody"}}}},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TweetActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Tweet Actions Endpoints"],"summary":"Unlike a Tweet","description":"Unlike a tweet, $0.0025 per call.","operationId":"unfavorite_tweet_api_endpoint_twitter_tweets__tweet_id__like_delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The ID of the tweet to delete.","title":"Tweet Id"},"description":"The ID of the tweet to delete."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnfavoriteTweetQuery"}}}},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TweetActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/tweets/{tweet_id}/retweet":{"post":{"tags":["Tweet Actions Endpoints"],"summary":"Retweet a Tweet","description":"Retweets a specific tweet on behalf of the user associated with the provided cookie,$0.0025 per call.","operationId":"retweet_tweet_endpoint_twitter_tweets__tweet_id__retweet_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The ID of the tweet to retweet.","title":"Tweet Id"},"description":"The ID of the tweet to retweet."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetweetActionBody"}}}},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TweetActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Tweet Actions Endpoints"],"summary":"Delete Retweet","description":"Delete a retweet, $0.0025 per call.","operationId":"delete_retweet_api_endpoint_twitter_tweets__tweet_id__retweet_delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The ID of the tweet to delete.","title":"Tweet Id"},"description":"The ID of the tweet to delete."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteRetweetQuery"}}}},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TweetActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/users":{"post":{"tags":["Users Endpoints"],"summary":"Get Multiple Users by Usernames","description":"Retrieve detailed profile information for multiple Twitter users by their usernames or profile URLs, $0.14/1000 users. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"get_users_by_usernames_twitter_users_post","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Usernames","description":"A list of Twitter usernames or profile URLs. Provide multiple times for multiple users (e.g., `[elonmusk,sundarpichai]`).","examples":["elonmusk","sundarpichai"]}}},"required":true},"responses":{"200":{"description":"A list of user profile objects. Unfound users are represented by `null`.","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/latest-followers/{screen_name}":{"get":{"tags":["Followers & Following Endpoints"],"summary":"Get Latest Followers","description":"Get latest followers of a user, $0.14/1000 followers.","operationId":"get_latest_followers_apiendpoint_twitter_latest_followers__screen_name__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"screen_name","in":"path","required":true,"schema":{"type":"string","description":"The screen name of the user to get latest followers.","examples":["elonmusk"],"title":"Screen Name"},"description":"The screen name of the user to get latest followers."}],"responses":{"200":{"description":"A list of user info","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LatestFollowersResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/latest-following/{screen_name}":{"get":{"tags":["Followers & Following Endpoints"],"summary":"Get Latest Following","description":"Get latest following of a user, $0.14/1000 following.","operationId":"get_latest_following_apiendpoint_twitter_latest_following__screen_name__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"screen_name","in":"path","required":true,"schema":{"type":"string","description":"The screen name of the user to get latest following.","examples":["elonmusk"],"title":"Screen Name"},"description":"The screen name of the user to get latest following."}],"responses":{"200":{"description":"A list of user info","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LatestFollowingsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/followers/{screen_name}/{count}":{"get":{"tags":["Followers & Following Endpoints"],"summary":"Get Followers","description":"Get followers of a user, $0.14/1000 followers. When count > 5000, returns a task_id immediately (HTTP 202). Use GET /twitter/followers/task/{task_id}/status to check progress, and GET /twitter/followers/task/{task_id}/next to consume pages one by one.","operationId":"get_followers_apiendpoint_twitter_followers__screen_name___count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"screen_name","in":"path","required":true,"schema":{"type":"string","description":"The screen name of the user to get followers.","examples":["elonmusk"],"title":"Screen Name"},"description":"The screen name of the user to get followers."},{"name":"count","in":"path","required":true,"schema":{"type":"integer","description":"The number of followers to get.","examples":[200],"title":"Count"},"description":"The number of followers to get."}],"responses":{"200":{"description":"A list of user info, or a task_id for large requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetFollowersResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/followers/task/{task_id}/status":{"get":{"tags":["Followers & Following Endpoints"],"summary":"Get Followers Task Status","description":"Check progress of a large followers task. status: pending | running | done | error.","operationId":"get_followers_task_status_twitter_followers_task__task_id__status_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","description":"task_id returned when submitting a large followers request","title":"Task Id"},"description":"task_id returned when submitting a large followers request"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/followers/task/{task_id}/next":{"get":{"tags":["Followers & Following Endpoints"],"summary":"Consume Next Page of Followers Task","description":"Return the next available page (~200 followers) from the task. Each page is removed after being returned. Keep polling until status=done and data=[] (all pages consumed).","operationId":"get_followers_task_next_page_twitter_followers_task__task_id__next_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","description":"task_id returned when submitting a large followers request","title":"Task Id"},"description":"task_id returned when submitting a large followers request"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/followers/page":{"post":{"tags":["Followers & Following Endpoints"],"summary":"Get Followers by Page","description":"Retrieve a paginated list of followers using cursor-based pagination. Each page returns up to 200 followers. Pass next_cursor from the previous response to continue. Pricing: $0.14 per 1,000 followers.","operationId":"get_followers_cursor_apiendpoint_twitter_followers_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetFollowersCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 200 followers) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetFollowersCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/following/page":{"post":{"tags":["Followers & Following Endpoints"],"summary":"Get Following by Page","description":"Retrieve a paginated list of following users using cursor-based pagination. Each page returns up to 200 users. Pass next_cursor from the previous response to continue. Pricing: $0.14 per 1,000 following users.","operationId":"get_following_cursor_apiendpoint_twitter_following_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetFollowingCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 200 following users) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetFollowingCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/following/{screen_name}/{count}":{"get":{"tags":["Followers & Following Endpoints"],"summary":"Get Following","description":"Get following of a user, $0.14/1000 following. When count > 5000, returns a task_id immediately (HTTP 202). Use GET /twitter/following/task/{task_id}/status to check progress, and GET /twitter/following/task/{task_id}/next to consume pages one by one.","operationId":"get_following_apiendpoint_twitter_following__screen_name___count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"screen_name","in":"path","required":true,"schema":{"type":"string","description":"The screen name of the user to get following.","examples":["elonmusk"],"title":"Screen Name"},"description":"The screen name of the user to get following."},{"name":"count","in":"path","required":true,"schema":{"type":"integer","description":"The number of following to get.","examples":[200],"title":"Count"},"description":"The number of following to get."}],"responses":{"200":{"description":"A list of user info, or a task_id for large requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetFollowingResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/following/task/{task_id}/status":{"get":{"tags":["Followers & Following Endpoints"],"summary":"Get Following Task Status","description":"Check progress of a large following task. status: pending | running | done | error.","operationId":"get_following_task_status_twitter_following_task__task_id__status_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","description":"task_id returned when submitting a large following request","title":"Task Id"},"description":"task_id returned when submitting a large following request"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/following/task/{task_id}/next":{"get":{"tags":["Followers & Following Endpoints"],"summary":"Consume Next Page of Following Task","description":"Return the next available page (~200 following) from the task. Each page is removed after being returned. Keep polling until status=done and data=[] (all pages consumed).","operationId":"get_following_task_next_page_twitter_following_task__task_id__next_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","description":"task_id returned when submitting a large following request","title":"Task Id"},"description":"task_id returned when submitting a large following request"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v3/twitter/users/following":{"post":{"tags":["Followers & Following Endpoints"],"summary":"Get Following (v3)","description":"Get following list of a user. Page size 10-100; use cursor for more pages. $0.14/1000 users.","operationId":"following_v3_api_v3_twitter_users_following_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FollowersFollowingV3Query"}}},"required":true},"responses":{"200":{"description":"Following page with cursor pagination.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifiedFollowersResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/users/followers":{"post":{"tags":["Followers & Following Endpoints"],"summary":"Get Followers (v3)","description":"Get followers of a user. Page size 10-100; use cursor for more pages. $0.14/1000 users.","operationId":"followers_v3_api_v3_twitter_users_followers_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FollowersFollowingV3Query"}}},"required":true},"responses":{"200":{"description":"Followers page with cursor pagination.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifiedFollowersResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/users/verified-followers":{"post":{"tags":["Followers & Following Endpoints"],"summary":"Get Verified Followers","description":"Get blue-verified followers of a user. Page size 10-100; use cursor for more pages. $0.14/1000 users.","operationId":"verified_followers_api_v3_twitter_users_verified_followers_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FollowersFollowingV3Query"}}},"required":true},"responses":{"200":{"description":"Verified followers page with cursor pagination.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifiedFollowersResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/tweets/create-thread":{"post":{"tags":["Tweet Actions Endpoints"],"summary":"Create a Tweet Thread","description":"Create a tweet thread from an ordered list of texts, $0.0025 per call.","operationId":"create_tweet_thread_api_v3_twitter_tweets_create_thread_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateThreadQuery"}}},"required":true},"responses":{"200":{"description":"Created tweet ids in thread order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateThreadResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/create":{"post":{"tags":["Tweet Actions Endpoints"],"summary":"Create a Tweet or Reply","description":"Posts a new tweet. To create a reply, provide the `reply_tweet_id`. This endpoint does not handle quote tweets,$0.0025 per call.","operationId":"create_tweet_twitter_tweets_create_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTweetQuery"}}},"required":true},"responses":{"200":{"description":"The ID and user ID of the newly created tweet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTweetResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/quote":{"post":{"tags":["Tweet Actions Endpoints"],"summary":"Create a Quote Tweet","description":"Posts a new tweet that quotes an existing tweet. Requires the URL of the tweet to be quoted and the new content,$0.0025 per call.","operationId":"quote_tweets_twitter_tweets_quote_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuoteTweetQuery"}}},"required":true},"responses":{"200":{"description":"The ID and user ID of the newly created quote tweet.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTweetResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/post-tweet-without-cookie":{"post":{"tags":["Tweet Actions Endpoints"],"summary":"Post Tweet (Auto Cookie)","description":"Post a tweet using a random cookie from the pool, [cookie management](https://twitterxapi.com/cookies/management) \n$0.0025 per call.","operationId":"post_tweets_without_cookie_twitter_post_tweet_without_cookie_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTweetWithoutCookieQuery"}}},"required":true},"responses":{"200":{"description":"Tweet ID and user ID of posted tweet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTweetResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/user/block":{"post":{"tags":["Users Endpoints"],"summary":"Block a User","description":"Block a user","operationId":"block_user_apiendpoint_twitter_user_block_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserQuery"}}},"required":true},"responses":{"200":{"description":"Blocked user information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]},"delete":{"tags":["Users Endpoints"],"summary":"Unblock User","description":"Unblock a user, $0.0025 per call.","operationId":"unblock_user_api_endpoint_twitter_user_block_delete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserQuery"}}},"required":true},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/{tweet_id}/bookmark":{"post":{"tags":["Tweet Actions Endpoints"],"summary":"Bookmark a Tweet","description":"Adds a specific tweet to the bookmarks of the user associated with the provided cookie,$0.0025 per call.","operationId":"create_bookmark_endpoint_twitter_tweets__tweet_id__bookmark_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The ID of the tweet to bookmark.","title":"Tweet Id"},"description":"The ID of the tweet to bookmark."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BookmarkBody"}}}},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TweetActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Tweet Actions Endpoints"],"summary":"Delete Bookmark","description":"Delete a bookmark, $0.0025 per call.","operationId":"delete_bookmark_api_endpoint_twitter_tweets__tweet_id__bookmark_delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The ID of the tweet to delete.","title":"Tweet Id"},"description":"The ID of the tweet to delete."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteBookmarkQuery"}}}},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TweetActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/tweets/delete-batch":{"post":{"tags":["Tweet Actions Endpoints"],"summary":"Delete One or More Tweets","description":"Deletes one or more tweets from a specified user account. This endpoint supports two modes:\n\n1.  **Single Tweet Deletion**: Provide a `target_id` to delete a specific tweet.\n2.  **Bulk Deletion**: Omit the `target_id` to delete **all** tweets from the user's account.\n\n**Warning**: The bulk deletion mode is irreversible and will permanently remove all tweets from the account. Use with extreme caution.","operationId":"delete_tweets_batch_twitter_tweets_delete_batch_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTweetQuery"}}},"required":true},"responses":{"200":{"description":"Success confirmation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTweetResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/{tweet_id}/replies/page":{"post":{"tags":["Tweet Replies Endpoints"],"summary":"Get Replies by Page (Recommended)","description":"**Recommended** for fetching tweet replies. Uses cursor-based pagination and avoids timeouts on large threads. The first request (omit next_cursor) returns root_tweet plus the first batch of replies. Pass next_cursor from the previous response to fetch the next page until has_next_page is false. Pricing: $0.14 per 1,000 replies.","operationId":"get_replies_page_apiendpoint_twitter_tweets__tweet_id__replies_page_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The ID of the tweet to get replies for.","examples":["1803006263529541838"],"title":"Tweet Id"},"description":"The ID of the tweet to get replies for."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesPageQuery"}}}},"responses":{"200":{"description":"Current page replies, optional root_tweet on first page, and pagination metadata.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesPageResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/tweets/{tweet_id}/replies/{count}":{"get":{"tags":["Tweet Replies Endpoints"],"summary":"Get Replies by Tweet ID (Legacy)","description":"Get replies for a specific tweet, returned as a nested Tweet object. $0.14/1000 replies. **For new integrations, use POST /twitter/tweets/{tweet_id}/replies/page instead** — it supports cursor pagination, is more reliable for large reply threads, and avoids request timeouts.","operationId":"get_replies_by_id_twitter_tweets__tweet_id__replies__count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The ID of the tweet to get replies for.","examples":["1803006263529541838"],"title":"Tweet Id"},"description":"The ID of the tweet to get replies for."},{"name":"count","in":"path","required":true,"schema":{"type":"integer","maximum":5000,"minimum":1,"description":"Maximum number of replies to return.","examples":[50],"title":"Count"},"description":"Maximum number of replies to return."},{"name":"sort_by","in":"query","required":false,"schema":{"anyOf":[{"enum":["Relevance","Recency","Likes"],"type":"string"},{"type":"null"}],"description":"Sort by Relevancy or Latest or Likes","examples":["Relevance","Recency","Likes"],"default":"Recency","title":"Sort By"},"description":"Sort by Relevancy or Latest or Likes"}],"responses":{"200":{"description":"The root Tweet object with its replies.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/tweets/sentiment":{"post":{"tags":["Sentiment Analysis Endpoints"],"summary":"Sentiment Analysis","description":"Sentiment Analysis, 50 credits per call.","operationId":"sentiment_analysis_endpoint_twitter_tweets_sentiment_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SentimentAnalysisQuery"}}},"required":true},"responses":{"200":{"description":"A sentiment object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SentimentAnalysisResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/users/by_ids":{"post":{"tags":["Users Endpoints"],"summary":"Users Details by ID","description":"Users Details by ID. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"users_details_by_id_api_twitter_users_by_ids_post","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"User Ids","description":"A list of Twitter user IDs. Provide multiple times for multiple users (e.g., `[44196397,1696160451770429440]`).","examples":[["44196397","1696160451770429440"]]}}},"required":true},"responses":{"200":{"description":"A list of User objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersDetailsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/x/account/verify":{"post":{"tags":["Users Endpoints"],"summary":"Verify Account Status","description":"Retrieves the verification metadata for a specific account. This endpoint identifies whether an account holds a **Blue Verified** status (authenticity check) or is an **Official Organization Affiliate** (gold/grey labels). The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"account_verify_api_x_account_verify_post","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Targets","description":"The IDs or usernames of the users.","examples":["1696160451770429440","elonmusk"]}}},"required":true},"responses":{"200":{"description":"A verification object containing the account's badge type and affiliation details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountVerifyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/users/status":{"post":{"tags":["Users Endpoints"],"summary":"Batch Get User account status","description":"Retrieve detailed account status for multiple Twitter users by their usernames. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"batch_get_user_account_status_endpoint","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Usernames","description":"A list of usernames of the users to get information for.","examples":[["elonmusk","sundarpichai"]]}}},"required":true},"responses":{"200":{"description":"A list of user account status strings. If user is suspended return suspended, if unfound return null.","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v2/dm/status":{"post":{"tags":["DM Endpoints"],"summary":"Check DM Permissions (V2)","description":"Retrieves the Direct Message (DM) availability status for a list of users. This endpoint checks if the specified accounts can receive messages based on their privacy settings, follow status, or verified permissions.","operationId":"dm_status_api_v2_v2_dm_status_post","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Targets","description":"The IDs or usernames of the users.","examples":["1696160451770429440","elonmusk"]}}},"required":true},"responses":{"200":{"description":"An object mapping user identifiers to their respective DM reachability status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DMStatusResponseV2"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/x/article":{"post":{"tags":["Article Endpoints"],"summary":"Batch Fetch X Articles","description":"Retrieves detailed article content for a specified list of X (Twitter) IDs. Use this endpoint to fetch full text, metadata, and media links for multiple posts in a single request. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"x_article_api_x_article_post","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Tweet Ids","description":"A list of tweet IDs to get the articles for.","examples":["1803006263529541838","1803006263529541839"]}}},"required":true},"responses":{"200":{"description":"A list of objects containing detailed article data for each valid ID provided.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XArticleResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/x/article/{tweet_id}/markdown":{"get":{"tags":["Article Endpoints"],"summary":"Fetch Article as Markdown","description":"Retrieves the content of an X (Twitter) article formatted as **clean, valid Markdown**. The response body is delivered as a raw UTF-8 string, optimized for direct import into static site generators, Obsidian, Notion, or any standard Markdown editor.","operationId":"x_article_markdown_api_x_article__tweet_id__markdown_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The tweet ID of the article to get.","title":"Tweet Id"},"description":"The tweet ID of the article to get."}],"responses":{"200":{"description":"Raw Markdown string representing the article content.","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v2/tweet/detail":{"post":{"tags":["Tweets Endpoints"],"summary":"Get Tweet Detail (v2)","description":"Retrieve detailed information for one or more tweets by ID (no cookie required). The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"tweet_detail_v2_api_v2_tweet_detail_post","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Tweet Ids","description":"A list of Twitter tweet IDs. Max length is limited by your plan's QPS.","examples":["2076874251915743687","1803006263529541838"]}}},"required":true},"responses":{"200":{"description":"A list of tweet objects.","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/thread_by_id":{"post":{"tags":["Tweets Endpoints"],"summary":"Get Tweet Thread by ID","description":"Retrieve all tweets in a thread by tweet ID, sorted by latest.","operationId":"tweet_thread_by_id_twitter_tweets_thread_by_id_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TweetThreadByIdBody"}}},"required":true},"responses":{"200":{"description":"A list of tweets in the thread, sorted by latest.","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/lookup":{"post":{"tags":["Tweets Endpoints"],"summary":"Batch Get Tweets by ID","description":"Retrieve detailed information for multiple Tweets by their IDs. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"get_tweets_by_ids_twitter_tweets_lookup_post","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Tweet Ids","description":"A list of Twitter tweet IDs. Provide multiple times for multiple tweets (e.g., `[1803006263529541838,1803006263529541839]`).","examples":["1803006263529541838","1803006263529541839"]}}},"required":true},"responses":{"200":{"description":"A list of Tweet objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTweetsByIdResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/send-dm":{"post":{"tags":["DM Endpoints"],"summary":"Send DM","description":"Send DM to a user, $0.0025 per call.","operationId":"send_dm_api_twitter_send_dm_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendDmQuery"}}},"required":true},"responses":{"200":{"description":"A message objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendDmResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/send-dm":{"post":{"tags":["DM Endpoints"],"summary":"Send DM (XChat v3)","description":"Send DM via XChat encrypted chat API (1:1 or existing group g...), optional image via media_urls (max 1) or video via video_url (mutually exclusive). $0.0025 per call.","operationId":"send_dm_api_v3_v3_twitter_send_dm_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendDmV3Query"}}},"required":true},"responses":{"200":{"description":"A message object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendDmResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/dm-history":{"post":{"tags":["DM Endpoints"],"summary":"Get DM History","description":"Get DM history","operationId":"dm_history_api_twitter_dm_history_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDmHistoryQuery"}}},"required":true},"responses":{"200":{"description":"A list of message objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDmHistoryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/dm-history":{"post":{"tags":["DM Endpoints"],"summary":"Get DM History (XChat v3)","description":"Get DM history via XChat encrypted chat API. Use count for page size (10–200). Set all=true to follow has_more and return every page. Or paginate manually: when has_more is true, pass the oldest message's sequence_id as before.","operationId":"dm_history_api_v3_v3_twitter_dm_history_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDmHistoryV3Query"}}},"required":true},"responses":{"200":{"description":"Conversation messages with pagination info.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDmHistoryV3Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/dm-media":{"post":{"tags":["DM Endpoints"],"summary":"Get DM Media (XChat v3)","description":"Fetch one XChat media attachment and return a playable URL. Use conversation_id, media_hash_key, and optional key_version from /v3/twitter/dm-history attachments.","operationId":"dm_media_api_v3_v3_twitter_dm_media_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDmMediaV3Query"}}},"required":true},"responses":{"200":{"description":"Playable media URL and metadata.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDmMediaV3Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/conversations":{"post":{"tags":["DM Endpoints"],"summary":"Get Conversations (XChat v3)","description":"Get XChat conversation list. Use count for page size (10–200). Set all=true to follow the inbox cursor and return every conversation.","operationId":"conversations_api_v3_v3_twitter_conversations_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetConversationsV3Query"}}},"required":true},"responses":{"200":{"description":"A list of conversation objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetConversationsV3Response"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/grok/ask":{"post":{"tags":["Grok Endpoints"],"summary":"Ask Grok","description":"Ask Grok with a Twitter account cookie.","operationId":"grok_ask_api_v3_twitter_grok_ask_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrokAskQuery"}}},"required":true},"responses":{"200":{"description":"Grok response result.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrokAskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/grok/history":{"post":{"tags":["Grok Endpoints"],"summary":"Get Grok History","description":"Get Grok conversation history list.","operationId":"grok_history_api_v3_twitter_grok_history_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrokHistoryQuery"}}},"required":true},"responses":{"200":{"description":"A list of Grok conversations.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrokHistoryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v3/twitter/grok/conversation":{"post":{"tags":["Grok Endpoints"],"summary":"Get Grok Conversation","description":"Get Grok conversation detail by conversation id.","operationId":"grok_conversation_api_v3_twitter_grok_conversation_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrokConversationQuery"}}},"required":true},"responses":{"200":{"description":"Grok conversation messages.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrokConversationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/{tweet_id}/similar":{"get":{"tags":["Tweets Endpoints"],"summary":"Get Similar Tweets","description":"Get similar tweets","operationId":"similar_tweets_api_twitter_tweets__tweet_id__similar_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","title":"Tweet Id"}}],"responses":{"200":{"description":"A list of tweet objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTweetsByIdResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/notifications":{"post":{"tags":["Notifications Endpoints"],"summary":"Get Notifications","description":"Get notifications,one minute most call 12 times","operationId":"get_notifications_apiendpoint_twitter_notifications_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetNotificationsQuery"}}},"required":true},"responses":{"200":{"description":"A list of notification objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetNotificationsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/search-user/{keyword}/{target_count}":{"get":{"tags":["Users Endpoints"],"summary":"Search User","description":"Search user","operationId":"search_user_api_endpoint_twitter_search_user__keyword___target_count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"keyword","in":"path","required":true,"schema":{"type":"string","description":"The keyword to search for.","title":"Keyword"},"description":"The keyword to search for."},{"name":"target_count","in":"path","required":true,"schema":{"type":"integer","description":"The number of users to return.","title":"Target Count"},"description":"The number of users to return."}],"responses":{"200":{"description":"A list of user objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchUserResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/tweets/{tweet_id}/retweeters/{target_count}":{"get":{"tags":["Tweet Engagement Endpoints"],"summary":"Get Retweeters","description":"Retrieve retweeters in a single request. Automatically paginates until count is reached or no more results. Minimum 10, maximum 5000 users.","operationId":"get_retweeters_endpoint_twitter_tweets__tweet_id__retweeters__target_count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tweet_id","in":"path","required":true,"schema":{"type":"string","description":"The ID of the tweet to get retweeters for.","title":"Tweet Id"},"description":"The ID of the tweet to get retweeters for."},{"name":"target_count","in":"path","required":true,"schema":{"type":"integer","maximum":5000,"minimum":1,"description":"Number of retweeters to return (minimum 10, maximum 5000).","examples":[100],"title":"Target Count"},"description":"Number of retweeters to return (minimum 10, maximum 5000)."}],"responses":{"200":{"description":"A list of user objects (up to count).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchUserResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/tweets/retweeters/page":{"post":{"tags":["Tweet Engagement Endpoints"],"summary":"Get Retweeters by Page","description":"Retrieve retweeters using cursor-based pagination. Each page returns up to 20 users. Pass next_cursor from the previous response to continue.","operationId":"get_retweeters_page_endpoint_twitter_tweets_retweeters_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRetweetersCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 20 users) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRetweetersCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets-favoriters":{"post":{"tags":["Tweet Engagement Endpoints"],"summary":"Get Favoriters","description":"Get favoriters","operationId":"get_favoriters_api_endpoint_twitter_tweets_favoriters_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetFavoritersQuery"}}},"required":true},"responses":{"200":{"description":"A list of user objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchUserResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/quotes":{"post":{"tags":["Tweet Engagement Endpoints"],"summary":"Get Quote Tweets","description":"Retrieve quote tweets in a single request. Automatically paginates until count is reached or no more results. Use `Latest` for chronological order or `Top` for ranked results. Minimum 10, maximum 5000 tweets.","operationId":"get_quotes_endpoint_twitter_tweets_quotes_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetQuotesQuery"}}},"required":true},"responses":{"200":{"description":"A list of quote tweet objects (up to count).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetQuotesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/tweets/quotes/page":{"post":{"tags":["Tweet Engagement Endpoints"],"summary":"Get Quote Tweets by Page","description":"Retrieve quote tweets using cursor-based pagination. Each page returns up to 20 tweets. Use `Latest` for chronological order or `Top` for ranked results. Pass next_cursor from the previous response to continue.","operationId":"get_quotes_page_endpoint_twitter_tweets_quotes_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetQuotesCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 20 quote tweets) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetQuotesCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/list/create":{"post":{"tags":["Lists Endpoints"],"summary":"Create List","description":"Create a list, $0.0025 per call.","operationId":"create_list_api_endpoint_twitter_list_create_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateListQuery"}}},"required":true},"responses":{"200":{"description":"A list object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/user/follow":{"post":{"tags":["Users Endpoints"],"summary":"Follow User","description":"Follow a user, $0.0025 per call.","operationId":"follow_user_api_endpoint_twitter_user_follow_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FollowUserQuery"}}},"required":true},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]},"delete":{"tags":["Users Endpoints"],"summary":"Unfollow User","description":"Unfollow a user, $0.0025 per call.","operationId":"unfollow_user_api_endpoint_twitter_user_follow_delete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnfollowUserQuery"}}},"required":true},"responses":{"200":{"description":"A confirmation of the action's success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnfollowUserResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/community/{community_id}/members/{target_count}":{"get":{"tags":["Communities Endpoints"],"summary":"Get Community Members","description":"Get community members","operationId":"get_community_members_endpoint_twitter_community__community_id__members__target_count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"community_id","in":"path","required":true,"schema":{"type":"string","title":"Community Id"}},{"name":"target_count","in":"path","required":true,"schema":{"type":"integer","title":"Target Count"}}],"responses":{"200":{"description":"A list of user objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchUserResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/community/members/page":{"post":{"tags":["Communities Endpoints"],"summary":"Get Community Members by Page","description":"Retrieve a paginated list of community members using cursor-based pagination. Each page returns up to 20 members. Pass next_cursor from the previous response to continue. Pricing: $0.14 per 1,000 members.","operationId":"get_community_members_page_endpoint_twitter_community_members_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommunityMembersCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 20 members) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommunityMembersCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/community/{community_id}/tweets/{tweet_type}/{target_count}":{"get":{"tags":["Communities Endpoints"],"summary":"Get Community Tweets","description":"Get community tweets","operationId":"get_community_tweets_endpoint_twitter_community__community_id__tweets__tweet_type___target_count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"community_id","in":"path","required":true,"schema":{"type":"string","title":"Community Id"}},{"name":"tweet_type","in":"path","required":true,"schema":{"enum":["Top","Latest","Media"],"type":"string","title":"Tweet Type"}},{"name":"target_count","in":"path","required":true,"schema":{"type":"integer","title":"Target Count"}}],"responses":{"200":{"description":"A list of tweet objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommunityTweetsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/community/tweets/page":{"post":{"tags":["Communities Endpoints"],"summary":"Get Community Tweets by Page","description":"Retrieve a paginated list of community tweets using cursor-based pagination. Each page returns up to 20 tweets. Pass next_cursor from the previous response to continue. Pricing: $0.14 per 1,000 tweets.","operationId":"get_community_tweets_page_endpoint_twitter_community_tweets_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommunityTweetsCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 20 tweets) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommunityTweetsCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/list/{list_id}/tweets/{target_count}":{"get":{"tags":["Lists Endpoints"],"summary":"Get List Tweets","description":"Get list tweets","operationId":"get_list_tweets_endpoint_twitter_list__list_id__tweets__target_count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"string","title":"List Id"}},{"name":"target_count","in":"path","required":true,"schema":{"type":"integer","title":"Target Count"}}],"responses":{"200":{"description":"A list of tweet objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTweetsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/list/tweets/page":{"post":{"tags":["Lists Endpoints"],"summary":"Get List Tweets by Page","description":"Retrieve a paginated list of list tweets using cursor-based pagination. Each page returns up to 20 tweets. Pass next_cursor from the previous response to continue. Pricing: $0.14 per 1,000 tweets.","operationId":"get_list_tweets_page_endpoint_twitter_list_tweets_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetListTweetsCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 20 tweets) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetListTweetsCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/list/{list_id}/subscribers/{target_count}":{"get":{"tags":["Lists Endpoints"],"summary":"Get List Subscribers","description":"Get list subscribers","operationId":"get_list_subscribers_endpoint_twitter_list__list_id__subscribers__target_count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"string","title":"List Id"}},{"name":"target_count","in":"path","required":true,"schema":{"type":"integer","title":"Target Count"}}],"responses":{"200":{"description":"A list of user objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListSubscribersResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/list/{list_id}/members/{target_count}":{"get":{"tags":["Lists Endpoints"],"summary":"Get List Members","description":"Get list members","operationId":"get_list_members_endpoint_twitter_list__list_id__members__target_count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"string","title":"List Id"}},{"name":"target_count","in":"path","required":true,"schema":{"type":"integer","title":"Target Count"}}],"responses":{"200":{"description":"A list of user objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListMembersResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/list/members/page":{"post":{"tags":["Lists Endpoints"],"summary":"Get List Members by Page","description":"Retrieve a paginated list of list members using cursor-based pagination. Each page returns up to 20 members. Pass next_cursor from the previous response to continue. Pricing: $0.14 per 1,000 members.","operationId":"get_list_members_page_endpoint_twitter_list_members_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetListMembersCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 20 members) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetListMembersCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/list/search":{"post":{"tags":["Lists Endpoints"],"summary":"Search List","description":"Search list","operationId":"search_list_endpoint_twitter_list_search_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchListQuery"}}},"required":true},"responses":{"200":{"description":"A list of list objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/community/search":{"post":{"tags":["Communities Endpoints"],"summary":"Search Community","description":"Search community","operationId":"search_community_endpoint_twitter_community_search_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchCommunityQuery"}}},"required":true},"responses":{"200":{"description":"A list of community objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchCommunityResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/community/{community_id}":{"get":{"tags":["Communities Endpoints"],"summary":"Get Community","description":"Get community","operationId":"get_community_endpoint_twitter_community__community_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"community_id","in":"path","required":true,"schema":{"type":"string","title":"Community Id"}}],"responses":{"200":{"description":"A community object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommunityResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/community/search-tweets":{"post":{"tags":["Communities Endpoints"],"summary":"Search Community Tweets","description":"Search community tweets","operationId":"search_community_tweets_endpoint_twitter_community_search_tweets_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchCommunityTweetsQuery"}}},"required":true},"responses":{"200":{"description":"A list of tweet objects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommunityTweetsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/profile":{"post":{"tags":["Twitter Profile Actions Endpoints"],"summary":"Modify the profile bio, image and banner of the user","description":"Modify the profile bio, image and banner of the user","operationId":"modify_profile_bio_endpoint_twitter_profile_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyProfileBioRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyProfileBioResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/action":{"post":{"tags":["Social Media Services Endpoints"],"summary":"Purchase Twitter Engagement Services","description":"Purchase various Twitter engagement services to boost your social media presence.\n\n**Available Services:**\n- **Likes**: Increase tweet likes (10-5,000 per order, $1/100)\n- **Retweets**: Boost retweets (10-500 per order, $2/100)  \n- **Views**: Enhance tweet views (100-9999999 per order, $1/1000)\n- **Bookmarks**: Add bookmarks (10-5000 per order, $2/100)\n- **Followers**: Gain followers (10-30,000 per order, $2/100)\n\n**How it works:**\n1. Submit your order with service type, tweet URL, and quantity\n2. Receive an order ID to track your purchase\n3. Monitor progress via the status endpoint\n4. Services are delivered gradually over time for natural growth\n\n**Important Notes:**\n- All services are delivered by real accounts\n- Processing time varies by service type and quantity\n- Orders cannot be cancelled once processing begins\n- Ensure your Twitter account is public for optimal delivery","operationId":"execute_twitter_action_twitter_action_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PurchaseTwitterActionRequest"}}},"required":true},"responses":{"200":{"description":"Returns order ID and confirmation details for tracking your purchase","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PurchaseTwitterActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/action/order-status":{"get":{"tags":["Social Media Services Endpoints"],"summary":"Check Order Status","description":"Check the delivery status and progress of your Twitter engagement order.\n\n**Response Details:**\n- **order_id**: Unique identifier for your order\n- **start_count**: Initial engagement count when order began\n- **fee**: Total cost of the order in USD\n- **status**: Current order status (pending, in_progress, completed, failed)\n\n**Order Status Types:**\n- `pending`: Order received and queued for processing\n- `in_progress`: Services are being delivered\n- `completed`: All services have been delivered successfully\n- `partial`: Some services delivered (may continue processing)\n- `failed`: Order could not be completed (contact support)\n\n**Note**: Orders are processed 24/7 but delivery speed varies by service type and current queue volume.","operationId":"get_order_status_twitter_action_order_status_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"order_id","in":"query","required":true,"schema":{"type":"integer","title":"Order Id"}}],"responses":{"200":{"description":"Detailed status information including progress, cost, and delivery status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TwitterActionStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/global-trending/countries":{"get":{"tags":["Trending Endpoints"],"summary":"List Global Trend Countries","description":"Get the supported country and global options that can be used to filter trending tweets.","operationId":"get_global_trending_countries_api_twitter_global_trending_countries_get","responses":{"200":{"description":"Country filter options for global trending tweets.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/global-trending/topics":{"get":{"tags":["Trending Endpoints"],"summary":"List Global Trend Topics","description":"Get the topic categories available for filtering global trending tweets.","operationId":"get_global_trending_topics_api_twitter_global_trending_topics_get","responses":{"200":{"description":"Topic filter options for global trending tweets.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/global-trending/contents":{"get":{"tags":["Trending Endpoints"],"summary":"List Global Trend Content Tags","description":"Get content tags for a selected country and topic so tweets can be filtered more precisely.","operationId":"get_global_trending_contents_api_twitter_global_trending_contents_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"country","in":"query","required":true,"schema":{"type":"string","description":"Country name or slug returned by /twitter/global-trending/countries","title":"Country"},"description":"Country name or slug returned by /twitter/global-trending/countries"},{"name":"topic","in":"query","required":true,"schema":{"type":"string","description":"Topic name or slug returned by /twitter/global-trending/topics","title":"Topic"},"description":"Topic name or slug returned by /twitter/global-trending/topics"}],"responses":{"200":{"description":"Content tag options for the selected country and topic.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/global-trending/tweets":{"get":{"tags":["Trending Endpoints"],"summary":"Get Global Trending Tweets","description":"Get trending tweets for a country, with optional topic and content tag filters.","operationId":"get_global_trending_tweets_api_twitter_global_trending_tweets_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"country","in":"query","required":true,"schema":{"type":"string","description":"Country name or slug returned by /twitter/global-trending/countries","title":"Country"},"description":"Country name or slug returned by /twitter/global-trending/countries"},{"name":"topic","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional topic name or slug returned by /twitter/global-trending/topics","title":"Topic"},"description":"Optional topic name or slug returned by /twitter/global-trending/topics"},{"name":"content","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional content tag returned by /twitter/global-trending/contents","title":"Content"},"description":"Optional content tag returned by /twitter/global-trending/contents"},{"name":"count","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Maximum number of tweets to return.","default":20,"title":"Count"},"description":"Maximum number of tweets to return."}],"responses":{"200":{"description":"Trending tweets matching the selected filters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/{country}/trending":{"get":{"tags":["Trending Endpoints"],"summary":"Get Trending Topics","description":"Get X Explore trending topics for a given country. Use 'worldwide' for account-default trends or a country slug such as 'united-states'.","operationId":"get_trending_api_twitter__country__trending_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"country","in":"path","required":true,"schema":{"enum":["worldwide","algeria","argentina","australia","austria","bahrain","belarus","belgium","brazil","canada","chile","colombia","denmark","dominican-republic","ecuador","egypt","france","germany","ghana","greece","guatemala","india","indonesia","ireland","israel","italy","japan","jordan","kenya","korea","kuwait","latvia","lebanon","malaysia","mexico","netherlands","new-zealand","nigeria","norway","oman","pakistan","panama","peru","philippines","poland","portugal","qatar","russia","saudi-arabia","singapore","south-africa","spain","sweden","switzerland","thailand","turkey","ukraine","united-arab-emirates","united-kingdom","united-states","venezuela","vietnam","zimbabwe"],"type":"string","description":"Country slug or 'worldwide' for default explore trends","examples":["worldwide","united-states","japan","united-kingdom","zimbabwe"],"title":"Country"},"description":"Country slug or 'worldwide' for default explore trends"}],"responses":{"200":{"description":"Standard response with list of trending topics in data field","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/{screen_name}/tweets-replies/{count}":{"get":{"tags":["All Tweets Replies Endpoints"],"summary":"Get All Tweets and Replies by User","description":"Get all tweets and replies posted by a specific Twitter user. Returns a comprehensive list including both original tweets and reply tweets posted by the user. $0.14/1000 items.","operationId":"get_all_tweets_replies_api_twitter__screen_name__tweets_replies__count__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"screen_name","in":"path","required":true,"schema":{"type":"string","description":"The screen name (username) of the Twitter user to get all tweets and replies from.","examples":["elonmusk"],"title":"Screen Name"},"description":"The screen name (username) of the Twitter user to get all tweets and replies from."},{"name":"count","in":"path","required":true,"schema":{"type":"integer","maximum":10000000,"minimum":1,"description":"Maximum number of tweets and replies to return.","examples":[50],"title":"Count"},"description":"Maximum number of tweets and replies to return."}],"responses":{"200":{"description":"A list of all tweets and replies posted by the user, including both original tweets and reply tweets.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/{screen_name}/timeline/page":{"post":{"tags":["Timeline Endpoints"],"summary":"Get User Timeline by Page","description":"Fetch a single page from a user's timeline using POST. Pass next_cursor in the body to continue.","operationId":"get_user_timeline_page_api_twitter__screen_name__timeline_page_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"screen_name","in":"path","required":true,"schema":{"type":"string","description":"Twitter screen name of the target user (with or without @).","examples":["axiaisacat"],"title":"Screen Name"},"description":"Twitter screen name of the target user (with or without @)."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserTimelinePageQuery"}}}},"responses":{"200":{"description":"Current page data and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserTimelinePageResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/{screen_name}/timeline":{"post":{"tags":["Timeline Endpoints"],"summary":"Get User Timeline and Fill Count","description":"Fetch a user's timeline across pages using POST and try to fill the requested count.","operationId":"get_user_timeline_fill_api_twitter__screen_name__timeline_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"screen_name","in":"path","required":true,"schema":{"type":"string","description":"Twitter screen name of the target user (with or without @).","examples":["axiaisacat"],"title":"Screen Name"},"description":"Twitter screen name of the target user (with or without @)."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserTimelineFillQuery"}}}},"responses":{"200":{"description":"All fetched tweets and pagination summary.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserTimelineResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/twitter/tweets-replies/page":{"post":{"tags":["All Tweets Replies Endpoints"],"summary":"Get All Tweets and Replies by User by Page","description":"Retrieve a paginated list of a user's tweets and replies using cursor-based pagination. Each page returns up to 20 items. Pass next_cursor from the previous response to continue. Pricing: $0.14 per 1,000 items.","operationId":"get_all_tweets_replies_cursor_api_twitter_tweets_replies_page_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAllTweetsRepliesCursorQuery"}}},"required":true},"responses":{"200":{"description":"Current page data (up to 20 items) and pagination metadata (has_next_page, next_cursor).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAllTweetsRepliesCursorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/account/based":{"post":{"tags":["Twitter Account Based in Endpoints"],"summary":"Get Twitter Account Based in","description":"Get Twitter Account Based in. The maximum input quantity is limited by your plan's QPS. To pass larger input quantity limits, upgrade your plan to get higher QPS.","operationId":"get_twitter_account_based_api_twitter_account_based_post","requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array","title":"Screen Names","description":"A json list of Twitter user screen names. Provide multiple times for multiple users (e.g., `[elonmusk,sundarpichai]`).","examples":["screen_name","elonmusk"]}}},"required":true},"responses":{"200":{"description":"The Twitter Account Based in data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TwitterAccountBasedStandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/twitter/{screen_name}/about":{"get":{"tags":["Twitter User About Endpoints"],"summary":"Get Twitter User About by Screen Name","description":"Get Twitter User About for a specific twitter user. get account_based_in,location_accurate","operationId":"get_twitter_user_about_by_screen_name_api_twitter__screen_name__about_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"screen_name","in":"path","required":true,"schema":{"type":"string","description":"The screen name of the twitter user to get about.","examples":"elonmusk","title":"Screen Name"},"description":"The screen name of the twitter user to get about."}],"responses":{"200":{"description":"The Twitter User About object with its information.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TwitterUserAboutStandardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/balance":{"get":{"tags":["Balance Endpoints"],"summary":"Get Balance","description":"Get Balance","operationId":"get_balance_api_balance_get","responses":{"200":{"description":"The balance data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardResponse"}}}}},"security":[{"HTTPBearer":[]}]}},"/x/articles/draft":{"post":{"tags":["Article Endpoints"],"summary":"[Step 1/5] Create a new article draft","description":"**Step 1 of 5** — Create an empty draft and get an `article_id`.\n\nThe `article_id` returned here is required by all subsequent steps.\n\n**Full flow:**\n1. ➡️ `POST /x/articles/draft` — get `article_id`\n2. `PUT  /x/articles/{article_id}/cover` — *(optional)* set cover image\n3. `PUT  /x/articles/{article_id}/title` — set title\n4. `PUT  /x/articles/{article_id}/content` — set body (Markdown)\n5. `POST /x/articles/{article_id}/publish` — publish and get `tweet_id`\n\n> 💡 **Tip:** For full control (e.g. preview before publish, retry individual steps), use the step-by-step flow above. Use `POST /x/articles/publish` only for quick one-shot publishing.","operationId":"article_create_draft_x_articles_draft_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticleCreateDraftBody"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticleDraftResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"description":"Daily tweet limit reached","content":{"application/json":{"example":{"code":429,"msg":"Daily tweet limit reached, please try again tomorrow."}}}},"500":{"description":"Server error","content":{"application/json":{"example":{"code":500,"msg":"Internal server error"}}}}},"security":[{"HTTPBearer":[]}]}},"/x/articles/{article_id}/cover":{"put":{"tags":["Article Endpoints"],"summary":"[Step 2/5] Upload and set article cover image (optional)","description":"**Step 2 of 5 (optional)** — Upload a cover image and attach it to the draft.\n\n- `article_id`: obtained from Step 1\n- `cover_image`: an `https://` URL or a local file path\n\nThis step can be skipped if you don't need a cover image.","operationId":"article_update_cover_x_articles__article_id__cover_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"article_id","in":"path","required":true,"schema":{"type":"string","title":"Article Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticleUpdateCoverBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticleCoverResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"description":"Daily tweet limit reached","content":{"application/json":{"example":{"code":429,"msg":"Daily tweet limit reached, please try again tomorrow."}}}},"500":{"description":"Server error","content":{"application/json":{"example":{"code":500,"msg":"Internal server error"}}}}}}},"/x/articles/{article_id}/title":{"put":{"tags":["Article Endpoints"],"summary":"[Step 3/5] Set article title","description":"**Step 3 of 5** — Set the title of the draft.\n\n- `article_id`: obtained from Step 1\n- `title`: plain text, no Markdown","operationId":"article_update_title_x_articles__article_id__title_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"article_id","in":"path","required":true,"schema":{"type":"string","title":"Article Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticleUpdateTitleBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticleTitleResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"description":"Daily tweet limit reached","content":{"application/json":{"example":{"code":429,"msg":"Daily tweet limit reached, please try again tomorrow."}}}},"500":{"description":"Server error","content":{"application/json":{"example":{"code":500,"msg":"Internal server error"}}}}}}},"/x/articles/{article_id}/content":{"put":{"tags":["Article Endpoints"],"summary":"[Step 4/5] Set article content from Markdown","description":"**Step 4 of 5** — Set the article body by providing Markdown text.\n\n- `article_id`: obtained from Step 1\n- `markdown`: supports headings, bold/italic, lists, code blocks, and inline images (`![alt](url)`)\n\nInline images are automatically uploaded to X and embedded in the article.","operationId":"article_update_content_x_articles__article_id__content_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"article_id","in":"path","required":true,"schema":{"type":"string","title":"Article Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticleUpdateContentBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticleContentResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"description":"Daily tweet limit reached","content":{"application/json":{"example":{"code":429,"msg":"Daily tweet limit reached, please try again tomorrow."}}}},"500":{"description":"Server error","content":{"application/json":{"example":{"code":500,"msg":"Internal server error"}}}}}}},"/x/articles/{article_id}/publish":{"post":{"tags":["Article Endpoints"],"summary":"[Step 5/5] Publish an article draft","description":"**Step 5 of 5** — Publish the draft. Returns `article_id` and `tweet_id`.\n\n- `article_id`: obtained from Step 1\n- `visibility`: `Public` (default) / `Followers` / `Mentioned`\n\n⚠️ Make sure Steps 3 and 4 are completed before publishing. A draft without a title or content can still be published but will appear empty.","operationId":"article_publish_x_articles__article_id__publish_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"article_id","in":"path","required":true,"schema":{"type":"string","title":"Article Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticlePublishBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticlePublishResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"description":"Daily tweet limit reached","content":{"application/json":{"example":{"code":429,"msg":"Daily tweet limit reached, please try again tomorrow."}}}},"500":{"description":"Server error","content":{"application/json":{"example":{"code":500,"msg":"Internal server error"}}}}}}},"/x/articles/publish":{"post":{"tags":["Article Endpoints"],"summary":"[Quick] One-step article publish","description":"Publish a complete X Article in a single call. Suitable for simple, one-shot use cases.\n\n> ⚠️ **Recommended: use the step-by-step flow instead.**\n> The step-by-step flow gives you full control — preview the draft before publishing,\n> retry individual steps on failure, and reuse the same `article_id` across multiple calls.\n>\n> Step-by-step endpoints:\n> 1. `POST /x/articles/draft` → get `article_id`\n> 2. `PUT  /x/articles/{article_id}/cover` *(optional)*\n> 3. `PUT  /x/articles/{article_id}/title`\n> 4. `PUT  /x/articles/{article_id}/content`\n> 5. `POST /x/articles/{article_id}/publish` → get `tweet_id`\n\n**Returns** `article_id` and `tweet_id` on success.","operationId":"article_publish_all_in_one_x_articles_publish_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticlePublishAllInOneBody"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArticlePublishResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"description":"Daily tweet limit reached","content":{"application/json":{"example":{"code":429,"msg":"Daily tweet limit reached, please try again tomorrow."}}}},"500":{"description":"Server error","content":{"application/json":{"example":{"code":500,"msg":"Internal server error"}}}}},"security":[{"HTTPBearer":[]}]}}},"components":{"schemas":{"AccountVerifyModel":{"properties":{"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id","description":"The ID of the user."},"screen_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Screen Name","description":"The username of the user."},"is_blue_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Blue Verified"},"is_verified_organization_affiliate":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Verified Organization Affiliate"},"is_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Verified","description":"True if is_blue_verified or is_verified_organization_affiliate is True"}},"type":"object","title":"AccountVerifyModel"},"AccountVerifyResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/AccountVerifyModel"},"type":"array","title":"Data","description":"A list of account verification objects."}},"type":"object","required":["code","msg","data"],"title":"AccountVerifyResponse"},"AdvancedSearchCursorQuery":{"properties":{"searchTerms":{"items":{"type":"string"},"type":"array","title":"Searchterms","description":"List of search terms used to build the Twitter query."},"sortBy":{"type":"string","title":"Sortby","description":"Sort mode for search results. Supported values: 'Latest' or 'Top'."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["1234567890"]}},"type":"object","required":["searchTerms","sortBy"],"title":"AdvancedSearchCursorQuery"},"AdvancedSearchCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"anyOf":[{"$ref":"#/components/schemas/TweetModel"},{"type":"null"}]},"type":"array","title":"Data","description":"Current page tweet items."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Use this cursor to fetch the next page when has_next_page is true.","examples":["1234567890"]}},"type":"object","required":["data","has_next_page"],"title":"AdvancedSearchCursorResponse"},"ArticleBlock":{"properties":{"type":{"type":"string","title":"Type","description":"The type of the article block."},"text":{"type":"string","title":"Text","description":"The text of the article block."},"entityRanges":{"items":{"$ref":"#/components/schemas/ArticleBlockRange"},"type":"array","title":"Entityranges","description":"The entity ranges of the article block."}},"type":"object","required":["type","text"],"title":"ArticleBlock"},"ArticleBlockRange":{"properties":{"key":{"type":"integer","title":"Key","description":"The key of the entity range."},"length":{"type":"integer","title":"Length","description":"The length of the entity range."},"offset":{"type":"integer","title":"Offset","description":"The offset of the entity range."}},"type":"object","required":["key","length","offset"],"title":"ArticleBlockRange"},"ArticleContentData":{"properties":{"blocks":{"type":"integer","title":"Blocks","description":"Number of content blocks parsed from the Markdown (paragraphs, headings, images, etc.)"}},"type":"object","required":["blocks"],"title":"ArticleContentData"},"ArticleContentResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"200 = success, 429 = rate limit, 500 = server error"},"msg":{"type":"string","title":"Msg","description":"Human-readable result message"},"data":{"anyOf":[{"$ref":"#/components/schemas/ArticleContentData"},{"type":"null"}]}},"type":"object","required":["code","msg"],"title":"ArticleContentResponse"},"ArticleCoverData":{"properties":{"media_id":{"type":"string","title":"Media Id","description":"Media ID of the uploaded cover image on X"}},"type":"object","required":["media_id"],"title":"ArticleCoverData"},"ArticleCoverResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"200 = success, 429 = rate limit, 500 = server error"},"msg":{"type":"string","title":"Msg","description":"Human-readable result message"},"data":{"anyOf":[{"$ref":"#/components/schemas/ArticleCoverData"},{"type":"null"}]}},"type":"object","required":["code","msg"],"title":"ArticleCoverResponse"},"ArticleCreateDraftBody":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter cookie string (auth_token=...; ct0=...; twid=...)"}},"type":"object","required":["cookie"],"title":"ArticleCreateDraftBody"},"ArticleDraftData":{"properties":{"article_id":{"type":"string","title":"Article Id","description":"Unique article draft ID, required by all subsequent steps"},"preview_url":{"type":"string","title":"Preview Url","description":"URL to preview the draft in X composer: https://x.com/compose/articles/edit/{article_id}"}},"type":"object","required":["article_id","preview_url"],"title":"ArticleDraftData"},"ArticleDraftResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"200 = success, 429 = rate limit, 500 = server error"},"msg":{"type":"string","title":"Msg","description":"Human-readable result message"},"data":{"anyOf":[{"$ref":"#/components/schemas/ArticleDraftData"},{"type":"null"}]}},"type":"object","required":["code","msg"],"title":"ArticleDraftResponse"},"ArticlePublishAllInOneBody":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter cookie string (auth_token=...; ct0=...; twid=...)"},"title":{"type":"string","title":"Title","description":"Article title"},"markdown":{"type":"string","title":"Markdown","description":"Article body in Markdown format"},"cover_image":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cover Image","description":"Cover image: https URL or local file path (optional)"},"visibility":{"type":"string","title":"Visibility","description":"Visibility: Public / Followers / Mentioned","default":"Public"}},"type":"object","required":["cookie","title","markdown"],"title":"ArticlePublishAllInOneBody"},"ArticlePublishBody":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter cookie string"},"visibility":{"type":"string","title":"Visibility","description":"Public / Followers / Mentioned","default":"Public"}},"type":"object","required":["cookie"],"title":"ArticlePublishBody"},"ArticlePublishData":{"properties":{"article_id":{"type":"string","title":"Article Id","description":"Article draft ID"},"tweet_id":{"type":"string","title":"Tweet Id","description":"Tweet ID of the published article post"}},"type":"object","required":["article_id","tweet_id"],"title":"ArticlePublishData"},"ArticlePublishResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"200 = success, 429 = rate limit, 500 = server error"},"msg":{"type":"string","title":"Msg","description":"Human-readable result message"},"data":{"anyOf":[{"$ref":"#/components/schemas/ArticlePublishData"},{"type":"null"}]}},"type":"object","required":["code","msg"],"title":"ArticlePublishResponse"},"ArticleTitleResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"200 = success, 429 = rate limit, 500 = server error"},"msg":{"type":"string","title":"Msg","description":"Human-readable result message"},"data":{"type":"null","title":"Data","description":"No data returned for this step"}},"type":"object","required":["code","msg"],"title":"ArticleTitleResponse"},"ArticleUpdateContentBody":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter cookie string"},"markdown":{"type":"string","title":"Markdown","description":"Article body in Markdown format"}},"type":"object","required":["cookie","markdown"],"title":"ArticleUpdateContentBody"},"ArticleUpdateCoverBody":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter cookie string"},"cover_image":{"type":"string","title":"Cover Image","description":"Cover image: https URL or local file path"}},"type":"object","required":["cookie","cover_image"],"title":"ArticleUpdateCoverBody"},"ArticleUpdateTitleBody":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter cookie string"},"title":{"type":"string","title":"Title","description":"Article title"}},"type":"object","required":["cookie","title"],"title":"ArticleUpdateTitleBody"},"BlockUserQuery":{"properties":{"username":{"type":"string","title":"Username","description":"The username of the user to block."},"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"}},"type":"object","required":["username","cookie"],"title":"BlockUserQuery"},"BlockUserResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/UserModel"},{"type":"null"}],"description":"User information"}},"type":"object","title":"BlockUserResponse","description":"response"},"BookmarkBody":{"properties":{"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port . You can get proxy from: https://app.proxy-cheap.com/r/qiMxub","example":"http://username:password@ip:port"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"}},"type":"object","required":["cookie"],"title":"BookmarkBody","description":"Body for bookmarking a tweet"},"CashtagsQuery":{"properties":{"cashtags":{"items":{"type":"string"},"type":"array","title":"Cashtags","description":"Cashtag to search for (with or without $ prefix)","default":[],"example":["AAPL","TSLA"]},"startTime":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Starttime","description":"Start time for search in UNIX timestamp","example":"1775726400"},"endTime":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endtime","description":"End time for search in UNIX timestamp","example":"1775727300"},"sortBy":{"anyOf":[{"type":"string","enum":["Latest","Top"]},{"type":"null"}],"title":"Sortby","description":"Sort order for results","default":"Latest"},"maxItems":{"anyOf":[{"type":"integer","maximum":1000,"minimum":1},{"type":"null"}],"title":"Maxitems","description":"Maximum number of tweets to return","default":20},"mininumLikes":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Mininumlikes","description":"Minimum number of likes required","default":0},"mininumRetweets":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Mininumretweets","description":"Minimum number of retweets required","default":0},"mininumReplies":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Mininumreplies","description":"Minimum number of replies required","default":0},"blueVerified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Blueverified","description":"Filter for blue verified accounts only"},"verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Verified","description":"Filter for verified accounts only"},"language":{"anyOf":[{"type":"string","enum":["am","ar","bg","bn","bo","ca","ch","cs","da","de","dv","el","en","es","et","fa","fi","fr","gu","hi","ht","hu","hy","in","is","it","iu","iw","ja","ka","km","kn","ko","lo","lt","lv","ml","my","ne","nl","no","or","pa","pl","pt","ro","ru","si","sk","sl","sv","ta","te","th","tl","tr","uk","ur","vi","zh"]},{"type":"null"}],"title":"Language","description":"Language filter for tweets","example":"en"},"onlyImage":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Onlyimage","description":"Filter for images only"},"onlyVideo":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Onlyvideo","description":"Filter for videos only"},"onlyQuote":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Onlyquote","description":"Filter for quotes only"},"onlyReply":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Onlyreply","description":"Filter for replies only"}},"type":"object","title":"CashtagsQuery","description":"Query parameters for searching cashtags (stock symbols)"},"CommunityModel":{"properties":{"id":{"type":"string","title":"Id","description":"The ID of the community"},"name":{"type":"string","title":"Name","description":"The name of the community"},"description":{"type":"string","title":"Description","description":"The description of the community"},"member_count":{"type":"integer","title":"Member Count","description":"The number of members in the community"},"is_nsfw":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Nsfw","description":"Indicates if the community is NSFW."},"members_facepile_results":{"items":{"type":"string"},"type":"array","title":"Members Facepile Results","description":"The profile image URLs of members."},"banner":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Banner","description":"The banner information of the community."},"is_member":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Member","description":"Indicates if the user is a member of the community."},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Role","description":"The role of the user in the community."},"admin":{"anyOf":[{"$ref":"#/components/schemas/UserModel"},{"type":"null"}],"description":"The admin of the community."},"join_policy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Join Policy","description":"The join policy of the community."},"created_at":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Created At","description":"The timestamp of the community's creation."},"invites_policy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invites Policy","description":"The invites policy of the community."},"is_pinned":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Pinned","description":"Indicates if the community is pinned."}},"type":"object","required":["id","name","description","member_count"],"title":"CommunityModel"},"CommunityTweetsResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Data","description":"A list of tweet objects."}},"type":"object","required":["code","msg","data"],"title":"CommunityTweetsResponse"},"ConversationV3Model":{"properties":{"conversation_id":{"type":"string","title":"Conversation Id","description":"Conversation id","example":"1928096185664843776:1989842918455291904"},"type":{"type":"string","title":"Type","description":"Conversation type: direct or group","example":"direct"},"is_muted":{"type":"boolean","title":"Is Muted","description":"Whether the conversation is muted","example":false},"participants":{"items":{"type":"string"},"type":"array","title":"Participants","description":"Participant user ids","example":["1928096185664843776"]}},"type":"object","required":["conversation_id","type","is_muted","participants"],"title":"ConversationV3Model","description":"XChat conversation item"},"CreateListQuery":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev//how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"list_name":{"type":"string","title":"List Name","description":"The name of the list."},"list_description":{"type":"string","title":"List Description","description":"The description of the list."},"is_private":{"type":"boolean","title":"Is Private","description":"Whether the list is private."}},"type":"object","required":["cookie","list_name","list_description","is_private"],"title":"CreateListQuery"},"CreateListResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"$ref":"#/components/schemas/ListModel","description":"The list object."}},"type":"object","required":["code","msg","data"],"title":"CreateListResponse"},"CreateThreadData":{"properties":{"tweets":{"items":{"$ref":"#/components/schemas/CreateThreadTweetItem"},"type":"array","title":"Tweets","description":"Created tweets in thread order","example":[{"id":"1234567890123456789"}]}},"type":"object","required":["tweets"],"title":"CreateThreadData","description":"Create thread response data"},"CreateThreadQuery":{"properties":{"items":{"items":{"type":"string"},"type":"array","minItems":1,"title":"Items","description":"JSON array of tweet texts, e.g. [\"1/ hello\",\"2/ world\"].","example":["1/ hello","2/ world"]},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"Optional HTTP proxy. Example: http://username:password@ip:port","example":"http://username:password@ip:port"}},"type":"object","required":["items","cookie"],"title":"CreateThreadQuery","description":"Parameters for creating a tweet thread"},"CreateThreadResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/CreateThreadData"},{"type":"null"}],"description":"Created thread tweets"}},"type":"object","required":["code","msg"],"title":"CreateThreadResponse","description":"Response for creating a tweet thread"},"CreateThreadTweetItem":{"properties":{"id":{"type":"string","title":"Id","description":"Created tweet ID","example":"1234567890123456789"}},"type":"object","required":["id"],"title":"CreateThreadTweetItem","description":"Created tweet id in a thread"},"DMStatusModelV2":{"properties":{"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id","description":"The ID of the user."},"screen_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Screen Name","description":"The username of the user."},"is_blue_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Blue Verified"},"is_verified_organization_affiliate":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Verified Organization Affiliate"},"verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Verified"},"can_dm":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Can Dm"},"can_dm_on_xchat":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Can Dm On Xchat"},"dm_blocking":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Dm Blocking"},"passes_premium_check":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Passes Premium Check"}},"type":"object","title":"DMStatusModelV2"},"DMStatusResponseV2":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/DMStatusModelV2"},"type":"array","title":"Data","description":"A list of DM status objects."}},"type":"object","required":["code","msg","data"],"title":"DMStatusResponseV2"},"DeleteBookmarkQuery":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"}},"type":"object","required":["cookie"],"title":"DeleteBookmarkQuery"},"DeleteRetweetQuery":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"}},"type":"object","required":["cookie"],"title":"DeleteRetweetQuery"},"DeleteTweetQuery":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"username":{"type":"string","title":"Username","description":"Twitter username whose tweets to delete","example":"myusername"},"target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Id","description":"Specific tweet ID to delete (if not provided, deletes all user tweets)","example":"1234567890123456789"}},"type":"object","required":["cookie","username"],"title":"DeleteTweetQuery","description":"Parameters for deleting tweets"},"DeleteTweetResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"type":"string"},"type":"array","title":"Data","description":"List of deleted tweet IDs"}},"type":"object","required":["data"],"title":"DeleteTweetResponse","description":"Delete tweet response"},"DmHistoryV3Data":{"properties":{"conversation_id":{"type":"string","title":"Conversation Id","description":"Conversation id","example":"1928096185664843776:1989842918455291904"},"has_more":{"type":"boolean","title":"Has More","description":"Whether older messages are available","example":true},"messages":{"items":{"$ref":"#/components/schemas/MessageModel"},"type":"array","title":"Messages","description":"List of message objects"}},"type":"object","required":["conversation_id","has_more","messages"],"title":"DmHistoryV3Data","description":"DM history payload for XChat v3"},"FollowUserQuery":{"properties":{"username":{"type":"string","title":"Username","description":"The username of the user to follow or unfollow."},"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"}},"type":"object","required":["username","cookie"],"title":"FollowUserQuery"},"FollowersFollowingV3Query":{"properties":{"username":{"type":"string","title":"Username","description":"Twitter username (with or without @).","example":"elonmusk"},"count":{"anyOf":[{"type":"integer","maximum":100,"minimum":10},{"type":"null"}],"title":"Count","description":"Number of users to return per page (min 10, max 100).","default":20,"example":20},"cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cursor","description":"Cursor from previous next_cursor to fetch the next page.","example":"1870681402093130182|2076960004551737340"}},"type":"object","required":["username"],"title":"FollowersFollowingV3Query","description":"Parameters for getting followers / following / verified-followers (v3, no cookie required)"},"FriendshipTaskData":{"properties":{"task_id":{"type":"string","title":"Task Id","description":"Task ID for polling status/next endpoints"},"reused":{"type":"boolean","title":"Reused","description":"True if an in-flight task was reused"}},"type":"object","required":["task_id","reused"],"title":"FriendshipTaskData","description":"Async friendship fetch task handle"},"GetAllTweetsRepliesCursorQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["1234567890"]},"screen_name":{"type":"string","title":"Screen Name","description":"Twitter screen name of the target user (with or without @).","examples":["elonmusk"]}},"type":"object","required":["screen_name"],"title":"GetAllTweetsRepliesCursorQuery"},"GetAllTweetsRepliesCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"anyOf":[{"$ref":"#/components/schemas/TweetModel"},{"type":"null"}]},"type":"array","title":"Data","description":"Current page items (tweets and replies)."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Use this cursor to fetch the next page when has_next_page is true.","examples":["1234567890"]}},"type":"object","required":["data","has_next_page"],"title":"GetAllTweetsRepliesCursorResponse"},"GetCommunityMembersCursorQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["1234567890"]},"community_id":{"type":"string","title":"Community Id","description":"The ID of the community to get members from."}},"type":"object","required":["community_id"],"title":"GetCommunityMembersCursorQuery"},"GetCommunityMembersCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/UserModel"},"type":"array","title":"Data","description":"A list of user objects."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"The next cursor of the members to get.","examples":["1234567890"]}},"type":"object","required":["code","msg","data","has_next_page"],"title":"GetCommunityMembersCursorResponse"},"GetCommunityResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"anyOf":[{"$ref":"#/components/schemas/CommunityModel"},{"type":"null"}],"description":"A community object."}},"type":"object","required":["code","msg"],"title":"GetCommunityResponse"},"GetCommunityTweetsCursorQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["1234567890"]},"community_id":{"type":"string","title":"Community Id","description":"The ID of the community to get tweets from."},"tweet_type":{"type":"string","enum":["Top","Latest","Media"],"title":"Tweet Type","description":"The type of tweets to get."}},"type":"object","required":["community_id","tweet_type"],"title":"GetCommunityTweetsCursorQuery"},"GetCommunityTweetsCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Data","description":"A list of tweet objects."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"The next cursor of the tweets to get.","examples":["1234567890"]}},"type":"object","required":["code","msg","data","has_next_page"],"title":"GetCommunityTweetsCursorResponse"},"GetConversationsV3Query":{"properties":{"count":{"anyOf":[{"type":"integer","maximum":200,"minimum":10},{"type":"null"}],"title":"Count","description":"Max conversations per page (10–200, default 20).","default":100,"example":100},"all":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"All","description":"Follow the inbox cursor and return every conversation (may be slow).","default":false,"example":true},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"Optional HTTP proxy. Example: http://username:password@ip:port","example":"http://username:password@ip:port"}},"type":"object","required":["cookie"],"title":"GetConversationsV3Query","description":"Parameters for getting XChat conversation list"},"GetConversationsV3Response":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"items":{"$ref":"#/components/schemas/ConversationV3Model"},"type":"array","title":"Data","description":"Conversation list"}},"type":"object","required":["code","msg","data"],"title":"GetConversationsV3Response","description":"Response for getting XChat conversation list"},"GetDmHistoryQuery":{"properties":{"username":{"type":"string","title":"Username","description":"Twitter username to get DM history for","example":"myusername"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"max_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Max Id","description":"Max ID","example":"1234567890123456789"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port . You can get proxy from: https://app.proxy-cheap.com/r/qiMxub","example":"http://username:password@ip:port"}},"type":"object","required":["username","cookie"],"title":"GetDmHistoryQuery","description":"Parameters for getting DM history"},"GetDmHistoryResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Message sent","example":"success"},"data":{"items":{"$ref":"#/components/schemas/MessageModel"},"type":"array","title":"Data","description":"List of message objects","example":[{"attachment":{"type":"image","url":"https://example.com/image.jpg"},"id":"1234567890123456789","text":"Hello, how are you?","time":"2024-01-01T12:00:00Z"}]}},"type":"object","required":["code","msg","data"],"title":"GetDmHistoryResponse","description":"Response for getting DM history"},"GetDmHistoryV3Query":{"properties":{"recipient":{"type":"string","title":"Recipient","description":"User id, @handle, conversationId a:b, or group g....","example":"1928096185664843776:1989842918455291904"},"pin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pin","description":"Identity PIN (default 1234).","default":"1234","example":"1234"},"count":{"anyOf":[{"type":"integer","maximum":200,"minimum":10},{"type":"null"}],"title":"Count","description":"Max events per page (10–200, default 50).","default":50,"example":50},"all":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"All","description":"Follow has_more and return every page.","default":false,"example":false},"before":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Before","description":"Oldest sequenceId for paging. Pass the previous page's oldest message sequence_id.","example":"2076684837654876160"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"Optional HTTP proxy. Example: http://username:password@ip:port","example":"http://username:password@ip:port"}},"type":"object","required":["recipient","cookie"],"title":"GetDmHistoryV3Query","description":"Parameters for getting DM history via XChat v3"},"GetDmHistoryV3Response":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/DmHistoryV3Data"},{"type":"null"}],"description":"DM history data"}},"type":"object","required":["code","msg"],"title":"GetDmHistoryV3Response","description":"Response for getting DM history via XChat v3"},"GetDmMediaV3Data":{"properties":{"url":{"type":"string","title":"Url","description":"Playable media URL"},"path":{"type":"string","title":"Path","description":"Media path on this API"},"content_type":{"type":"string","title":"Content Type","description":"MIME type","example":"video/mp4"},"filename":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Filename","description":"Suggested filename"},"byte_length":{"type":"integer","title":"Byte Length","description":"File size in bytes"},"cached":{"type":"boolean","title":"Cached","description":"Whether the media was already available"}},"type":"object","required":["url","path","content_type","byte_length","cached"],"title":"GetDmMediaV3Data"},"GetDmMediaV3Query":{"properties":{"conversation_id":{"type":"string","title":"Conversation Id","description":"Conversation id from /v3/twitter/dm-history","example":"1928096185664843776:1989842918455291904"},"media_hash_key":{"type":"string","title":"Media Hash Key","description":"Attachment media_hash_key from dm-history","example":"blRIlZCVIO"},"key_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Key Version","description":"Optional message key_version from dm-history (recommended).","example":"3"},"type_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Name","description":"Optional IMAGE/VIDEO/GIF hint","example":"VIDEO"},"filename":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Filename","description":"Optional filename hint","example":"clip.mp4"},"pin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pin","description":"Identity PIN (default 1234).","default":"1234","example":"1234"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"Optional HTTP proxy. Example: http://username:password@ip:port","example":"http://username:password@ip:port"}},"type":"object","required":["conversation_id","media_hash_key","cookie"],"title":"GetDmMediaV3Query","description":"Fetch one XChat media attachment and return a playable URL."},"GetDmMediaV3Response":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/GetDmMediaV3Data"},{"type":"null"}],"description":"Media info"}},"type":"object","required":["code","msg"],"title":"GetDmMediaV3Response"},"GetFavoritersQuery":{"properties":{"tweet_id":{"type":"string","title":"Tweet Id","description":"The ID of the tweet to get favoriters."},"target_count":{"type":"integer","title":"Target Count","description":"The number of favoriters to get."},"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev//how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"}},"type":"object","required":["tweet_id","target_count","cookie"],"title":"GetFavoritersQuery"},"GetFollowersCursorQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["1234567890"]},"screen_name":{"type":"string","title":"Screen Name","description":"Twitter screen name of the target user (with or without @).","examples":["elonmusk"]}},"type":"object","required":["screen_name"],"title":"GetFollowersCursorQuery"},"GetFollowersCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"anyOf":[{"$ref":"#/components/schemas/UserInfo"},{"type":"null"}]},"type":"array","title":"Data","description":"Current page follower items."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Use this cursor to fetch the next page when has_next_page is true.","examples":["1234567890"]}},"type":"object","required":["data","has_next_page"],"title":"GetFollowersCursorResponse"},"GetFollowersResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"anyOf":[{"items":{"anyOf":[{"$ref":"#/components/schemas/UserInfo"},{"type":"null"}]},"type":"array"},{"$ref":"#/components/schemas/FriendshipTaskData"}],"title":"Data","description":"List of user info, or task handle when count exceeds async threshold"}},"type":"object","required":["data"],"title":"GetFollowersResponse","description":"get followers API response"},"GetFollowingCursorQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["1234567890"]},"screen_name":{"type":"string","title":"Screen Name","description":"Twitter screen name of the target user (with or without @).","examples":["elonmusk"]}},"type":"object","required":["screen_name"],"title":"GetFollowingCursorQuery"},"GetFollowingCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"anyOf":[{"$ref":"#/components/schemas/UserInfo"},{"type":"null"}]},"type":"array","title":"Data","description":"Current page following items."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Use this cursor to fetch the next page when has_next_page is true.","examples":["1234567890"]}},"type":"object","required":["data","has_next_page"],"title":"GetFollowingCursorResponse"},"GetFollowingResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"anyOf":[{"items":{"anyOf":[{"$ref":"#/components/schemas/UserInfo"},{"type":"null"}]},"type":"array"},{"$ref":"#/components/schemas/FriendshipTaskData"}],"title":"Data","description":"List of user info, or task handle when count exceeds async threshold"}},"type":"object","required":["data"],"title":"GetFollowingResponse","description":"get following API response"},"GetListMembersCursorQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["1234567890"]},"list_id":{"type":"string","title":"List Id","description":"The ID of the list to get members from."}},"type":"object","required":["list_id"],"title":"GetListMembersCursorQuery"},"GetListMembersCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/UserModel"},"type":"array","title":"Data","description":"A list of user objects."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"The next cursor of the members to get.","examples":["1234567890"]}},"type":"object","required":["code","msg","data","has_next_page"],"title":"GetListMembersCursorResponse"},"GetListTweetsCursorQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["1234567890"]},"list_id":{"type":"string","title":"List Id","description":"The ID of the list to get tweets from."}},"type":"object","required":["list_id"],"title":"GetListTweetsCursorQuery"},"GetListTweetsCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Data","description":"A list of tweet objects."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"The next cursor of the tweets to get.","examples":["1234567890"]}},"type":"object","required":["code","msg","data","has_next_page"],"title":"GetListTweetsCursorResponse"},"GetNotificationsQuery":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"type":{"type":"string","enum":["All","Verified","Mentions"],"title":"Type","description":"The type of notifications to retrieve."}},"type":"object","required":["cookie","type"],"title":"GetNotificationsQuery"},"GetNotificationsResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/NotificationModel"},"type":"array","title":"Data","description":"A list of notification objects."}},"type":"object","required":["code","msg","data"],"title":"GetNotificationsResponse"},"GetQuotesCursorQuery":{"properties":{"tweet_id":{"type":"string","title":"Tweet Id","description":"The ID of the tweet to get quote tweets for."},"sort_by":{"type":"string","enum":["Top","Latest"],"title":"Sort By","description":"Sort order for quote tweets. `Latest` for chronological order or `Top` for ranked results.","default":"Top"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["scroll:thGQYTMwMjU5NDA4ODc4ODc6MjU5NDA4ODc4ODc6"]}},"type":"object","required":["tweet_id"],"title":"GetQuotesCursorQuery"},"GetQuotesCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Data","description":"A list of quote tweet objects for the current page."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Use this cursor to fetch the next page when has_next_page is true.","examples":["scroll:thGQYTMwMjU5NDA4ODc4ODc6MjU5NDA4ODc4ODc6"]}},"type":"object","required":["code","msg","data","has_next_page"],"title":"GetQuotesCursorResponse"},"GetQuotesQuery":{"properties":{"tweet_id":{"type":"string","title":"Tweet Id","description":"The ID of the tweet to get quote tweets for."},"count":{"type":"integer","maximum":5000,"minimum":1,"title":"Count","description":"Number of quote tweets to return (minimum 10, maximum 5000).","examples":[100]},"sort_by":{"type":"string","enum":["Top","Latest"],"title":"Sort By","description":"Sort order for quote tweets. `Latest` for chronological order or `Top` for ranked results.","default":"Top"}},"type":"object","required":["tweet_id","count"],"title":"GetQuotesQuery"},"GetQuotesResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Data","description":"A list of quote tweet objects."}},"type":"object","required":["code","msg","data"],"title":"GetQuotesResponse"},"GetRepliesPageQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page."},"sort_by":{"type":"string","enum":["Relevance","Recency","Likes"],"title":"Sort By","description":"Sort replies by Relevance, Recency, or Likes.","default":"Recency","examples":["Recency"]}},"type":"object","title":"GetRepliesPageQuery"},"GetRepliesPageResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"root_tweet":{"anyOf":[{"$ref":"#/components/schemas/TweetModel"},{"type":"null"}],"description":"The focal tweet. Only present on the first page (when next_cursor is omitted)."},"data":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Data","description":"Replies on the current page."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Use this cursor to fetch the next page when has_next_page is true."}},"type":"object","required":["data","has_next_page"],"title":"GetRepliesPageResponse"},"GetRetweetersCursorQuery":{"properties":{"tweet_id":{"type":"string","title":"Tweet Id","description":"The ID of the tweet to get retweeters for."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["eyJpZCI6IjIwNjAwNTE1Mzg3OTQ0Mzg2NzciLCJmbG9ja0N1cnNvciI6IjQ2MTE2ODYwMTg2Mjg5ODcxNzkiLCJvcmlnaW5hbERpcmVjdGlvbiI6IkRlc2NlbmRpbmcifQ==-999995"]}},"type":"object","required":["tweet_id"],"title":"GetRetweetersCursorQuery"},"GetRetweetersCursorResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/UserModel"},"type":"array","title":"Data","description":"A list of user objects for the current page."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Use this cursor to fetch the next page when has_next_page is true.","examples":["eyJpZCI6IjIwNjAwNTE1Mzg3OTQ0Mzg2NzciLCJmbG9ja0N1cnNvciI6IjQ2MTE2ODYwMTg2Mjg5ODcxNzkiLCJvcmlnaW5hbERpcmVjdGlvbiI6IkRlc2NlbmRpbmcifQ==-999995"]}},"type":"object","required":["code","msg","data","has_next_page"],"title":"GetRetweetersCursorResponse"},"GetTweetsByIdResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"anyOf":[{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array"},{"type":"null"}],"title":"Data","description":"Tweet data"}},"type":"object","title":"GetTweetsByIdResponse"},"GrokAskQuery":{"properties":{"prompt":{"type":"string","title":"Prompt","description":"User prompt.","example":"Say hi in one sentence."},"conversation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Conversation Id","description":"Continue an existing Grok conversation.","example":"2076320454898278729"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model","description":"Optional model id (default grok-3-latest).","default":"grok-3-latest","example":"grok-3-latest"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"Optional HTTP proxy. Example: http://username:password@ip:port","example":"http://username:password@ip:port"}},"type":"object","required":["prompt","cookie"],"title":"GrokAskQuery","description":"Parameters for asking Grok"},"GrokAskResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/GrokAskResult"},{"type":"null"}],"description":"Grok result"}},"type":"object","required":["code","msg"],"title":"GrokAskResponse","description":"Response for asking Grok"},"GrokAskResult":{"properties":{"conversation_id":{"type":"string","title":"Conversation Id","description":"Grok conversation id","example":"2076320454898278729"},"user_chat_item_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Chat Item Id","description":"User chat item id"},"agent_chat_item_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Chat Item Id","description":"Agent chat item id"},"message":{"type":"string","title":"Message","description":"Final assistant message","example":"Hi there!"},"reasoning":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reasoning","description":"Reasoning text","example":"Thinking about your request"},"soft_stop":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Soft Stop","description":"Whether response soft-stopped"},"follow_up_suggestions":{"items":{"$ref":"#/components/schemas/GrokFollowUpSuggestion"},"type":"array","title":"Follow Up Suggestions","description":"Follow-up suggestions"}},"type":"object","required":["conversation_id","message"],"title":"GrokAskResult","description":"Grok ask result"},"GrokConversationData":{"properties":{"conversation_id":{"type":"string","title":"Conversation Id","description":"Grok conversation rest id"},"is_pinned":{"type":"boolean","title":"Is Pinned","description":"Whether the conversation is pinned","default":false},"cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cursor","description":"Pagination cursor"},"items":{"items":{"$ref":"#/components/schemas/GrokConversationItem"},"type":"array","title":"Items","description":"Conversation items"}},"type":"object","required":["conversation_id"],"title":"GrokConversationData","description":"Grok conversation detail payload"},"GrokConversationItem":{"properties":{"chat_item_id":{"type":"string","title":"Chat Item Id","description":"Chat item id","example":"2063977852924837888"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Message content"},"sender_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sender Type","description":"Sender type: User or Agent","example":"User"},"created_at_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Created At Ms","description":"Created at timestamp in ms"},"grok_mode":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Grok Mode","description":"Grok mode","example":"Normal"},"thinking_trace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Thinking Trace","description":"Thinking trace text"},"image_urls":{"items":{"type":"string"},"type":"array","title":"Image Urls","description":"Generated image urls from card attachments"}},"type":"object","required":["chat_item_id"],"title":"GrokConversationItem","description":"Grok conversation message item"},"GrokConversationQuery":{"properties":{"conversation_id":{"type":"string","title":"Conversation Id","description":"Grok conversation rest id.","example":"2063972906435248338"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"Optional HTTP proxy. Example: http://username:password@ip:port","example":"http://username:password@ip:port"}},"type":"object","required":["conversation_id","cookie"],"title":"GrokConversationQuery","description":"Parameters for getting a Grok conversation detail"},"GrokConversationResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/GrokConversationData"},{"type":"null"}],"description":"Grok conversation detail"}},"type":"object","required":["code","msg"],"title":"GrokConversationResponse","description":"Response for Grok conversation detail"},"GrokFollowUpSuggestion":{"properties":{"label":{"type":"string","title":"Label","description":"Suggestion label","example":"Learn about conversational AI"},"properties":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Properties","description":"Suggestion properties"},"tools_overrides":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Tools Overrides","description":"Tools overrides"}},"type":"object","required":["label"],"title":"GrokFollowUpSuggestion","description":"Grok follow-up suggestion"},"GrokHistoryItem":{"properties":{"conversation_id":{"type":"string","title":"Conversation Id","description":"Grok conversation id","example":"2076320454898278729"},"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id","description":"Grok conversation id (alternate)"},"title":{"type":"string","title":"Title","description":"Conversation title","example":"Friendly greeting"},"created_at_ms":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Created At Ms","description":"Created at timestamp in ms","example":1783868347485},"is_pinned":{"type":"boolean","title":"Is Pinned","description":"Whether the conversation is pinned","default":false}},"type":"object","required":["conversation_id","title"],"title":"GrokHistoryItem","description":"Grok conversation history item"},"GrokHistoryQuery":{"properties":{"count":{"anyOf":[{"type":"integer","maximum":100,"minimum":1},{"type":"null"}],"title":"Count","description":"Number of conversations to return.","default":20,"example":20},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"Optional HTTP proxy. Example: http://username:password@ip:port","example":"http://username:password@ip:port"}},"type":"object","required":["cookie"],"title":"GrokHistoryQuery","description":"Parameters for getting Grok conversation history list"},"GrokHistoryResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"items":{"$ref":"#/components/schemas/GrokHistoryItem"},"type":"array","title":"Data","description":"Grok conversation list"}},"type":"object","required":["code","msg","data"],"title":"GrokHistoryResponse","description":"Response for Grok conversation history list"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HashtagsQuery":{"properties":{"hashtags":{"items":{"type":"string"},"type":"array","title":"Hashtags","description":"Hashtag to search for (with or without # prefix)","default":[],"example":["btc","eth"]},"startTime":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Starttime","description":"Start time for search in UNIX timestamp","example":"1775726400"},"endTime":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endtime","description":"End time for search in UNIX timestamp","example":"1775727300"},"sortBy":{"anyOf":[{"type":"string","enum":["Latest","Top"]},{"type":"null"}],"title":"Sortby","description":"Sort order for results","default":"Latest"},"maxItems":{"anyOf":[{"type":"integer","maximum":1000,"minimum":1},{"type":"null"}],"title":"Maxitems","description":"Maximum number of tweets to return","default":20},"mininumLikes":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Mininumlikes","description":"Minimum number of likes required","default":0},"mininumRetweets":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Mininumretweets","description":"Minimum number of retweets required","default":0},"mininumReplies":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Mininumreplies","description":"Minimum number of replies required","default":0},"blueVerified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Blueverified","description":"Filter for blue verified accounts only"},"verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Verified","description":"Filter for verified accounts only"},"language":{"anyOf":[{"type":"string","enum":["am","ar","bg","bn","bo","ca","ch","cs","da","de","dv","el","en","es","et","fa","fi","fr","gu","hi","ht","hu","hy","in","is","it","iu","iw","ja","ka","km","kn","ko","lo","lt","lv","ml","my","ne","nl","no","or","pa","pl","pt","ro","ru","si","sk","sl","sv","ta","te","th","tl","tr","uk","ur","vi","zh"]},{"type":"null"}],"title":"Language","description":"Language filter for tweets","example":"en"},"onlyImage":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Onlyimage","description":"Filter for images only"},"onlyVideo":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Onlyvideo","description":"Filter for videos only"},"onlyQuote":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Onlyquote","description":"Filter for quotes only"},"onlyReply":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Onlyreply","description":"Filter for replies only"}},"type":"object","title":"HashtagsQuery","description":"Query parameters for searching hashtags"},"LatestFollowersResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"anyOf":[{"$ref":"#/components/schemas/UserInfo"},{"type":"null"}]},"type":"array","title":"Data","description":"List of user info"}},"type":"object","required":["data"],"title":"LatestFollowersResponse","description":"latest followers API response"},"LatestFollowingsResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"anyOf":[{"$ref":"#/components/schemas/UserInfo"},{"type":"null"}]},"type":"array","title":"Data","description":"List of user info"}},"type":"object","required":["data"],"title":"LatestFollowingsResponse","description":"latest followings API response"},"LikeActionBody":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port . You can get proxy from: https://app.proxy-cheap.com/r/qiMxub","example":"http://username:password@ip:port"}},"type":"object","required":["cookie"],"title":"LikeActionBody","description":"Body for the like action, containing only the cookie."},"ListMembersResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/UserModel"},"type":"array","title":"Data","description":"A list of user objects."}},"type":"object","required":["code","msg","data"],"title":"ListMembersResponse"},"ListModel":{"properties":{"id":{"type":"string","title":"Id","description":"The ID of the list"},"name":{"type":"string","title":"Name","description":"The name of the list"},"description":{"type":"string","title":"Description","description":"The description of the list"},"is_private":{"type":"boolean","title":"Is Private","description":"Whether the list is private"},"member_count":{"type":"integer","title":"Member Count","description":"The number of members in the list"},"subscriber_count":{"type":"integer","title":"Subscriber Count","description":"The number of subscribers in the list"}},"type":"object","required":["id","name","description","is_private","member_count","subscriber_count"],"title":"ListModel"},"ListSubscribersResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/UserModel"},"type":"array","title":"Data","description":"A list of user objects."}},"type":"object","required":["code","msg","data"],"title":"ListSubscribersResponse"},"ListTweetsResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Data","description":"A list of tweet objects."}},"type":"object","required":["code","msg","data"],"title":"ListTweetsResponse"},"MediaModel":{"properties":{"id":{"type":"string","title":"Id","description":"Media ID","example":"1802991873836883968"},"type":{"type":"string","title":"Type","description":"Type of media (e.g., photo, video)","example":"photo"},"display_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Url","description":"URL of the media to display","example":"pic.twitter.com/..."},"expanded_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expanded Url","description":"Expanded URL for the media"},"media_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Media Url","description":"Direct URL to the media file"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url","description":"t.co URL for the media"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Height","description":"Height of the media in pixels","example":1080},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Width","description":"Width of the media in pixels","example":1920},"features":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Features","description":"Features of the media"},"original_info":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Original Info","description":"Original information about the media"},"sizes":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Sizes","description":"Available sizes of the media"},"source_status_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Status Id","description":"Source tweet ID if the media is a retweet"},"source_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source User Id","description":"Source user ID if the media is a retweet"},"duration_millis":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Duration Millis","description":"Duration of the video in milliseconds"},"aspect_ratio":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Aspect Ratio","description":"Aspect ratio of the video","example":[16,9]},"video_info":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Video Info","description":"Detailed video information"},"streams":{"items":{"$ref":"#/components/schemas/StreamModel"},"type":"array","title":"Streams","description":"List of available video streams","default":[]}},"type":"object","required":["id","type"],"title":"MediaModel"},"MessageModel":{"properties":{"id":{"type":"string","title":"Id","description":"Message ID","example":"1234567890123456789"},"text":{"type":"string","title":"Text","description":"Message text","example":"Hello, how are you?"},"time":{"type":"string","title":"Time","description":"Message time","example":"2024-01-01T12:00:00Z"},"attachment":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Attachment","description":"Message attachment","example":{"type":"image","url":"https://example.com/image.jpg"}},"attachments":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Attachments","description":"XChat media attachments (v3).","example":[{"attachment_id":"cda5ccdd-af53-48a3-bdd1-5039a73aea25","conversation_id":"1928096185664843776:1989842918455291904","filename":"image.jpg","filesize_bytes":421299,"height":1448,"key_version":"3","media_hash_key":"blRIlZCVIO","type":"image","type_name":"IMAGE","width":1086}]},"sequence_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sequence Id","description":"XChat sequence id. Use the oldest message's sequence_id as before for pagination.","example":"2076661179334979585"},"sender_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sender Id","description":"Sender ID","example":"1234567890123456789"},"recipient_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Recipient Id","description":"Recipient ID","example":"1234567890123456789"}},"type":"object","required":["id","text","time"],"title":"MessageModel","description":"Message model"},"ModifyProfileBioRequest":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Name of the user"},"website":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Website","description":"Website of the user"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"Description of the user"},"location":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Location","description":"Location of the user","example":"New York, USA"},"profile_image":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Image","description":"Profile image of the user","example":"https://example.com/image.jpg"},"profile_banner":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Banner","description":"Profile banner of the user","example":"https://example.com/banner.jpg"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port . You can get proxy from: https://app.proxy-cheap.com/r/qiMxub","example":"http://username:password@ip:port"}},"type":"object","required":["cookie"],"title":"ModifyProfileBioRequest"},"ModifyProfileBioResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code (200 for success)","example":200},"msg":{"type":"string","title":"Msg","description":"Human-readable response message","example":"success"},"data":{"type":"boolean","title":"Data","description":"True if the profile bio, image and banner are modified successfully, False otherwise","example":true}},"type":"object","required":["code","msg","data"],"title":"ModifyProfileBioResponse"},"NotificationModel":{"properties":{"id":{"type":"string","title":"Id","description":"Notification ID","example":"1803006263529541838"},"timestamp_ms":{"type":"integer","title":"Timestamp Ms","description":"The timestamp of the notification in milliseconds"},"icon":{"additionalProperties":true,"type":"object","title":"Icon","description":"Dictionary containing icon data for the notification"},"message":{"type":"string","title":"Message","description":"The message text of the notification"},"tweet":{"anyOf":[{"$ref":"#/components/schemas/TweetModel"},{"type":"null"}],"description":"The tweet associated with the notification"},"from_user":{"anyOf":[{"$ref":"#/components/schemas/UserModel"},{"type":"null"}],"description":"The user who triggered the notification"}},"type":"object","required":["id","timestamp_ms","icon","message"],"title":"NotificationModel","description":"Attributes\n----------\nid : :class:`str`\n    The unique identifier of the notification.\ntimestamp_ms : :class:`int`\n    The timestamp of the notification in milliseconds.\nicon : :class:`dict`\n    Dictionary containing icon data for the notification.\nmessage : :class:`str`\n    The message text of the notification.\ntweet : :class:`.Tweet`\n    The tweet associated with the notification.\nfrom_user : :class:`.User`\n    The user who triggered the notification."},"PostTweetData":{"properties":{"tweet_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tweet Id","description":"Posted tweet ID","example":"1234567890123456789"},"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id","description":"User ID who posted","example":"1234567890"},"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200}},"type":"object","title":"PostTweetData","description":"Post tweet response data"},"PostTweetQuery":{"properties":{"media_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Media Url","description":"URL of media to attach to the tweet","example":"https://example.com/image.jpg"},"tweet_content":{"type":"string","title":"Tweet Content","description":"Content of the tweet to post","example":"Hello, Twitter! 🐦"},"delegated_account_username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Delegated Account Username","description":"delegated account username","example":"elonmusk"},"schedule":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Schedule","description":"Schedule time for the tweet in ISO format","example":"2024-01-01T12:00:00Z"},"reply_tweet_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reply Tweet Id","description":"ID of tweet to reply to","example":"1234567890123456789"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"community_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Community Name","description":"Name of Twitter community to post in or community id","example":"Python Developers or 1234567890123456789"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port . You can get proxy from: https://app.proxy-cheap.com/r/qiMxub","example":"http://username:password@ip:port"}},"type":"object","required":["tweet_content","cookie"],"title":"PostTweetQuery","description":"Parameters for posting a tweet"},"PostTweetResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/PostTweetData"},{"type":"null"}],"description":"Posted tweet information"}},"type":"object","title":"PostTweetResponse","description":"Post tweet API response"},"PostTweetWithoutCookieQuery":{"properties":{"media_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Media Url","description":"URL of media to attach to the tweet","example":"https://example.com/image.jpg"},"tweet_content":{"type":"string","title":"Tweet Content","description":"Content of the tweet to post","example":"Hello, Twitter! 🐦"},"schedule":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Schedule","description":"Schedule time for the tweet in ISO format","example":"2024-01-01T12:00:00Z"},"reply_tweet_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reply Tweet Id","description":"ID of tweet to reply to","example":"1234567890123456789"},"community_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Community Name","description":"Name of Twitter community to post in or community id","example":"Python Developers or 1234567890123456789"},"quote_tweet_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Quote Tweet Url","description":"URL of tweet to quote","example":"https://twitter.com/user/status/1234567890123456789"}},"type":"object","required":["tweet_content"],"title":"PostTweetWithoutCookieQuery","description":"Parameters for posting a tweet without providing cookie (uses random cookie from pool)"},"PurchaseTwitterActionRequest":{"properties":{"service":{"type":"string","enum":["likes","retweets","views","bookmarks","followers"],"title":"Service","description":"Type of engagement service to purchase","example":"likes"},"link":{"type":"string","title":"Link","description":"Full Twitter/X URL of the tweet or profile to boost","example":"https://twitter.com/username/status/1234567890"},"quantity":{"type":"integer","exclusiveMinimum":0,"title":"Quantity","description":"Number of engagements to purchase (see service limits in endpoint description)","example":100}},"type":"object","required":["service","link","quantity"],"title":"PurchaseTwitterActionRequest"},"PurchaseTwitterActionResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code (200 for success)","example":200},"msg":{"type":"string","title":"Msg","description":"Human-readable response message","example":"success"},"data":{"additionalProperties":true,"type":"object","title":"Data","description":"Order details including order_id for tracking","example":{"order_id":12345}}},"type":"object","required":["code","msg","data"],"title":"PurchaseTwitterActionResponse"},"QuoteTweetQuery":{"properties":{"media_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Media Url","description":"URL of media to attach to the tweet","example":"https://example.com/image.jpg"},"tweet_content":{"type":"string","title":"Tweet Content","description":"Content of the tweet to post","example":"Hello, Twitter! 🐦"},"delegated_account_username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Delegated Account Username","description":"delegated account username","example":"elonmusk"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"community_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Community Name","description":"Name of Twitter community to post in or community id","example":"Python Developers or 1234567890123456789"},"quote_tweet_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Quote Tweet Url","description":"URL of tweet to quote","example":"https://twitter.com/user/status/1234567890123456789"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port . You can get proxy from: https://app.proxy-cheap.com/r/qiMxub","example":"http://username:password@ip:port"}},"type":"object","required":["tweet_content","cookie"],"title":"QuoteTweetQuery","description":"Parameters for quoting a tweet"},"ReplyResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/TweetModel"},{"type":"null"}],"description":"Tweet data"}},"type":"object","title":"ReplyResponse","description":"Reply response data"},"RetweetActionBody":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port . You can get proxy from: https://app.proxy-cheap.com/r/qiMxub","example":"http://username:password@ip:port"}},"type":"object","required":["cookie"],"title":"RetweetActionBody","description":"Body for the retweet action, containing only the cookie."},"SearchCommunityQuery":{"properties":{"query":{"type":"string","title":"Query","description":"The query to search for."},"target_count":{"type":"integer","title":"Target Count","description":"The number of communities to search."}},"type":"object","required":["query","target_count"],"title":"SearchCommunityQuery"},"SearchCommunityResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/CommunityModel"},"type":"array","title":"Data","description":"A list of community objects."}},"type":"object","required":["code","msg","data"],"title":"SearchCommunityResponse"},"SearchCommunityTweetsQuery":{"properties":{"community_id":{"type":"string","title":"Community Id","description":"The ID of the community."},"target_count":{"type":"integer","title":"Target Count","description":"The number of tweets to search."},"query":{"type":"string","title":"Query","description":"The query to search for."}},"type":"object","required":["community_id","target_count","query"],"title":"SearchCommunityTweetsQuery"},"SearchListQuery":{"properties":{"query":{"type":"string","title":"Query","description":"The query to search for."},"target_count":{"type":"integer","title":"Target Count","description":"The number of lists to search."}},"type":"object","required":["query","target_count"],"title":"SearchListQuery"},"SearchListResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/ListModel"},"type":"array","title":"Data","description":"A list of list objects."}},"type":"object","required":["code","msg","data"],"title":"SearchListResponse"},"SearchQuery":{"properties":{"searchTerms":{"items":{"type":"string"},"type":"array","title":"Searchterms","description":"List of search terms to query Twitter,Visit [Advance Search TwitterXAPI](https://advance-search.pages.dev) to generate advanced search terms online.","example":["python programming","AI technology"]},"maxItems":{"type":"integer","maximum":100000,"minimum":1,"title":"Maxitems","description":"Maximum number of tweets to return","default":10,"example":50},"sortBy":{"type":"string","enum":["Latest","Top"],"title":"Sortby","description":"Sort order for results","default":"Latest","example":"Latest"}},"type":"object","required":["searchTerms"],"title":"SearchQuery","description":"Advanced Twitter search query parameters"},"SearchResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Data","description":"List of tweets"}},"type":"object","required":["data"],"title":"SearchResponse","description":"Search API response"},"SearchUserResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/UserModel"},"type":"array","title":"Data","description":"A list of user objects."}},"type":"object","required":["code","msg","data"],"title":"SearchUserResponse"},"SendDmQuery":{"properties":{"username":{"type":"string","title":"Username","description":"Twitter username to send DM to","example":"myusername"},"msg":{"type":"string","title":"Msg","description":"Message to send","example":"Hello, how are you?"},"media":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Media","description":"Media URL to send","example":"https://example.com/image.jpg"},"reply_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reply To","description":"Reply to message ID","example":"1234567890123456789"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port . You can get proxy from: https://app.proxy-cheap.com/r/qiMxub","example":"http://username:password@ip:port"}},"type":"object","required":["username","msg","cookie"],"title":"SendDmQuery","description":"Parameters for sending DM"},"SendDmResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Message sent","example":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/MessageModel"},{"type":"null"}],"description":"message object","example":{"attachment":{"type":"image","url":"https://example.com/image.jpg"},"id":"1234567890123456789","text":"Hello, how are you?","time":"2024-01-01T12:00:00Z"}}},"type":"object","required":["code","msg","data"],"title":"SendDmResponse","description":"Response for sending DM"},"SendDmV3Query":{"properties":{"recipient":{"type":"string","title":"Recipient","description":"User id, @handle, or a group id (g...) for an existing group.","example":"baker_donn80196"},"text":{"type":"string","title":"Text","description":"Message body.","example":"hello from docs"},"media_urls":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":1},{"type":"null"}],"title":"Media Urls","description":"Public URL of one image to attach (max 1). Mutually exclusive with video_url.","example":["https://example.com/image.jpg"]},"video_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Video Url","description":"Public http(s) URL of one video to attach (mutually exclusive with image).","example":"https://video.twimg.com/amplify_video/2077160248830275584/vid/avc1/320x568/kwNDLTm"},"pin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pin","description":"Identity PIN (default 1234).","default":"1234","example":"1234"},"cookie":{"type":"string","title":"Cookie","description":"Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"},"proxy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proxy","description":"Optional HTTP proxy. Example: http://username:password@ip:port","example":"http://username:password@ip:port"}},"type":"object","required":["recipient","text","cookie"],"title":"SendDmV3Query","description":"Parameters for sending DM via XChat v3"},"SentimentAnalysisModel":{"properties":{"tone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tone","description":"The tone of the text. Positive, Negative, Neutral, Humorous, Sarcastic, Enthusiastic, Angry, or Informative"},"sentiment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sentiment","description":"The sentiment of the text. Positive, Negative, or Neutral"}},"type":"object","title":"SentimentAnalysisModel"},"SentimentAnalysisQuery":{"properties":{"text":{"type":"string","title":"Text","description":"The text to analyze."}},"type":"object","required":["text"],"title":"SentimentAnalysisQuery"},"SentimentAnalysisResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"$ref":"#/components/schemas/SentimentAnalysisModel","description":"The sentiment analysis model."}},"type":"object","required":["code","msg","data"],"title":"SentimentAnalysisResponse"},"StandardResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"anyOf":[{},{"type":"null"}],"title":"Data","description":"Response data"}},"type":"object","required":["code","msg"],"title":"StandardResponse","description":"Standard API response format"},"StreamModel":{"properties":{"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url","description":"URL of the video stream","example":"https://video.twimg.com/..."},"bitrate":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Bitrate","description":"Bitrate of the video stream in bps","example":832000},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content Type","description":"Content type of the stream","example":"video/mp4"}},"type":"object","title":"StreamModel"},"TweetActionResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"type":"boolean","title":"Data","description":"Success status","default":true}},"type":"object","title":"TweetActionResponse","description":"Tweet action response"},"TweetModel":{"properties":{"tweet_id":{"type":"string","title":"Tweet Id","description":"The unique identifier for the Tweet","example":"1803006263529541838"},"is_paid_promotion":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Paid Promotion","description":"Indicates whether the content or user is associated with a paid promotion","default":false,"example":true},"text":{"type":"string","title":"Text","description":"The actual text content of the Tweet"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At","description":"The date and time the Tweet was created","example":"Mon Jun 17 03:51:48 +0000 2024"},"created_at_datetime":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At Datetime","description":"The ISO 8601 format of the creation date","example":"2024-06-17T03:51:48.000Z"},"bookmark_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Bookmark Count","description":"Number of times the Tweet has been bookmarked","default":0},"bookmarked":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Bookmarked","description":"Indicates if the authenticating user has bookmarked this Tweet","default":false},"community_note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Community Note","description":"Community note associated with the Tweet"},"edit_tweet_ids":{"items":{"type":"string"},"type":"array","title":"Edit Tweet Ids","description":"A list of Tweet IDs for each edit of the Tweet","default":[]},"editable_until_msecs":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Editable Until Msecs","description":"Timestamp for when the Tweet is no longer editable"},"edits_remaining":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Edits Remaining","description":"Number of edits remaining for the Tweet"},"favorite_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Favorite Count","description":"Number of likes (favorites) for the Tweet","default":0},"favorited":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Favorited","description":"Indicates if the authenticating user has liked this Tweet","default":false},"full_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Full Text","description":"The full text of the Tweet, especially for extended tweets"},"has_card":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Has Card","description":"Indicates if the Tweet has a card attached","default":false},"has_community_notes":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Has Community Notes","description":"Indicates if the Tweet has community notes","default":false},"hashtags":{"items":{"type":"string"},"type":"array","title":"Hashtags","description":"A list of hashtags mentioned in the Tweet","default":[],"example":["AI","Python"]},"cashtags":{"items":{"type":"string"},"type":"array","title":"Cashtags","description":"A list of cashtags (stock symbols) mentioned in the Tweet","default":[],"example":["$TSLA"]},"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id","description":"The unique identifier for the Tweet (same as tweet_id)"},"in_reply_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"In Reply To","description":"ID of the Tweet this is a reply to"},"in_reply_to_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"In Reply To User Id","description":"ID of the user this is a reply to"},"in_reply_to_screen_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"In Reply To Screen Name","description":"Screen name of the user this is a reply to"},"is_edit_eligible":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Edit Eligible","description":"Indicates if the Tweet is eligible for editing","default":false},"is_quote_status":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Quote Status","description":"Indicates if this Tweet is a quote of another Tweet","default":false},"quoted_status_id_str":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Quoted Status Id Str","description":"The unique identifier for the Tweet that this is a quote of"},"is_translatable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Translatable","description":"Indicates if the Tweet is translatable","default":false},"lang":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lang","description":"The BCP 47 language identifier for the Tweet's content","example":"en"},"media":{"items":{"$ref":"#/components/schemas/MediaModel"},"type":"array","title":"Media","description":"A list of media objects (photos, videos) attached to the Tweet","default":[]},"place":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Place","description":"The location associated with the Tweet"},"poll":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Poll","description":"A poll attached to the Tweet"},"possibly_sensitive":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Possibly Sensitive","description":"Indicates if the Tweet may contain sensitive content"},"possibly_sensitive_editable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Possibly Sensitive Editable","description":"Indicates if the sensitive content flag is editable"},"quote":{"anyOf":[{"$ref":"#/components/schemas/TweetModel"},{"type":"null"}],"description":"The Tweet object being quoted"},"quote_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quote Count","description":"Number of times this Tweet has been quoted","default":0},"related_tweets":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Related Tweets","description":"A list of related Tweets","default":[]},"replies":{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array","title":"Replies","description":"A list of replies to this Tweet","default":[]},"reply_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reply Count","description":"Number of replies to this Tweet","default":0},"reply_to":{"anyOf":[{"$ref":"#/components/schemas/TweetModel"},{"type":"null"}],"description":"The Tweet object this is a reply to"},"retweet_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Retweet Count","description":"Number of times this Tweet has been retweeted","default":0},"retweeted_tweet":{"anyOf":[{"$ref":"#/components/schemas/TweetModel"},{"type":"null"}],"description":"The original Tweet object if this is a retweet"},"thread":{"anyOf":[{"items":{"$ref":"#/components/schemas/TweetModel"},"type":"array"},{"type":"null"}],"title":"Thread","description":"The conversation thread ID"},"thumbnail_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Thumbnail Title","description":"Title for the thumbnail in a card"},"thumbnail_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Thumbnail Url","description":"URL for the thumbnail in a card"},"urls":{"items":{"type":"string"},"type":"array","title":"Urls","description":"A list of URLs included in the Tweet","default":[]},"user":{"anyOf":[{"$ref":"#/components/schemas/UserModel"},{"type":"null"}],"description":"The user who posted the Tweet"},"view_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"View Count","description":"Number of views for the Tweet"},"view_count_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"View Count State","description":"State of the view count"},"status":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Status","description":"Raw status dictionary"},"target_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Target Count","description":"The target count of items requested, for context"}},"type":"object","required":["tweet_id","text"],"title":"TweetModel"},"TweetThreadByIdBody":{"properties":{"tweet_id":{"type":"string","title":"Tweet Id","description":"The root tweet ID to fetch the thread for"},"max_items":{"type":"integer","maximum":200,"minimum":1,"title":"Max Items","description":"Max number of thread tweets to return","default":40},"fields":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Fields","description":"Fields to include in each tweet. If omitted, all fields are returned."}},"type":"object","required":["tweet_id"],"title":"TweetThreadByIdBody"},"TwitterAccountBasedStandardResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"anyOf":[{"items":{"$ref":"#/components/schemas/TwitterUserAboutResponse"},"type":"array"},{"type":"null"}],"title":"Data","description":"Twitter Account Based in data"}},"type":"object","title":"TwitterAccountBasedStandardResponse"},"TwitterActionStatusResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code (200 for success)","example":200},"msg":{"type":"string","title":"Msg","description":"Human-readable response message","example":"success"},"data":{"additionalProperties":true,"type":"object","title":"Data","description":"Order status details including progress and delivery information","example":{"fee":1,"order_id":12345,"start_count":0,"status":"completed"}}},"type":"object","required":["code","msg","data"],"title":"TwitterActionStatusResponse"},"TwitterUserAboutResponse":{"properties":{"user_id":{"type":"string","title":"User Id","description":"Twitter user ID","example":"44196397"},"avatar":{"type":"string","title":"Avatar","description":"Profile avatar image URL","example":"https://pbs.twimg.com/profile_images/1983681414370619392/oTT3nm5Z_normal.jpg"},"name":{"type":"string","title":"Name","description":"User display name","example":"Elon Musk"},"screen_name":{"type":"string","title":"Screen Name","description":"Twitter username (handle)","example":"elonmusk"},"created_at":{"type":"string","title":"Created At","description":"Account creation date in Twitter format","example":"Tue Jun 02 20:12:29 +0000 2009"},"profile_image_shape":{"type":"string","title":"Profile Image Shape","description":"Profile image shape (e.g., Circle, Square)","example":"Circle"},"verification":{"type":"boolean","title":"Verification","description":"Whether the user account is verified","example":false},"userLabelDisplayType":{"type":"string","title":"Userlabeldisplaytype","description":"User label display type (e.g., Badge)","example":"Badge"},"userLabelType":{"type":"string","title":"Userlabeltype","description":"User label type (e.g., BusinessLabel)","example":"BusinessLabel"},"is_blue_verified":{"type":"boolean","title":"Is Blue Verified","description":"Whether the user has blue verification badge (Twitter Blue/X Premium)","example":true},"privacy_policy_url":{"type":"string","title":"Privacy Policy Url","description":"Privacy policy or learn more URL","example":"https://help.twitter.com/managing-your-account/about-twitter-verified-accounts"},"account_based_in":{"type":"string","title":"Account Based In","description":"Country or region where the account is based","example":"United States"},"location_accurate":{"type":"boolean","title":"Location Accurate","description":"Whether the location information is accurate","example":true},"affiliate_username":{"type":"string","title":"Affiliate Username","description":"Affiliated username (e.g., business account username)","example":"X"},"source":{"type":"string","title":"Source","description":"Source of account creation (e.g., 'United States App Store')","example":"United States App Store"},"username_changes_count":{"type":"integer","title":"Username Changes Count","description":"Number of times the username has been changed","example":0},"override_verified_year":{"type":"integer","title":"Override Verified Year","description":"Override verified year (if applicable, negative values indicate special cases)","example":-3000},"verified_since_msec":{"type":"integer","title":"Verified Since Msec","description":"Timestamp in milliseconds when the account was verified (negative values indicate special cases)","example":-156836000000000}},"type":"object","required":["user_id","avatar","name","screen_name","created_at","profile_image_shape","verification","userLabelDisplayType","userLabelType","is_blue_verified","privacy_policy_url","account_based_in","location_accurate","affiliate_username","source","username_changes_count","override_verified_year","verified_since_msec"],"title":"TwitterUserAboutResponse"},"TwitterUserAboutStandardResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/TwitterUserAboutResponse"},{"type":"null"}],"description":"Twitter User About data"}},"type":"object","title":"TwitterUserAboutStandardResponse","description":"Twitter User About API response"},"UnfavoriteTweetQuery":{"properties":{"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"}},"type":"object","required":["cookie"],"title":"UnfavoriteTweetQuery"},"UnfollowUserQuery":{"properties":{"username":{"type":"string","title":"Username","description":"The username of the user to unfollow."},"cookie":{"type":"string","title":"Cookie","description":"The user's Twitter authentication cookie or Twitter auth_token, [how-to-get-twitter-cookie](https://youtube-promotion.pages.dev/how-to-get-twitter-cookie)","example":"ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7"}},"type":"object","required":["username","cookie"],"title":"UnfollowUserQuery"},"UnfollowUserResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"anyOf":[{"$ref":"#/components/schemas/UserModel"},{"type":"null"}],"description":"A confirmation of the action's success."}},"type":"object","required":["code","msg"],"title":"UnfollowUserResponse"},"UserInfo":{"properties":{"userId":{"type":"string","title":"Userid","description":"User ID"},"isBlueVerified":{"type":"boolean","title":"Isblueverified","description":"Blue verification status"},"createdAt":{"type":"string","title":"Createdat","description":"Account creation date"},"createdAtDatetime":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Createdatdatetime","description":"Account creation datetime in ISO format"},"defaultProfile":{"type":"boolean","title":"Defaultprofile","description":"Default profile flag"},"defaultProfileImage":{"type":"boolean","title":"Defaultprofileimage","description":"Default profile image flag"},"description":{"type":"string","title":"Description","description":"Bio description"},"location":{"type":"string","title":"Location","description":"Location"},"fastFollowersCount":{"type":"integer","title":"Fastfollowerscount","description":"Fast followers count"},"favouritesCount":{"type":"integer","title":"Favouritescount","description":"Likes count"},"followersCount":{"type":"integer","title":"Followerscount","description":"Followers count"},"followingCount":{"type":"integer","title":"Followingcount","description":"Following count"},"hasCustomTimelines":{"type":"boolean","title":"Hascustomtimelines","description":"Has custom timelines flag"},"isTranslator":{"type":"boolean","title":"Istranslator","description":"Is translator flag"},"listedCount":{"type":"integer","title":"Listedcount","description":"Listed count"},"mediaCount":{"type":"integer","title":"Mediacount","description":"Media count"},"name":{"type":"string","title":"Name","description":"Display name"},"normalFollowersCount":{"type":"integer","title":"Normalfollowerscount","description":"Normal followers count"},"pinnedTweetIdsStr":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Pinnedtweetidsstr","description":"Pinned tweet IDs"},"possiblySensitive":{"type":"boolean","title":"Possiblysensitive","description":"Possibly sensitive flag"},"profileImageUrlHttps":{"type":"string","title":"Profileimageurlhttps","description":"Profile image URL"},"username":{"type":"string","title":"Username","description":"Username"},"statusesCount":{"type":"integer","title":"Statusescount","description":"Tweets count"},"translatorType":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Translatortype","description":"Translator type"},"verified":{"type":"boolean","title":"Verified","description":"Legacy verification status"},"verified_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verified Type","description":"Verification badge type: blue, business, government, etc.","examples":["blue","business","government"]},"withheldInCountries":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Withheldincountries","description":"Withheld in countries"},"protected":{"type":"boolean","title":"Protected","description":"Protected account flag"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url","description":"User profile URL"},"descriptionUrls":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Descriptionurls","description":"Description URLs"},"urls":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Urls","description":"User URLs"},"pinnedTweetIds":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"title":"Pinnedtweetids","description":"Pinned tweet IDs"}},"type":"object","required":["userId","isBlueVerified","createdAt","defaultProfile","defaultProfileImage","description","location","fastFollowersCount","favouritesCount","followersCount","followingCount","hasCustomTimelines","isTranslator","listedCount","mediaCount","name","normalFollowersCount","possiblySensitive","profileImageUrlHttps","username","statusesCount","verified","protected"],"title":"UserInfo","description":"User information structure"},"UserInfoResponse":{"properties":{"code":{"type":"integer","title":"Code"},"msg":{"type":"string","title":"Msg"},"data":{"anyOf":[{"$ref":"#/components/schemas/UserInfo"},{"type":"null"}]}},"type":"object","required":["code","msg","data"],"title":"UserInfoResponse"},"UserModel":{"properties":{"id":{"type":"string","title":"Id","description":"User ID","example":"1717001045992251392"},"name":{"type":"string","title":"Name","description":"Display name","example":"Cryptoklepto"},"screen_name":{"type":"string","title":"Screen Name","description":"Twitter username","example":"CK_Cryptoklepto"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At","description":"Account creation date","example":"Mon Oct 28 02:32:47 +0000 2024"},"created_at_datetime":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At Datetime","description":"Account creation datetime in ISO format","example":"2024-10-28T02:32:47.000Z"},"can_dm":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Can Dm","description":"Whether the user can be direct messaged","default":false},"can_media_tag":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Can Media Tag","description":"Whether the user can be tagged in media","default":false},"default_profile":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Default Profile","description":"Whether the user has a default profile","default":false},"default_profile_image":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Default Profile Image","description":"Whether the user has a default profile image","default":false},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"User's bio description","default":""},"description_urls":{"items":{"type":"string"},"type":"array","title":"Description Urls","description":"List of URLs found in the user's description","default":[]},"urls":{"anyOf":[{"items":{"$ref":"#/components/schemas/urlModel"},"type":"array"},{"type":"null"}],"title":"Urls","description":"List of URLs found in the user's profile"},"fast_followers_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Fast Followers Count","description":"Count of fast followers","default":0},"favourites_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Favourites Count","description":"Number of tweets the user has liked","default":0},"followers_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Followers Count","description":"Number of followers","default":0},"following_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Following Count","description":"Number of users this user is following","default":0},"has_custom_timelines":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Has Custom Timelines","description":"Whether the user has custom timelines","default":false},"is_blue_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Blue Verified","description":"Blue verification status","default":false},"verified_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verified Type","description":"Verification badge type when not blue-only: blue, business, government, etc.","examples":["government","business","blue"]},"is_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Verified","description":"True if the account has any verification badge (blue, business, government, or legacy verified)","default":false},"profile_image_shape":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Image Shape","description":"Profile image shape (Circle or Square; Square often indicates business/government)","examples":["Circle","Square"]},"is_translator":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Translator","description":"Whether the user is a translator","default":false},"listed_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Listed Count","description":"Number of public lists the user is a member of","default":0},"location":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Location","description":"User's location","default":"","example":"New York, USA"},"media_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Media Count","description":"Number of media tweets posted by the user","default":0},"normal_followers_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Normal Followers Count","description":"Count of normal followers","default":0},"pinned_tweet_ids":{"items":{"type":"string"},"type":"array","title":"Pinned Tweet Ids","description":"List of pinned tweet IDs","default":[]},"possibly_sensitive":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Possibly Sensitive","description":"Whether the user's profile may contain sensitive content","default":false},"profile_banner_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Banner Url","description":"URL of the user's profile banner"},"profile_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Image Url","description":"URL of the user's profile image"},"protected":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Protected","description":"Whether the user's tweets are protected","default":false},"statuses_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Statuses Count","description":"Number of tweets posted by the user","default":0}},"type":"object","required":["id","name","screen_name"],"title":"UserModel"},"UserTimelineFillQuery":{"properties":{"count":{"type":"integer","maximum":1000,"minimum":1,"title":"Count","description":"Maximum number of tweets to return across all pages.","default":20,"examples":[20]}},"type":"object","title":"UserTimelineFillQuery"},"UserTimelinePageQuery":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Cursor returned by the previous page. Leave empty to fetch the first page.","examples":["DAAHCgABHFeD5h9__-cLAAIAAAATMjAzODIzMzA5NTM4ODY4MDU5NAgAAwAAAAIAAA"]},"count":{"type":"integer","maximum":100,"minimum":1,"title":"Count","description":"Maximum number of tweets to return for this page.","default":20,"examples":[20]}},"type":"object","title":"UserTimelinePageQuery"},"UserTimelinePageResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"$ref":"#/components/schemas/UserTweetItem"},"type":"array","title":"Data","description":"Current page tweet items."},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available."},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Use this cursor to fetch the next page when has_next_page is true.","examples":["DAAHCgABHFeD5h9__-cLAAIAAAATMjAzODIzMzA5NTM4ODY4MDU5NAgAAwAAAAIAAA"]},"requested_count":{"type":"integer","title":"Requested Count","description":"Original count requested by the client."},"effective_count":{"type":"integer","title":"Effective Count","description":"Count after credit throttling was applied."},"parsed_count":{"type":"integer","title":"Parsed Count","description":"Number of tweets actually parsed from the response."}},"type":"object","required":["data","has_next_page","requested_count","effective_count","parsed_count"],"title":"UserTimelinePageResponse"},"UserTimelineResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"HTTP status code","default":200},"msg":{"type":"string","title":"Msg","description":"Response message","default":"success"},"data":{"items":{"$ref":"#/components/schemas/UserTweetItem"},"type":"array","title":"Data","description":"All fetched tweets."},"total_fetched_count":{"type":"integer","title":"Total Fetched Count","description":"Total number of tweets fetched across pages."},"page_count":{"type":"integer","title":"Page Count","description":"Number of pages fetched."}},"type":"object","required":["data","total_fetched_count","page_count"],"title":"UserTimelineResponse"},"UserTweetItem":{"properties":{"tweet_id":{"type":"string","title":"Tweet Id","description":"Tweet ID"},"is_paid_promotion":{"type":"boolean","title":"Is Paid Promotion","description":"Whether the tweet is associated with a paid promotion","default":false},"full_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Full Text","description":"Tweet text"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At","description":"Tweet creation time"},"lang":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lang","description":"Tweet language"},"conversation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Conversation Id","description":"Conversation ID"},"bookmark_count":{"type":"integer","title":"Bookmark Count","description":"Bookmark count","default":0},"favorite_count":{"type":"integer","title":"Favorite Count","description":"Like count","default":0},"reply_count":{"type":"integer","title":"Reply Count","description":"Reply count","default":0},"retweet_count":{"type":"integer","title":"Retweet Count","description":"Retweet count","default":0},"quote_count":{"type":"integer","title":"Quote Count","description":"Quote count","default":0},"view_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"View Count","description":"View count"},"view_count_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"View Count State","description":"View count state"},"author_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Author User Id","description":"Author user ID"},"author_screen_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Author Screen Name","description":"Author screen name"},"author_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Author Name","description":"Author display name"},"author_is_blue_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Author Is Blue Verified","description":"Blue verification flag"},"author_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Author Verified","description":"Legacy verification flag"},"author_is_verified_organization_affiliate":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Author Is Verified Organization Affiliate","description":"Verified organization affiliate flag"}},"type":"object","required":["tweet_id"],"title":"UserTweetItem"},"UsersDetailsResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/UserModel"},"type":"array","title":"Data","description":"A list of user objects."}},"type":"object","required":["code","msg","data"],"title":"UsersDetailsResponse"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VerifiedFollowersData":{"properties":{"users":{"items":{"$ref":"#/components/schemas/UserInfo"},"type":"array","title":"Users","description":"Follower users on this page"},"has_next_page":{"type":"boolean","title":"Has Next Page","description":"Whether another page is available"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Pass as cursor to fetch the next page when has_next_page is true","example":"1870681402093130182|2076960004551737340"}},"type":"object","required":["users","has_next_page"],"title":"VerifiedFollowersData","description":"Followers page data (regular or verified)"},"VerifiedFollowersResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"Response code","example":200},"msg":{"type":"string","title":"Msg","description":"Response message","example":"success"},"data":{"anyOf":[{"$ref":"#/components/schemas/VerifiedFollowersData"},{"type":"null"}],"description":"Followers page"}},"type":"object","required":["code","msg"],"title":"VerifiedFollowersResponse","description":"Response for followers / verified followers"},"XArticleModel":{"properties":{"tweet_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tweet Id","description":"The ID of the tweet"},"full_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Full Text","description":"The full text of the article tweet"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At","description":"The creation time"},"lang":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lang","description":"The language"},"bookmark_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Bookmark Count","description":"Bookmark count"},"favorite_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Favorite Count","description":"Favorite count"},"reply_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reply Count","description":"Reply count"},"retweet_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Retweet Count","description":"Retweet count"},"quote_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Quote Count","description":"Quote count"},"view_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"View Count","description":"View count"},"view_count_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"View Count State","description":"View count state"},"conversation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Conversation Id","description":"Conversation ID"},"author_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Author User Id","description":"Author user ID"},"author_screen_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Author Screen Name","description":"Author screen name"},"author_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Author Name","description":"Author name"},"author_is_blue_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Author Is Blue Verified","description":"Whether author is blue verified"},"author_verified":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Author Verified","description":"Whether author is verified"},"author_is_verified_organization_affiliate":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Author Is Verified Organization Affiliate","description":"Whether author is verified organization"},"article_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Article Id","description":"Article ID"},"article_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Article Title","description":"Article title"},"article_preview_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Article Preview Text","description":"Article preview text"},"article_summary_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Article Summary Text","description":"Article summary text"},"article_cover_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Article Cover Image Url","description":"Article cover image URL"},"article_blocks":{"items":{"$ref":"#/components/schemas/ArticleBlock"},"type":"array","title":"Article Blocks","description":"Article formatting blocks"},"article_plain_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Article Plain Text","description":"Article plain text"},"article_markdown":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Article Markdown","description":"Article markdown"},"article_media_image_urls":{"items":{"type":"string"},"type":"array","title":"Article Media Image Urls","description":"Article media image URLs"}},"type":"object","title":"XArticleModel"},"XArticleResponse":{"properties":{"code":{"type":"integer","title":"Code","description":"The status code of the response."},"msg":{"type":"string","title":"Msg","description":"The message of the response."},"data":{"items":{"$ref":"#/components/schemas/XArticleModel"},"type":"array","title":"Data","description":"A list of X article objects."}},"type":"object","required":["code","msg","data"],"title":"XArticleResponse"},"urlModel":{"properties":{"url":{"type":"string","title":"Url","description":"URL","example":"https://www.google.com"},"expanded_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expanded Url","description":"Expanded URL","example":"https://www.google.com"},"display_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Url","description":"Display URL","example":"www.google.com"}},"type":"object","required":["url"],"title":"urlModel"}},"securitySchemes":{"HTTPBearer":{"type":"http","scheme":"bearer"}}},"externalDocs":{"description":"TwexAPI developer documentation","url":"https://docs.twexapi.io"}}