Vonage Java SDK

See CHANGELOG.md on GitHub for a more detailed list of changes.


9.3.1 (8 May 2025)

GitHub Maven Central

  • Improved handling of unknown response types for custom HTTP requests

9.3.0 (7 May 2025)

GitHub Maven Central

  • Added support for native failover in Messages API

9.2.0 (30 Apr 2025)

GitHub Maven Central

  • Added support for custom HTTP request headers via httpConfig

9.1.0 (22 Apr 2025)

GitHub Maven Central

  • Added CustomClient to enable making HTTP requests to any Vonage API with automated (de)serialisation and authentication

9.0.0 (8 Apr 2025)

GitHub Maven Central

  • Removed deprecations (classes, methods, constructors, packages etc.)
  • Removed old Pricing API (was contained in com.vonage.client.account.*)
  • Removed WhatsApp Interactive (Codeless) workflow support in Verify v2 API
  • Internal refactoring and tidy-up of inconsistencies
  • Use of stronger data types / enums in response objects
  • Refactored enums:
    • Moved most enums from inner classes to their own file / class
    • Standardised enum parsing
    • Removed UNKNOWN enums where it is not an actual value
    • Invalid enums now return null instead of throwing IllegalArgumentException to facilitate parsing response data
    • Unified Psd2Request.Workflow and VerifyRequest.Workflow enums (moved to upper level)
    • ListUsersRequest.SortOrder uses enum from com.vonage.client.common.SortOrder
    • com.vonage.client.messages.MessageType replaced by com.vonage.client.common.MessageType enum
  • Refactored Number Insight API to properly support Advanced asynchronous insights
  • Refactored CallInfoPage in Voice API to be aligned with other HAL responses
  • Added get prefix to VideoStream and HlsSettings accessors
  • Refactored Application API capabilities to make configuring webhooks more declarative
  • Added Application.builder(String) as an option for updating an application by ID from scratch
  • Simplified StreamCompositionLayout construction
  • Added convenience method to simplify checking codes in Verify v2 API
  • Renamed com.vonage.client.voice.Endpoint to CallEndpoint and com.vonage.client.voice.ncco.Endpoint to ConnectEndpoint to avoid confusion
  • NumbersClient#listNumbers now returns List<OwnedNumber> instead of ListNumbersResponse
  • linkNumber method in Numbers API now assigns the number to the application by ID

8.20.1 (20 Mar 2025)

GitHub Maven Central

  • Removed brand length validation limit for Verify v2 outbound requests

8.20.0 (19 Mar 2025)

GitHub Maven Central

  • Added support for quantizationParameter in Video API Archive
  • Fixed creation and parsing of custom events in Conversation API
  • Added more data models for read-only event types in Conversation API

8.19.0 (12 Mar 2025)

GitHub Maven Central

  • Implemented Talk and Stream endpoints in Conversation API
  • Added data models for most missing read-only event types in Conversation API

8.18.0 (5 Mar 2025)

GitHub Maven Central

  • Added support for MMS text, file and multimedia content messages

8.17.0 (28 Feb 2025)

GitHub Maven Central

  • Added domain and user parameters to SIP Connect NCCO action
  • Updated and added missing Voice API documentation for all request & response parameters
  • Improved request parameter builders and deprecated legacy method signatures
  • Refactored Number Insight API auth to use header instead of query parameters

8.16.2 (5 Feb 2025)

GitHub Maven Central

  • Added disconnected_by to EventWebhook in Voice API
  • Fixed Answer webhook call ID deserialisation in Voice API
  • Improved com.vonage.client.voice.Call documentation

8.16.1 (4 Feb 2025)

GitHub Maven Central

  • Made from parameter in Conversation API event creation optional
  • Re-introduced URL domain validation for call recording downloads
  • Updated JWT library version

8.16.0 (31 Jan 2025)

GitHub Maven Central

  • Added fine-grained logging for HTTP requests & responses
  • Improved SMS API documentation
  • Deprecated Fraud Detection / Number Insight v2 API
  • Deprecated real_time_data in Advanced Number Insight request

8.15.1 (19 Dec 2024)

GitHub Maven Central

  • Removed URL domain validation when attempting to download a call recording

8.15.0 (3 Dec 2024)

GitHub Maven Central

  • Added support for HTTP proxying
  • Refactored SMS API auth to use header instead of query parameters
  • Bumped Jackson version to 2.18.2

