Node.js SDK Changelog
Release history for the @getbrevo/brevo Node.js SDK.
April 10, 2026 — v5.0.5
Fixed
- Process endpoints —
duplicate_email_idis now typed as a string (URL to a CSV file) instead of an integer. The legacyin_processstatus value is now handled correctly. - Event endpoints —
contact_propertiesandevent_propertiesnow accept boolean values increateEventandcreateBatchEvents. - Contact endpoints —
attributesnow accepts plain integers increateContactandupdateContact.
March 25, 2026 — v5.0.3
Added
client.event.getEvents()— retrieve a paginated list of custom events, filterable bycontact_id,event_name,object_type,startDate, andendDate.client.event.createBatchEvents()— send multiple events in a single request. Returns aBatchAcceptedResponsewith a confirmation message and queued event count.client.companies.deleteAnAttribute()— delete a CRM attribute by ID.PatchCrmAttributesIdRequest— update a CRM attribute’s display label and selectable option labels, scoped tocompaniesordeals.GetProductDetailsresponse now includesbrandanddescription.CreateUpdateProductRequestand batch product upsert now accept optionalbrandanddescriptionfields.- Balance:
getActiveBalancesApi(),getContactBalances(), andgetSubscriptionBalances()now accept an optionalincludeInternalparameter. - Balance:
getTransactionHistory()now supports filtering bystatusandtransactionType.
Improved
metafield on balance definition requests is now a typed object ({ isInternal?: boolean }) instead of a genericRecord<string, unknown>.metaInfosize limit for products clarified: maximum 20,000 characters total.usersfield on plan verticals is now nullable (Item.Users | null).
March 12, 2026 — v5.0.1
Fixed
GetCampaignStats:appleMppOpensandopensRateare now typed asnumber | null. The API returnsnullwhen no data is available for the campaign period.Order.products: the full set of product fields is now exposed —price,productId,variantId,quantity, andquantityFloat. Previously onlyquantitywas available.GetAccountResponsePlanVerticalsItem.users: now typed as optional/nullable, matching API behavior on certain plan types.createContact(): no longer throws a JSON parse error on204 No Contentresponses (returned when a contact already exists).
Deprecated
transactionalSms.sendTransacSms()— usetransactionalSms.sendTransacSmsAsync()instead. The synchronous variant adds latency by waiting for carrier acknowledgment.
February 11, 2026 — v4.0.1 beta release
Released a beta version of the Node.js SDK (v4.0.1) with a promise-based API, enhanced TypeScript types, standardized error handling, and improved retry logic.