twitter_api_v2 3.0.3
twitter_api_v2: ^3.0.3 copied to clipboard
The lightweight and powerful wrapper library for Twitter API v2.0 written in Dart language. It works cross-platform.
Release Note #
3.0.3 #
- Fixed the
linkClickCountfield in the following metric objects to be nullable. (#407)OrganicTweetMetricsPrivateTweetMetricsPromotedTweetMetrics
3.0.0 #
- Improved specification of data returned from POST, DELETE, and PUT communication endpoints. The previous specification always returned true regardless of whether the process was successful or not, but now returns false if an
errorsobject exists in the response. (#381)
Breaking Changes #
- Changed return type of
destroyFilteringRulesfromFilteringRuleMetatobool. This is because there is no use for theFilteringRuleMetaobject that was returned after the deletion of a filtering rule in the previous specification. If the deletion succeeds, true is returned; if the deletion fails for some reason, false is returned. (#382)
2.10.0 #
- Fixed to raise
TwitterExceptionif response object cannot be converted to JSON. (#347) - Enforced the specification of access token in
OAuth 2.0orOAuth 1.0amethod when creating an instance ofTwitterApiobject. If either access token is not passed, anArgumentErrorwill be thrown. (#352) - Added
UnauthorizedException. Thrown when unauthorized with the specified access token. (#348) - Added Automatic Retry feature. Automatic retry can be enabled by setting
RetryConfigwhen creating theTwitterApiobject. IfRetryConfigis not passed to theTwitterApiobject, automatic retry will not be triggered. (#251)- Regular Intervals
- Exponential Backoff
- Exponential Backoff and Jitter
2.9.0 #
- Added
stateparameter forSpacesService.search. (#324) - Added
topicFieldsparameters. (#185)- GET /2/spaces/search
- GET /2/spaces
- GET /2/spaces/:id
- GET /2/spaces/by/creator_ids
- Added
SpaceExpansion.topicIds. (#185) - Added
endedelement forSpaceState. (#333) - Removed HTTP status code checking process. With this modification, no exception will be thrown if, for example, you try to retweet a particular tweet and the tweet has already been deleted by its owner. However, a
TwitterExceptionwill still be thrown if there is no Data field in the response. (#329) - Added
RateLimitExceededException. (#331)
2.8.1 #
- Changed the field type of
TweetPollParam'sdurationInMinutestoDurationand changed the name toduration. (#322)
2.8.0 #
Breaking Changes #
- Migration is required for fields that existed in previous versions due to objectification of some of the
createTweetrequest parameters. (#304)- Use
TweetMediaParamobject to specifymediaIdsandtaggedUserIds. - Use
TweetReplyParamobject to specifyinReplyToTweetId
- Use
- Migration is required for
createFilteringRules. (#312)- Use
FilteringRuleParamobject to specify filtering rules.
- Use
Bug Fixes #
- Removed
expansionsparameter fromcreateTweetmethod because this is not the supported parameter. (#288)
New Features #
- Added
timeoutoption toTwitterApi. The default timeout duration is 10 seconds. (#252) - Added
sortOrderparameter toTweetsService.searchRecentandTweetsService.searchAll. (#284) - Added
startTimeandendTimeparameters. (#240)- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- GET /2/users/:id/mentions
- GET /2/users/:id/timelines/reverse_chronological
- GET /2/users/:id/tweets
- GET /2/tweets/counts/all
- GET /2/tweets/counts/recent
- Added
variantsfield toMediaDataobject. You can get this field by usingMediaField.variants. (#265) - Added
sinceTweetIdparameter. (#285)- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- Added
untilTweetIdparameter. (#286)- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- Added
directMessageDeepLinkparameter tocreateTweet. (#279) - Added
geoparameter tocreateTweet. (#280)(#304) - Added
pollparameter tocreateTweet. (#282)(#304) - Added objects for request parameter of
createTweet. (#304)TweetMediaParamTweetGeoParamTweetPollParamTweetReplyParam
- Added
sinceTweetIdanduntilTweetIdparameters tocountAllandcountRecent. (#311)- GET /2/tweets/counts/all
- GET /2/tweets/counts/recent
- Added
granularityparameter tocountAllandcountRecent. (#310)- GET /2/tweets/counts/all
- GET /2/tweets/counts/recent
- Added
sinceTweetIdanduntilTweetIdparameters toTweetsService.lookupTweets. (#309) - Added
excludesparameter toTweetsService.lookupTweets. (#308) - Added
sinceTweetIdanduntilTweetIdparameters tolookupHomeTimeline. (#307) - Added
excludesparameter tolookupHomeTimeline. (#306) - Added
sinceTweetIdanduntilTweetIdparameters tolookupMentions. (#305)
2.7.0 #
- Added metrics field for
TweetField. (#268)non_public_metricsorganic_metricspromoted_metrics
- The
toJsonmethod of the response data object has been improved. Nested objects are now converted to JSON at the same time as the parent object'stoJson. (#272) - Added
toJsonmethod toTwitterResponse. (#274)
2.6.0 #
- Added
FilteredStreamResponseas the return type ofFiltered Streamendpoint. And now we can see the IDs and tags of the rules matched in the streaming from theFilteredStreamResponse.matchingRulesfield. TheFilteredStreamResponseextendsTwitterResponse, so there are no destructive changes. (#226) - Added translated READMEs. (#213)
- Japanese
- French
- Vietnamese
- Bengali
- Added
mediaFieldsarguments. (#183)- GET /2/users/:id/bookmarks
- GET /2/tweets/search/stream
- GET /2/tweets/:id/liking_users
- GET /2/users/:id/liked_tweets
- GET /2/tweets/:id/quote_tweets
- GET /2/tweets/:id/retweeted_by
- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- GET /2/users/:id/mentions
- GET /2/users/:id/timelines/reverse_chronological
- GET /2/users/:id/tweets
- GET /2/tweets
- GET /2/tweets/:id
- GET /2/tweets/sample/stream
- GET /2/spaces/:id/buyers
- GET /2/spaces/:id/tweets
- Added
mediaFieldsarguments. (#186)- GET /2/users/:id/followed_lists
- GET /2/lists/:id
- GET /2/users/:id/owned_lists
- GET /2/users/:id/list_memberships
- GET /2/users/:id/pinned_lists
2.5.0 #
- Added
spaceFieldsargument. (#184)- GET /2/spaces/search
- GET /2/spaces
- GET /2/spaces/:id
- GET /2/spaces/by/creator_ids
- Added
pollFieldsargument. (#181)- GET /2/users/:id/bookmarks
- GET /2/tweets/search/stream
- GET /2/tweets/:id/liking_users
- GET /2/users/:id/liked_tweets
- GET /2/tweets/:id/quote_tweets
- GET /2/tweets/:id/retweeted_by
- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- GET /2/users/:id/mentions
- GET /2/users/:id/timelines/reverse_chronological
- GET /2/users/:id/tweets
- GET /2/tweets
- GET /2/tweets/:id
- GET /2/tweets/sample/stream
- GET /2/spaces/:id/buyers
- GET /2/spaces/:id/tweets
- Added
placeFieldsargument. (#182)- GET /2/users/:id/bookmarks
- GET /2/tweets/search/stream
- GET /2/tweets/:id/liking_users
- GET /2/users/:id/liked_tweets
- GET /2/tweets/:id/quote_tweets
- GET /2/tweets/:id/retweeted_by
- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- GET /2/users/:id/mentions
- GET /2/users/:id/timelines/reverse_chronological
- GET /2/users/:id/tweets
- GET /2/tweets
- GET /2/tweets/:id
- GET /2/tweets/sample/stream
- GET /2/spaces/:id/buyers
- GET /2/spaces/:id/tweets
PlaceDataclass is migrated toGeoclass, and updatedPlaceDataparameters.PlaceCoordinatesclass is migrated toGeoCoordinatesclass, and updatedPlaceCoordinatesparameters.- Changed the type of
langfield fromString?toTweetLanguage?. (#207)
2.4.2 #
- Fixed field names in
UserData. (#202)- From
protectedtoisProtected. - From
verifiedtoisVerified.
- From
2.4.0 #
- Added
userFieldsargument. (#180)- GET /2/users/:id/bookmarks
- GET /2/tweets/search/stream
- GET /2/tweets/:id/liking_users
- GET /2/users/:id/liked_tweets
- GET /2/tweets/:id/quote_tweets
- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- GET /2/users/:id/mentions
- GET /2/users/:id/timelines/reverse_chronological
- GET /2/users/:id/tweetsGET /2/tweets
- GET /2/tweets/:id
- GET /2/tweets/sample/stream
- GET /2/users/:id/blocking
- GET /2/users/:id/followers
- GET /2/users/:id/following
- GET /2/users/:id/muting
- GET /2/users
- GET /2/users/:id
- GET /2/users/by
- GET /2/users/by/username/:username
- GET /2/users/me
- GET /2/spaces/search
- GET /2/spaces
- GET /2/spaces/:id
- GET /2/spaces/:id/buyers
- GET /2/spaces/:id/tweets
- GET /2/spaces/by/creator_ids
- GET /2/lists/:id/tweets
- GET /2/lists/:id/followers
- GET /2/users/:id/followed_lists
- GET /2/lists/:id
- GET /2/users/:id/owned_lists
- GET /2/lists/:id/members
- GET /2/users/:id/list_memberships
- GET /2/users/:id/pinned_lists
2.3.0 #
- Added
tweetFieldsargument. (#179)- GET /2/users/:id/bookmarks
- GET /2/tweets/search/stream
- GET /2/tweets/:id/liking_users
- GET /2/users/:id/liked_tweets
- GET /2/tweets/:id/quote_tweets
- GET /2/tweets/:id/retweeted_by
- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- GET /2/users/:id/mentions
- GET /2/users/:id/timelines/reverse_chronological
- GET /2/users/:id/tweets
- GET /2/tweets
- GET /2/tweets/:id
- GET /2/tweets/sample/stream
- GET /2/users/:id/blocking
- GET /2/users/:id/followers
- GET /2/users/:id/following
- GET /2/users/:id/muting
- GET /2/users
- GET /2/users/:id
- GET /2/users/by
- GET /2/users/by/username/:username
- GET /2/users/me
- GET /2/spaces/:id/buyers
- GET /2/spaces/:id/tweets
- GET /2/lists/:id/tweets
- GET /2/lists/:id/members
- Changed object name from
ReferencedTweetDatatoReferencedTweet. - Changed field type of
typeinReferencedTweettoTweetTypefromString. - Changed field type of
typeinMediaDatatoMediaTypefromString. - Added
keyfield toMediaData. It represents a unique identifier of the media.
2.2.0 #
- Added
Reverse Chronological Timelinesendpoint. (#164)- GET /2/users/:id/timelines/reverse_chronological
- Added
expansionsargument toUsersService. (#142)- GET /2/users/:id/blocking
- GET /2/users/:id/followers
- GET /2/users/:id/following
- GET /2/users/:id/muting
- GET /2/users
- GET /2/users/:id
- GET /2/users/by
- GET /2/users/by/username/:username
- GET /2/users/me
- Added
expansionsargument toSpacesService. (#171)- GET /2/spaces/search
- GET /2/spaces
- GET /2/spaces/:id
- GET /2/spaces/:id/buyers
- GET /2/spaces/:id/tweets
- GET /2/spaces/by/creator_ids
- Added
expansionsargument toListsService. (#172)- GET /2/lists/:id/tweets
- GET /2/lists/:id/followers
- GET /2/users/:id/followed_lists
- GET /2/lists/:id
- GET /2/users/:id/owned_lists
- GET /2/lists/:id/members
- GET /2/users/:id/list_memberships
- GET /2/users/:id/pinned_lists
- Fixed method name from
tweetsService.connectVolumeStreamstotweetsService.connectVolumeStream. - Fixed return type of
tweetsService.connectVolumeStreamfromFuture<Stream<TweetData>>toFuture<Stream<TwitterResponse<TweetData, void>>>. - Added
Filtered Streamendpoint. (#4)- GET /2/tweets/search/stream
- GET /2/tweets/search/stream/rules
- POST /2/tweets/search/stream/rules
2.1.0 #
- Added
expansionsargument toTweetsService. (#141) - Added expanded fields to
TweetData. (#141)authorIdinReplyToUserIdreferencedTweetsentitiesattachmentsgeo
- Added
includesfield toTwitterResponse. (#144) - With the addition of the
includesfield toTwitterResponse, the following objects have been added. (#144)MediaDataPollData
- Added Volume Stream endpoint. (#14)
- GET /2/tweets/sample/stream
2.0.0 #
- Exposed service classes. (#122
TweetsServiceUsersServiceListsServiceSpacesServiceComplianceService
- Added arguments to
tweetsService.createTweet. (#130) (#90)inReplyToTweetIdreplySettingmediaIdstaggedUserIds
- Improved processing when the data field does not exist in the response body returned from the Twitter API. (#124)
- In previous versions,
POSTandDELETEcommunications for deleted content would raise aTwitterException, but this release has been modified to always return a boolean instead of an exception in this case.
- In previous versions,
- Internal processing has been refactored to improve scalability and maintainability. There are no disruptive changes as a result of this refactoring.
- Added convenience utility for OAuth. (#102)
OAuthUtils.generateAppOnlyBearerToken
1.8.0 #
- Added Lists Manage endpoints. (#30)
- DELETE /2/lists/:id
- PUT /2/lists/:id
- POST /2/lists
- Added Lists Follows endpoints. (#27)
- DELETE /2/users/:id/followed_lists/:list_id
- GET /2/lists/:id/followers
- GET /2/users/:id/followed_lists
- POST /2/users/:id/followed_lists
- Added Lists Members endpoints. (#29)
- DELETE /2/lists/:id/members/:user_id
- GET /2/lists/:id/members
- GET /2/users/:id/list_memberships
- POST /2/lists/:id/members
1.7.0 #
- Added Tweets Timelines endpoints. (#11)
- GET /2/users/:id/mentions
- GET /2/users/:id/tweets
- Added Users Blocks endpoints. (#20)
- DELETE /2/users/:source_user_id/blocking/:target_user_id
- GET /2/users/:id/blocking
- POST /2/users/:id/blocking
- Added Lists Pinnings endpoints. (#31)
- DELETE /2/users/:id/pinned_lists/:list_id
- GET /2/users/:id/pinned_lists
- POST /2/users/:id/pinned_lists
- Added Lists Tweet Lookup endpoint. (#26)
- GET /2/lists/:id/tweets
- Refactored method names. Prefixes for methods that perform
GETcommunication other than the search endpoint have been unified withlookup. This makes it a destructive change, but please refer to the following correspondence table for details of the change.- Tweets Service
- From
likingUserstolookupLikingUsers - From
likingTweetstolookupLikedTweets - From
retweetedBytolookupRetweetedUsers - From
quoteTweetstolookupQuoteTweets - From
bookmarkstolookupBookmarks
- From
- Users Service
- From
followerstolookupFollowers - From
followingstolookupFollowings - From
mutingUserstolookupMutingUsers
- From
- Lists Service
- From
pinnedListstolookupPinnedLists
- From
- Tweets Service
1.6.0 #
- Fixed a bug in
DELETEcommunication. - Improved error message from
TwitterException. (#93) - Added Batch Compliance endpoints. (#32)
- GET /2/compliance/jobs
- GET /2/compliance/jobs/:id
- POST /2/compliance/jobs
- Added Users Mutes endpoints. (#22)
- DELETE /2/users/:source_user_id/muting/:target_user_id
- GET /2/users/:id/muting
- POST /2/users/:id/muting
- Added Tweets Hide Replies endpoints. (#5)
- PUT /2/tweets/:id/hidden
1.5.0 #
- Renamed method name in TweetsService. (#79)
- Renamed method from
tweetsService.lookupTweettotweetsService.lookupById. - Renamed method from
tweetsService.lookupTweetstotweetsService.lookupByIds.
- Renamed method from
- Added Spaces Lookup endpoints. (#25)
- GET /2/spaces
- GET /2/spaces/:id
- GET /2/spaces/:id/buyers
- GET /2/spaces/:id/tweets
- GET /2/spaces/by/creator_ids
- Added Lists Lookup endpoints. (#28)
- GET /2/lists/:id
- GET /2/users/:id/owned_lists
1.4.0 #
- Fixed response handling.
- The HTTP status of a response was regarded as an exception for data other than 200, but the HTTP status in the 200s is now regarded as a normal completion.
- Improved and added parameters for endpoints already implemented in this library. (#66)
- Added parameters to
tweetsService.createTweet.quoteTweetIdforSuperFollowersOnly
- Added a parameter to
tweetsService.linkingUsers.maxResults
- Added a parameter to
tweetsService.linkingTweets.maxResults
- Added a parameter to
tweetsService.retweetedBy.maxResults
- Added a parameter to
tweetsService.quoteTweets.maxResults
- Added a parameter to
tweetsService.searchRecent.maxResults
- Added a parameter to
tweetsService.searchAll.maxResults
- Added a parameter to
usersService.followers.maxResults
- Added a parameter to
usersService.followings.maxResults
- Added parameters to
1.3.0 #
- Improved the error message from
TwitterException. (#48) - Added
previousTokentotweet_metaandtweet_count_meta, and addedpaginationTokenornextTokenargument for endpoints that support pagination. (#60) - Added
previousTokentouser_meta, and addedpaginationTokenargument for endpoints that support pagination. (#60)
1.1.0 #
- Added Tweet Counts endpoints. (#12)
- GET /2/tweets/counts/all
- GET /2/tweets/counts/recent
- Added Tweet Bookmarks endpoints. (#2)
- GET /2/tweets/counts/all
- GET /2/tweets/counts/recent
- Added Users Lookup endpoints. (#23)
- GET /2/users
- GET /2/users/:id
- GET /2/users/by
- GET /2/users/by/username/:username
- GET /2/users/me
- Added Spaces Search endpoints. (#23)
- GET /2/spaces/search
1.0.0 #
- Specification changes and improvements have been made to the authentication method. (#44)
- Added Quote Tweets endpoint. (#8)
- GET /2/tweets/:id/quote_tweets
- Added Tweets Search endpoints. (#10)
- GET /2/tweets/search/all
- GET /2/tweets/search/recent
- Added Tweets Lookup endpoints. (#13)
- GET /2/tweets
- GET /2/tweets/:id
0.1.0 #
- Added Tweets Likes endpoints. (#6)
- DELETE /2/users/:id/likes/:tweet_id
- GET /2/tweets/:id/liking_users
- GET /2/users/:id/liked_tweets
- POST /2/users/:id/likes
- Added Tweets Manage endpoints. (#7)
- DELETE /2/tweets/:id
- POST /2/tweets
- Added Tweets Retweet endpoints. (#9)
- DELETE /2/users/:id/retweets/:source_tweet_id
- GET /2/tweets/:id/retweeted_by
- POST /2/users/:id/retweets
- Added Users Follows endpoints. (#21)
- DELETE /2/users/:source_user_id/following/:target_user_id
- GET /2/users/:id/followers
- GET /2/users/:id/following
- POST /2/users/:id/following
0.0.1 #
- First Release