# Table of Contents - [Introduction - twitterapi.io](#introduction-twitterapi-io) - [Unknown](#unknown) - [Add a twitter user to monitor his tweets - twitterapi.io](#add-a-twitter-user-to-monitor-his-tweets-twitterapi-io) - [Batch Get User Info By UserIds - twitterapi.io](#batch-get-user-info-by-userids-twitterapi-io) - [Bookmark Tweet - twitterapi.io](#bookmark-tweet-twitterapi-io) - [Create Community V2 - twitterapi.io](#create-community-v2-twitterapi-io) - [Create/Reply tweet v2 - twitterapi.io](#create-reply-tweet-v2-twitterapi-io) - [Delete Community V2 - twitterapi.io](#delete-community-v2-twitterapi-io) - [Delete Tweet - twitterapi.io](#delete-tweet-twitterapi-io) - [Delete Webhook/Websocket Tweet Filter Rule - twitterapi.io](#delete-webhook-websocket-tweet-filter-rule-twitterapi-io) - [Add Webhook/Websocket Tweet Filter Rule - twitterapi.io](#add-webhook-websocket-tweet-filter-rule-twitterapi-io) - [Get Bookmarks - twitterapi.io](#get-bookmarks-twitterapi-io) - [Get Community Members - twitterapi.io](#get-community-members-twitterapi-io) - [Get Community Info By Id - twitterapi.io](#get-community-info-by-id-twitterapi-io) - [Authentication - twitterapi.io](#authentication-twitterapi-io) - [Remove a user from monitor list - twitterapi.io](#remove-a-user-from-monitor-list-twitterapi-io) - [Update Banner - twitterapi.io](#update-banner-twitterapi-io) - [Update Webhook/Websocket Tweet Filter Rule - twitterapi.io](#update-webhook-websocket-tweet-filter-rule-twitterapi-io) - [Unfollow User - twitterapi.io](#unfollow-user-twitterapi-io) - [Get List Members - twitterapi.io](#get-list-members-twitterapi-io) - [Follow User - twitterapi.io](#follow-user-twitterapi-io) - [Get User Profile About - twitterapi.io](#get-user-profile-about-twitterapi-io) - [Check Follow Relationship - twitterapi.io](#check-follow-relationship-twitterapi-io) - [Update Avatar - twitterapi.io](#update-avatar-twitterapi-io) - [Join Community v2 - twitterapi.io](#join-community-v2-twitterapi-io) - [Log in - twitterapi.io](#log-in-twitterapi-io) - [Retweet Tweet - twitterapi.io](#retweet-tweet-twitterapi-io) - [Get Trends - twitterapi.io](#get-trends-twitterapi-io) - [Get Article - twitterapi.io](#get-article-twitterapi-io) - [Get Community Moderators - twitterapi.io](#get-community-moderators-twitterapi-io) - [Get My Account Info - twitterapi.io](#get-my-account-info-twitterapi-io) - [Get User Followers - twitterapi.io](#get-user-followers-twitterapi-io) - [Search Tweets From All Community - twitterapi.io](#search-tweets-from-all-community-twitterapi-io) - [Get Space Detail - twitterapi.io](#get-space-detail-twitterapi-io) - [Get Tweet Replies - twitterapi.io](#get-tweet-replies-twitterapi-io) - [Get User Last Tweets - twitterapi.io](#get-user-last-tweets-twitterapi-io) - [Get List Followers - twitterapi.io](#get-list-followers-twitterapi-io) - [Get ALL test Webhook/Websocket Tweet Filter Rules - twitterapi.io](#get-all-test-webhook-websocket-tweet-filter-rules-twitterapi-io) - [Leave Community V2 - twitterapi.io](#leave-community-v2-twitterapi-io) - [Like Tweet - twitterapi.io](#like-tweet-twitterapi-io) - [Unbookmark Tweet - twitterapi.io](#unbookmark-tweet-twitterapi-io) - [Get Users to Monitor Tweet - twitterapi.io](#get-users-to-monitor-tweet-twitterapi-io) - [Update Profile - twitterapi.io](#update-profile-twitterapi-io) - [Upload media - twitterapi.io](#upload-media-twitterapi-io) - [Send DM V2 - twitterapi.io](#send-dm-v2-twitterapi-io) - [Get User Verified Followers - twitterapi.io](#get-user-verified-followers-twitterapi-io) - [Unlike Tweet - twitterapi.io](#unlike-tweet-twitterapi-io) - [Search user by keyword - twitterapi.io](#search-user-by-keyword-twitterapi-io) - [Get User Followings - twitterapi.io](#get-user-followings-twitterapi-io) - [Get Tweet Retweeters - twitterapi.io](#get-tweet-retweeters-twitterapi-io) - [Get User Info - twitterapi.io](#get-user-info-twitterapi-io) - [Get User Followers IDs (Bulk) - twitterapi.io](#get-user-followers-ids-bulk-twitterapi-io) - [Get Tweets by IDs - twitterapi.io](#get-tweets-by-ids-twitterapi-io) - [Get List Tweet TimeLine - twitterapi.io](#get-list-tweet-timeline-twitterapi-io) - [Get Community Tweets - twitterapi.io](#get-community-tweets-twitterapi-io) - [Get User TimeLine - twitterapi.io](#get-user-timeline-twitterapi-io) - [Get Tweet Replies V2 - twitterapi.io](#get-tweet-replies-v2-twitterapi-io) - [Get Tweet Thread Context - twitterapi.io](#get-tweet-thread-context-twitterapi-io) - [Get User Mentions - twitterapi.io](#get-user-mentions-twitterapi-io) - [Advanced Search - twitterapi.io](#advanced-search-twitterapi-io) - [Get Tweet Quotations - twitterapi.io](#get-tweet-quotations-twitterapi-io) --- # Introduction - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/introduction#content-area) **🤖 New: Use twitterapi.io from your AI coding agent — one command.**Install the **[official skill](https://github.com/kaitoInfra/twitterapi-io) ** and Claude Code, Cursor, GitHub Copilot, Cline, Codex, Gemini CLI, and 12+ other agents get native access to every endpoint: npx skills add kaitoInfra/twitterapi-io Then just describe what you want in natural language — _“fetch Elon’s last 50 tweets”_, _“post this from my account”_, _“monitor anyone tweeting about AI”_ — and your agent ships working code. * **Stability**: Proven with over 1000B API calls * **Performance**: Average response time of 700ms * **High QPS**: Supports up to 200 QPS per client * **Ease of Use**: RESTful API design following standard OpenAPI specifications * **Cost-effective pricing** _(100,000 credits = $1.00)_: * \*\*0.0045/1kfollowerIDs∗∗(bulkendpoint,upto5kpercall—pull1MIDsforjust0.0045/1k follower IDs\*\* (bulk endpoint, up to 5k per call — pull 1M IDs for just 0.0045/1kfollowerIDs∗∗(bulkendpoint,upto5kpercall—pull1MIDsforjust4.50) * **$0.01/1k full follower / following profiles** (max page size, with name/bio/avatar) * $0.15/1k tweets * $0.18/1k user profiles * Minimum charge: $0.00015 per request (even if no data returned) * **Special Offer**: Discounted rates for students and research institutions 🎓 [​](https://docs.twitterapi.io/introduction#api-overview) API Overview ------------------------------------------------------------------------- Our Twitter API provides comprehensive endpoints for accessing Twitter data. Here’s what you can do: [Tweet Endpoints\ ---------------\ \ Search tweets, get tweet details, and analyze tweet metrics](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_by_ids) [User Endpoints\ --------------\ \ Get user profiles, followers, and following lists](https://docs.twitterapi.io/api-reference/endpoint/get_user_by_username) [Tweet Search\ ------------\ \ Advanced search with filters for dates, keywords and more](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search) [User Networks\ -------------\ \ Access follower and following relationships](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers) [AI Agent Skill\ --------------\ \ One-command install for Claude Code, Cursor, Copilot, Cline & 12+ more — your AI agent knows every endpoint natively.](https://github.com/kaitoInfra/twitterapi-io) [Get your API key\ ----------------\ \ Sign up in 30 seconds, free trial credit included. Single `x-api-key` header, no OAuth.](https://twitterapi.io/dashboard) --- # Unknown \# twitterapi.io ## Docs - \[Introduction\](https://docs.twitterapi.io/introduction.md): twitterapi.io docs.The best third-party Twitter API: reliable, high-performance, supports high QPS, and cost-effective. - \[Authentication\](https://docs.twitterapi.io/authentication.md): Learn how to authenticate your API requests using API keys - \[Batch Get User Info By UserIds\](https://docs.twitterapi.io/api-reference/endpoint/batch\_get\_user\_by\_userids.md): Batch get user info by user ids. Pricing: - \[Get User Info\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_by\_username.md): Get user info by screen name - \[Get User TimeLine\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_timeline.md): Retrieve tweets by user id.Sort by created\_at. Results are paginated, with each page returning up to 20 tweets.The content you see is in the same order as the tweets on the user's profile in the Twitter app, and filtering by time is not supported. - \[Get User Last Tweets\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_last\_tweets.md): Retrieve tweets by user name.Sort by created\_at. Results are paginated, with each page returning up to 20 tweets.If you only need to fetch the latest tweets from a single user very frequently, do not use this API—it will cost you a lot. Instead, please refer to https://twitterapi.io/blog/how-to-moni… - \[Get User Followers\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_followers.md): Get user followers (with full profile metadata) in reverse chronological order (newest first). Sorted by follow date — most recent followers appear on the first page. Use \`cursor\` for pagination through the complete followers list. - \[Get User Followers IDs (Bulk)\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_followers\_ids.md): Get a user's follower IDs in bulk — \*\*lightweight, IDs only, no profile metadata\*\*. Designed for large-scale follower-graph collection where you join IDs against your own data warehouse. - \[Get User Followings\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_followings.md): Get user followings (with full profile metadata). Sorted by follow date — most recent followings appear on the first page. Use \`cursor\` for pagination. - \[Get User Mentions\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_mention.md): get tweet mentions by user screen name.Each page returns exactly 20 mentions. Use cursor for pagination. Order by mention time desc - \[Check Follow Relationship\](https://docs.twitterapi.io/api-reference/endpoint/check\_follow\_relationship.md): Check if the user is following/followed by the target user. Trial operation price: 100 credits per call. - \[Search user by keyword\](https://docs.twitterapi.io/api-reference/endpoint/search\_user.md): Search user by keyword - \[Get User Verified Followers\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_verified\_followers.md): Get user verified followers in reverse chronological order (newest first). Returns exactly 20 verified followers per page, sorted by follow date. Most recent followers appear on the first page. Use cursor for pagination through the complete followers list.$0.3 per 1000 followers - \[Get User Profile About\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_about.md): Get user profile about by screen name - \[Get Tweets by IDs\](https://docs.twitterapi.io/api-reference/endpoint/get\_tweet\_by\_ids.md): get tweet by tweet ids - \[Get Tweet Replies\](https://docs.twitterapi.io/api-reference/endpoint/get\_tweet\_reply.md): get tweet replies by tweet id.Each page returns up to 20 replies(Sometimes less than 20,because we will filter out ads or other not tweets). Use cursor for pagination. Order by reply time desc - \[Get Tweet Replies V2\](https://docs.twitterapi.io/api-reference/endpoint/get\_tweet\_replies\_v2.md): Get tweet replies by tweet id (V2). Each page returns up to 20 replies. Use cursor for pagination. Supports sorting by Relevance, Latest, or Likes. - \[Get Tweet Quotations\](https://docs.twitterapi.io/api-reference/endpoint/get\_tweet\_quote.md): get tweet quotes by tweet id.Each page returns exactly 20 quotes. Use cursor for pagination. Order by quote time desc - \[Get Tweet Retweeters\](https://docs.twitterapi.io/api-reference/endpoint/get\_tweet\_retweeter.md): get tweet retweeters by tweet id.Each page returns about 100 retweeters. Use cursor for pagination. Order by retweet time desc - \[Get Tweet Thread Context\](https://docs.twitterapi.io/api-reference/endpoint/get\_tweet\_thread\_context.md): Get the thread context of a tweet.Suppose a tweet thread consists of t1, t2 (replying to t1), t3 (replying to t2), and t4, t5, t6 (all replying to t3). If we provide an API where you input t3 and receive t1, t2, t3, t4, t5, t6.Pagination is supported.The pagination size cannot be set (due to Twitter… - \[Get Article\](https://docs.twitterapi.io/api-reference/endpoint/get\_article.md): get article by tweet id. cost 100 credit per article - \[Advanced Search\](https://docs.twitterapi.io/api-reference/endpoint/tweet\_advanced\_search.md): Advanced search for tweets.Each page returns up to 20 replies(Sometimes less than 20,because we will filter out ads or other not tweets). - \[Get List Tweet TimeLine\](https://docs.twitterapi.io/api-reference/endpoint/list\_timeline.md): Get timeline tweets from list. Use cursor for pagination. - \[Get List Followers\](https://docs.twitterapi.io/api-reference/endpoint/get\_list\_followers.md): Get followers of a list. Page size is 20. - \[Get List Members\](https://docs.twitterapi.io/api-reference/endpoint/get\_list\_members.md): Get members of a list. Page size is 20. - \[Get Community Info By Id\](https://docs.twitterapi.io/api-reference/endpoint/get\_community\_by\_id.md): Get community info by community id. Price: 20 credits per call. Note: This API is a bit slow, we are still optimizing it. - \[Get Community Members\](https://docs.twitterapi.io/api-reference/endpoint/get\_community\_members.md): Get members of a community. Page size is 20. - \[Get Community Moderators\](https://docs.twitterapi.io/api-reference/endpoint/get\_community\_moderators.md): Get moderators of a community. Page size is 20. - \[Get Community Tweets\](https://docs.twitterapi.io/api-reference/endpoint/get\_community\_tweets.md): Get tweets of a community. Page size is 20. Order by creation time desc. - \[Search Tweets From All Community \](https://docs.twitterapi.io/api-reference/endpoint/get\_all\_community\_tweets.md): get tweets from all communities,each page returns up to 20 tweets. Use cursor for pagination. - \[Get Trends\](https://docs.twitterapi.io/api-reference/endpoint/get\_trends.md): Get trends by woeid - \[Get Space Detail\](https://docs.twitterapi.io/api-reference/endpoint/get\_space\_detail.md): Get spaces detail by space id - \[Get My Account Info\](https://docs.twitterapi.io/api-reference/endpoint/get\_my\_info.md): Get my info - \[Log in\](https://docs.twitterapi.io/api-reference/endpoint/user\_login\_v2.md): Log in directly using your email, username, password, and 2FA secret key. And obtain the Login\_cookie, to post tweets, etc. Please note that the Login\_cookie obtained through login\_v2 can only be used for APIs with the "v2" suffix, such as create\_tweet\_v2. Trial operation price: $0.005 per call. We… - \[Create/Reply tweet v2\](https://docs.twitterapi.io/api-reference/endpoint/create\_tweet\_v2.md): Create a tweet.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.003 per call. - \[Delete Tweet\](https://docs.twitterapi.io/api-reference/endpoint/delete\_tweet\_v2.md): Delete a tweet.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.002 per call. - \[Like Tweet\](https://docs.twitterapi.io/api-reference/endpoint/like\_tweet\_v2.md): Like a tweet.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.002 per call. - \[Unlike Tweet\](https://docs.twitterapi.io/api-reference/endpoint/unlike\_tweet\_v2.md): Unlike a tweet.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.002 per call. - \[Retweet Tweet \](https://docs.twitterapi.io/api-reference/endpoint/retweet\_tweet\_v2.md): Retweet a tweet.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.002 per call. - \[Bookmark Tweet\](https://docs.twitterapi.io/api-reference/endpoint/bookmark\_tweet\_v2.md): Bookmark a tweet. You must set the login\_cookie. You can get the login\_cookie from /twitter/user\_login\_v2. Trial operation price: $0.002 per call. - \[Unbookmark Tweet\](https://docs.twitterapi.io/api-reference/endpoint/unbookmark\_tweet\_v2.md): Remove a tweet from bookmarks. You must set the login\_cookie. You can get the login\_cookie from /twitter/user\_login\_v2. Trial operation price: $0.002 per call. - \[Get Bookmarks\](https://docs.twitterapi.io/api-reference/endpoint/bookmarks\_v2.md): Get the bookmarks list of the logged-in user. You must set the login\_cookie. You can get the login\_cookie from /twitter/user\_login\_v2. Returns tweets in the same format as other tweet endpoints. Use cursor for pagination. - \[Follow User\](https://docs.twitterapi.io/api-reference/endpoint/follow\_user\_v2.md): Follow a user.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.002 per call. - \[Unfollow User\](https://docs.twitterapi.io/api-reference/endpoint/unfollow\_user\_v2.md): Unfollow a user.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.002 per call. - \[Send DM V2\](https://docs.twitterapi.io/api-reference/endpoint/send\_dm\_v2.md): Send a direct message to a user.You must set the login\_cookie..You can get the login\_cookie from /twitter/user\_login\_v2.You can only send DMs to those who have enabled DMs. Sometimes it may fail, so be prepared to retry.Trial operation price: $0.003 per call. - \[Upload media\](https://docs.twitterapi.io/api-reference/endpoint/upload\_media\_v2.md): Upload media to twitter.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.003 per call. - \[Update Avatar\](https://docs.twitterapi.io/api-reference/endpoint/update\_avatar\_v2.md): Update your Twitter avatar/profile picture. You must set the login\_cookie. You can get the login\_cookie from /twitter/user\_login\_v2. Trial operation price: $0.003 per call. - \[Update Banner\](https://docs.twitterapi.io/api-reference/endpoint/update\_banner\_v2.md): Update your Twitter banner/header image. You must set the login\_cookie. You can get the login\_cookie from /twitter/user\_login\_v2. Trial operation price: $0.003 per call. - \[Update Profile\](https://docs.twitterapi.io/api-reference/endpoint/update\_profile\_v2.md): Update your Twitter profile information. You must set the login\_cookie. You can get the login\_cookie from /twitter/user\_login\_v2. Trial operation price: $0.003 per call. - \[Create Community V2\](https://docs.twitterapi.io/api-reference/endpoint/create\_community\_v2.md): Create a community.You must set the login\_cookies.You can get the login\_cookies from /twitter/user\_login\_v2.Trial operation price: $0.003 per call. - \[Delete Community V2\](https://docs.twitterapi.io/api-reference/endpoint/delete\_community\_v2.md): Delete a community.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.003 per call. - \[Join Community v2\](https://docs.twitterapi.io/api-reference/endpoint/join\_community\_v2.md): Join a community.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.003 per call. - \[Leave Community V2 \](https://docs.twitterapi.io/api-reference/endpoint/leave\_community\_v2.md): Leave a community.You must set the login\_cookie.You can get the login\_cookie from /twitter/user\_login\_v2.Trial operation price: $0.003 per call. - \[Add Webhook/Websocket Tweet Filter Rule\](https://docs.twitterapi.io/api-reference/endpoint/add\_webhook\_rule.md): Add a tweet filter rule. Default rule is not activated.You must call update\_rule to activate the rule. - \[Get ALL test Webhook/Websocket Tweet Filter Rules\](https://docs.twitterapi.io/api-reference/endpoint/get\_webhook\_rules.md): Get all tweet filter rules.Rule can be used in webhook and websocket.You can also modify the rule in our web page. - \[Update Webhook/Websocket Tweet Filter Rule\](https://docs.twitterapi.io/api-reference/endpoint/update\_webhook\_rule.md): Update a tweet filter rule. You must set all parameters. - \[Delete Webhook/Websocket Tweet Filter Rule\](https://docs.twitterapi.io/api-reference/endpoint/delete\_webhook\_rule.md): Delete a tweet filter rule. You must set all parameters. - \[Add a twitter user to monitor his tweets\](https://docs.twitterapi.io/api-reference/endpoint/add\_user\_to\_monitor\_tweet.md): Add a user to monitor real-time tweets.Monitor tweets from specified accounts, including directly sent tweets, quoted tweets, reply tweets, and retweeted tweets. Please ref:https://twitterapi.io/twitter-stream - \[Remove a user from monitor list\](https://docs.twitterapi.io/api-reference/endpoint/remove\_user\_to\_monitor\_tweet.md): Remove a user from monitor real-time tweets.Please ref:https://twitterapi.io/twitter-stream - \[Get Users to Monitor Tweet\](https://docs.twitterapi.io/api-reference/endpoint/get\_user\_to\_monitor\_tweet.md): Get the list of users being monitored for real-time tweets. Returns all users that have been added for tweet monitoring. Please ref:https://twitterapi.io/twitter-stream ## OpenAPI Specs - \[openapi\](https://docs.twitterapi.io/api-reference/openapi.json) - \[openapi\_bad\_1218\](https://docs.twitterapi.io/api-reference/openapi\_bad\_1218.json) - \[openapi\_old\_1\](https://docs.twitterapi.io/api-reference/openapi\_old\_1.json) - \[openapi\_old\](https://docs.twitterapi.io/api-reference/openapi\_old.json) --- # Add a twitter user to monitor his tweets - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/add_user_to_monitor_tweet#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "x_user_name": "" } ' import requests url = "https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet" payload = { "x_user_name": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({x_user_name: ''}) }; fetch('https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'x_user_name' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet" payload := strings.NewReader("{\n \"x_user_name\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"x_user_name\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"x_user_name\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "" } { "error": 123, "message": "" } POST / oapi / x\_user\_stream / add\_user\_to\_monitor\_tweet Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "x_user_name": "" } ' import requests url = "https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet" payload = { "x_user_name": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({x_user_name: ''}) }; fetch('https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'x_user_name' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet" payload := strings.NewReader("{\n \"x_user_name\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"x_user_name\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/x_user_stream/add_user_to_monitor_tweet") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"x_user_name\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/add_user_to_monitor_tweet#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/add_user_to_monitor_tweet#body-x-user-name) x\_user\_name string required The twitter(x) handle name to monitor.Must be set. #### Response 200 application/json Tweet filter rule add response [​](https://docs.twitterapi.io/api-reference/endpoint/add_user_to_monitor_tweet#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/add_user_to_monitor_tweet#response-msg) msg string required Message of the request.error message --- # Batch Get User Info By UserIds - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/batch_get_user_by_userids#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/batch_info_by_ids \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/batch_info_by_ids" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/batch_info_by_ids', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/batch_info_by_ids",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/batch_info_by_ids" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/batch_info_by_ids") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/batch_info_by_ids") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "users": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / user / batch\_info\_by\_ids Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/batch_info_by_ids \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/batch_info_by_ids" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/batch_info_by_ids', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/batch_info_by_ids",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/batch_info_by_ids" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/batch_info_by_ids") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/batch_info_by_ids") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "users": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/batch_get_user_by_userids#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/batch_get_user_by_userids#parameter-user-ids) userIds string required The user ids to get.eg. 1234567890,1234567891,1234567892. Use comma to separate multiple user ids #### Response 200 application/json User infos [​](https://docs.twitterapi.io/api-reference/endpoint/batch_get_user_by_userids#response-users) users object\[\] Array of user infos Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/batch_get_user_by_userids#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/batch_get_user_by_userids#response-msg) msg string Message of the request.error message --- # Bookmark Tweet - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/bookmark_tweet_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/bookmark_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/bookmark_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/bookmark_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/bookmark_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/bookmark_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/bookmark_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/bookmark_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } POST / twitter / bookmark\_tweet\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/bookmark_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/bookmark_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/bookmark_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/bookmark_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/bookmark_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/bookmark_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/bookmark_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/bookmark_tweet_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/bookmark_tweet_v2#body-login-cookies) login\_cookies string required The login cookies of the user. You can get the login\_cookie from /twitter/user\_login\_v2. Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/bookmark_tweet_v2#body-tweet-id) tweet\_id string required The id of the tweet to bookmark. Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/bookmark_tweet_v2#body-proxy) proxy string required The proxy to use. Please use high-quality residential proxies and avoid free proxies. Required. Example: http://username:password@ip:port \[blocked\] #### Response 200 application/json Bookmark response [​](https://docs.twitterapi.io/api-reference/endpoint/bookmark_tweet_v2#response-status) status string Status of the request. success or error [​](https://docs.twitterapi.io/api-reference/endpoint/bookmark_tweet_v2#response-message) message string Message of the request. error message --- # Create Community V2 - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/create_community_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "name": "", "description": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/create_community_v2" payload = { "login_cookies": "", "name": "", "description": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', name: '', description: '', proxy: '' }) }; fetch('https://api.twitterapi.io/twitter/create_community_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/create_community_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'name' => '',\ 'description' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/create_community_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/create_community_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/create_community_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "community_id": "", "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / create\_community\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/create_community_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "name": "", "description": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/create_community_v2" payload = { "login_cookies": "", "name": "", "description": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', name: '', description: '', proxy: '' }) }; fetch('https://api.twitterapi.io/twitter/create_community_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/create_community_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'name' => '',\ 'description' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/create_community_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/create_community_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/create_community_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "community_id": "", "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#body-login-cookies) login\_cookies string required The login cookies of the user.You can get the login\_cookies from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#body-name) name string required The name of the community.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#body-description) description string required The description of the community.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#response-community-id) community\_id string The id of the created community. [​](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/create_community_v2#response-msg) msg string Message of the request.error message --- # Create/Reply tweet v2 - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/create_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_text": "", "proxy": "", "reply_to_tweet_id": "", "attachment_url": "", "community_id": "", "is_note_tweet": true, "media_ids": [\ ""\ ], "quote_tweet_id": "", "schedule_for": "" } ' import requests url = "https://api.twitterapi.io/twitter/create_tweet_v2" payload = { "login_cookies": "", "tweet_text": "", "proxy": "", "reply_to_tweet_id": "", "attachment_url": "", "community_id": "", "is_note_tweet": True, "media_ids": [""], "quote_tweet_id": "", "schedule_for": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', tweet_text: '', proxy: '', reply_to_tweet_id: '', attachment_url: '', community_id: '', is_note_tweet: true, media_ids: [''], quote_tweet_id: '', schedule_for: '' }) }; fetch('https://api.twitterapi.io/twitter/create_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/create_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_text' => '',\ 'proxy' => '',\ 'reply_to_tweet_id' => '',\ 'attachment_url' => '',\ 'community_id' => '',\ 'is_note_tweet' => true,\ 'media_ids' => [\ ''\ ],\ 'quote_tweet_id' => '',\ 'schedule_for' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/create_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_text\": \"\",\n \"proxy\": \"\",\n \"reply_to_tweet_id\": \"\",\n \"attachment_url\": \"\",\n \"community_id\": \"\",\n \"is_note_tweet\": true,\n \"media_ids\": [\n \"\"\n ],\n \"quote_tweet_id\": \"\",\n \"schedule_for\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/create_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_text\": \"\",\n \"proxy\": \"\",\n \"reply_to_tweet_id\": \"\",\n \"attachment_url\": \"\",\n \"community_id\": \"\",\n \"is_note_tweet\": true,\n \"media_ids\": [\n \"\"\n ],\n \"quote_tweet_id\": \"\",\n \"schedule_for\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/create_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_text\": \"\",\n \"proxy\": \"\",\n \"reply_to_tweet_id\": \"\",\n \"attachment_url\": \"\",\n \"community_id\": \"\",\n \"is_note_tweet\": true,\n \"media_ids\": [\n \"\"\n ],\n \"quote_tweet_id\": \"\",\n \"schedule_for\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "tweet_id": "", "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / create\_tweet\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/create_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_text": "", "proxy": "", "reply_to_tweet_id": "", "attachment_url": "", "community_id": "", "is_note_tweet": true, "media_ids": [\ ""\ ], "quote_tweet_id": "", "schedule_for": "" } ' import requests url = "https://api.twitterapi.io/twitter/create_tweet_v2" payload = { "login_cookies": "", "tweet_text": "", "proxy": "", "reply_to_tweet_id": "", "attachment_url": "", "community_id": "", "is_note_tweet": True, "media_ids": [""], "quote_tweet_id": "", "schedule_for": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', tweet_text: '', proxy: '', reply_to_tweet_id: '', attachment_url: '', community_id: '', is_note_tweet: true, media_ids: [''], quote_tweet_id: '', schedule_for: '' }) }; fetch('https://api.twitterapi.io/twitter/create_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/create_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_text' => '',\ 'proxy' => '',\ 'reply_to_tweet_id' => '',\ 'attachment_url' => '',\ 'community_id' => '',\ 'is_note_tweet' => true,\ 'media_ids' => [\ ''\ ],\ 'quote_tweet_id' => '',\ 'schedule_for' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/create_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_text\": \"\",\n \"proxy\": \"\",\n \"reply_to_tweet_id\": \"\",\n \"attachment_url\": \"\",\n \"community_id\": \"\",\n \"is_note_tweet\": true,\n \"media_ids\": [\n \"\"\n ],\n \"quote_tweet_id\": \"\",\n \"schedule_for\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/create_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_text\": \"\",\n \"proxy\": \"\",\n \"reply_to_tweet_id\": \"\",\n \"attachment_url\": \"\",\n \"community_id\": \"\",\n \"is_note_tweet\": true,\n \"media_ids\": [\n \"\"\n ],\n \"quote_tweet_id\": \"\",\n \"schedule_for\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/create_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_text\": \"\",\n \"proxy\": \"\",\n \"reply_to_tweet_id\": \"\",\n \"attachment_url\": \"\",\n \"community_id\": \"\",\n \"is_note_tweet\": true,\n \"media_ids\": [\n \"\"\n ],\n \"quote_tweet_id\": \"\",\n \"schedule_for\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "tweet_id": "", "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-login-cookies) login\_cookies string required The login cookies of the user.You can get the login\_cookie from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-tweet-text) tweet\_text string required The text of the tweet.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-reply-to-tweet-id) reply\_to\_tweet\_id string The id of the tweet to reply to.Optional [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-attachment-url) attachment\_url string The url of quote tweet.Optional.eg.[https://x.com/sama/status/1947640330318156074](https://x.com/sama/status/1947640330318156074) [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-community-id) community\_id string The id of the community to post to.Optional [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-is-note-tweet) is\_note\_tweet boolean If this option is set to True, tweets longer than 280 characters can be posted (Twitter Premium only). [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-media-ids) media\_ids string\[\] List of media IDs (strings) to attach. Optional. Obtain each from /twitter/upload\_media\_v2. [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-quote-tweet-id) quote\_tweet\_id string ID of a tweet to quote. Optional. Alternative to attachment\_url. [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#body-schedule-for) schedule\_for string Schedule the tweet to be sent at a future time. Optional. Format: ISO-8601 with milliseconds, e.g. 2026-01-20T10:00:00.000Z #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#response-tweet-id) tweet\_id string The id of the created tweet. [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2#response-msg) msg string Message of the request.error message --- # Delete Community V2 - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/delete_community_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/delete_community_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "community_id": "", "community_name": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/delete_community_v2" payload = { "login_cookies": "", "community_id": "", "community_name": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', community_id: '', community_name: '', proxy: '' }) }; fetch('https://api.twitterapi.io/twitter/delete_community_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/delete_community_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'community_id' => '',\ 'community_name' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/delete_community_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"community_name\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/delete_community_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"community_name\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/delete_community_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"community_name\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / delete\_community\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/delete_community_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "community_id": "", "community_name": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/delete_community_v2" payload = { "login_cookies": "", "community_id": "", "community_name": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', community_id: '', community_name: '', proxy: '' }) }; fetch('https://api.twitterapi.io/twitter/delete_community_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/delete_community_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'community_id' => '',\ 'community_name' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/delete_community_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"community_name\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/delete_community_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"community_name\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/delete_community_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"community_name\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/delete_community_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/delete_community_v2#body-login-cookies) login\_cookies string required The login cookie of the user.You can get the login\_cookies from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/delete_community_v2#body-community-id) community\_id string required The id of the community to join.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/delete_community_v2#body-community-name) community\_name string required The name of the community to delete.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/delete_community_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/delete_community_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/delete_community_v2#response-msg) msg string Message of the request.error message --- # Delete Tweet - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/delete_tweet_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/delete_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/delete_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/delete_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/delete_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/delete_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/delete_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/delete_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / delete\_tweet\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/delete_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/delete_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/delete_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/delete_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/delete_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/delete_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/delete_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/delete_tweet_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/delete_tweet_v2#body-login-cookies) login\_cookies string required The login cookies of the user.You can get the login\_cookie from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/delete_tweet_v2#body-tweet-id) tweet\_id string required The id of the tweet to delete.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/delete_tweet_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/delete_tweet_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/delete_tweet_v2#response-msg) msg string Message of the request.error message --- # Delete Webhook/Websocket Tweet Filter Rule - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/delete_webhook_rule#content-area) cURL cURL curl --request DELETE \ --url https://api.twitterapi.io/oapi/tweet_filter/delete_rule \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "rule_id": "" } ' import requests url = "https://api.twitterapi.io/oapi/tweet_filter/delete_rule" payload = { "rule_id": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.delete(url, json=payload, headers=headers) print(response.text) const options = { method: 'DELETE', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({rule_id: ''}) }; fetch('https://api.twitterapi.io/oapi/tweet_filter/delete_rule', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/tweet_filter/delete_rule",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "DELETE",\ CURLOPT_POSTFIELDS => json_encode([\ 'rule_id' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/tweet_filter/delete_rule" payload := strings.NewReader("{\n \"rule_id\": \"\"\n}") req, _ := http.NewRequest("DELETE", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.delete("https://api.twitterapi.io/oapi/tweet_filter/delete_rule") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"rule_id\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/tweet_filter/delete_rule") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Delete.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"rule_id\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "" } { "error": 123, "message": "" } DELETE / oapi / tweet\_filter / delete\_rule Try it cURL cURL curl --request DELETE \ --url https://api.twitterapi.io/oapi/tweet_filter/delete_rule \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "rule_id": "" } ' import requests url = "https://api.twitterapi.io/oapi/tweet_filter/delete_rule" payload = { "rule_id": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.delete(url, json=payload, headers=headers) print(response.text) const options = { method: 'DELETE', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({rule_id: ''}) }; fetch('https://api.twitterapi.io/oapi/tweet_filter/delete_rule', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/tweet_filter/delete_rule",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "DELETE",\ CURLOPT_POSTFIELDS => json_encode([\ 'rule_id' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/tweet_filter/delete_rule" payload := strings.NewReader("{\n \"rule_id\": \"\"\n}") req, _ := http.NewRequest("DELETE", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.delete("https://api.twitterapi.io/oapi/tweet_filter/delete_rule") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"rule_id\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/tweet_filter/delete_rule") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Delete.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"rule_id\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/delete_webhook_rule#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/delete_webhook_rule#body-rule-id) rule\_id string ID of the rule to delete.Must be set #### Response 200 application/json Tweet filter rule delete response [​](https://docs.twitterapi.io/api-reference/endpoint/delete_webhook_rule#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/delete_webhook_rule#response-msg) msg string Message of the request.error message --- # Add Webhook/Websocket Tweet Filter Rule - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/add_webhook_rule#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/oapi/tweet_filter/add_rule \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "tag": "", "value": "", "interval_seconds": 123 } ' import requests url = "https://api.twitterapi.io/oapi/tweet_filter/add_rule" payload = { "tag": "", "value": "", "interval_seconds": 123 } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({tag: '', value: '', interval_seconds: 123}) }; fetch('https://api.twitterapi.io/oapi/tweet_filter/add_rule', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/tweet_filter/add_rule",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'tag' => '',\ 'value' => '',\ 'interval_seconds' => 123\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/tweet_filter/add_rule" payload := strings.NewReader("{\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/oapi/tweet_filter/add_rule") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/tweet_filter/add_rule") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}" response = http.request(request) puts response.read_body 200 400 { "rule_id": "", "status": "success", "msg": "" } { "error": 123, "message": "" } POST / oapi / tweet\_filter / add\_rule Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/oapi/tweet_filter/add_rule \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "tag": "", "value": "", "interval_seconds": 123 } ' import requests url = "https://api.twitterapi.io/oapi/tweet_filter/add_rule" payload = { "tag": "", "value": "", "interval_seconds": 123 } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({tag: '', value: '', interval_seconds: 123}) }; fetch('https://api.twitterapi.io/oapi/tweet_filter/add_rule', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/tweet_filter/add_rule",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'tag' => '',\ 'value' => '',\ 'interval_seconds' => 123\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/tweet_filter/add_rule" payload := strings.NewReader("{\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/oapi/tweet_filter/add_rule") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/tweet_filter/add_rule") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}" response = http.request(request) puts response.read_body 200 400 { "rule_id": "", "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/add_webhook_rule#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/add_webhook_rule#body-tag) tag string required Custom tag to identify the rule.Must be set.Max length is 255 [​](https://docs.twitterapi.io/api-reference/endpoint/add_webhook_rule#body-value) value string required Rule to filter tweets.eg "from:elonmusk OR from:kaitoeasyapi".Must be set.Max length is 255 [​](https://docs.twitterapi.io/api-reference/endpoint/add_webhook_rule#body-interval-seconds) interval\_seconds number required Interval (in seconds) to check tweets. Min 0.05, max 86400 (24h). Default 60 if omitted. #### Response 200 application/json Tweet filter rule add response [​](https://docs.twitterapi.io/api-reference/endpoint/add_webhook_rule#response-rule-id) rule\_id string required ID of the added rule [​](https://docs.twitterapi.io/api-reference/endpoint/add_webhook_rule#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/add_webhook_rule#response-msg) msg string required Message of the request.error message --- # Get Bookmarks - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/bookmarks_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "proxy": "", "count": 20, "cursor": "" } ' import requests url = "https://api.twitterapi.io/twitter/bookmarks_v2" payload = { "login_cookies": "", "proxy": "", "count": 20, "cursor": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', proxy: '', count: 20, cursor: ''}) }; fetch('https://api.twitterapi.io/twitter/bookmarks_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/bookmarks_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'proxy' => '',\ 'count' => 20,\ 'cursor' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/bookmarks_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"count\": 20,\n \"cursor\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/bookmarks_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"count\": 20,\n \"cursor\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/bookmarks_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"count\": 20,\n \"cursor\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "" } { "error": 123, "message": "" } POST / twitter / bookmarks\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/bookmarks_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "proxy": "", "count": 20, "cursor": "" } ' import requests url = "https://api.twitterapi.io/twitter/bookmarks_v2" payload = { "login_cookies": "", "proxy": "", "count": 20, "cursor": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', proxy: '', count: 20, cursor: ''}) }; fetch('https://api.twitterapi.io/twitter/bookmarks_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/bookmarks_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'proxy' => '',\ 'count' => 20,\ 'cursor' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/bookmarks_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"count\": 20,\n \"cursor\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/bookmarks_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"count\": 20,\n \"cursor\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/bookmarks_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"count\": 20,\n \"cursor\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#body-login-cookies) login\_cookies string required The login cookies of the user. You can get the login\_cookie from /twitter/user\_login\_v2. Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#body-proxy) proxy string required The proxy to use. Please use high-quality residential proxies and avoid free proxies. Required. Example: http://username:password@ip:port \[blocked\] [​](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#body-count) count integer default:20 Number of bookmarks to return per page. Default is 20 [​](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#body-cursor) cursor string Cursor for pagination. Use next\_cursor from previous response to get next page #### Response 200 application/json Bookmarks response [​](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#response-tweets) tweets object\[\] required Array of bookmarked tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#response-has-next-page) has\_next\_page boolean required Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/bookmarks_v2#response-next-cursor) next\_cursor string required Cursor for fetching the next page of results --- # Get Community Members - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/members \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/members" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/members', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/members",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/members" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/members") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/members") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "members": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / community / members Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/members \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/members" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/members', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/members",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/members" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/members") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/members") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "members": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#parameter-community-id) community\_id string required id of the community [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#parameter-cursor) cursor string cursor of the page #### Response 200 application/json Community members response [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#response-members) members object\[\] Members of the community Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#response-has-next-page) has\_next\_page boolean Whether there is a next page [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#response-next-cursor) next\_cursor string Cursor of the next page [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#response-status) status enum Status of the request: success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_members#response-msg) msg string Message of the request, error message if status is error --- # Get Community Info By Id - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_community_by_id#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/info \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/info" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/info', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/info",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/info" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/info") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/info") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "community_info": { "id": "", "name": "", "description": "", "question": "", "member_count": 123, "moderator_count": 123, "created_at": "", "join_policy": "", "invites_policy": "", "is_nsfw": true, "is_pinned": true, "role": "", "primary_topic": { "id": "", "name": "" }, "banner_url": "", "search_tags": [\ ""\ ], "rules": [\ {\ "id": "",\ "name": "",\ "description": ""\ }\ ], "creator": { "type": "user", "userName": "", "url": "", "id": "", "name": "", "isBlueVerified": true, "verifiedType": "", "profilePicture": "", "coverPicture": "", "description": "", "location": "", "followers": 123, "following": 123, "canDm": true, "createdAt": "", "favouritesCount": 123, "hasCustomTimelines": true, "isTranslator": true, "mediaCount": 123, "statusesCount": 123, "withheldInCountries": [\ ""\ ], "affiliatesHighlightedLabel": {}, "possiblySensitive": true, "pinnedTweetIds": [\ ""\ ], "isAutomated": true, "automatedBy": "", "unavailable": true, "message": "", "unavailableReason": "", "profile_bio": { "description": "", "entities": { "description": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] }, "url": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] } } } }, "admin": { "type": "user", "userName": "", "url": "", "id": "", "name": "", "isBlueVerified": true, "verifiedType": "", "profilePicture": "", "coverPicture": "", "description": "", "location": "", "followers": 123, "following": 123, "canDm": true, "createdAt": "", "favouritesCount": 123, "hasCustomTimelines": true, "isTranslator": true, "mediaCount": 123, "statusesCount": 123, "withheldInCountries": [\ ""\ ], "affiliatesHighlightedLabel": {}, "possiblySensitive": true, "pinnedTweetIds": [\ ""\ ], "isAutomated": true, "automatedBy": "", "unavailable": true, "message": "", "unavailableReason": "", "profile_bio": { "description": "", "entities": { "description": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] }, "url": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] } } } }, "members_preview": [\ {}\ ] }, "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / community / info Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/info \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/info" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/info', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/info",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/info" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/info") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/info") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "community_info": { "id": "", "name": "", "description": "", "question": "", "member_count": 123, "moderator_count": 123, "created_at": "", "join_policy": "", "invites_policy": "", "is_nsfw": true, "is_pinned": true, "role": "", "primary_topic": { "id": "", "name": "" }, "banner_url": "", "search_tags": [\ ""\ ], "rules": [\ {\ "id": "",\ "name": "",\ "description": ""\ }\ ], "creator": { "type": "user", "userName": "", "url": "", "id": "", "name": "", "isBlueVerified": true, "verifiedType": "", "profilePicture": "", "coverPicture": "", "description": "", "location": "", "followers": 123, "following": 123, "canDm": true, "createdAt": "", "favouritesCount": 123, "hasCustomTimelines": true, "isTranslator": true, "mediaCount": 123, "statusesCount": 123, "withheldInCountries": [\ ""\ ], "affiliatesHighlightedLabel": {}, "possiblySensitive": true, "pinnedTweetIds": [\ ""\ ], "isAutomated": true, "automatedBy": "", "unavailable": true, "message": "", "unavailableReason": "", "profile_bio": { "description": "", "entities": { "description": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] }, "url": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] } } } }, "admin": { "type": "user", "userName": "", "url": "", "id": "", "name": "", "isBlueVerified": true, "verifiedType": "", "profilePicture": "", "coverPicture": "", "description": "", "location": "", "followers": 123, "following": 123, "canDm": true, "createdAt": "", "favouritesCount": 123, "hasCustomTimelines": true, "isTranslator": true, "mediaCount": 123, "statusesCount": 123, "withheldInCountries": [\ ""\ ], "affiliatesHighlightedLabel": {}, "possiblySensitive": true, "pinnedTweetIds": [\ ""\ ], "isAutomated": true, "automatedBy": "", "unavailable": true, "message": "", "unavailableReason": "", "profile_bio": { "description": "", "entities": { "description": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] }, "url": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] } } } }, "members_preview": [\ {}\ ] }, "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_by_id#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_by_id#parameter-community-id) community\_id string required id of the community #### Response 200 application/json Community info response [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_by_id#response-community-info) community\_info object Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_by_id#response-status) status enum Status of the request: success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_by_id#response-msg) msg string Message of the request, error message if status is error --- # Authentication - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/authentication#content-area) **Skip writing auth + pagination boilerplate** — install the [official AI agent skill](https://github.com/kaitoInfra/twitterapi-io) and let Claude Code, Cursor, Copilot, etc. handle it: npx skills add kaitoInfra/twitterapi-io [​](https://docs.twitterapi.io/authentication#api-authentication) API Authentication --------------------------------------------------------------------------------------- Every API request requires authentication using an API key in the HTTP headers. ### [​](https://docs.twitterapi.io/authentication#getting-your-api-key) Getting Your API Key 1. Log in to your [TwitterApiIO Dashboard](https://twitterapi.io/dashboard) 2. Find your API key displayed on the dashboard homepage ### [​](https://docs.twitterapi.io/authentication#using-your-api-key) Using Your API Key All API requests must include the `x-api-key` header for authentication. Header format: x-api-key: YOUR_API_KEY Example requests: #### [​](https://docs.twitterapi.io/authentication#curl) cURL curl --location 'https://api.twitterapi.io/twitter/user/followings?userName=KaitoEasyAPI' \ --header 'x-api-key: my_test_xxxxx' #### [​](https://docs.twitterapi.io/authentication#python) Python import requests url = 'https://api.twitterapi.io/twitter/user/followings?userName=KaitoEasyAPI' headers = {'x-api-key': 'my_test_xxxxx'} response = requests.get(url, headers=headers) print(response.json()) #### [​](https://docs.twitterapi.io/authentication#java) Java import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.twitterapi.io/twitter/user/followings?userName=KaitoEasyAPI") .addHeader("x-api-key", "my_test_xxxxx") .build(); try (Response response = client.newCall(request).execute()) { System.out.println(response.body().string()); } catch (Exception e) { e.printStackTrace(); } --- # Remove a user from monitor list - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/remove_user_to_monitor_tweet#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "id_for_user": "" } ' import requests url = "https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet" payload = { "id_for_user": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({id_for_user: ''}) }; fetch('https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'id_for_user' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet" payload := strings.NewReader("{\n \"id_for_user\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"id_for_user\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"id_for_user\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "" } { "error": 123, "message": "" } POST / oapi / x\_user\_stream / remove\_user\_to\_monitor\_tweet Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "id_for_user": "" } ' import requests url = "https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet" payload = { "id_for_user": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({id_for_user: ''}) }; fetch('https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'id_for_user' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet" payload := strings.NewReader("{\n \"id_for_user\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"id_for_user\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/x_user_stream/remove_user_to_monitor_tweet") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"id_for_user\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/remove_user_to_monitor_tweet#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/remove_user_to_monitor_tweet#body-id-for-user) id\_for\_user string required Get it from get\_user\_to\_monitor\_tweet api #### Response 200 application/json x\_user\_stream remove user response [​](https://docs.twitterapi.io/api-reference/endpoint/remove_user_to_monitor_tweet#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/remove_user_to_monitor_tweet#response-msg) msg string required Message of the request.error message --- # Update Banner - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/update_banner_v2#content-area) cURL cURL curl --request PATCH \ --url https://api.twitterapi.io/twitter/update_banner_v2 \ --header 'Content-Type: multipart/form-data' \ --header 'X-API-Key: ' \ --form file='@example-file' \ --form 'proxy=' \ --form 'login_cookies=' import requests url = "https://api.twitterapi.io/twitter/update_banner_v2" files = { "file": ("example-file", open("example-file", "rb")) } payload = { "proxy": "", "login_cookies": "" } headers = {"X-API-Key": ""} response = requests.patch(url, data=payload, files=files, headers=headers) print(response.text) const form = new FormData(); form.append('file', ''); form.append('proxy', ''); form.append('login_cookies', ''); const options = {method: 'PATCH', headers: {'X-API-Key': ''}}; options.body = form; fetch('https://api.twitterapi.io/twitter/update_banner_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/update_banner_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "PATCH",\ CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--",\ CURLOPT_HTTPHEADER => [\ "Content-Type: multipart/form-data",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/update_banner_v2" payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--") req, _ := http.NewRequest("PATCH", url, payload) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.patch("https://api.twitterapi.io/twitter/update_banner_v2") .header("X-API-Key", "") .body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/update_banner_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Patch.new(url) request["X-API-Key"] = '' request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } PATCH / twitter / update\_banner\_v2 Try it cURL cURL curl --request PATCH \ --url https://api.twitterapi.io/twitter/update_banner_v2 \ --header 'Content-Type: multipart/form-data' \ --header 'X-API-Key: ' \ --form file='@example-file' \ --form 'proxy=' \ --form 'login_cookies=' import requests url = "https://api.twitterapi.io/twitter/update_banner_v2" files = { "file": ("example-file", open("example-file", "rb")) } payload = { "proxy": "", "login_cookies": "" } headers = {"X-API-Key": ""} response = requests.patch(url, data=payload, files=files, headers=headers) print(response.text) const form = new FormData(); form.append('file', ''); form.append('proxy', ''); form.append('login_cookies', ''); const options = {method: 'PATCH', headers: {'X-API-Key': ''}}; options.body = form; fetch('https://api.twitterapi.io/twitter/update_banner_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/update_banner_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "PATCH",\ CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--",\ CURLOPT_HTTPHEADER => [\ "Content-Type: multipart/form-data",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/update_banner_v2" payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--") req, _ := http.NewRequest("PATCH", url, payload) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.patch("https://api.twitterapi.io/twitter/update_banner_v2") .header("X-API-Key", "") .body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/update_banner_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Patch.new(url) request["X-API-Key"] = '' request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/update_banner_v2#authorization-x-api-key) X-API-Key string header required #### Body multipart/form-data [​](https://docs.twitterapi.io/api-reference/endpoint/update_banner_v2#body-file) file file required The banner image file to upload. Recommended size: 1500x500 pixels. Maximum file size: 2MB. Supported formats: JPG, PNG [​](https://docs.twitterapi.io/api-reference/endpoint/update_banner_v2#body-proxy) proxy string required The proxy to use. Please use high-quality residential proxies and avoid free proxies. Required. Example: http://username:password@ip:port \[blocked\] [​](https://docs.twitterapi.io/api-reference/endpoint/update_banner_v2#body-login-cookies) login\_cookies string required The login cookies of the user. You can get the login\_cookie from /twitter/user\_login\_v2. Required #### Response 200 application/json Update banner response [​](https://docs.twitterapi.io/api-reference/endpoint/update_banner_v2#response-status) status string Status of the request. success or error [​](https://docs.twitterapi.io/api-reference/endpoint/update_banner_v2#response-message) message string Message of the request. e.g. Banner updated successfully --- # Update Webhook/Websocket Tweet Filter Rule - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/oapi/tweet_filter/update_rule \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "rule_id": "", "tag": "", "value": "", "interval_seconds": 123 } ' import requests url = "https://api.twitterapi.io/oapi/tweet_filter/update_rule" payload = { "rule_id": "", "tag": "", "value": "", "interval_seconds": 123 } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({rule_id: '', tag: '', value: '', interval_seconds: 123}) }; fetch('https://api.twitterapi.io/oapi/tweet_filter/update_rule', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/tweet_filter/update_rule",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'rule_id' => '',\ 'tag' => '',\ 'value' => '',\ 'interval_seconds' => 123\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/tweet_filter/update_rule" payload := strings.NewReader("{\n \"rule_id\": \"\",\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/oapi/tweet_filter/update_rule") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"rule_id\": \"\",\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/tweet_filter/update_rule") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"rule_id\": \"\",\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}" response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "" } { "error": 123, "message": "" } POST / oapi / tweet\_filter / update\_rule Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/oapi/tweet_filter/update_rule \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "rule_id": "", "tag": "", "value": "", "interval_seconds": 123 } ' import requests url = "https://api.twitterapi.io/oapi/tweet_filter/update_rule" payload = { "rule_id": "", "tag": "", "value": "", "interval_seconds": 123 } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({rule_id: '', tag: '', value: '', interval_seconds: 123}) }; fetch('https://api.twitterapi.io/oapi/tweet_filter/update_rule', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/tweet_filter/update_rule",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'rule_id' => '',\ 'tag' => '',\ 'value' => '',\ 'interval_seconds' => 123\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/tweet_filter/update_rule" payload := strings.NewReader("{\n \"rule_id\": \"\",\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/oapi/tweet_filter/update_rule") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"rule_id\": \"\",\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/tweet_filter/update_rule") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"rule_id\": \"\",\n \"tag\": \"\",\n \"value\": \"\",\n \"interval_seconds\": 123\n}" response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#body-rule-id) rule\_id string required ID of the rule to update.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#body-tag) tag string required Custom tag to identify the rule.Must be set.Max length is 255 [​](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#body-value) value string required Rule to filter tweets.eg "from:elonmusk OR from:kaitoeasyapi".Must be set.Max length is 255 [​](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#body-interval-seconds) interval\_seconds number required Interval to check tweets.Must be set.Min value is 0.1.Max value is 86400 () [​](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#body-is-effect) is\_effect enum Whether the rule is effective.Must be set.1 means effective, 0 means not effective.Default value is 0 Available options: `0`, `1` #### Response 200 application/json Tweet filter rule update response [​](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/update_webhook_rule#response-msg) msg string required Message of the request.error message --- # Unfollow User - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/unfollow_user_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/unfollow_user_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "user_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/unfollow_user_v2" payload = { "login_cookies": "", "user_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', user_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/unfollow_user_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/unfollow_user_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'user_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/unfollow_user_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/unfollow_user_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/unfollow_user_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / unfollow\_user\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/unfollow_user_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "user_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/unfollow_user_v2" payload = { "login_cookies": "", "user_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', user_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/unfollow_user_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/unfollow_user_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'user_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/unfollow_user_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/unfollow_user_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/unfollow_user_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/unfollow_user_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/unfollow_user_v2#body-login-cookies) login\_cookies string required The login cookies of the user.You can get the login\_cookie from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/unfollow_user_v2#body-user-id) user\_id string required The id of the user to unfollow.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/unfollow_user_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/unfollow_user_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/unfollow_user_v2#response-msg) msg string Message of the request.error message --- # Get List Members - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/list/members \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/list/members" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/list/members', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/list/members",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/list/members" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/list/members") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/list/members") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "members": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / list / members Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/list/members \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/list/members" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/list/members', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/list/members",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/list/members" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/list/members") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/list/members") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "members": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#parameter-list-id) list\_id string required id of the list [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#parameter-cursor) cursor string cursor of the page #### Response 200 application/json List members response [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#response-members) members object\[\] Members of the list Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#response-has-next-page) has\_next\_page boolean Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#response-status) status enum Status of the request: success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_members#response-msg) msg string Message of the request, error message if status is error --- # Follow User - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/follow_user_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/follow_user_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "user_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/follow_user_v2" payload = { "login_cookies": "", "user_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', user_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/follow_user_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/follow_user_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'user_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/follow_user_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/follow_user_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/follow_user_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / follow\_user\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/follow_user_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "user_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/follow_user_v2" payload = { "login_cookies": "", "user_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', user_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/follow_user_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/follow_user_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'user_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/follow_user_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/follow_user_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/follow_user_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/follow_user_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/follow_user_v2#body-login-cookies) login\_cookies string required The login cookies of the user.You can get the login\_cookie from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/follow_user_v2#body-user-id) user\_id string required The id of the user to follow.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/follow_user_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/follow_user_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/follow_user_v2#response-msg) msg string Message of the request.error message --- # Get User Profile About - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_about#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user_about \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user_about" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user_about', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user_about",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user_about" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user_about") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user_about") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "data": { "id": "", "name": "", "userName": "", "createdAt": "", "isBlueVerified": true, "protected": true, "affiliates_highlighted_label": { "label": { "badge": { "url": "" }, "description": "", "url": { "url": "", "urlType": "" }, "userLabelDisplayType": "", "userLabelType": "" } }, "about_profile": { "account_based_in": "", "location_accurate": true, "learn_more_url": "", "affiliate_username": "", "source": "", "username_changes": { "count": "" } }, "identity_profile_labels_highlighted_label": { "label": { "description": "", "badge": { "url": "" }, "url": { "url": "", "urlType": "" }, "userLabelDisplayType": "", "userLabelType": "" } } }, "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / user\_about Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user_about \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user_about" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user_about', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user_about",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user_about" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user_about") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user_about") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "data": { "id": "", "name": "", "userName": "", "createdAt": "", "isBlueVerified": true, "protected": true, "affiliates_highlighted_label": { "label": { "badge": { "url": "" }, "description": "", "url": { "url": "", "urlType": "" }, "userLabelDisplayType": "", "userLabelType": "" } }, "about_profile": { "account_based_in": "", "location_accurate": true, "learn_more_url": "", "affiliate_username": "", "source": "", "username_changes": { "count": "" } }, "identity_profile_labels_highlighted_label": { "label": { "description": "", "badge": { "url": "" }, "url": { "url": "", "urlType": "" }, "userLabelDisplayType": "", "userLabelType": "" } } }, "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_about#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_about#parameter-user-name) userName string The screen name of the user #### Response 200 application/json User info [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_about#response-data) data object Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_about#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_about#response-msg) msg string Message of the request.error message --- # Check Follow Relationship - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/check_follow_relationship#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/check_follow_relationship \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/check_follow_relationship" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/check_follow_relationship', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/check_follow_relationship",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/check_follow_relationship" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/check_follow_relationship") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/check_follow_relationship") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "data": { "following": true, "followed_by": true }, "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / user / check\_follow\_relationship Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/check_follow_relationship \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/check_follow_relationship" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/check_follow_relationship', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/check_follow_relationship",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/check_follow_relationship" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/check_follow_relationship") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/check_follow_relationship") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "data": { "following": true, "followed_by": true }, "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/check_follow_relationship#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/check_follow_relationship#parameter-source-user-name) source\_user\_name string required screen name of the source user [​](https://docs.twitterapi.io/api-reference/endpoint/check_follow_relationship#parameter-target-user-name) target\_user\_name string screen name of the target user #### Response 200 application/json Check follow relationship response [​](https://docs.twitterapi.io/api-reference/endpoint/check_follow_relationship#response-data) data object Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/check_follow_relationship#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/check_follow_relationship#response-message) message string Message of the request.error message --- # Update Avatar - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/update_avatar_v2#content-area) cURL cURL curl --request PATCH \ --url https://api.twitterapi.io/twitter/update_avatar_v2 \ --header 'Content-Type: multipart/form-data' \ --header 'X-API-Key: ' \ --form file='@example-file' \ --form 'proxy=' \ --form 'login_cookies=' import requests url = "https://api.twitterapi.io/twitter/update_avatar_v2" files = { "file": ("example-file", open("example-file", "rb")) } payload = { "proxy": "", "login_cookies": "" } headers = {"X-API-Key": ""} response = requests.patch(url, data=payload, files=files, headers=headers) print(response.text) const form = new FormData(); form.append('file', ''); form.append('proxy', ''); form.append('login_cookies', ''); const options = {method: 'PATCH', headers: {'X-API-Key': ''}}; options.body = form; fetch('https://api.twitterapi.io/twitter/update_avatar_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/update_avatar_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "PATCH",\ CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--",\ CURLOPT_HTTPHEADER => [\ "Content-Type: multipart/form-data",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/update_avatar_v2" payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--") req, _ := http.NewRequest("PATCH", url, payload) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.patch("https://api.twitterapi.io/twitter/update_avatar_v2") .header("X-API-Key", "") .body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/update_avatar_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Patch.new(url) request["X-API-Key"] = '' request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } PATCH / twitter / update\_avatar\_v2 Try it cURL cURL curl --request PATCH \ --url https://api.twitterapi.io/twitter/update_avatar_v2 \ --header 'Content-Type: multipart/form-data' \ --header 'X-API-Key: ' \ --form file='@example-file' \ --form 'proxy=' \ --form 'login_cookies=' import requests url = "https://api.twitterapi.io/twitter/update_avatar_v2" files = { "file": ("example-file", open("example-file", "rb")) } payload = { "proxy": "", "login_cookies": "" } headers = {"X-API-Key": ""} response = requests.patch(url, data=payload, files=files, headers=headers) print(response.text) const form = new FormData(); form.append('file', ''); form.append('proxy', ''); form.append('login_cookies', ''); const options = {method: 'PATCH', headers: {'X-API-Key': ''}}; options.body = form; fetch('https://api.twitterapi.io/twitter/update_avatar_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/update_avatar_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "PATCH",\ CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--",\ CURLOPT_HTTPHEADER => [\ "Content-Type: multipart/form-data",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/update_avatar_v2" payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--") req, _ := http.NewRequest("PATCH", url, payload) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.patch("https://api.twitterapi.io/twitter/update_avatar_v2") .header("X-API-Key", "") .body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/update_avatar_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Patch.new(url) request["X-API-Key"] = '' request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001--" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/update_avatar_v2#authorization-x-api-key) X-API-Key string header required #### Body multipart/form-data [​](https://docs.twitterapi.io/api-reference/endpoint/update_avatar_v2#body-file) file file required The avatar image file to upload. Recommended size: 400x400 pixels. Maximum file size: 700KB. Supported formats: JPG, PNG [​](https://docs.twitterapi.io/api-reference/endpoint/update_avatar_v2#body-proxy) proxy string required The proxy to use. Please use high-quality residential proxies and avoid free proxies. Required. Example: http://username:password@ip:port \[blocked\] [​](https://docs.twitterapi.io/api-reference/endpoint/update_avatar_v2#body-login-cookies) login\_cookies string required The login cookies of the user. You can get the login\_cookie from /twitter/user\_login\_v2. Required #### Response 200 application/json Update avatar response [​](https://docs.twitterapi.io/api-reference/endpoint/update_avatar_v2#response-status) status string Status of the request. success or error [​](https://docs.twitterapi.io/api-reference/endpoint/update_avatar_v2#response-message) message string Message of the request. e.g. Avatar updated successfully --- # Join Community v2 - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/join_community_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "community_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/join_community_v2" payload = { "login_cookies": "", "community_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', community_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/join_community_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/join_community_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'community_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/join_community_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/join_community_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/join_community_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "community_id": "", "community_name": "", "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / join\_community\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/join_community_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "community_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/join_community_v2" payload = { "login_cookies": "", "community_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', community_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/join_community_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/join_community_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'community_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/join_community_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/join_community_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/join_community_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "community_id": "", "community_name": "", "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#body-login-cookies) login\_cookies string required The login cookie of the user.You can get the login\_cookies from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#body-community-id) community\_id string required The id of the community to join.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#response-community-id) community\_id string The id of the joined community. [​](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#response-community-name) community\_name string The name of the joined community. [​](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/join_community_v2#response-msg) msg string Message of the request.error message --- # Log in - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/user_login_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "user_name": "", "email": "", "password": "", "proxy": "", "totp_secret": "" } ' import requests url = "https://api.twitterapi.io/twitter/user_login_v2" payload = { "user_name": "", "email": "", "password": "", "proxy": "", "totp_secret": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ user_name: '', email: '', password: '', proxy: '', totp_secret: '' }) }; fetch('https://api.twitterapi.io/twitter/user_login_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user_login_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'user_name' => '',\ 'email' => '',\ 'password' => '',\ 'proxy' => '',\ 'totp_secret' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user_login_v2" payload := strings.NewReader("{\n \"user_name\": \"\",\n \"email\": \"\",\n \"password\": \"\",\n \"proxy\": \"\",\n \"totp_secret\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/user_login_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"user_name\": \"\",\n \"email\": \"\",\n \"password\": \"\",\n \"proxy\": \"\",\n \"totp_secret\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user_login_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"user_name\": \"\",\n \"email\": \"\",\n \"password\": \"\",\n \"proxy\": \"\",\n \"totp_secret\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "login_cookie": "", "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / user\_login\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/user_login_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "user_name": "", "email": "", "password": "", "proxy": "", "totp_secret": "" } ' import requests url = "https://api.twitterapi.io/twitter/user_login_v2" payload = { "user_name": "", "email": "", "password": "", "proxy": "", "totp_secret": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ user_name: '', email: '', password: '', proxy: '', totp_secret: '' }) }; fetch('https://api.twitterapi.io/twitter/user_login_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user_login_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'user_name' => '',\ 'email' => '',\ 'password' => '',\ 'proxy' => '',\ 'totp_secret' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user_login_v2" payload := strings.NewReader("{\n \"user_name\": \"\",\n \"email\": \"\",\n \"password\": \"\",\n \"proxy\": \"\",\n \"totp_secret\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/user_login_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"user_name\": \"\",\n \"email\": \"\",\n \"password\": \"\",\n \"proxy\": \"\",\n \"totp_secret\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user_login_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"user_name\": \"\",\n \"email\": \"\",\n \"password\": \"\",\n \"proxy\": \"\",\n \"totp_secret\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "login_cookie": "", "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#body-user-name) user\_name string required User name.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#body-email) email string required Email.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#body-password) password string required The password of the user [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#body-totp-secret) totp\_secret string TOTP/2FA secret (base32 seed, not a 6-digit code). Optional, but strongly recommended — accounts without 2FA may yield a login\_cookie that gets flagged and can't post. To obtain: on X, enable 2FA, choose "can't scan the QR code", and X shows a 10+ character string — that's the TOTP secret. #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#response-login-cookie) login\_cookie string The login cookie of the user.Use this cookie to post tweets, etc.You can only call v2 APIs with this cookie.If your account is in good standing and you're using residential proxies, the cookies will generally remain valid indefinitely. [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/user_login_v2#response-msg) msg string Message of the request.error message --- # Retweet Tweet - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/retweet_tweet_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/retweet_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/retweet_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/retweet_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/retweet_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/retweet_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/retweet_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/retweet_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / retweet\_tweet\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/retweet_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/retweet_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/retweet_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/retweet_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/retweet_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/retweet_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/retweet_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/retweet_tweet_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/retweet_tweet_v2#body-login-cookies) login\_cookies string required The login cookies of the user.You can get the login\_cookie from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/retweet_tweet_v2#body-tweet-id) tweet\_id string required The id of the tweet to retweet.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/retweet_tweet_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/retweet_tweet_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/retweet_tweet_v2#response-msg) msg string Message of the request.error message --- # Get Trends - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_trends#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/trends \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/trends" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/trends', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/trends",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/trends" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/trends") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/trends") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "trends": [\ {\ "name": "",\ "target": {\ "query": ""\ },\ "rank": 123,\ "meta_description": ""\ }\ ], "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / trends Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/trends \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/trends" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/trends', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/trends",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/trends" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/trends") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/trends") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "trends": [\ {\ "name": "",\ "target": {\ "query": ""\ },\ "rank": 123,\ "meta_description": ""\ }\ ], "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_trends#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_trends#parameter-woeid) woeid integer required The woeid of the location. eg. 2418046. Woeid list: [https://gist.github.com/tedyblood/5bb5a9f78314cc1f478b3dd7cde790b9](https://gist.github.com/tedyblood/5bb5a9f78314cc1f478b3dd7cde790b9) [​](https://docs.twitterapi.io/api-reference/endpoint/get_trends#parameter-count) count integer The number of trends to return. Default is 30. Min is 30. #### Response 200 application/json Trends [​](https://docs.twitterapi.io/api-reference/endpoint/get_trends#response-trends) trends object\[\] Array of trends Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_trends#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_trends#response-msg) msg string Message of the request.error message --- # Get Article - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_article#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/article \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/article" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/article', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/article",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/article" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/article") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/article") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "article": { "author": { "type": "user", "userName": "", "url": "", "id": "", "name": "", "isBlueVerified": true, "verifiedType": "", "profilePicture": "", "coverPicture": "", "description": "", "location": "", "followers": 123, "following": 123, "canDm": true, "createdAt": "", "favouritesCount": 123, "hasCustomTimelines": true, "isTranslator": true, "mediaCount": 123, "statusesCount": 123, "withheldInCountries": [\ ""\ ], "affiliatesHighlightedLabel": {}, "possiblySensitive": true, "pinnedTweetIds": [\ ""\ ], "isAutomated": true, "automatedBy": "", "unavailable": true, "message": "", "unavailableReason": "", "profile_bio": { "description": "", "entities": { "description": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] }, "url": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] } } } }, "replyCount": 123, "likeCount": 123, "quoteCount": 123, "viewCount": 123, "createdAt": "", "title": "", "preview_text": "", "cover_media_img_url": "", "contents": [\ {\ "type": "unstyled",\ "text": "",\ "url": "",\ "previewUrl": "",\ "width": 123,\ "height": 123,\ "inlineStyleRanges": [\ {\ "offset": 123,\ "length": 123,\ "style": "Bold"\ }\ ]\ }\ ] }, "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / article Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/article \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/article" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/article', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/article",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/article" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/article") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/article") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "article": { "author": { "type": "user", "userName": "", "url": "", "id": "", "name": "", "isBlueVerified": true, "verifiedType": "", "profilePicture": "", "coverPicture": "", "description": "", "location": "", "followers": 123, "following": 123, "canDm": true, "createdAt": "", "favouritesCount": 123, "hasCustomTimelines": true, "isTranslator": true, "mediaCount": 123, "statusesCount": 123, "withheldInCountries": [\ ""\ ], "affiliatesHighlightedLabel": {}, "possiblySensitive": true, "pinnedTweetIds": [\ ""\ ], "isAutomated": true, "automatedBy": "", "unavailable": true, "message": "", "unavailableReason": "", "profile_bio": { "description": "", "entities": { "description": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] }, "url": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] } } } }, "replyCount": 123, "likeCount": 123, "quoteCount": 123, "viewCount": 123, "createdAt": "", "title": "", "preview_text": "", "cover_media_img_url": "", "contents": [\ {\ "type": "unstyled",\ "text": "",\ "url": "",\ "previewUrl": "",\ "width": 123,\ "height": 123,\ "inlineStyleRanges": [\ {\ "offset": 123,\ "length": 123,\ "style": "Bold"\ }\ ]\ }\ ] }, "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_article#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_article#parameter-tweet-id) tweet\_id string required The tweet id of the article.eg. 1905545699552375179 #### Response 200 application/json Article response [​](https://docs.twitterapi.io/api-reference/endpoint/get_article#response-article) article object Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_article#response-status) status enum Status of the request.success or error Available options: `success`, `failed` [​](https://docs.twitterapi.io/api-reference/endpoint/get_article#response-message) message string Message of the request.error message --- # Get Community Moderators - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/moderators \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/moderators" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/moderators', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/moderators",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/moderators" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/moderators") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/moderators") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "members": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / community / moderators Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/moderators \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/moderators" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/moderators', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/moderators",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/moderators" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/moderators") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/moderators") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "members": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#parameter-community-id) community\_id string required id of the community [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#parameter-cursor) cursor string cursor of the page #### Response 200 application/json Community moderator response [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#response-members) members object\[\] Moderators of the community Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#response-has-next-page) has\_next\_page boolean Whether there is a next page [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#response-next-cursor) next\_cursor string Cursor of the next page [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#response-status) status enum Status of the request: success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_moderators#response-msg) msg string Message of the request, error message if status is error --- # Get My Account Info - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_my_info#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/oapi/my/info \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/oapi/my/info" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/oapi/my/info', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/my/info",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/my/info" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/oapi/my/info") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/my/info") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "recharge_credits": 123 } { "error": 123, "message": "" } GET / oapi / my / info Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/oapi/my/info \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/oapi/my/info" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/oapi/my/info', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/my/info",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/my/info" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/oapi/my/info") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/my/info") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "recharge_credits": 123 } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_my_info#authorization-x-api-key) X-API-Key string header required #### Response 200 application/json My info response [​](https://docs.twitterapi.io/api-reference/endpoint/get_my_info#response-recharge-credits) recharge\_credits integer Remaining credits --- # Get User Followers - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/followers \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/followers" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/followers', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/followers",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/followers" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/followers") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/followers") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "followers": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / user / followers Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/followers \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/followers" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/followers', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/followers",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/followers" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/followers") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/followers") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "followers": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers#parameter-user-name) userName string required screen name of the user [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers#parameter-page-size) pageSize integer default:200 The number of followings to return per page. Default is 200.min 20,max 200 #### Response 200 application/json User info [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers#response-followers) followers object\[\] Array of followers Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers#response-message) message string Message of the request.error message --- # Search Tweets From All Community - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_all_community_tweets#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/get_tweets_from_all_community \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/get_tweets_from_all_community" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/get_tweets_from_all_community', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/get_tweets_from_all_community",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/get_tweets_from_all_community" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/get_tweets_from_all_community") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/get_tweets_from_all_community") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "" } { "error": 123, "message": "" } GET / twitter / community / get\_tweets\_from\_all\_community Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/get_tweets_from_all_community \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/get_tweets_from_all_community" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/get_tweets_from_all_community', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/get_tweets_from_all_community",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/get_tweets_from_all_community" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/get_tweets_from_all_community") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/get_tweets_from_all_community") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_all_community_tweets#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_all_community_tweets#parameter-query) query string required The query to search for.eg. only support search by keyword. [​](https://docs.twitterapi.io/api-reference/endpoint/get_all_community_tweets#parameter-query-type) queryType enum default:Latest required The query type to search for.eg. "Latest" OR "Top" Available options: `Latest`, `Top` [​](https://docs.twitterapi.io/api-reference/endpoint/get_all_community_tweets#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweets response [​](https://docs.twitterapi.io/api-reference/endpoint/get_all_community_tweets#response-tweets) tweets object\[\] required Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_all_community_tweets#response-has-next-page) has\_next\_page boolean required Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/get_all_community_tweets#response-next-cursor) next\_cursor string required Cursor for fetching the next page of results --- # Get Space Detail - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_space_detail#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/spaces/detail \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/spaces/detail" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/spaces/detail', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/spaces/detail",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/spaces/detail" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/spaces/detail") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/spaces/detail") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "data": { "id": "", "title": "", "state": "", "created_at": "", "scheduled_start": "", "updated_at": "", "media_key": "", "is_subscribed": true, "settings": { "conversation_controls": 123, "disallow_join": true, "is_employee_only": true, "is_locked": true, "is_muted": true, "is_space_available_for_clipping": true, "is_space_available_for_replay": true, "no_incognito": true, "narrow_cast_space_type": 123, "max_guest_sessions": 123, "max_admin_capacity": 123 }, "stats": { "total_replay_watched": 123, "total_live_listeners": 123, "total_participants": 123 }, "creator": { "id": "", "name": "", "userName": "", "location": "", "url": "", "description": "", "protected": true, "isVerified": true, "isBlueVerified": true, "verifiedType": "", "followers": 123, "following": 123, "favouritesCount": 123, "statusesCount": 123, "mediaCount": 123, "createdAt": "", "coverPicture": "", "profilePicture": "", "canDm": true, "affiliatesHighlightedLabel": {}, "isAutomated": true, "automatedBy": "" }, "participants": { "admins": [\ {\ "id": "",\ "name": "",\ "userName": "",\ "location": "",\ "url": "",\ "description": "",\ "protected": true,\ "isVerified": true,\ "isBlueVerified": true,\ "verifiedType": "",\ "followers": 123,\ "following": 123,\ "favouritesCount": 123,\ "statusesCount": 123,\ "mediaCount": 123,\ "createdAt": "",\ "coverPicture": "",\ "profilePicture": "",\ "canDm": true,\ "affiliatesHighlightedLabel": {},\ "isAutomated": true,\ "automatedBy": "",\ "participant_info": {\ "periscope_user_id": "",\ "start_time": "",\ "is_muted_by_admin": true,\ "is_muted_by_guest": true\ }\ }\ ], "speakers": [\ {\ "id": "",\ "name": "",\ "userName": ""\ }\ ], "listeners": [\ {\ "id": "",\ "name": ""\ }\ ] } }, "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / spaces / detail Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/spaces/detail \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/spaces/detail" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/spaces/detail', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/spaces/detail",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/spaces/detail" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/spaces/detail") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/spaces/detail") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "data": { "id": "", "title": "", "state": "", "created_at": "", "scheduled_start": "", "updated_at": "", "media_key": "", "is_subscribed": true, "settings": { "conversation_controls": 123, "disallow_join": true, "is_employee_only": true, "is_locked": true, "is_muted": true, "is_space_available_for_clipping": true, "is_space_available_for_replay": true, "no_incognito": true, "narrow_cast_space_type": 123, "max_guest_sessions": 123, "max_admin_capacity": 123 }, "stats": { "total_replay_watched": 123, "total_live_listeners": 123, "total_participants": 123 }, "creator": { "id": "", "name": "", "userName": "", "location": "", "url": "", "description": "", "protected": true, "isVerified": true, "isBlueVerified": true, "verifiedType": "", "followers": 123, "following": 123, "favouritesCount": 123, "statusesCount": 123, "mediaCount": 123, "createdAt": "", "coverPicture": "", "profilePicture": "", "canDm": true, "affiliatesHighlightedLabel": {}, "isAutomated": true, "automatedBy": "" }, "participants": { "admins": [\ {\ "id": "",\ "name": "",\ "userName": "",\ "location": "",\ "url": "",\ "description": "",\ "protected": true,\ "isVerified": true,\ "isBlueVerified": true,\ "verifiedType": "",\ "followers": 123,\ "following": 123,\ "favouritesCount": 123,\ "statusesCount": 123,\ "mediaCount": 123,\ "createdAt": "",\ "coverPicture": "",\ "profilePicture": "",\ "canDm": true,\ "affiliatesHighlightedLabel": {},\ "isAutomated": true,\ "automatedBy": "",\ "participant_info": {\ "periscope_user_id": "",\ "start_time": "",\ "is_muted_by_admin": true,\ "is_muted_by_guest": true\ }\ }\ ], "speakers": [\ {\ "id": "",\ "name": "",\ "userName": ""\ }\ ], "listeners": [\ {\ "id": "",\ "name": ""\ }\ ] } }, "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_space_detail#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_space_detail#parameter-space-id) space\_id string The id of the space #### Response 200 application/json Spaces detail [​](https://docs.twitterapi.io/api-reference/endpoint/get_space_detail#response-data) data object Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_space_detail#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_space_detail#response-msg) msg string Message of the request.error message --- # Get Tweet Replies - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/replies \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/replies" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/replies', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/replies",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/replies" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/replies") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/replies") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "replies": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / tweet / replies Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/replies \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/replies" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/replies', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/replies",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/replies" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/replies") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/replies") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "replies": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#parameter-tweet-id) tweetId string required The tweet ID to get. Must be an original tweet (not a reply to another tweet) and should be the first tweet in a thread.. eg. 1846987139428634858 [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#parameter-since-time) sinceTime integer On or after a specified unix timestamp in seconds. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#parameter-until-time) untilTime integer Before a specified unix timestamp in seconds. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweet replies response [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#response-replies) replies object\[\] Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#response-has-next-page) has\_next\_page boolean Indicates if there are more results available. If true, use next\_cursor to fetch the next page. Warning: Due to Twitter API inconsistency, has\_more might return true even when no additional data exists. In such cases, subsequent requests will return empty results - this is a known platform limitation. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_reply#response-message) message string Message of the request.error message --- # Get User Last Tweets - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/last_tweets \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/last_tweets" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/last_tweets', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/last_tweets",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/last_tweets" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/last_tweets") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/last_tweets") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / user / last\_tweets Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/last_tweets \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/last_tweets" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/last_tweets', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/last_tweets",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/last_tweets" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/last_tweets") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/last_tweets") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#parameter-user-id) userId string user id of the user.userId is recommended, could be more stable and faster than userName.userId and userName are mutually exclusive. If both are provided, userId will be used. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#parameter-user-name) userName string screen name of the user.userId and userName are mutually exclusive. If both are provided, userId will be used. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#parameter-include-replies) includeReplies boolean default:false Whether to include replies in the results. Default is False. #### Response 200 application/json Tweets response [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#response-tweets) tweets object\[\] required Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#response-has-next-page) has\_next\_page boolean required Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#response-next-cursor) next\_cursor string required Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_last_tweets#response-message) message string required Message of the request.error message --- # Get List Followers - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/list/followers \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/list/followers" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/list/followers', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/list/followers",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/list/followers" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/list/followers") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/list/followers") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "followers": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / list / followers Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/list/followers \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/list/followers" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/list/followers', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/list/followers",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/list/followers" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/list/followers") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/list/followers") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "followers": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#parameter-list-id) list\_id string required id of the list [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#parameter-cursor) cursor string cursor of the page #### Response 200 application/json List followers of the list [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#response-followers) followers object\[\] Members of the list Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#response-has-next-page) has\_next\_page boolean Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#response-status) status enum Status of the request: success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_list_followers#response-msg) msg string Message of the request, error message if status is error --- # Get ALL test Webhook/Websocket Tweet Filter Rules - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_webhook_rules#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/oapi/tweet_filter/get_rules \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/oapi/tweet_filter/get_rules" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/oapi/tweet_filter/get_rules', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/tweet_filter/get_rules",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/tweet_filter/get_rules" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/oapi/tweet_filter/get_rules") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/tweet_filter/get_rules") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "rules": [\ {\ "rule_id": "",\ "tag": "",\ "value": "",\ "interval_seconds": 123\ }\ ], "status": "success", "msg": "" } { "error": 123, "message": "" } GET / oapi / tweet\_filter / get\_rules Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/oapi/tweet_filter/get_rules \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/oapi/tweet_filter/get_rules" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/oapi/tweet_filter/get_rules', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/tweet_filter/get_rules",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/tweet_filter/get_rules" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/oapi/tweet_filter/get_rules") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/tweet_filter/get_rules") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "rules": [\ {\ "rule_id": "",\ "tag": "",\ "value": "",\ "interval_seconds": 123\ }\ ], "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_webhook_rules#authorization-x-api-key) X-API-Key string header required #### Response 200 application/json Tweet filter rules response [​](https://docs.twitterapi.io/api-reference/endpoint/get_webhook_rules#response-rules) rules object\[\] required Array of tweet filter rules Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_webhook_rules#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_webhook_rules#response-msg) msg string Message of the request.error message --- # Leave Community V2 - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/leave_community_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "community_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/leave_community_v2" payload = { "login_cookies": "", "community_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', community_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/leave_community_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/leave_community_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'community_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/leave_community_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/leave_community_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/leave_community_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "community_id": "", "community_name": "", "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / leave\_community\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/leave_community_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "community_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/leave_community_v2" payload = { "login_cookies": "", "community_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', community_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/leave_community_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/leave_community_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'community_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/leave_community_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/leave_community_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/leave_community_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"community_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "community_id": "", "community_name": "", "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#body-login-cookies) login\_cookies string required The login cookie of the user.You can get the login\_cookies from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#body-community-id) community\_id string required The id of the community to leave.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#response-community-id) community\_id string The id of the joined community. [​](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#response-community-name) community\_name string The name of the joined community. [​](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/leave_community_v2#response-msg) msg string Message of the request.error message --- # Like Tweet - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/like_tweet_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/like_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/like_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/like_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/like_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/like_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/like_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/like_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / like\_tweet\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/like_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/like_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/like_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/like_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/like_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/like_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/like_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/like_tweet_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/like_tweet_v2#body-login-cookies) login\_cookies string required The login cookies of the user.You can get the login\_cookie from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/like_tweet_v2#body-tweet-id) tweet\_id string required The id of the tweet to like.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/like_tweet_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/like_tweet_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/like_tweet_v2#response-msg) msg string Message of the request.error message --- # Unbookmark Tweet - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/unbookmark_tweet_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/unbookmark_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/unbookmark_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/unbookmark_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/unbookmark_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/unbookmark_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/unbookmark_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/unbookmark_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } POST / twitter / unbookmark\_tweet\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/unbookmark_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/unbookmark_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/unbookmark_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/unbookmark_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/unbookmark_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/unbookmark_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/unbookmark_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/unbookmark_tweet_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/unbookmark_tweet_v2#body-login-cookies) login\_cookies string required The login cookies of the user. You can get the login\_cookie from /twitter/user\_login\_v2. Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/unbookmark_tweet_v2#body-tweet-id) tweet\_id string required The id of the tweet to unbookmark. Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/unbookmark_tweet_v2#body-proxy) proxy string required The proxy to use. Please use high-quality residential proxies and avoid free proxies. Required. Example: http://username:password@ip:port \[blocked\] #### Response 200 application/json Unbookmark response [​](https://docs.twitterapi.io/api-reference/endpoint/unbookmark_tweet_v2#response-status) status string Status of the request. success or error [​](https://docs.twitterapi.io/api-reference/endpoint/unbookmark_tweet_v2#response-message) message string Message of the request. error message --- # Get Users to Monitor Tweet - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_to_monitor_tweet#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "", "data": [\ {\ "id_for_user": "",\ "x_user_id": 123,\ "x_user_name": "",\ "x_user_screen_name": "",\ "is_monitor_tweet": 123,\ "is_monitor_profile": 123,\ "monitor_tweet_config_status": 123,\ "monitor_profile_config_status": 123,\ "created_at": ""\ }\ ] } { "error": 123, "message": "" } GET / oapi / x\_user\_stream / get\_user\_to\_monitor\_tweet Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/oapi/x_user_stream/get_user_to_monitor_tweet") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "status": "success", "msg": "", "data": [\ {\ "id_for_user": "",\ "x_user_id": 123,\ "x_user_name": "",\ "x_user_screen_name": "",\ "is_monitor_tweet": 123,\ "is_monitor_profile": 123,\ "monitor_tweet_config_status": 123,\ "monitor_profile_config_status": 123,\ "created_at": ""\ }\ ] } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_to_monitor_tweet#authorization-x-api-key) X-API-Key string header required #### Response 200 application/json List of monitored users [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_to_monitor_tweet#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_to_monitor_tweet#response-msg) msg string required Message of the request [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_to_monitor_tweet#response-data) data object\[\] List of monitored users Show child attributes --- # Update Profile - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#content-area) cURL cURL curl --request PATCH \ --url https://api.twitterapi.io/twitter/update_profile_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "proxy": "", "name": "", "description": "", "location": "", "url": "" } ' import requests url = "https://api.twitterapi.io/twitter/update_profile_v2" payload = { "login_cookies": "", "proxy": "", "name": "", "description": "", "location": "", "url": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.patch(url, json=payload, headers=headers) print(response.text) const options = { method: 'PATCH', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', proxy: '', name: '', description: '', location: '', url: '' }) }; fetch('https://api.twitterapi.io/twitter/update_profile_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/update_profile_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "PATCH",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'proxy' => '',\ 'name' => '',\ 'description' => '',\ 'location' => '',\ 'url' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/update_profile_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"location\": \"\",\n \"url\": \"\"\n}") req, _ := http.NewRequest("PATCH", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.patch("https://api.twitterapi.io/twitter/update_profile_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"location\": \"\",\n \"url\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/update_profile_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Patch.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"location\": \"\",\n \"url\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } PATCH / twitter / update\_profile\_v2 Try it cURL cURL curl --request PATCH \ --url https://api.twitterapi.io/twitter/update_profile_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "proxy": "", "name": "", "description": "", "location": "", "url": "" } ' import requests url = "https://api.twitterapi.io/twitter/update_profile_v2" payload = { "login_cookies": "", "proxy": "", "name": "", "description": "", "location": "", "url": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.patch(url, json=payload, headers=headers) print(response.text) const options = { method: 'PATCH', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', proxy: '', name: '', description: '', location: '', url: '' }) }; fetch('https://api.twitterapi.io/twitter/update_profile_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/update_profile_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "PATCH",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'proxy' => '',\ 'name' => '',\ 'description' => '',\ 'location' => '',\ 'url' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/update_profile_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"location\": \"\",\n \"url\": \"\"\n}") req, _ := http.NewRequest("PATCH", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.patch("https://api.twitterapi.io/twitter/update_profile_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"location\": \"\",\n \"url\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/update_profile_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Patch.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"proxy\": \"\",\n \"name\": \"\",\n \"description\": \"\",\n \"location\": \"\",\n \"url\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#body-login-cookies) login\_cookies string required Base64 encoded login cookies of the user. You can get the login\_cookie from /twitter/user\_login\_v2. Required [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#body-proxy) proxy string required The proxy to use. Please use high-quality residential proxies and avoid free proxies. Required. Example: http://username:password@ip:port \[blocked\] [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#body-name) name string Display name (maximum 50 characters) [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#body-description) description string Bio/description (maximum 160 characters) [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#body-location) location string Location (maximum 30 characters) [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#body-url) url string Website URL #### Response 200 application/json Update profile response [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#response-status) status string Status of the request. success or error [​](https://docs.twitterapi.io/api-reference/endpoint/update_profile_v2#response-message) message string Message of the request. e.g. Profile updated successfully --- # Upload media - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/upload_media_v2 \ --header 'Content-Type: multipart/form-data' \ --header 'X-API-Key: ' \ --form file='@example-file' \ --form 'proxy=' \ --form 'login_cookies=' \ --form is_long_video=true import requests url = "https://api.twitterapi.io/twitter/upload_media_v2" files = { "file": ("example-file", open("example-file", "rb")) } payload = { "proxy": "", "login_cookies": "", "is_long_video": "true" } headers = {"X-API-Key": ""} response = requests.post(url, data=payload, files=files, headers=headers) print(response.text) const form = new FormData(); form.append('file', ''); form.append('proxy', ''); form.append('login_cookies', ''); form.append('is_long_video', 'true'); const options = {method: 'POST', headers: {'X-API-Key': ''}}; options.body = form; fetch('https://api.twitterapi.io/twitter/upload_media_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/upload_media_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_long_video\"\r\n\r\ntrue\r\n-----011000010111000001101001--",\ CURLOPT_HTTPHEADER => [\ "Content-Type: multipart/form-data",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/upload_media_v2" payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_long_video\"\r\n\r\ntrue\r\n-----011000010111000001101001--") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/upload_media_v2") .header("X-API-Key", "") .body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_long_video\"\r\n\r\ntrue\r\n-----011000010111000001101001--") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/upload_media_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_long_video\"\r\n\r\ntrue\r\n-----011000010111000001101001--" response = http.request(request) puts response.read_body 200 400 { "media_id": "", "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / upload\_media\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/upload_media_v2 \ --header 'Content-Type: multipart/form-data' \ --header 'X-API-Key: ' \ --form file='@example-file' \ --form 'proxy=' \ --form 'login_cookies=' \ --form is_long_video=true import requests url = "https://api.twitterapi.io/twitter/upload_media_v2" files = { "file": ("example-file", open("example-file", "rb")) } payload = { "proxy": "", "login_cookies": "", "is_long_video": "true" } headers = {"X-API-Key": ""} response = requests.post(url, data=payload, files=files, headers=headers) print(response.text) const form = new FormData(); form.append('file', ''); form.append('proxy', ''); form.append('login_cookies', ''); form.append('is_long_video', 'true'); const options = {method: 'POST', headers: {'X-API-Key': ''}}; options.body = form; fetch('https://api.twitterapi.io/twitter/upload_media_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/upload_media_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_long_video\"\r\n\r\ntrue\r\n-----011000010111000001101001--",\ CURLOPT_HTTPHEADER => [\ "Content-Type: multipart/form-data",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/upload_media_v2" payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_long_video\"\r\n\r\ntrue\r\n-----011000010111000001101001--") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/upload_media_v2") .header("X-API-Key", "") .body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_long_video\"\r\n\r\ntrue\r\n-----011000010111000001101001--") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/upload_media_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"proxy\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"login_cookies\"\r\n\r\n\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_long_video\"\r\n\r\ntrue\r\n-----011000010111000001101001--" response = http.request(request) puts response.read_body 200 400 { "media_id": "", "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#authorization-x-api-key) X-API-Key string header required #### Body multipart/form-data [​](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#body-file) file file required The media file to upload (image, video, etc.) [​](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies. Required. Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) [​](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#body-login-cookies) login\_cookies string required The login cookies of the user. You can get the login\_cookie from /twitter/user\_login\_v2. Optional for media upload, required for posting tweets [​](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#body-is-long-video) is\_long\_video boolean If this is True, videos longer than 2:20 can be uploaded.(Twitter Premium only) #### Response 200 application/json Upload media response [​](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#response-media-id) media\_id string The id of the uploaded media. [​](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/upload_media_v2#response-msg) msg string Message of the request.error message --- # Send DM V2 - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/send_dm_to_user \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "user_id": "", "text": "", "proxy": "", "media_id": "", "reply_to_message_id": "" } ' import requests url = "https://api.twitterapi.io/twitter/send_dm_to_user" payload = { "login_cookies": "", "user_id": "", "text": "", "proxy": "", "media_id": "", "reply_to_message_id": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', user_id: '', text: '', proxy: '', media_id: '', reply_to_message_id: '' }) }; fetch('https://api.twitterapi.io/twitter/send_dm_to_user', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/send_dm_to_user",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'user_id' => '',\ 'text' => '',\ 'proxy' => '',\ 'media_id' => '',\ 'reply_to_message_id' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/send_dm_to_user" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"text\": \"\",\n \"proxy\": \"\",\n \"media_id\": \"\",\n \"reply_to_message_id\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/send_dm_to_user") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"text\": \"\",\n \"proxy\": \"\",\n \"media_id\": \"\",\n \"reply_to_message_id\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/send_dm_to_user") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"text\": \"\",\n \"proxy\": \"\",\n \"media_id\": \"\",\n \"reply_to_message_id\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "message_id": "", "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / send\_dm\_to\_user Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/send_dm_to_user \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "user_id": "", "text": "", "proxy": "", "media_id": "", "reply_to_message_id": "" } ' import requests url = "https://api.twitterapi.io/twitter/send_dm_to_user" payload = { "login_cookies": "", "user_id": "", "text": "", "proxy": "", "media_id": "", "reply_to_message_id": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({ login_cookies: '', user_id: '', text: '', proxy: '', media_id: '', reply_to_message_id: '' }) }; fetch('https://api.twitterapi.io/twitter/send_dm_to_user', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/send_dm_to_user",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'user_id' => '',\ 'text' => '',\ 'proxy' => '',\ 'media_id' => '',\ 'reply_to_message_id' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/send_dm_to_user" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"text\": \"\",\n \"proxy\": \"\",\n \"media_id\": \"\",\n \"reply_to_message_id\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/send_dm_to_user") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"text\": \"\",\n \"proxy\": \"\",\n \"media_id\": \"\",\n \"reply_to_message_id\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/send_dm_to_user") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"user_id\": \"\",\n \"text\": \"\",\n \"proxy\": \"\",\n \"media_id\": \"\",\n \"reply_to_message_id\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "message_id": "", "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#body-login-cookies) login\_cookies string required The login cookie of the user.You can get the login\_cookies from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#body-user-id) user\_id string required The id of the user to send the direct message to.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#body-text) text string required The text of the direct message.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#body-media-id) media\_id string ID of a single media asset to attach. Optional. Obtain from /twitter/upload\_media\_v2. [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#body-reply-to-message-id) reply\_to\_message\_id string The id of the message to reply to.Optional #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#response-message-id) message\_id string The id of the sent direct message. [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/send_dm_v2#response-msg) msg string Message of the request.error message --- # Get User Verified Followers - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_verified_followers#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/verifiedFollowers \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/verifiedFollowers" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/verifiedFollowers', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/verifiedFollowers",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/verifiedFollowers" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/verifiedFollowers") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/verifiedFollowers") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "followers": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / user / verifiedFollowers Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/verifiedFollowers \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/verifiedFollowers" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/verifiedFollowers', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/verifiedFollowers",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/verifiedFollowers" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/verifiedFollowers") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/verifiedFollowers") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "followers": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_verified_followers#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_verified_followers#parameter-user-id) user\_id string required user\_id of the user [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_verified_followers#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json User info [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_verified_followers#response-followers) followers object\[\] Array of followers Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_verified_followers#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_verified_followers#response-message) message string Message of the request.error message --- # Unlike Tweet - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/unlike_tweet_v2#content-area) cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/unlike_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/unlike_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/unlike_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/unlike_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/unlike_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/unlike_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/unlike_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } POST / twitter / unlike\_tweet\_v2 Try it cURL cURL curl --request POST \ --url https://api.twitterapi.io/twitter/unlike_tweet_v2 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: ' \ --data ' { "login_cookies": "", "tweet_id": "", "proxy": "" } ' import requests url = "https://api.twitterapi.io/twitter/unlike_tweet_v2" payload = { "login_cookies": "", "tweet_id": "", "proxy": "" } headers = { "X-API-Key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text) const options = { method: 'POST', headers: {'X-API-Key': '', 'Content-Type': 'application/json'}, body: JSON.stringify({login_cookies: '', tweet_id: '', proxy: ''}) }; fetch('https://api.twitterapi.io/twitter/unlike_tweet_v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/unlike_tweet_v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "POST",\ CURLOPT_POSTFIELDS => json_encode([\ 'login_cookies' => '',\ 'tweet_id' => '',\ 'proxy' => ''\ ]),\ CURLOPT_HTTPHEADER => [\ "Content-Type: application/json",\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/unlike_tweet_v2" payload := strings.NewReader("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("X-API-Key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.post("https://api.twitterapi.io/twitter/unlike_tweet_v2") .header("X-API-Key", "") .header("Content-Type", "application/json") .body("{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/unlike_tweet_v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["X-API-Key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"login_cookies\": \"\",\n \"tweet_id\": \"\",\n \"proxy\": \"\"\n}" response = http.request(request) puts response.read_body 200 400 { "status": "", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/unlike_tweet_v2#authorization-x-api-key) X-API-Key string header required #### Body application/json [​](https://docs.twitterapi.io/api-reference/endpoint/unlike_tweet_v2#body-login-cookies) login\_cookies string required The login cookies of the user.You can get the login\_cookie from /twitter/user\_login\_v2.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/unlike_tweet_v2#body-tweet-id) tweet\_id string required The id of the tweet to unlike.Must be set [​](https://docs.twitterapi.io/api-reference/endpoint/unlike_tweet_v2#body-proxy) proxy string required The proxy to use.Please use high-quality residential proxies and avoid free proxies.Required.Example: http://username:password@ip:port \[blocked\] . You can get proxy from: [https://www.webshare.io/?referral\_code=4e0q1n00a504](https://www.webshare.io/?referral_code=4e0q1n00a504) #### Response 200 application/json Login response [​](https://docs.twitterapi.io/api-reference/endpoint/unlike_tweet_v2#response-status) status string Status of the request.success or error [​](https://docs.twitterapi.io/api-reference/endpoint/unlike_tweet_v2#response-msg) msg string Message of the request.error message --- # Search user by keyword - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/search_user#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/search \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/search" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/search', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/search",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/search" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/search") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/search") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "users": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / user / search Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/search \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/search" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/search', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/search",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/search" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/search") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/search") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "users": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/search_user#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/search_user#parameter-query) query string The keyword to search [​](https://docs.twitterapi.io/api-reference/endpoint/search_user#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json User info [​](https://docs.twitterapi.io/api-reference/endpoint/search_user#response-users) users object\[\] Array of users Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/search_user#response-has-next-page) has\_next\_page boolean Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/search_user#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/search_user#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/search_user#response-msg) msg string Message of the request.error message --- # Get User Followings - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/followings \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/followings" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/followings', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/followings",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/followings" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/followings") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/followings") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "followings": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / user / followings Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/followings \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/followings" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/followings', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/followings",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/followings" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/followings") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/followings") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "followings": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#parameter-user-name) userName string required screen name of the user [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#parameter-page-size) pageSize integer default:200 The number of followings to return per page. Default is 200.min 20,max 200 #### Response 200 application/json User followings [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#response-followings) followings object\[\] Array of followings Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#response-has-next-page) has\_next\_page boolean Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followings#response-message) message string Message of the request.error message --- # Get Tweet Retweeters - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/retweeters \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/retweeters" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/retweeters', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/retweeters",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/retweeters" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/retweeters") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/retweeters") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "users": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / tweet / retweeters Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/retweeters \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/retweeters" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/retweeters', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/retweeters",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/retweeters" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/retweeters") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/retweeters") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "users": [\ {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#parameter-tweet-id) tweetId string required The tweet ID to get. eg. 1846987139428634858 [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweet retweeters response [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#response-users) users object\[\] Array of users Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#response-has-next-page) has\_next\_page boolean Indicates if there are more results available. If true, use next\_cursor to fetch the next page. Warning: Due to Twitter API inconsistency, has\_more might return true even when no additional data exists. In such cases, subsequent requests will return empty results - this is a known platform limitation. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_retweeter#response-message) message string Message of the request.error message --- # Get User Info - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_by_username#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/info \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/info" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/info', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/info",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/info" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/info") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/info") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "data": { "type": "user", "userName": "", "url": "", "id": "", "name": "", "isBlueVerified": true, "verifiedType": "", "profilePicture": "", "coverPicture": "", "description": "", "location": "", "followers": 123, "following": 123, "canDm": true, "createdAt": "", "favouritesCount": 123, "hasCustomTimelines": true, "isTranslator": true, "mediaCount": 123, "statusesCount": 123, "withheldInCountries": [\ ""\ ], "affiliatesHighlightedLabel": {}, "possiblySensitive": true, "pinnedTweetIds": [\ ""\ ], "isAutomated": true, "automatedBy": "", "unavailable": true, "message": "", "unavailableReason": "", "profile_bio": { "description": "", "entities": { "description": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] }, "url": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] } } } }, "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / user / info Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/info \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/info" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/info', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/info",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/info" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/info") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/info") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "data": { "type": "user", "userName": "", "url": "", "id": "", "name": "", "isBlueVerified": true, "verifiedType": "", "profilePicture": "", "coverPicture": "", "description": "", "location": "", "followers": 123, "following": 123, "canDm": true, "createdAt": "", "favouritesCount": 123, "hasCustomTimelines": true, "isTranslator": true, "mediaCount": 123, "statusesCount": 123, "withheldInCountries": [\ ""\ ], "affiliatesHighlightedLabel": {}, "possiblySensitive": true, "pinnedTweetIds": [\ ""\ ], "isAutomated": true, "automatedBy": "", "unavailable": true, "message": "", "unavailableReason": "", "profile_bio": { "description": "", "entities": { "description": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] }, "url": { "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ] } } } }, "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_by_username#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_by_username#parameter-user-name) userName string The screen name of the user #### Response 200 application/json User info [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_by_username#response-data) data object Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_by_username#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_by_username#response-msg) msg string Message of the request.error message --- # Get User Followers IDs (Bulk) - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/followers_ids \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/followers_ids" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/followers_ids', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/followers_ids",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/followers_ids" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/followers_ids") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/followers_ids") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 502 { "ids": [\ ""\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "", "code": 123 } { "error": 123, "message": "" } { "error": 123, "message": "" } GET / twitter / user / followers\_ids Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/followers_ids \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/followers_ids" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/followers_ids', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/followers_ids",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/followers_ids" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/followers_ids") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/followers_ids") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 502 { "ids": [\ ""\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "", "code": 123 } { "error": 123, "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#parameter-user-name) userName string Screen name of the user (e.g. `elonmusk`). Either `userName` or `userId` is required. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#parameter-user-id) userId string Numeric user ID. Either `userName` or `userId` is required. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#parameter-count) count integer default:5000 Number of follower IDs to return per page. Min 50, max 5000. Default 5000 (bulk pull, recommended). Required range: `50 <= x <= 5000` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#parameter-cursor) cursor string Pagination cursor — pass the `next_cursor` value from the previous response. First page: omit or pass empty string. #### Response 200 application/json Follower IDs [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#response-ids) ids string\[\] Array of follower IDs. Numeric Twitter user ID, returned as string to preserve precision (Twitter IDs exceed JS Number safe range). [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#response-has-next-page) has\_next\_page boolean True if more pages are available (next\_cursor is non-empty and not '0'). [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#response-next-cursor) next\_cursor string Cursor for the next page. Empty string or '0' means no more pages. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#response-status) status enum Status of the request — 'success' or 'error'. Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#response-msg) msg string Status message. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_followers_ids#response-code) code integer Status code (0 = success). --- # Get Tweets by IDs - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_by_ids#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweets \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweets" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweets', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweets",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweets" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweets") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweets") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / tweets Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweets \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweets" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweets', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweets",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweets" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweets") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweets") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_by_ids#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_by_ids#parameter-tweet-ids) tweet\_ids string\[\] required The tweet ids to get.eg. 1846987139428634858,1866332309399781537,1868244766405870076. Use comma to separate multiple tweet ids #### Response 200 application/json Tweets response [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_by_ids#response-tweets) tweets object\[\] required Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_by_ids#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_by_ids#response-message) message string required Message of the request.error message --- # Get List Tweet TimeLine - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/list_timeline#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/list/tweets_timeline \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/list/tweets_timeline" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/list/tweets_timeline', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/list/tweets_timeline",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/list/tweets_timeline" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/list/tweets_timeline") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/list/tweets_timeline") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "" } { "error": 123, "message": "" } GET / twitter / list / tweets\_timeline Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/list/tweets_timeline \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/list/tweets_timeline" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/list/tweets_timeline', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/list/tweets_timeline",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/list/tweets_timeline" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/list/tweets_timeline") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/list/tweets_timeline") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/list_timeline#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/list_timeline#parameter-list-id) listId string required The list ID to get eg. 1846987139428634858 [​](https://docs.twitterapi.io/api-reference/endpoint/list_timeline#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweets response [​](https://docs.twitterapi.io/api-reference/endpoint/list_timeline#response-tweets) tweets object\[\] required Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/list_timeline#response-has-next-page) has\_next\_page boolean required Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/list_timeline#response-next-cursor) next\_cursor string required Cursor for fetching the next page of results --- # Get Community Tweets - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/tweets \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/tweets" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/tweets', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/tweets",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/tweets" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/tweets") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/tweets") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } GET / twitter / community / tweets Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/community/tweets \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/community/tweets" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/community/tweets', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/community/tweets",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/community/tweets" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/community/tweets") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/community/tweets") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "msg": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#parameter-community-id) community\_id string required id of the community [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#parameter-cursor) cursor string cursor of the page #### Response 200 application/json Community info response [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#response-tweets) tweets object\[\] Tweets of the community Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#response-has-next-page) has\_next\_page boolean Whether there is a next page [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#response-next-cursor) next\_cursor string Cursor of the next page [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#response-status) status enum Status of the request: success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_community_tweets#response-msg) msg string Message of the request, error message if status is error --- # Get User TimeLine - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/tweet_timeline \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/tweet_timeline" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/tweet_timeline', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/tweet_timeline",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/tweet_timeline" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/tweet_timeline") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/tweet_timeline") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / user / tweet\_timeline Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/tweet_timeline \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/tweet_timeline" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/tweet_timeline', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/tweet_timeline",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/tweet_timeline" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/tweet_timeline") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/tweet_timeline") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#parameter-user-id) userId string user id of the user. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#parameter-include-replies) includeReplies boolean default:false Whether to include replies in the results. Default is False. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#parameter-include-parent-tweet) includeParentTweet boolean default:false Whether to include the parent tweet when the tweet is a reply. Default is False. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweets response [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#response-tweets) tweets object\[\] required Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#response-has-next-page) has\_next\_page boolean required Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#response-next-cursor) next\_cursor string required Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#response-status) status enum required Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_timeline#response-message) message string required Message of the request.error message --- # Get Tweet Replies V2 - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/replies/v2 \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/replies/v2" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/replies/v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/replies/v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/replies/v2" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/replies/v2") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/replies/v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / tweet / replies / v2 Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/replies/v2 \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/replies/v2" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/replies/v2', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/replies/v2",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/replies/v2" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/replies/v2") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/replies/v2") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#parameter-tweet-id) tweetId string required The tweet ID to get replies for. eg. 1846987139428634858 [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#parameter-query-type) queryType enum default:Relevance Sort order for replies. Default is Relevance. Available options: `Relevance`, `Latest`, `Likes` #### Response 200 application/json Tweet replies response [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#response-tweets) tweets object\[\] Array of reply tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#response-has-next-page) has\_next\_page boolean Indicates if there are more results available. If true, use next\_cursor to fetch the next page. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#response-status) status enum Status of the request. success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_replies_v2#response-message) message string Message of the request. error message --- # Get Tweet Thread Context - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/thread_context \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/thread_context" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/thread_context', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/thread_context",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/thread_context" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/thread_context") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/thread_context") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "replies": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / tweet / thread\_context Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/thread_context \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/thread_context" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/thread_context', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/thread_context",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/thread_context" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/thread_context") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/thread_context") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "replies": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#parameter-tweet-id) tweetId string required The tweet ID to get. Can be a reply tweet or a original tweet. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweet replies response [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#response-replies) replies object\[\] Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#response-has-next-page) has\_next\_page boolean Indicates if there are more results available. If true, use next\_cursor to fetch the next page. Warning: Due to Twitter API inconsistency, has\_more might return true even when no additional data exists. In such cases, subsequent requests will return empty results - this is a known platform limitation. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_thread_context#response-message) message string Message of the request.error message --- # Get User Mentions - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/mentions \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/mentions" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/mentions', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/mentions",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/mentions" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/mentions") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/mentions") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / user / mentions Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/user/mentions \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/user/mentions" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/user/mentions', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/user/mentions",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/user/mentions" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/user/mentions") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/user/mentions") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#parameter-user-name) userName string required The user screen name to get. eg. kaitoEasyApi [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#parameter-since-time) sinceTime integer On or after a specified unix timestamp in seconds. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#parameter-until-time) untilTime integer Before a specified unix timestamp in seconds. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweet quotes response [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#response-tweets) tweets object\[\] Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#response-has-next-page) has\_next\_page boolean Indicates if there are more results available. If true, use next\_cursor to fetch the next page. Warning: Due to Twitter API inconsistency, has\_more might return true even when no additional data exists. In such cases, subsequent requests will return empty results - this is a known platform limitation. [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_user_mention#response-message) message string Message of the request.error message --- # Advanced Search - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/advanced_search \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/advanced_search" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/advanced_search', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/advanced_search",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/advanced_search" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/advanced_search") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/advanced_search") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "" } { "error": 123, "message": "" } GET / twitter / tweet / advanced\_search Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/advanced_search \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/advanced_search" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/advanced_search', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/advanced_search",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/advanced_search" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/advanced_search") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/advanced_search") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search#parameter-query) query string required The query to search for.eg. "AI" OR "Twitter" from:elonmusk since\_time:1776045662 until\_time:1776081762 .please don't use since:2021-12-31\_23:59:59\_UTC and until:2021-12-31\_23:59:59\_UTC, it's not supported now!!! Get more examples from [https://github.com/igorbrigadir/twitter-advanced-search](https://github.com/igorbrigadir/twitter-advanced-search) [​](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search#parameter-query-type) queryType enum default:Latest required The query type to search for.eg. "Latest" OR "Top" Available options: `Latest`, `Top` [​](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweets response [​](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search#response-tweets) tweets object\[\] required Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search#response-has-next-page) has\_next\_page boolean required Indicates if there are more results available [​](https://docs.twitterapi.io/api-reference/endpoint/tweet_advanced_search#response-next-cursor) next\_cursor string required Cursor for fetching the next page of results --- # Get Tweet Quotations - twitterapi.io > Documentation Index > ------------------- > > Fetch the complete documentation index at: [/llms.txt](https://docs.twitterapi.io/llms.txt) > > Use this file to discover all available pages before exploring further. [Skip to main content](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#content-area) cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/quotes \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/quotes" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/quotes', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/quotes",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/quotes" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/quotes") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/quotes") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } GET / twitter / tweet / quotes Try it cURL cURL curl --request GET \ --url https://api.twitterapi.io/twitter/tweet/quotes \ --header 'X-API-Key: ' import requests url = "https://api.twitterapi.io/twitter/tweet/quotes" headers = {"X-API-Key": ""} response = requests.get(url, headers=headers) print(response.text) const options = {method: 'GET', headers: {'X-API-Key': ''}}; fetch('https://api.twitterapi.io/twitter/tweet/quotes', options) .then(res => res.json()) .then(res => console.log(res)) .catch(err => console.error(err)); "https://api.twitterapi.io/twitter/tweet/quotes",\ CURLOPT_RETURNTRANSFER => true,\ CURLOPT_ENCODING => "",\ CURLOPT_MAXREDIRS => 10,\ CURLOPT_TIMEOUT => 30,\ CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\ CURLOPT_CUSTOMREQUEST => "GET",\ CURLOPT_HTTPHEADER => [\ "X-API-Key: "\ ],\ ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.twitterapi.io/twitter/tweet/quotes" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("X-API-Key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) } HttpResponse response = Unirest.get("https://api.twitterapi.io/twitter/tweet/quotes") .header("X-API-Key", "") .asString(); require 'uri' require 'net/http' url = URI("https://api.twitterapi.io/twitter/tweet/quotes") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["X-API-Key"] = '' response = http.request(request) puts response.read_body 200 400 { "tweets": [\ {\ "type": "tweet",\ "id": "",\ "url": "",\ "text": "",\ "source": "",\ "retweetCount": 123,\ "replyCount": 123,\ "likeCount": 123,\ "quoteCount": 123,\ "viewCount": 123,\ "createdAt": "",\ "lang": "",\ "bookmarkCount": 123,\ "isReply": true,\ "inReplyToId": "",\ "conversationId": "",\ "displayTextRange": [\ 123\ ],\ "inReplyToUserId": "",\ "inReplyToUsername": "",\ "author": {\ "type": "user",\ "userName": "",\ "url": "",\ "id": "",\ "name": "",\ "isBlueVerified": true,\ "verifiedType": "",\ "profilePicture": "",\ "coverPicture": "",\ "description": "",\ "location": "",\ "followers": 123,\ "following": 123,\ "canDm": true,\ "createdAt": "",\ "favouritesCount": 123,\ "hasCustomTimelines": true,\ "isTranslator": true,\ "mediaCount": 123,\ "statusesCount": 123,\ "withheldInCountries": [\ ""\ ],\ "affiliatesHighlightedLabel": {},\ "possiblySensitive": true,\ "pinnedTweetIds": [\ ""\ ],\ "isAutomated": true,\ "automatedBy": "",\ "unavailable": true,\ "message": "",\ "unavailableReason": "",\ "profile_bio": {\ "description": "",\ "entities": {\ "description": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ },\ "url": {\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ]\ }\ }\ }\ },\ "entities": {\ "hashtags": [\ {\ "indices": [\ 123\ ],\ "text": ""\ }\ ],\ "urls": [\ {\ "display_url": "",\ "expanded_url": "",\ "indices": [\ 123\ ],\ "url": ""\ }\ ],\ "user_mentions": [\ {\ "id_str": "",\ "name": "",\ "screen_name": ""\ }\ ]\ },\ "quoted_tweet": "",\ "retweeted_tweet": "",\ "isLimitedReply": true\ }\ ], "has_next_page": true, "next_cursor": "", "status": "success", "message": "" } { "error": 123, "message": "" } #### Authorizations [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#authorization-x-api-key) X-API-Key string header required #### Query Parameters [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#parameter-tweet-id) tweetId string required The tweet ID to get. eg. 1846987139428634858 [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#parameter-since-time) sinceTime integer On or after a specified unix timestamp in seconds. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#parameter-until-time) untilTime integer Before a specified unix timestamp in seconds. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#parameter-include-replies) includeReplies boolean default:true Whether to include replies in the results. Default is True. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#parameter-cursor) cursor string The cursor to paginate through the results. First page is "". #### Response 200 application/json Tweet quotes response [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#response-tweets) tweets object\[\] Array of tweets Show child attributes [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#response-has-next-page) has\_next\_page boolean Indicates if there are more results available. If true, use next\_cursor to fetch the next page. Warning: Due to Twitter API inconsistency, has\_more might return true even when no additional data exists. In such cases, subsequent requests will return empty results - this is a known platform limitation. [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#response-next-cursor) next\_cursor string Cursor for fetching the next page of results [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#response-status) status enum Status of the request.success or error Available options: `success`, `error` [​](https://docs.twitterapi.io/api-reference/endpoint/get_tweet_quote#response-message) message string Message of the request.error message ---