- fix: type definition for TweetRetweetedOrLikedByV2Params #550 (@dogukanakkaya)
- fix: add and correct field names #554 (@lin-stephanie)
- feat: get tweet usage v2 #555 (@jiahuijiang)
- add missing options from dm_event.fields enum #547 (@RenKoya1)
- feat: add most_recent_tweet_id field #545 (@RenKoya1)
- feat: update again domain from twitter.com to x.com #532 (@melvinmcrn)
- fix: limit media_ids count from 1 to 4 #539 (@rare0b)
- revert #532 which broke the auth flow (thank you @dubzer)
- feat: update domain from twitter.com to x.com #532 (@melvinmcrn)
- fix: Added missing types to public_metrics #529 (@solojungle)
- fix: add canceled and ended space state #523 (@petrbela)
- fix: add type support for Tweets with more than 280 characters #526 (@weswalla)
- feat: add connection_status user field #520 (@fzn0x)
- chore: Update documentation #518 (@pranavmalvawala)
- feat: Add the ability to return whole media information while uploading #506 (@qedr @HapLifeMan)
- fix: Cleanup socket listeners after a request is either rejected or resolved #455
- feat: Support 24-hour rate limit parsing #495
- fix: Correctly return error on media upload even if status stays to "in_progress" #483
- fix: Update tweet.definition.v2.ts to add public view count #494 (@sebastianspiegel)
- chore: Update documentation #486 (@ry0y4n)
- fix: Add missing client settings when fetching the token #480 (@qfish)
- fix: support mov video type #478 (@wass08)
- feat: add subscriber_count to spaces typings #452 (@florrdv)
- chore: Fix typo #454 (@will2022)
- feat: add verified_type to user schema #442 (@dkulyk)
- chore: fix typos and markdown links #443 (@Jiralite)
- feat: improve search query params #431 (@itsjustbrian)
- breaking change: DM Ids should be strings #436
- feat: Add DM events endpoints
- feat: Add space tweet endpoint
- fix: Typing issue in v1 DM medias - ReceivedMessageCreateDataV1 #407 (@secchanu)
- fix: Allow overriding the content-type header #413 (@alessandrovisentini)
- fix: readme typo #414 (@vrrdnt)
- Fix: Add missing expansions/'tweet.fields' item for tweet edition #392
- friends/followers objects list V1 #391 (@Abdullah-Malik)
- Feat: Add
edit_history_tweet_ids
toTweetV2
- Feat: Add v1 friends/followers paginators (thanks to @Abdullah-Malik) #380
- Fix: Fix Exception throw when response data is truthy but not an object (for example, a raw HTML page) #354
- Fix: Typing issue with
TwitterApiErrorData.errors
that can beundefined
in some cases #357 - Feat: Add
include_rts
parameters for.userTimeline
#349
- Feat: add follow and unfollow api V1 methods (thanks to @Abdullah-Malik)
- Fix: Better check for error presence in
ApiResponseError
instantiation
- Fix: Ignore rate limit data for endpoints without rate limit headers in paginators #341
- Fix: Patch for unifiying endpoints with various error payload in v1 API #342
- Feat:
variants
property formedia.fields
, addMediaVariantsV2
interface (thanks to @roncli) #347
- Feat: .favoriteTimeline for API v1 #296 (thanks to @AuroraDysis)
- Feat: duration_millis property for v1 medias (thanks to @RyoshiKayo)
- Feat: source_user_id and source_user_id_str missing properties in MediaEntityV1 (thanks to @AuroraDysis)
- Feat: .homeTimeline for API v2 #288
- Fix: missing id prop of TweetEntityMentionV2 #274 (@lima-eduardo)
- Fix: add place_id to SendTweetV1Params #287 (@viniciuskneves)
- Feat: Update plugin API to support response overloading on error #248
- Feat:
.quote
method to create a retweet with comment (quoted tweet) inv1
andv2
#260 (@jonah-saltzman)
- Feat: New spaces features:
topic_ids
andended_at
on space object,/spaces/:id/buyers
endpoint #237 - Feat: New bookmarks API #237
- Feat: New Quoted tweets endpoint #237
- Feat: Allow v2.search to be used without query parameter #252
- Fix: Usertimeline v1 endpoint .done property value is false #238
- Feat:
sort_order
parameter #246 (@nolbuzanis) - Fix: Better error message for failed media uploads #244 (@nolbuzanis)
- Fix: .meta is not correctly typed in paginators #231
- Fix: Caught promise is rejected without ability of catching it later when a request fails and a plugin is used #229
- Feat: Support error hooks in plugins #226 #227
- Fix: Bypass Twitter v2 incoherence by converting
start_time
to a validsince_id
whenuntil_id
is used in paginators #197 #228 - Feat: Getter for DM images
.v1.downloadDmImage
to download images hosted onton.twitter.com
protected by OAuth 1.0a
- Feat: Support plugins (more features coming soon as plugins!)
- Feat: Compression level can now be specified explicitly
- Refactor:
.v1.uploadMedia()
now acceptoptions.mimeType
andoptions.longVideo
as argument, in replacement ofoptions.type
(which is now deprecated) - Fix: OAuth2 scope incorrectly encoded #184
- Feat: Native support of gzip compression for streaming endpoints
- Feat: Native support of brotli (25% more compressed than gzip) compression for non-streaming endpoints, when available
- Feat: Native support of gzip/deflate compression for non-streaming endpoints
- Fix: Crash when a v2 paginator is empty and response does not contains a
.meta
property #177 - Fix: "Memory leak" when response are abruptly closed by Twitter or OS, because no close/error listener on response object was attributed
- Feat: Pagination support for
tweets/:id/liking_users
andtweets/:id/retweeted_by
#165 - Feat: Support custom Node HTTP agents #149
- Doc: Better example for
.v2.me()
and fix typos #160 #164 (thanks to @rbochenek and @ShubhamKushwah)
- Fix: Use next_token instead of until_id if pagination token available #152
- Feat: Helpers for v2 includes
- Feat: Support for custom debug loggers
- Fix: Errors accessor to get API errors in paginators #145
- Fix: Correctly update .includes/.meta/.errors in paginators when using async iterator #142
- Fix: Incorrect HTTP method for GET lists #147 #148
- Doc: Better doc & examples for OAuth 2.0 user-context
- Feat: Add every GET lists v2 endpoints
- Feat: Add OAuth2 user-context support
- Feat: Add users/me v2 endpoint wrapper
- Fix: Paginator can return multiple times the same results in some conditions
- Feat: .done property for paginators, to know when a next page is fetchable
- Fix: wrong type for optional parameter images in TweetEntityUrlV2
- Feat: Create tweet v2 endpoint (thanks to @sudo-kaizen) #110
- Feat: Delete tweet v2 endpoint (thanks to @sudo-kaizen) #111
- Feat: Tweet thread and reply to a tweet v2
- Fix: BREAKING: Explicitly specify userId on userMutingUsers (thanks to @mika-f) #114
- Fix: Increase retry timeout on stream reconnection
- Fix: Reject stream reconnection if a reconnect process is already started
- Fix: Streams will know correctly reject
.connect
Promise
on connection error ifautoReconnect
isfalse
- Feat: Streams do now support auto-reconnection for the initial connection attempt
- Feat: New option for creating streams,
autoConnect
that istrue
by default ; Setting the value tofalse
will cause theTweetStream
object to be returned immediately (not in aPromise
), because connection isn't awaited #92 - Fix:
autoReconnectRetries
: Setting this params toInfinity
no longer causes the stream reconnection attempts to be delayed to next event loop turn #92 - Fix: Use
https.request(options)
instead ofhttps.request(url, options)
, because some people has outdated dependencies that overwrite native Node's exported function and break its signature #94 #96 - Feat: Next retry timeout computation can be customized by using
.nextRetryTimeout
property ofTweetStream
instance, that is function taking atryOccurrence
and returning the number of milliseconds to wait before trying to reconnect
- Feat: List v2 muted users endpoint #89
- Feat: Manage v2 lists endpoints
- Feat: Support user-flow with OAuth2 (beta - not documented yet)
- Fix: Incorrect typing for createMediaMetadata #93
- Feat: Tweet thread helper #76 #79
- Fix: Explicit max_results parameters should now work properly in paginators #74 #84
- Fix: Endpoints with parameterized URLs now registers properly rate-limit data in cache store
- Fix: Fix return type for v1.1 'tweets' wrapper #72
- Feat: v1.1 List endpoints, GET and POST, with doc, paginators and typings #70
- Feat: Save rate limit information for last request of each endpoint #70
- Doc: Documentation improvements for uploading media #68 #70
- Doc: Fixed parameter name #67
- Fix: Incorrect type union in MessageCreateAttachmentV1 & MessageCreateLocationV1
- Doc: Added real-life examples
- Doc: Add Twitter doc link to .tweet/.reply
- Feat: Add every oauth/authenticate parameters #54 - thanks to @tbhmens
- Fix: Set allowSyntheticDefaultImport to false to improve compat #57 - thanks to @PLHery
- Feat: Add missing tweet.field items in type enumeration #60 - thanks to @filippkowalski
- Doc: Add info about error handling #61
- Feat: Endpoint wrappers for v2 Spaces endpoints #62
- Feat: Endpoint wrappers for v2 Batch Compliance endpoints #62
- Feat: Types & wrappers for account, friendships, users and tweets v1.1 endpoints #64
- Fix: Incorrect encoding of '*' character in query strings #63 #64
- Doc: Improve rate-limit documentation #47 #32
- Feat: Public Direct Messages (DMs) 1.1 endpoints support: wrappers, typings, docs and tests #48
- Feat: New 05/06/07-2021 v2 endpoints wrappers #50
- Feat: Paginator mode for .following/.followers for v2 #50
- Fix: Many fixes for tweet streams auto-reconnect, handle connection errors more smoothly #50
- Feat: New events for tweet streams, that includes lost connection and reconnections #50
- Feat: Handle stream errors deliveries in a dedicated .DataError event (for v2 tweet streams) #50
- Fix: Corrections for body-mode auto-detection (mainly for manual API requests) #53
- Fix: fetchLast was throwing an error with timelines #43
- Feat: Add .meta and .includes in v2 paginators #35 #46
- Feat: Add some missing attributes to tweetEntity typings #42
- Fix: in streams, the KeepAlive was not emitted #33
- Add the new v2 likes endpoint
- Fix: add some missing media types
First Stable Version
- More tests, way more documentation
- Add every missing v2 endpoints
- Remove the two dependencies (form-data and oauth)
- Improve error management
- Fix issues with node12
- Fix issues with the auth API
- Add V1 and V2 streaming V2 endpoints
- Add V2 followers and following endpoints
- Refactor / various fixes
- Add the four API v2 user endpoints
- Improve type definitions
- Minor v2 search refactor
- Fix npm package (was not built)
- Export typescript definitions
- Link and Oauth auth
- PUT/PATCH/DELETE
- improve get/post methods (build query strings, v1/v2 urls, ...)
- read/write/DMs segmentation
- native media chunked upload, with simultaneous send of file parts
- First foundations