Class: XTwitterScraper::Resources::X::Media
- Inherits:
-
Object
- Object
- XTwitterScraper::Resources::X::Media
- Defined in:
- lib/x_twitter_scraper/resources/x/media.rb,
sig/x_twitter_scraper/resources/x/media.rbs
Instance Method Summary collapse
-
#download(tweet_id: nil, tweet_ids: nil, tweet_input: nil, tweet_url: nil, request_options: {}) ⇒ XTwitterScraper::Models::X::MediaDownloadResponse
Download images & videos from tweets.
-
#initialize(client:) ⇒ Media
constructor
private
A new instance of Media.
-
#upload(account:, url:, idempotency_key:, request_options: {}) ⇒ XTwitterScraper::Models::X::MediaUploadResponse
Some parameter documentations has been truncated, see Models::X::MediaUploadParams for more details.
Constructor Details
#initialize(client:) ⇒ Media
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Media.
78 79 80 |
# File 'lib/x_twitter_scraper/resources/x/media.rb', line 78 def initialize(client:) @client = client end |
Instance Method Details
#download(tweet_id: nil, tweet_ids: nil, tweet_input: nil, tweet_url: nil, request_options: {}) ⇒ XTwitterScraper::Models::X::MediaDownloadResponse
Download images & videos from tweets
28 29 30 31 32 33 34 35 36 37 |
# File 'lib/x_twitter_scraper/resources/x/media.rb', line 28 def download(params = {}) parsed, = XTwitterScraper::X::MediaDownloadParams.dump_request(params) @client.request( method: :post, path: "x/media/download", body: parsed, model: XTwitterScraper::Models::X::MediaDownloadResponse, options: ) end |
#upload(account:, url:, idempotency_key:, request_options: {}) ⇒ XTwitterScraper::Models::X::MediaUploadResponse
Some parameter documentations has been truncated, see Models::X::MediaUploadParams for more details.
Upload media
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/x_twitter_scraper/resources/x/media.rb', line 57 def upload(params) parsed, = XTwitterScraper::X::MediaUploadParams.dump_request(params) header_params = {idempotency_key: "idempotency-key"} @client.request( method: :post, path: "x/media", headers: { "content-type" => "multipart/form-data", **parsed.slice(*header_params.keys) }.transform_keys( header_params ), body: parsed.except(*header_params.keys), model: XTwitterScraper::Models::X::MediaUploadResponse, options: ) end |