Class: XTwitterScraper::Models::SearchTweet

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/x_twitter_scraper/models/search_tweet.rb,
sig/x_twitter_scraper/models/search_tweet.rbs

Defined Under Namespace

Classes: Article, Card, CommunityNote, Edit, NoteTweet, Place, PreviousCounts

Constant Summary collapse

XTwitterScraper =

Returns:

  • (:UserProfile, ::Hash[Symbol, top])

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id: nil, bounding_box: nil, country: nil, country_code: nil, full_name: nil, name: nil, place_type: nil, url: nil) ⇒ Object

Public place metadata attached to a tweet.

Parameters:

  • id (String) (defaults to: nil)
  • bounding_box (Hash{Symbol=>Object}) (defaults to: nil)
  • country (String) (defaults to: nil)
  • country_code (String) (defaults to: nil)
  • full_name (String) (defaults to: nil)
  • name (String) (defaults to: nil)
  • place_type (String) (defaults to: nil)
  • url (String) (defaults to: nil)


# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 237

Instance Attribute Details

#articleXTwitterScraper::Models::SearchTweet::Article?

Article metadata attached to a tweet.



54
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 54

optional :article, -> { XTwitterScraper::SearchTweet::Article }

#authorXTwitterScraper::Models::UserProfile?

X user profile with bio, follower counts, and verification status.



60
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 60

optional :author, -> { XTwitterScraper::UserProfile }

#bookmark_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


18
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 18

required :bookmark_count, Integer, api_name: :bookmarkCount

#cardXTwitterScraper::Models::SearchTweet::Card?

Public card metadata attached to a tweet.



66
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 66

optional :card, -> { XTwitterScraper::SearchTweet::Card }

#community_noteXTwitterScraper::Models::SearchTweet::CommunityNote?

Community Note presentation metadata returned by X.



72
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 72

optional :community_note, -> { XTwitterScraper::SearchTweet::CommunityNote }, api_name: :communityNote

#content_disclosureXTwitterScraper::Models::ContentDisclosure?

Content disclosure metadata shown by X when a tweet is labeled as paid partnership content or AI-generated media.



79
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 79

optional :content_disclosure, -> { XTwitterScraper::ContentDisclosure }, api_name: :contentDisclosure

#conversation_idString?

Root tweet ID for the search result conversation

Parameters:

  • (String)

Returns:

  • (String, nil)


85
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 85

optional :conversation_id, String, api_name: :conversationId

#created_atString?

Parameters:

  • (String)

Returns:

  • (String, nil)


90
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 90

optional :created_at, String, api_name: :createdAt

#display_text_rangeArray<Integer>?

Rendered text's start and end offsets.

Parameters:

  • (::Array[Integer])

Returns:

  • (Array<Integer>, nil)


96
97
98
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 96

optional :display_text_range,
XTwitterScraper::Internal::Type::ArrayOf[Integer],
api_name: :displayTextRange

#editXTwitterScraper::Models::SearchTweet::Edit?

Edit history metadata returned by X.



104
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 104

optional :edit, -> { XTwitterScraper::SearchTweet::Edit }

#entitiesHash{Symbol=>Object}?

Parsed search-result entities including URLs, mentions, hashtags, and media markers

Parameters:

  • (::Hash[Symbol, top])

Returns:

  • (Hash{Symbol=>Object}, nil)


111
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 111

optional :entities, XTwitterScraper::Internal::Type::HashOf[XTwitterScraper::Internal::Type::Unknown]

#idString

Parameters:

  • value (String)

Returns:

  • (String)


13
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 13

required :id, String

#in_reply_to_idString?

ID of the tweet this result replies to.

Parameters:

  • (String)

Returns:

  • (String, nil)


117
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 117

optional :in_reply_to_id, String, api_name: :inReplyToId

#in_reply_to_user_idString?

ID of the user this result replies to.

Parameters:

  • (String)

Returns:

  • (String, nil)


123
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 123

optional :in_reply_to_user_id, String, api_name: :inReplyToUserId

#in_reply_to_usernameString?

Username this result replies to.

Parameters:

  • (String)

Returns:

  • (String, nil)


129
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 129

optional :in_reply_to_username, String, api_name: :inReplyToUsername