8.14.0 (14 Nov 2024)

GitHub Maven Central

  • Added maxBitrate for Video archives
  • Improved handling of HTTP connection responses

8.13.0 (28 Oct 2024)

GitHub Maven Central

  • Added support for Verify custom templates

8.12.0 (21 Oct 2024)

GitHub Maven Central

  • Added network_apis capability to Application API
  • Added asynchronous DTMF input mode and listener endpoints to Voice API
  • Improved validation and documentation of Input NCCO action in Voice API
  • Added endpoint_type to Answer webhook in Voice API
  • Added leg_persistence_time to Voice and signed_callbacks to Rtc Application capabilities
  • Added missing name property to Experience Composer in Video API
  • Added missing app_id property for owned numbers in Numbers API
  • Added end-to-end encryption support for creating Video sessions
  • Fixed serialisation of WhatsApp Location and Viber Video messages

8.11.0 (25 Sep 2024)

GitHub Maven Central

  • Ability to append custom user agent string
  • Messages API updates
    • Added RCS channel
    • Added WhatsApp Button inbound message type
    • Added new / missing properties to InboundMessage
    • Added 'Update Message' endpoint (for revoking and acknowledging messages)

8.10.0 (2 Aug 2024)

GitHub Maven Central

  • Numbers API improvements:
    • Added missing fields and documentation
    • Added builders and deprecated setters
  • Fixed state being included in Number Verification auth URL when null
  • Deprecated Meetings API

8.9.4 (25 Jul 2024)

GitHub Maven Central

  • Removed UUID validation for canSpeak and canHear in ConversationAction
  • Additional input validation in ConnectAction
  • Added builder to DtmfSettings

8.9.3 (23 Jul 2024)

GitHub Maven Central

  • Fixed inaccessible GenericEvent body in Conversation API
  • Bumped commons-codec version to 1.17.1

8.9.2 (12 Jul 2024)

GitHub Maven Central

  • Bumped com.vonage:jwt version to 2.0.0 (reduced dependency footprint)
  • Made timestamp optional in Conversion API
  • checkVerificationCode in Verify (v2) returns response body
  • Fixed Nepali language code in Voice speech settings
  • Automatically set random_from_number in Voice call if from is unspecified
  • Fixed Voice event webhook parsing issue

8.9.1 (9 Jul 2024)

GitHub Maven Central

  • Fixed listEvents in Conversation API
  • Bumped com.vonage:jwt version to 1.1.3

8.9.0 (20 Jun 2024)

GitHub Maven Central

  • Added support for Number Verification API
  • Added User-to-User header in Voice Connect SIP endpoint
  • Added missing custom headers field in SipEndpoint
  • Reduce minimum Verify v2 channel timeout to 15 seconds

8.8.1 (30 May 2024)

GitHub Maven Central

  • Added SIM Swap API
  • Refactored auth methods

8.7.0 (16 May 2024)

GitHub Maven Central

  • Added more languages for text-to-speech in Voice API
  • Added time-to-live field for outbound MMS messages
  • Added message reply context to Whatsapp outbound requests
  • Added origin network code for inbound SMS and MMS messages

8.6.0 (18 Apr 2024)

GitHub Maven Central

  • Added Experience Composer to Video API
  • Added Verify capability to Application API
  • Fixed regression in createSession Video API endpoint
  • muteSession endpoint in Video API now returns ProjectDetails

8.5.0 (12 Apr 2024)

GitHub Maven Central

  • Added Audio Connector and Live Captions endpoints to Video API
  • Added publisheronly role for token generation in Video API
  • Added Next Workflow endpoint to Verify v2 API
  • Updated request validation logic in Verify v2 API
  • Removed unused com.vonage.client.sms.HexUtil class
  • Global default configuration for Jackson ObjectMapper used on all domain objects in the SDK

8.4.0 (5 Apr 2024)

GitHub Maven Central

  • Added Conversation API
  • Bumped com.vonage:jwt version to 1.1.1

8.3.0 (12 Feb 2024)

GitHub Maven Central

  • Sender (from) parameter in Verify v2 WhatsApp workflows is now required
  • Improved SMS MessageEvent

8.2.0 (29 Jan 2024)

