SDK updates: Node.js v5.0.1, PHP v4.0.10, Python v4.0.7
Bug fixes, type corrections, and a deprecation across all three SDKs.
Node.js — @getbrevo/brevo 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.
PHP — getbrevo/brevo-php v4.0.10
Added
- Batch events endpoint:
$client->event->createBatchEvents()to track multiple contact interactions in a single request. getEmailCampaign()accepts a new optionalexcludeHtmlContentflag to omit the HTML body from the response.
Fixed
UpdateContactRequestandCreateContactRequest: boolean values in union-typed attribute maps now serialize correctly. Previously threwJsonException: Cannot serialize value of type boolean.Order::products:OrderProductsItemnow exposes all product fields —price,productId,variantId,quantity,quantityFloat.GetCampaignStats:appleMppOpensandopensRateare now correctly typed as nullable (?int,?float).
Deprecated
sendTransacSms()— usesendAsyncTransactionalSms()instead.
Python — brevo-python v4.0.7
Fixed
GetCampaignStats:apple_mpp_opensandopens_rateare now correctly typed as nullable.Order.products: all product fields are now accessible —price,product_id,variant_id,quantity,quantity_float.create_contact(): correctly handles204 No Contentresponses without raising a deserialization error.
Deprecated
transactional_sms.send_transac_sms()— usetransactional_sms.send_transac_sms_async()instead.