- like - Like a Tweet
- unlike - Unlike a Tweet
- retweet - Retweet a Tweet
- unretweet - Delete Retweet
- create_thread - Create a Tweet Thread
- create - Create a Tweet or Reply
- quote - Create a Quote Tweet
- create_without_cookie - Post Tweet (Auto Cookie)
- bookmark - Bookmark a Tweet
- unbookmark - Delete Bookmark
- delete_batch - Delete One or More Tweets
Likes a specific tweet on behalf of the user associated with the provided cookie,$0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Operations::TweetsActionsLikeRequest.new(
tweet_id: '<id>',
body: Models::Components::LikeActionBody.new(
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7',
proxy: 'http://username:password@ip:port'
)
)
res = s.tweets.actions.like(request: req)
unless res.tweet_action_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Operations::TweetsActionsLikeRequest | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsLikeResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Unlike a tweet, $0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Operations::TweetsActionsUnlikeRequest.new(
tweet_id: '<id>',
body: Models::Components::UnfavoriteTweetQuery.new(
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7'
)
)
res = s.tweets.actions.unlike(request: req)
unless res.tweet_action_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Operations::TweetsActionsUnlikeRequest | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsUnlikeResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Retweets a specific tweet on behalf of the user associated with the provided cookie,$0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Operations::TweetsActionsRetweetRequest.new(
tweet_id: '<id>',
body: Models::Components::RetweetActionBody.new(
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7',
proxy: 'http://username:password@ip:port'
)
)
res = s.tweets.actions.retweet(request: req)
unless res.tweet_action_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Operations::TweetsActionsRetweetRequest | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsRetweetResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Delete a retweet, $0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Operations::TweetsActionsUnretweetRequest.new(
tweet_id: '<id>',
body: Models::Components::DeleteRetweetQuery.new(
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7'
)
)
res = s.tweets.actions.unretweet(request: req)
unless res.tweet_action_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Operations::TweetsActionsUnretweetRequest | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsUnretweetResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Create a tweet thread from an ordered list of texts, $0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Components::CreateThreadQuery.new(
items: [
'1/ hello',
'2/ world',
],
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7',
proxy: 'http://username:password@ip:port'
)
res = s.tweets.actions.create_thread(request: req)
unless res.create_thread_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Components::CreateThreadQuery | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsCreateThreadResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Posts a new tweet. To create a reply, provide the reply_tweet_id. This endpoint does not handle quote tweets,$0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Components::PostTweetQuery.new(
media_url: 'https://example.com/image.jpg',
media_urls: [
'https://example.com/image1.jpg',
'https://example.com/image2.jpg',
],
tweet_content: 'Hello, Twitter! 🐦',
delegated_account_username: 'elonmusk',
schedule: '2024-01-01T12:00:00Z',
reply_tweet_id: '1234567890123456789',
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7',
community_name: 'Python Developers or 1234567890123456789',
proxy: 'http://username:password@ip:port'
)
res = s.tweets.actions.create(request: req)
unless res.post_tweet_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Components::PostTweetQuery | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsCreateResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Posts a new tweet that quotes an existing tweet. Requires the URL of the tweet to be quoted and the new content,$0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Components::QuoteTweetQuery.new(
media_url: 'https://example.com/image.jpg',
media_urls: [
'https://example.com/image1.jpg',
'https://example.com/image2.jpg',
],
tweet_content: 'Hello, Twitter! 🐦',
delegated_account_username: 'elonmusk',
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7',
community_name: 'Python Developers or 1234567890123456789',
quote_tweet_url: 'https://twitter.com/user/status/1234567890123456789',
proxy: 'http://username:password@ip:port'
)
res = s.tweets.actions.quote(request: req)
unless res.post_tweet_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Components::QuoteTweetQuery | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsQuoteResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Post a tweet using a random cookie from the pool, cookie management $0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Components::PostTweetWithoutCookieQuery.new(
media_url: 'https://example.com/image.jpg',
media_urls: [
'https://example.com/image1.jpg',
'https://example.com/image2.jpg',
],
tweet_content: 'Hello, Twitter! 🐦',
schedule: '2024-01-01T12:00:00Z',
reply_tweet_id: '1234567890123456789',
community_name: 'Python Developers or 1234567890123456789',
quote_tweet_url: 'https://twitter.com/user/status/1234567890123456789'
)
res = s.tweets.actions.create_without_cookie(request: req)
unless res.post_tweet_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Components::PostTweetWithoutCookieQuery | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsCreateWithoutCookieResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Adds a specific tweet to the bookmarks of the user associated with the provided cookie,$0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Operations::TweetsActionsBookmarkRequest.new(
tweet_id: '<id>',
body: Models::Components::BookmarkBody.new(
proxy: 'http://username:password@ip:port',
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7'
)
)
res = s.tweets.actions.bookmark(request: req)
unless res.tweet_action_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Operations::TweetsActionsBookmarkRequest | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsBookmarkResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Delete a bookmark, $0.001 per call.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Operations::TweetsActionsUnbookmarkRequest.new(
tweet_id: '<id>',
body: Models::Components::DeleteBookmarkQuery.new(
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7'
)
)
res = s.tweets.actions.unbookmark(request: req)
unless res.tweet_action_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Operations::TweetsActionsUnbookmarkRequest | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsUnbookmarkResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |
Deletes one or more tweets from a specified user account. This endpoint supports two modes:
- Single Tweet Deletion: Provide a
target_idto delete a specific tweet. - Bulk Deletion: Omit the
target_idto delete all tweets from the user's account.
Warning: The bulk deletion mode is irreversible and will permanently remove all tweets from the account. Use with extreme caution.
require 'x_api_scraper'
Models = ::XapiScraper::Models
s = ::XapiScraper::Client.new(
bearer_auth: '<YOUR_BEARER_TOKEN_HERE>'
)
req = Models::Components::DeleteTweetQuery.new(
cookie: 'ct0=abc123... or 2c4a4e1832096aa694c739b83c83b6d96d43eba7',
username: 'myusername',
target_id: '1234567890123456789'
)
res = s.tweets.actions.delete_batch(request: req)
unless res.delete_tweet_response.nil?
# handle response
end| Parameter | Type | Required | Description |
|---|---|---|---|
request |
Models::Components::DeleteTweetQuery | ✔️ | The request object to use for the request. |
T.nilable(Models::Operations::TweetsActionsDeleteBatchResponse)
| Error Type | Status Code | Content Type |
|---|---|---|
| Models::Errors::HTTPValidationError | 422 | application/json |
| Errors::APIError | 4XX, 5XX | */* |