GitHub Maven Central

  • Added Number Insight v2 API
  • Implemented toString, equals and hashCode on all JSON objects for easier debugging
  • Refactored / updated Voice API webhooks and NCCOs
  • Added Builder for SMS and Silent Auth Verify v2 workflows

8.1.0 (4 Jan 2024)

GitHub Maven Central

  • Added various new fields in Messages API for SMS, WhatsApp, MMS
  • Added optional from parameter to Verify v2 SMS workflow
  • Fixed length not being set in VerifyClient.verify overload method
  • Fixed incorrect HTTP method for updating Video Broadcast layout

8.0.0 (30 Nov 2023)

GitHub Maven Central

  • Maven coordinates changed to com.vonage:server-sdk
  • Implemented Video API (com.vonage.video package)
  • Added redirect_url parameter to SilentAuthWorkflow
  • Use String instead of UUID in VoiceClient call modification methods
  • Added public verifyRequestSignature method to RequestSigning
  • Bumped Jackson version to 2.16.0
  • Removed deprecated classes & methods
    • Payments over the Phone NCCO
    • WAPPush SMS message type
    • Dependency on jakarta.servlet and all classes / methods which use HttpServletRequest
    • Dependency on jackson-dataformat-hal (as used in ListSecretsResponse)
    • ip_address in AdvancedInsightRequest and CheckRequest
    • Locale enum in verify2 package
    • LineType in VerifyRequest
    • Call default public constructor
    • Setter methods in Voice API
    • ModifyCallResponse and Recording classes
    • modifyCall method in VoiceClient
    • legacyutils, logging and sns packages
    • All references to snsBaseUri (in HttpConfig)

7.11.1 (7 Nov 2023)

GitHub Maven Central

  • Deprecated legacy utilities and SNS
  • Published relocation metadata

7.11.0 (31 Oct 2023)

GitHub Maven Central

  • Added JWT signature verification for signed callbacks to Voice and Messages
  • Improved modifyCall and downloadRecording in Voice API
  • Bumped com.vonage:jwt version to 1.1.0

7.10.0 (20 Oct 2023)

GitHub Maven Central

  • Added more locales to Verify v2 and Meetings APIs
  • Added check_url field in Verify response for synchronous Silent Authentication
  • Bumped com.fasterxml.jackson version to 2.15.3

7.9.0 (28 Sep 2023)

GitHub Maven Central

  • Added endpoint to retrieve pricing for all countries to AccountClient
  • Use account's primary API key for secret management if not specified in AccountClient
  • Added versioning to Meetings API endpoint paths

7.8.0 (7 Sep 2023)

GitHub Maven Central

  • Added capability to configure request timeouts (default is 60 seconds)
  • Deprecated custom HTTP client implementation setting

7.7.0 (10 Aug 2023)

GitHub Maven Central

  • Added Users API implementation
  • Added missing fields to Application, capabilities and webhooks
  • Removed PageList (replaced by HalPageResponse)
  • Improved Application API documentation
  • Fixed strict UUID validation in VoiceClient

7.6.0 (30 Jun 2023)

GitHub Maven Central

  • Added Meetings API implementation
  • Added Proactive Connect API support for Lists, Items and Events.
  • Updated validation for Subaccounts name and secret

7.5.0 (14 Jun 2023)

GitHub Maven Central

  • Added Subaccounts API implementation
  • Added custom PIN functionality to Verify v1
  • Fixed Silent Auth action URL webhook deserialization issue

7.4.0 (18 May 2023)

GitHub Maven Central

  • Implements Verify v2 API
  • Advanced Machine Detection added to Voice API
  • Fixed incorrect VbcEndpoint type
  • Removed hard dependency on jakarta.servlet and jakarta.xml.bind
  • Deprecated uses of classes & methods which rely on javax.servlet

7.3.0 (14 Apr 2023)

GitHub Maven Central

  • Viber video message now requires setting duration and file size
  • Numbers API now uses Basic auth in header rather than query params
  • Made jakarta.servlet-api a required dependency (replacing javax.servlet as compileOnly)
  • Use jakarta.xml.bind-api instead of javax.xml.bind
  • Added premium and level fields to Start Talk request
  • Refactored TalkPayload to use Builder pattern
  • Added vbc and app endpoint types for voice calls
  • Fixed incorrect serialization of random_from_number
  • Added Builder for constructing Call request
  • Added validation for UUIDs, URLs and request objects in VoiceClient
  • Made internal request classes for Voice API package-private
  • Deprecated public-facing usages of CallModifer & ModifyCallPayload
  • Deprecated setters on classes in Voice API in favor of builders / constructors
  • com.vonage.client.voice.WebSocketEndpoint now uses Map for headers

