Releases: infobip/infobip-api-java-client
6.1.0
[ 6.1.0 ] - 2025-04-09
All changes, including breaking changes, are addressed and explained in the list bellow.
If you find out that something was not addressed properly, please submit an issue.
Added
- Most recent feature set for:
- Added new Viber Outbound Content type:
LIST
. - Added new MessagesApi message body types:
PRODUCT
andMIXED
. - Added new WhatsAppInteractive payment status and payment details type:
UPI_INTENT
. - Added support for
WEBSOCKET
option in call routing endpoint. - Added WhatsAppWebhookType support:
- Added support for
INFECTED_CONTENT
andINTERACTIVE_FLOW_REPLY
types in theWhatsAppWebhookType
enum.
Changed
- WhatsAppWebhookPaymentTransactionNotification model, previously nested enum 'type' and 'status' are now extracted to a separate class.
- WhatsAppWebhookPaymentNotification model, previously nested enum 'currency' is now extracted to a separate class.
- Updated
WhatsAppTemplateCardContent.buttons
field type fromList<WhatsAppTemplateButtonContent>
→List<WhatsAppCardAllowedTemplateButtonContent>
. - Updated
WhatsAppTemplatePublicApiRequest.structure
field type fromWhatAppTemplateStructureApiData
→Object
. - Updated
CallsUpdateScenarioResponse.lastUsageDate
field type fromString
→LocalDate
. - Updated
CallsSearchResponse.lastUsageDate
field type fromString
→LocalDate
. - Removed
EmailWebhookTrackReport
andEmailWebhookTrackResponse
in favor of a unified class:EmailWebhookTrackingPayload
. - Updated
FormsRequest.formType
field type fromFormType
→String
. - Removed
CallSipTrunkLocation
enum class, now processed as aString
. - Updated
WhatsAppTemplateEditPublicApiRequest
category
field:CategoryEnum
inner enum replaced by the existingWhatsAppCategory
class enum value. - Updated
WhatsAppTemplatePublicApiRequest
category
field:CategoryEnum
inner enum replaced by the existingWhatsAppCategory
class enum value. - Replaced
WhatsAppWebhookAddress
type
enum withString
to support more options. - Fixed
WhatsAppWebhookContact
birthday
field type: changed fromOffsetDateTime
toLocalDate
. - Removed
WhatsAppWebhookPaymentNotification
CurrencyEnum
inner enum class, replaced by the existingWhatsAppPaymentStatus
class. - Removed
WhatsAppTemplateAllowedOrderPaymentDetails
class, replaced by the unifiedWhatsAppInteractiveAllowedOrderPaymentDetails
class. - Fixed Javadoc.
Removed
- Removed deviceDetails and networkId fields
MessagesApiDeliveryResult
.
6.0.0
[ 6.0.0 ] - 2025-02-17
🎉 NEW Major Version of infobip-api-java-client
.
All changes, including breaking changes, are addressed and explained in the list bellow.
If you find out that something was not addressed properly, please submit an issue.
Added
- Most recent feature set for:
- Infobip Messages API.
- Footer support for Messages API Message. For additional details check Messages API documentation.
- Add calendar event button support for Messages API Message. For additional details check Messages API documentation.
- Card options for Carousel and Rich Link body types in Messages API Message. For additional details check Messages API documentation.
- Infobip Voice API.
- Support for Calls Configuration.
- Infobip SMS API.
- Infobip 2FA API.
- Infobip Email API.
- Support for Email IP Management instead of set of deprecated Email IP endpoints. Check Email API documentation for additional details.
- Infobip WhatsApp API.
- Infobip Viber API.
- Infobip WebRTC API.
- Infobip Moments.
- Infobip MMS API.
- Introduced
/mms/2/messages (V2)
replacing the/mms/1/advanced (V1)
endpoint. - Introduced
/mms/2/reports (V2)
replacing/mms/1/reports (V1)
endpoint. - Introduced
/mms/2/logs (V2)
replacing/mms/1/logs (V1)
endpoint.
- Introduced
- Infobip Messages API.
- Added new Calls error code type:
MACHINE_DETECTED
. - Added support for
CallsProviderSipTrunkUpdateRequest
. - Created
RawJsonDeserializer
to handle raw JSON deserialization.
Changed
-
General
- Unified
MessageResponse
,MessageResponseDetails
,MessageGroupError
,SendingSpeedLimit
andSpeedLimitTimeUnit
. - Updated
MessagesApiMessageGeneralStatus
– Adjustments due to API updates. - Updated
DeprecationChecker
logging level fromWARNING
toINFO
when the endpoint is only deprecated without a defined sunset date.
- Unified
-
Mms API
- Introduced the new
MmsMessage
class to replaceMmsAdvancedMessage
, reflecting the latest state of the API for MMS messaging.
Updated request classes by replacingMmsAdvancedRequest
with the newMmsRequest
class, reflecting the latest state of the API. - Updated sending message function: use
sendMmsMessages
instead ofsendMmsMessage
.
- Introduced the new
-
Voice API
- Adjusted IVR models in script processing. Scenario scripting is now implemented as a raw string to increase usability of the feature. Scripts should be passed as strings to the IVR request model in all upcoming SDK versions.
- Updated
CallsUpdateScenarioRequest.script
field type fromList<CallsScriptInner>
→String
. - Updated
CallsSearchResponse.script
andelse
fields type fromList<Object>
→String
. - Updated
CallsUpdateScenarioResponse.script
field type fromObject
→String
.
- Updated
- Updated
CallsGetVoicesResponses.voices
field type fromList<CallsVoice>
→List<CallsSynthesisVoice>
. - Updated
CallsSearchResponse.lastUsageDate
field type fromOffsetDateTime
→String
. - Updated
CallsSpeechCaptureRequest.language
field type fromCallsLanguage
→CallTranscriptionLanguage
. - Updated
CallsTranscription.language
field type fromCallsLanguage
→CallTranscriptionLanguage
. - Updated
CallsUpdateScenarioResponse.lastUsageDate
field type fromOffsetDateTime
→String
. - Removed
CallsVoice
– Certain fields removed due to API updates. - Removed
CallRoutingUrlSecurityConfigType
– Unified intoSecurityConfigType
enumeration class. - Removed
CallsUrlSecurityConfigType
– Unified intoSecurityConfigType
enumeration class. - Fixed Number Masking content schema when uploading audio files.
- Fixed Number Masking UTC date-time deserialization in setup response model.
- Fixed: Replaced body content in
ConferencePlayFileRequest
fromCallsPlayRequest
toCallsConferencePlayRequest
.
- Adjusted IVR models in script processing. Scenario scripting is now implemented as a raw string to increase usability of the feature. Scripts should be passed as strings to the IVR request model in all upcoming SDK versions.
-
Email API
- Updated
EmailSuppressionInfo.createdDate
field type fromString
→OffsetDateTime
. - Removed
EmailSingleMessageStatus
– Now integrated into the unifiedMessageStatus
class. - Updated
EmailAddDeleteSuppressionType
– Pending further clarification.
- Updated
-
Messaging API
- Removed
MessagesApiRequestOptions
– Now replaced byMessagesApiDefaultMessageRequestOptions
class. - Removed
MessagesApiSpeedLimitTimeUnit
– Now replaced by the unifiedSpeedLimitTimeUnit
class.
- Removed
-
Viber API
- Removed
ViberMessageRequestSchedulingSettings
– Now useViberRequestSchedulingSettings
. - Updated
ViberInboundContent.typeEnum
→ViberInboundContentType
. - Updated
ViberOutboundContent.typeEnum
→ViberOutboundContentType
. - Removed
ViberMessageStatus
– Now unified intoMessageStatus
. - Removed
ViberSpeedLimitTimeUnit
– Now unified intoSpeedLimitTimeUnit
. - Removed
ViberWebhookInboundReport
– Now useViberInboundMessageViberInboundContent
.
- Removed
-
WhatsApp API
- Removed unsupported enumeration values from
WhatsAppWebhookType
. - Updated
WhatsAppWebhookReferralMediaVideo
,WhatsAppWebhookReferralMediaImage
,WhatsAppWebhookMediaVideo
– Introduced newtype
field, no longer extendingWhatsappWebhookReferalMedia
. - Refactored
WhatsAppWebhookReferralMedia
– Changed from an abstract class to a normal class. - Removed
context
field from variousWhatsAppWebhook
message types:WhatsAppWebhookQuickReplyContent
WhatsAppWebhookListReplyContent
WhatsAppWebhookInboundAudioMessage
WhatsAppWebhookButtonReplyContent
WhatsAppWebhookInboundVoiceMessage
WhatsAppWebhookInboundVideoMessage
WhatsAppWebhookInboundTextMessage
WhatsAppWebhookInboundStickerMessage
WhatsAppWebhookInboundLocationMessage
WhatsAppWebhookInboundImageMessage
WhatsAppWebhookInboundDocumentMessage
WhatsAppWebhookInboundContactMessage
- Removed
integrationType
,pairedMessageId
, andcallbackData
fields fromWhatsAppWebhookInboundMessageData
. - Removed
INFECTED_CONTENT
,INTERACTIVE_EXTENSION_REPLY
,UNSUPPORTED
subtypes fromWhatsAppWebhookInboundMessage
abstract class. - Replaced
WhatsAppValidityPeriodTimeUnit
class withValidityPeriodTimeUnit
. - Removed no longer supported 50 business-initiated conversations messaging tear limit for WhatsApp senders.
- Updated
WhatsAppPhoneNumberRequest.typeEnum
→WhatsAppPhoneNumberTypeEnum
. - Updated
WhatsAppOtpRequest.typeEnum
→WhatsAppNumberType
. - Removed
structure
field fromWhatsAppDefaultUtilityTemplatePublicApiRequest
. - Removed
structure
field fromWhatsAppTemplatePublicApiRequest
. - Removed
groupId
field fromWhatsAppContext
. - Refactored
WhatsAppDefaultTemplateStructureApiData
– Now an implementation ofWhatsAppTemplateStructureApiData
. - Refactored
WhatsAppAuthenticationTemplateStructureApiData
– Now an implementation ofWhatsAppTemplateStructureApiData
.
- Removed unsupported enumeration values from
-
WebRTC API
- Updated
WebRtcValidityWindow.acceptableDays
typeEnum →DeliveryDay
. - Removed
applicationId
field fromWebRtcTokenRequestModel
. - Updated
WebRtcValidityWindow.LayoutsEnum
→WebRtcLayout
. - Updated
WebRtcLocalization.typeEnum
→WebRtcLocalizationType
. - Updated
WebRtcWebRtcDestination
→WebRtcCallsDestination
. - Removed
fcmServerKey
field fromWebRtcAndroidPushNotificationConfig
.
- Updated
Removed:
- Deprecated functions for sending Viber
Image
,File
, andText
messages have been removed. UseViberApi.sendViberMessages
to send messages. - All the Calls IVR script related class and from now on all the scripts are processed as
String
:CallsCallApi
CallsCapture
CallsCollect
CallsDial
CallsDialToMany
CallsDialToWebRTC
CallsDialToConversations
CallsForEach
CallsGoTo
CallsHangup
CallsIfThenElse
CallsMachineDetection
CallsPause
CallsPlay
CallsPlayFromRecording
CallsRecord
CallsRepeatUntil
CallsRepeatWhile
CallsSay
CallsSendSms
CallsSetVariable
CallsSwitchCase
CallsWhileDo
These changes align the SDK with the current API specification, ensuring consistency and reliability in future updates.
5.1.0
5.0.0
[ 5.0.0 ] - 2024-12-06
🎉 NEW Major Version of infobip-api-java-client
.
All changes, including breaking changes, are addressed and explained in the list bellow.
If you find out that something was not addressed properly, please submit an issue.
Added
- Most recent feature set for:
- Infobip SMS API
- Introduced
/sms/3/messages (V3)
replacing the/sms/2/text/advanced (V2)
and/sms/2/binary/advanced (V2)
endpoints. - Introduced
/sms/3/reports (V3)
replacing/sms/1/reports (V1)
endpoint. - Introduced
/sms/3/logs (V3)
replacing/sms/1/logs (V1)
endpoint.
- Introduced
- Infobip Email API
- Infobip Voice API
- Infobip SMS API
Changed
- Fixes and changes
- Introduced the new SmsMessage class to replace
SmsTextualMessage
andSmsBinaryMessage
, providing a unified structure for SMS messaging. - Added a content field within
SmsMessage
to define the message content. This supports both textual and binary messages, which can be created using SmsTextContent or SmsBinaryContent, respectively. - Unified request classes by replacing
SmsAdvancedTextualRequest
andSmsAdvancedBinaryRequest
with the new SmsRequest class. - Consolidated sending functions: use
sendSmsMessages
instead of thesendSmsMessage
andsendBinarySmsMessage
functions. - Changed 'sentAt', 'doneAt' field type in MmsReport from String to OffsetDateTime since it didn't correspond to the state of the endpoint.
- Across all voice models, the 'applicationId' field has been removed and replaced with the 'platform' field, as it better reflects the state of the endpoint.
- Removed delivery time window configuration classes (
SmsDeliveryTimeWindow
,MmsDeliveryTimeWindow
,ViberDeliveryTimeWindow
,CallRoutingAllowedTimeWindow
,CallsDeliveryTimeWindow
,SmsDeliveryTimeWindow
,CallsTimeWindow
) in favor of a unified class: DeliveryTimeWindow - Removed delivery time configuration classes (
SmsDeliveryTimeFrom
,SmsDeliveryTimeTo
,MmsDeliveryTime
,ViberDeliveryTime
,CallsTimeWindowPoint
,WebRtcTimeOfDay
,CallRoutingAllowedTimeFrom
,CallRoutingAllowedTimeTo
,WebRtcTimeOfDay
) in favor of a unified class: DeliveryTime - Removed URL options configuration classes (
MessagesApiUrlOptions
,ViberUrlOptions
,WhatsAppUrlOptions
) in favor of a unified class: UrlOptions - Removed platform configuration class (
ViberPlatform
,MessagesApiPlatform
) in favor of a unified class: Platform - Removed TurkeyIys options configuration classes (
MessagesApiTurkeyIysOptions
,ViberTurkeyIysOptions
,SmsTurkeyIysOptions
) in favor of a unified class: TurkeyIysOptions - Removed delivery day enumeration classes (
SmsDeliveryDay
,MmsDeliveryDay
,CallsDeliveryDay
,CallRoutingAllowedDay
) in favor of a unified class: DeliveryDay - Removed recipient type enumeration classes (
SmsIysRecipientType
,ViberRecipientType
,MessagesApiRecipientType
) in favor of a unified class: IysRecipientType - Removed validity period configuration classes (
ViberValidityPeriod
,MessagesApiValidityPeriod
) in favor of a unified class: ValidityPeriod - Removed validity period time unit enumeration classes (
ViberValidityPeriodTimeUnit
,MessagesApiValidityPeriodTimeUnit
) in favor of a unified class: ValidityPeriodTimeUnit
- Introduced the new SmsMessage class to replace
4.4.0
[ 4.4.0 ] - 2024-11-19
All changes, including breaking changes, are addressed and explained in the list bellow.
If you find out that something was not addressed properly, please submit an issue.
Added
- Most recent feature set for:
Changed
- Fixes and changes
- Changed 'description' field name in MessagesApiMessageListBody to 'subtext'.
- Removed 'messageCount' field in MessagesApiWebhookEventTextContent since it didn't correspond to the state of the endpoint.
- Documentation
- Fixed Javadoc.
4.3.1
[ 4.3.1 ] - 2024-06-05
Added
- Most recent Infobip SMS API feature set.
Changed
-
Fixes and changes
- Changed SmsTurkeyIysOptions model, previously nested enum 'RecipientTypeEnum' is now extracted to a separate class: SmsIysRecipientType.
- Expanded ApiExceptionDetailsResolver model with additional error response that the API might return.
-
Documentation
- Fixed Javadoc.
4.3.0
[ 4.3.0 ] - 2024-03-19
All changes, including breaking changes, are addressed and explained in the list bellow.
If you find out that something was not addressed properly, please submit an issue.
Added
- Support for Infobip Messages API.
- Most recent feature set for:
Changed
- Removed classes and unified structures
- Removed basic url security configuration classes (
CallsBasicUrlSecurityConfig
,CallRoutingBasicUrlSecurityConfig
) in favor of a unified class: BasicSecurityConfig - Removed hmac algorithm class (
CallsHmacAlgorithm
) in favor of a unified class: HmacAlgorithm - Removed hmac url security configuration classes (
CallRoutingHmacUrlSecurityConfig
,CallsHmacUrlSecurityConfig
) in favor of a unified class: HmacSecurityConfig - Removed url security configuration classes (
CallRoutingUrlSecurityConfig
,CallsUrlSecurityConfig
) in favor of a unified class: SecurityConfig
- Removed basic url security configuration classes (
- Fixes and changes
- Changed CallRoutingRecording model, previously nested enum 'RecordingTypeEnum' is now extracted to a separate class: CallRoutingRecordingType.
- Changed 'endpoint' field type in CallsBulkCall from CallEndpoint to CallsBulkEndpoint since it didn't correspond to the state of the endpoint.
- Changed 'endpoint' field type in CallsBulkCallRequest from CallEndpoint to CallsBulkEndpoint since it didn't correspond to the state of the endpoint.
- Fixed some of the enum values in TfaLanguage since they didn't correspond to the state of the endpoint.
- Removed 'record' field in CallsClickToCallMessage since it is not supported on the API side.
- Removed 'values' field in ViberOutboundFileContent since it is not supported on the API side.
- Removed 'values' field in ViberOutboundImageContent since it is not supported on the API side.
- Removed 'values' field in ViberOutboundVideoContent since it is not supported on the API side.
- Changed 'reports' field name in ViberWebhookReportResponse to 'results'.
- Changed 'callbackData' field type in ViberWebhooks from Object to String since it didn't correspond to the state of the endpoint.
- Changed WhatsAppTemplateApiResponse by making it an abstract class, serving as a base for WhatsAppAuthenticationTemplateApiResponse, WhatsAppDefaultMarketingTemplateApiResponse, WhatsAppDefaultUtilityTemplateApiResponse.
- Changed 'results' field in WhatsAppWebhookInboundContactMessage to be initialized to an empty list rather than null.
- Changed 'results' field in WhatsAppWebhookInboundMessageResult to be initialized to an empty list rather than null.
- Removed 'contact' field in WhatsAppWebhookInboundMessageData since it didn't correspond to the state of the endpoint.
- Changed WhatsAppWebhookReferral model, previously nested enum 'SourceTypeEnum' is now extracted to a separate class: WhatsAppWebhookReferralSourceType.
- Changed WhatsAppWebhookReferralMedia by making it an abstract class, serving as a base for WhatsAppWebhookReferralMediaImage, WhatsAppWebhookReferralMediaVideo.
- Documentation
- Fixed Javadoc.
Removed
- Models for Receive WhatsApp Deleted Reports webhook since it is no longer part of Infobip's product stack.
- Unused model classes
4.2.0
4.1.2
Fixed
- Issue that caused the number of query parameters for 'bulkId' & 'messageId' to be squared when making getOutboundSmsMessageLogsDefinition call in SmsApi.
- Issue that caused the number of query parameters for 'sender' to be squared when making getWhatsappSendersQualityDefinition call in WhatsAppApi.
4.1.1
Added
guava
dependency to tagearly-access
endpoints with@Beta
annotation.- Most recent Infobip WhatsApp API feature set.
Changed
- Expanded WhatsAppTemplateDataContent model with additional field supporting
WhatsAppTemplateCarouselContent
that the API might return. - Early access endpoints in WhatsAppApi are tagged with
@Beta
annotation - Fixed Javadoc.