#is_limited_replyBoolean?

Whether the tweet has limited reply permissions

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


135
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 135

optional :is_limited_reply, XTwitterScraper::Internal::Type::Boolean, api_name: :isLimitedReply

#is_note_tweetBoolean?

True for Note Tweets (long-form content, up to 25,000 characters)

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


141
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 141

optional :is_note_tweet, XTwitterScraper::Internal::Type::Boolean, api_name: :isNoteTweet

#is_quote_statusBoolean?

True when this search result quotes another tweet

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


147
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 147

optional :is_quote_status, XTwitterScraper::Internal::Type::Boolean, api_name: :isQuoteStatus

#is_replyBoolean?

True when this search result is a reply

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


153
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 153

optional :is_reply, XTwitterScraper::Internal::Type::Boolean, api_name: :isReply

#is_translatableBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


158
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 158

optional :is_translatable, XTwitterScraper::Internal::Type::Boolean, api_name: :isTranslatable

#langString?

Search result language code.

Parameters:

  • (String)

Returns:

  • (String, nil)


164
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 164

optional :lang, String

#like_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


23
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 23

required :like_count, Integer, api_name: :likeCount

#mediaArray<XTwitterScraper::Models::TweetMedia>?

Search-result media attachments, omitted when no media is present

Returns:



170
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 170

optional :media, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::TweetMedia] }

#note_tweetXTwitterScraper::Models::SearchTweet::NoteTweet?

Complete Note Tweet content and rich-text metadata.



176
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 176

optional :note_tweet, -> { XTwitterScraper::SearchTweet::NoteTweet }, api_name: :noteTweet

#placeXTwitterScraper::Models::SearchTweet::Place?

Public place metadata attached to a tweet.



182
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 182

optional :place, -> { XTwitterScraper::SearchTweet::Place }

#possibly_sensitiveBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


187
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 187

optional :possibly_sensitive, XTwitterScraper::Internal::Type::Boolean, api_name: :possiblySensitive

#previous_countsXTwitterScraper::Models::SearchTweet::PreviousCounts?

Engagement counts retained from a prior tweet edit.



193
194
195
196
197
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 193

optional :previous_counts,
-> {
  XTwitterScraper::SearchTweet::PreviousCounts
},
api_name: :previousCounts

#quote_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


28
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 28

required :quote_count, Integer, api_name: :quoteCount

#quoted_tweetXTwitterScraper::Models::EmbeddedTweet?

Quoted or retweeted tweet context. Every object includes id, text, and engagement metrics. A zero metric can mean X did not report the count. Author, media, and conversation fields appear when available.



205
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 205

optional :quoted_tweet, -> { XTwitterScraper::EmbeddedTweet }

#reply_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


33
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 33

required :reply_count, Integer, api_name: :replyCount

#retweet_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


38
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 38

required :retweet_count, Integer, api_name: :retweetCount

#retweeted_tweetXTwitterScraper::Models::EmbeddedTweet?

Quoted or retweeted tweet context. Every object includes id, text, and engagement metrics. A zero metric can mean X did not report the count. Author, media, and conversation fields appear when available.



213
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 213

optional :retweeted_tweet, -> { XTwitterScraper::EmbeddedTweet }

#sourceString?

Client application used to post the tweet

Parameters:

  • (String)

Returns:

  • (String, nil)


219
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 219

optional :source, String

#textString

Parameters:

  • value (String)

Returns:

  • (String)


43
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 43

required :text, String

#typeString?

Parameters:

  • (String)

Returns:

  • (String, nil)


224
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 224

optional :type, String

#urlString?

Search result permalink.

Parameters:

  • (String)

Returns:

  • (String, nil)


230
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 230

optional :url, String

#view_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


48
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 48

required :view_count, Integer, api_name: :viewCount

#view_stateString?

Parameters:

  • (String)

Returns:

  • (String, nil)


235
# File 'lib/x_twitter_scraper/models/search_tweet.rb', line 235

optional :view_state, String, api_name: :viewState

Instance Method Details

#to_hash::Hash[Symbol, top]

Returns:

  • (::Hash[Symbol, top])


211
# File 'sig/x_twitter_scraper/models/search_tweet.rbs', line 211

def to_hash: -> ::Hash[Symbol, top]