7.2.0 (8 Mar 2023)

GitHub Maven Central

  • Updates to Messages v1:
    • Added InboundMessage webhook class
    • Fixed timestamp format deserialization for MessageStatus (now returns an Instant)
    • Added Viber file and video message types
    • Added Action button support to Viber image and text messages
    • Added WhatsApp Sticker message type
    • Added WhatsApp Location custom message type
    • Added WhatsApp Product custom message types
    • client_ref character limit increased to 100
    • Expanded valid message types to accommodate webhooks (MMS text, WhatsApp order, reply & unsupported)
  • Deprecated Pay NCCO action
  • Deprecated WAPPush SMS
  • Bumped dependency versions

7.1.1 (16 Nov 2022)

GitHub Maven Central

  • Bumped com.fasterxml.jackson dependency version to 2.14.0

7.1.0 (25 Aug 2022)

GitHub Maven Central

  • Added convenience method to MessagesClient for using the Messages Sandbox endpoint
  • Added network field to VerifyResponse
  • Added missing documentation and validation to requests and responses in Verify API
  • Added estimated_price_messages_sent to CheckResponse and VerifyDetails
  • Updated VerifyStatus enum values
  • Fixed MessageResponseException deserialization when response body is empty
  • Fixed incorrect Content-Type header for verify and check endpoints
  • Deprecated request_type in VerifyRequest
  • Deprecated ip_address in CheckRequest

7.0.0 (11 Aug 2022)

GitHub Maven Central

  • Removed SMS Search API
  • Deprecated Redact client
  • Use vonage-jwt-jdk:1.0.2 library instead of nexmo-jwt-jdk:1.0.1
  • Ensure User-Agent is set in request headers
  • Allow alphanumeric characters for SMS and MMS sender fields in Messages API
  • WhatsappRequest sender must now be an E164 number
  • Fixed incorrect restrictions on WhatsappTemplateRequest
    • Policy is now optional
    • Default locale is now en
    • Locale is now an enum rather than String
    • parameters is now List<String>
  • Removed dependency on commons-io and commons-lang3
  • Ensured User-Agent is set in request headers
  • Added Premium text-to-speech flag in TalkAction NCCO
  • Removed support for legacy voiceName parameter
  • Updated SMS error status codes
  • Added support for voice payments using NCCO action
  • Updated NCCO classes
    • Fixed Action deserialization (issue #373)
    • Permit Object values for WebSocketEndpoint headers
    • Removed varargs headers method in WebSocketEndpoint.Builder
    • Made Builder constructors package-private
    • Added headers field to SipEndpoint
    • Use java.net.URI instead of String for URI fields
  • Updated Number Insight to be consistent with API specification
    • Deprecated IP Address
    • Added missing InsightStatus codes
    • Added documentation to Insight Response fields
    • Moved AdvancedInsight enums to separate files
    • Added real_time_data to AdvancedInsightResponse

6.5.0 (20 Jun 2022)

GitHub Maven Central

  • Added Messages v1 API implementation
  • Added get-full-pricing endpoint
  • Added Content-Type and Accept headers in requests where applicable
  • Substantial internal refactoring

6.4.2 (14 Apr 2022)

GitHub Maven Central

  • Added call_uuid to webhook call event.
  • Bumped dependency versions

6.4.0 (28 May 2021)

GitHub Maven Central

  • Adding Random From Number Feature for the Voice API, if set to true, the from number will be randomly selected from the pool of numbers available to the application making the call.
  • adjusting operator used to check json payloads
  • Adding extra parsing for top level Roaming Status in Advanced Number Insights

6.3.0 (20 May 2021)

GitHub Maven Central

  • Adding Inbound SMS message validation for JSON based POST requests

6.2.0 (11 Mar 2021)

GitHub Maven Central

  • Adding entityId and contentId fields to SMS messages for India's DLT compliance
  • Adding detail and detailEnum fields to call events, this will provide a switchable way for folks to view the newly minted details coming off of calls

6.1.0 (17 Dec 2020)

GitHub Maven Central

  • Adding Language and Style to the Voice Talk Action and the Talk Request
  • Marking VoiceName as Deprecated