- stop requesting Brotli-encoded responses: requests now send
Accept-Encoding: gzip, deflate(hardening for CVE-2026-111497, #197). This does not protect an unpatched runtime; the fix is Node 22.23.4+, 24.22.1+ or 26.12.1+ (official builds; builds linked against the system Brotli library also need that library updated). See the Node.js security release. - the 4.x line receives no further fixes; upgrade to 5.x.
- added support for the Bulk Email API (#185):
ServerClient.sendBulkEmail()— send a bulk email (POST /email/bulk)ServerClient.getBulkEmailStatus()— poll a bulk request's status (GET /email/bulk/{bulk-request-id})- new models
BulkEmailRequest,BulkEmailMessage,BulkEmailSendingResponse,BulkEmailStatusResponse, and theBulkEmailStatusenum, withBulkEmailRequest/BulkEmailMessageexposed as top-level exports
Migrated the HTTP client from axios to the native Fetch API, making the SDK dependency-free. This is a major release; the migration introduces five breaking changes, detailed below.
- Minimum Node version is now 18.0.0 (dropped Node 14 and 16). The native Fetch API requires Node 18+.
- Proxy environment variables (
HTTP_PROXY/HTTPS_PROXY/NO_PROXY) are no longer honored automatically. axios read them viaproxy-from-env, but Node's built-in fetch (undici) does not. To route requests through a proxy, pass a custom fetch via the newfetchclient option (e.g. bound to an undiciProxyAgentdispatcher) — see the README "Proxies / custom fetch" section. - An empty
2xxresponse body now resolves to{}instead of the empty string""that axios surfaced. client.httpClient.clientis no longer an axios instance — it is now afetchfunction. Code that reached into it to add axios interceptors, setdefaults, or attach an axios adapter/proxy will no longer work; use the newfetchclient option for transport customization instead.- Request
timeoutsemantics changed. With axiostimeoutwas a response/inactivity timeout; it is now mapped toAbortSignal.timeout(), which is a total deadline for the entire request. Slow-but-progressing responses that previously completed may now abort once the total duration exceeds the configuredtimeout.
- removed the
axiosdependency (resolves CVE exposure andurl.parse()deprecation warnings, and restores compatibility with Edge/Workers runtimes) - added the
fetchclient option, allowing a custom fetch implementation to be supplied for proxy support, testing, or other transport customization
- update axios to 1.13.5
- fix getOutboundMessageDetails route to be consistent with public documentation
- update axios to 1.13.4
- update axios to 1.7.4
- update axios to 1.7.2
- updated models to support adding content disposition to attachments
- update domain model
- updated models to be more accurate mostly within webhook payloads area
- update development libraries
- dropped support for older EOL Node JS versions, minimum supported Node version is 14.0.0
- updated axios to the version 1.6.2
- added filtering to get suppressions endpoint
- add content type header to the http client default headers list
- small naming update for data removal endpoints
- added data removal endpoints
- small fix to webhook types model
- updated model to contain webhook types
- fix domain endpoint request types
- updated test library versions
- switched from nconf to dotenv for configuration loading for tests
- added Sanboxed field to the outbound message model
- fix parsing bounced messages
- Updated statistics filtering parameter
- Minor code fix, fixing up library versions for older versions of node
- Migrated to ActiveCampaign
- Small bug fix to data model
- Separated error handling responsibility between postmark client and http client
- Updated message response for sending
- Decoupled and refactored http client part of the library
- Improved error handling
- Parsed inactive recipients when email sending
- Update sender signature name field to match documentation by being required
- Updated dev libraries to resolve security issues (typedoc, typescript)
- Updated axios http client version
Update attachments model for inbound and outbound messages
Updated sender signature model with personal note
Updated axios client version
- Added delivery types to server model
- Improved data model for webhook triggers
- Small update to the server update model
- Updated message streams model with unsubscribe types
- Remove old request client dev dependency
- Increase client tolerance to long and big requests
- Updated axios to 0.21.1
- Updated createWebhook endpoint to support MessageStream
- default CI tool is now circleCi
- Added message stream endpoints
- Updated release docs and sending message response model
- library updates
- Fix domain details model
- Http client size limitation removed
- Better error handling
- Improved client options setup and default client setup
- Added supression management
- Removed obsolete TriggerTags endpoint and added filtering bounces by stream
- messages can now be filtered by message stream
- bounceTags endpoint is deprecated/removed
- Added webhook management support
- Improved test coverage
- Improved type model
- Small improvement to error handling
- Servers list type model update
- Template layouts support
- Add support for metadata for email templates
- Ignore docs from npm library
- Added templates push feature
- Minor fix for proper error handling
- added filtering by count, offset defaults in case of passing parameters straight to client methods
- updated aliases for client objects for backward compatibility
- Make filter parameters use constructors for simpler querying
- Minor type definition re-organization
- migrated library to add Typescript support
- removed not needed dependencies
- completely revamped the client with simpler call model (callbacks, promises, http requests separation etc)
- added custom error handling
- added all missing account level, server level endpoints (verifyDKIM for example)
- Initial release