Class: XTwitterScraper::Models::X::TweetDetail

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

Constant Summary collapse

XTwitterScraper =

Returns:

  • (:ContentDisclosure)

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:, bookmark_count:, like_count:, quote_count:, reply_count:, retweet_count:, text:, view_count:, author: nil, content_disclosure: nil, conversation_id: nil, created_at: nil, display_text_range: nil, entities: nil, in_reply_to_id: nil, in_reply_to_user_id: nil, in_reply_to_username: nil, is_limited_reply: nil, is_note_tweet: nil, is_quote_status: nil, is_reply: nil, lang: nil, media: nil, quoted_tweet: nil, retweeted_tweet: nil, source: nil, type: nil, url: nil) ⇒ Object

Some parameter documentations has been truncated, see XTwitterScraper::Models::X::TweetDetail for more details.

Full tweet with text, engagement metrics, media, and metadata. A zero metric can mean X did not report the count.

Parameters:

  • id (String)
  • bookmark_count (Integer)
  • like_count (Integer)
  • quote_count (Integer)
  • reply_count (Integer)
  • retweet_count (Integer)
  • text (String)
  • view_count (Integer)
  • author (XTwitterScraper::Models::X::TweetAuthor) (defaults to: nil)

    Tweet author profile. The lookup route always includes follower count and verifi

  • content_disclosure (XTwitterScraper::Models::ContentDisclosure) (defaults to: nil)

    Content disclosure metadata shown by X when a tweet is labeled as paid partnersh

  • conversation_id (String) (defaults to: nil)

    ID of the root tweet in the conversation thread

  • created_at (String) (defaults to: nil)
  • display_text_range (Array<Integer>) (defaults to: nil)

    Start and end offsets for rendered tweet text

  • entities (Hash{Symbol=>Object}) (defaults to: nil)

    Parsed entities from the tweet text (URLs, mentions, hashtags, media)

  • in_reply_to_id (String) (defaults to: nil)

    Tweet ID being replied to

  • in_reply_to_user_id (String) (defaults to: nil)

    User ID being replied to

  • in_reply_to_username (String) (defaults to: nil)

    Username being replied to

  • is_limited_reply (Boolean) (defaults to: nil)

    Whether replies are limited for this tweet

  • is_note_tweet (Boolean) (defaults to: nil)

    Whether this is a Note Tweet (long-form post, up to 25,000 characters)

  • is_quote_status (Boolean) (defaults to: nil)

    Whether this tweet quotes another tweet

  • is_reply (Boolean) (defaults to: nil)

    Whether this tweet is a reply to another tweet

  • lang (String) (defaults to: nil)

    Tweet language code

  • media (Array<XTwitterScraper::Models::TweetMedia>) (defaults to: nil)

    Attached media items, omitted when the tweet has no media

  • quoted_tweet (XTwitterScraper::Models::EmbeddedTweet) (defaults to: nil)

    Quoted or retweeted tweet context. Every object includes id, text, and engagemen

  • retweeted_tweet (XTwitterScraper::Models::EmbeddedTweet) (defaults to: nil)

    Quoted or retweeted tweet context. Every object includes id, text, and engagemen

  • source (String) (defaults to: nil)

    Client application used to post this tweet

  • type (String) (defaults to: nil)

    Tweet result type

  • url (String) (defaults to: nil)

    Tweet permalink URL



# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 178

Instance Attribute Details

#authorXTwitterScraper::Models::X::TweetAuthor?

Tweet author profile. The lookup route always includes follower count and verification state. Other profile fields appear when available.



56
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 56

optional :author, -> { XTwitterScraper::X::TweetAuthor }

#bookmark_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


19
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 19

required :bookmark_count, Integer, api_name: :bookmarkCount

#content_disclosureXTwitterScraper::Models::ContentDisclosure?

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



63
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 63

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

#conversation_idString?

ID of the root tweet in the conversation thread

Parameters:

  • (String)

Returns:

  • (String, nil)


69
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 69

optional :conversation_id, String, api_name: :conversationId

#created_atString?

Parameters:

  • (String)

Returns:

  • (String, nil)


74
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 74

optional :created_at, String, api_name: :createdAt

#display_text_rangeArray<Integer>?

Start and end offsets for rendered tweet text

Parameters:

  • (::Array[Integer])

Returns:

  • (Array<Integer>, nil)


80
81
82
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 80

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

#entitiesHash{Symbol=>Object}?

Parsed entities from the tweet text (URLs, mentions, hashtags, media)

Parameters:

  • (::Hash[Symbol, top])

Returns:

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


88
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 88

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

#idString

Parameters:

  • value (String)

Returns:

  • (String)


14
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 14

required :id, String

#in_reply_to_idString?

Tweet ID being replied to

Parameters:

  • (String)

Returns:

  • (String, nil)


94
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 94

optional :in_reply_to_id, String, api_name: :inReplyToId

#in_reply_to_user_idString?

User ID being replied to

Parameters:

  • (String)

Returns:

  • (String, nil)


100
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 100

optional :in_reply_to_user_id, String, api_name: :inReplyToUserId

#in_reply_to_usernameString?

Username being replied to

Parameters:

  • (String)

Returns:

  • (String, nil)


106
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 106

optional :in_reply_to_username, String, api_name: :inReplyToUsername

#is_limited_replyBoolean?

Whether replies are limited for this tweet

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


112
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 112

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

#is_note_tweetBoolean?

Whether this is a Note Tweet (long-form post, up to 25,000 characters)

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


118
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 118

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

#is_quote_statusBoolean?

Whether this tweet quotes another tweet

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


124
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 124

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

#is_replyBoolean?

Whether this tweet is a reply to another tweet

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


130
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 130

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

#langString?

Tweet language code

Parameters:

  • (String)

Returns:

  • (String, nil)


136
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 136

optional :lang, String

#like_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


24
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 24

required :like_count, Integer, api_name: :likeCount

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

Attached media items, omitted when the tweet has no media

Returns:



142
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 142

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

#quote_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


29
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 29

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.



150
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 150

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

#reply_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


34
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 34

required :reply_count, Integer, api_name: :replyCount

#retweet_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


39
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 39

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.



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

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

#sourceString?

Client application used to post this tweet

Parameters:

  • (String)

Returns:

  • (String, nil)


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

optional :source, String

#textString

Parameters:

  • value (String)

Returns:

  • (String)


44
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 44

required :text, String

#typeString?

Tweet result type

Parameters:

  • (String)

Returns:

  • (String, nil)


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

optional :type, String

#urlString?

Tweet permalink URL

Parameters:

  • (String)

Returns:

  • (String, nil)


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

optional :url, String

#view_countInteger

Parameters:

  • value (Integer)

Returns:

  • (Integer)


49
# File 'lib/x_twitter_scraper/models/x/tweet_detail.rb', line 49

required :view_count, Integer, api_name: :viewCount

Instance Method Details

#to_hash{

Returns:

  • ({)


178
# File 'sig/x_twitter_scraper/models/x/tweet_detail.rbs', line 178

def to_hash: -> {