diff --git a/CHANGELOG.md b/CHANGELOG.md index 363ce069..69b679c7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Change Log +## [5.46.6](https://github.com/plivo/plivo-java/tree/v5.46.6) (2026-02-18) +**Feature - Campaign API optional fields support** +- Added `sample3`, `sample4`, `sample5` optional sample message fields to Campaign `creator` and `updater` methods +- Added `termsAndConditionsLink` and `privacyPolicyLink` optional fields to Campaign `creator` and `updater` methods + ## [5.46.5](https://github.com/plivo/plivo-java/tree/v5.46.5) (2026-01-20) **Feature - HA Number support** - Added `haEnable` optional parameter to `PhoneNumberCreator` for enabling HA functionality during phone number rent diff --git a/src/main/java/com/plivo/api/models/campaign/Campaign.java b/src/main/java/com/plivo/api/models/campaign/Campaign.java index 6b8f6060..5eff50c2 100644 --- a/src/main/java/com/plivo/api/models/campaign/Campaign.java +++ b/src/main/java/com/plivo/api/models/campaign/Campaign.java @@ -35,12 +35,12 @@ public class Campaign extends BaseResource { - public static CampaignCreator creator(String brandID,String campaignAlias,String vertical,String usecase,String[] subUsecases,String description,Boolean embeddedLink,Boolean embeddedPhone,Boolean ageGated,Boolean directLending,Boolean affiliateMarketing,Boolean subscriberOptin,Boolean subscriberOptout,Boolean subscriberHelp,String sample1,String sample2,String url, String method, String messageFlow, String helpMessage, String optoutMessage, String optinKeywords, String optinMessage, String optoutKeywords, String helpKeywords) { - return new CampaignCreator(brandID,campaignAlias,vertical,usecase,subUsecases,description,embeddedLink,embeddedPhone,ageGated,directLending,affiliateMarketing,subscriberOptin,subscriberOptout,subscriberHelp,sample1,sample2,url,method,messageFlow,helpMessage,optoutMessage,optinKeywords,optinMessage,optoutKeywords,helpKeywords); + public static CampaignCreator creator(String brandID,String campaignAlias,String vertical,String usecase,String[] subUsecases,String description,Boolean embeddedLink,Boolean embeddedPhone,Boolean ageGated,Boolean directLending,Boolean affiliateMarketing,Boolean subscriberOptin,Boolean subscriberOptout,Boolean subscriberHelp,String sample1,String sample2,String url, String method, String messageFlow, String helpMessage, String optoutMessage, String optinKeywords, String optinMessage, String optoutKeywords, String helpKeywords, String sample3, String sample4, String sample5, String termsAndConditionsLink, String privacyPolicyLink) { + return new CampaignCreator(brandID,campaignAlias,vertical,usecase,subUsecases,description,embeddedLink,embeddedPhone,ageGated,directLending,affiliateMarketing,subscriberOptin,subscriberOptout,subscriberHelp,sample1,sample2,sample3,sample4,sample5,url,method,messageFlow,helpMessage,optoutMessage,optinKeywords,optinMessage,optoutKeywords,helpKeywords,termsAndConditionsLink,privacyPolicyLink); } - public static CampaignUpdater updater(String campaign_id, String reseller_id, String description, String sample1, String sample2, String message_flow, String help_message, String optin_keywords, String optin_message, String optout_keywords, String optout_message, String help_keywords) { - return new CampaignUpdater(campaign_id,reseller_id,description,sample1,sample2,message_flow,help_message,optin_keywords,optin_message,optout_keywords,optout_message,help_keywords); + public static CampaignUpdater updater(String campaign_id, String reseller_id, String description, String sample1, String sample2, String message_flow, String help_message, String optin_keywords, String optin_message, String optout_keywords, String optout_message, String help_keywords, String sample3, String sample4, String sample5, String termsAndConditionsLink, String privacyPolicyLink) { + return new CampaignUpdater(campaign_id,reseller_id,description,sample1,sample2,sample3,sample4,sample5,message_flow,help_message,optin_keywords,optin_message,optout_keywords,optout_message,help_keywords,termsAndConditionsLink,privacyPolicyLink); } public static CampaignImporter importer(String campaign_id, String campaignAlias) { diff --git a/src/main/java/com/plivo/api/models/campaign/CampaignCreator.java b/src/main/java/com/plivo/api/models/campaign/CampaignCreator.java index ba41c592..56da3f62 100644 --- a/src/main/java/com/plivo/api/models/campaign/CampaignCreator.java +++ b/src/main/java/com/plivo/api/models/campaign/CampaignCreator.java @@ -21,6 +21,9 @@ public class CampaignCreator extends Creator { private Boolean affiliateMarketing; private String sample1; private String sample2; + private String sample3; + private String sample4; + private String sample5; private String url; private String method; private String messageFlow; @@ -30,8 +33,10 @@ public class CampaignCreator extends Creator { private String optinMessage; private String optoutKeywords; private String helpKeywords; - - CampaignCreator(String brandID,String campaignAlias,String vertical,String usecase,String[] subUsecases,String description,Boolean embeddedLink,Boolean embeddedPhone,Boolean ageGated,Boolean directLending,Boolean affiliateMarketing, Boolean subscriberOptin,Boolean subscriberOptout,Boolean subscriberHelp,String sample1,String sample2, String url, String method, String messageFlow, String helpMessage, String optoutMessage, String optinKeywords, String optinMessage, String optoutKeywords, String helpKeywords) { + private String termsAndConditionsLink; + private String privacyPolicyLink; + + CampaignCreator(String brandID,String campaignAlias,String vertical,String usecase,String[] subUsecases,String description,Boolean embeddedLink,Boolean embeddedPhone,Boolean ageGated,Boolean directLending,Boolean affiliateMarketing, Boolean subscriberOptin,Boolean subscriberOptout,Boolean subscriberHelp,String sample1,String sample2,String sample3,String sample4,String sample5, String url, String method, String messageFlow, String helpMessage, String optoutMessage, String optinKeywords, String optinMessage, String optoutKeywords, String helpKeywords, String termsAndConditionsLink, String privacyPolicyLink) { this.brandID = brandID; this.campaignAlias = campaignAlias; @@ -47,8 +52,11 @@ public class CampaignCreator extends Creator { this.subscriberOptout = subscriberOptout; this.subscriberHelp = subscriberHelp; this.affiliateMarketing = affiliateMarketing; - this.sample2 = sample2; this.sample1 = sample1; + this.sample2 = sample2; + this.sample3 = sample3; + this.sample4 = sample4; + this.sample5 = sample5; this.url = url; this.method = method; this.messageFlow = messageFlow; @@ -58,6 +66,8 @@ public class CampaignCreator extends Creator { this.optinMessage = optinMessage; this.optoutKeywords = optoutKeywords; this.helpKeywords = helpKeywords; + this.termsAndConditionsLink = termsAndConditionsLink; + this.privacyPolicyLink = privacyPolicyLink; } public String brandID(){ @@ -85,6 +95,21 @@ public String sample2(){ public String sample1(){ return this.sample1; } + public String sample3(){ + return this.sample3; + } + public String sample4(){ + return this.sample4; + } + public String sample5(){ + return this.sample5; + } + public String termsAndConditionsLink(){ + return this.termsAndConditionsLink; + } + public String privacyPolicyLink(){ + return this.privacyPolicyLink; + } public Boolean affiliateMarketing(){ return this.affiliateMarketing; } diff --git a/src/main/java/com/plivo/api/models/campaign/CampaignUpdater.java b/src/main/java/com/plivo/api/models/campaign/CampaignUpdater.java index 36f72ee2..3b442318 100644 --- a/src/main/java/com/plivo/api/models/campaign/CampaignUpdater.java +++ b/src/main/java/com/plivo/api/models/campaign/CampaignUpdater.java @@ -9,6 +9,9 @@ public class CampaignUpdater extends Updater { private String description; private String sample1; private String sample2; + private String sample3; + private String sample4; + private String sample5; private String messageFlow; private String helpMessage; private String optinKeywords; @@ -16,10 +19,12 @@ public class CampaignUpdater extends Updater { private String optoutKeywords; private String optoutMessage; private String helpKeywords; + private String termsAndConditionsLink; + private String privacyPolicyLink; - CampaignUpdater(String campaignId, String resellerId, String description, String sample1, String sample2, + CampaignUpdater(String campaignId, String resellerId, String description, String sample1, String sample2, String sample3, String sample4, String sample5, String messageFlow, String helpMessage, String optinKeywords, String optinMessage, String optoutKeywords, - String optoutMessage, String helpKeywords) { + String optoutMessage, String helpKeywords, String termsAndConditionsLink, String privacyPolicyLink) { super(campaignId); @@ -27,6 +32,9 @@ public class CampaignUpdater extends Updater { this.description = description; this.sample1 = sample1; this.sample2 = sample2; + this.sample3 = sample3; + this.sample4 = sample4; + this.sample5 = sample5; this.messageFlow = messageFlow; this.helpMessage = helpMessage; this.optinKeywords = optinKeywords; @@ -34,6 +42,8 @@ public class CampaignUpdater extends Updater { this.optoutKeywords = optoutKeywords; this.optoutMessage = optoutMessage; this.helpKeywords = helpKeywords; + this.termsAndConditionsLink = termsAndConditionsLink; + this.privacyPolicyLink = privacyPolicyLink; } public String campaignId() { @@ -56,6 +66,26 @@ public String sample2() { return this.sample2; } + public String sample3() { + return this.sample3; + } + + public String sample4() { + return this.sample4; + } + + public String sample5() { + return this.sample5; + } + + public String termsAndConditionsLink() { + return this.termsAndConditionsLink; + } + + public String privacyPolicyLink() { + return this.privacyPolicyLink; + } + public String messageFlow() { return this.messageFlow; } diff --git a/src/main/resources/com/plivo/api/version.txt b/src/main/resources/com/plivo/api/version.txt index 8e276a0c..3892f927 100644 --- a/src/main/resources/com/plivo/api/version.txt +++ b/src/main/resources/com/plivo/api/version.txt @@ -1 +1 @@ -5.46.4 \ No newline at end of file +5.46.6 diff --git a/src/test/java/com/plivo/api/CampaignTest.java b/src/test/java/com/plivo/api/CampaignTest.java index 6ef9ee31..b41a44d0 100644 --- a/src/test/java/com/plivo/api/CampaignTest.java +++ b/src/test/java/com/plivo/api/CampaignTest.java @@ -26,7 +26,7 @@ public void campaignCreateShouldSucceed() throws Exception { expectResponse(fixtureName, 202); String[] sub_usecase = new String[]{"2FA", "MARKETING"}; - Campaign.creator("BCKWPKX", "java sdk camp create", "ENTERTAINMENT", "2FA", sub_usecase, "description", false,false, false, false, true, true,true, true, "sample1", "sample2", null, null, "messageFlow should be minimum 40 char", "helpMessage is mandatory field","optoutMessage should be 40 char", "optinKeywords", " optinMessage", "optoutKeywords", "helpKeywords").create(); + Campaign.creator("BCKWPKX", "java sdk camp create", "ENTERTAINMENT", "2FA", sub_usecase, "description", false,false, false, false, true, true,true, true, "sample1", "sample2", null, null, "messageFlow should be minimum 40 char", "helpMessage is mandatory field","optoutMessage should be 40 char", "optinKeywords", " optinMessage", "optoutKeywords", "helpKeywords", null, null, null, null, null).create(); assertRequest("POST", "10dlc/Campaign/"); } @@ -46,8 +46,8 @@ public void campaignUpdateShouldSucceed() throws Exception { String fixtureName = "campaignUpdateResponse.json"; expectResponse(fixtureName, 202); - - CampaignUpdateResponse response = Campaign.updater("CY5NVUA","","","sample1 updated","","","","","","","","").client(client).update(); + + CampaignUpdateResponse response = Campaign.updater("CY5NVUA","","","sample1 updated","","","","","","","","", null, null, null, null, null).client(client).update(); assertEquals("CY5NVUA", response.getCampaign().getCampaignID()); assertRequest("POST", "10dlc/Campaign/%s/", "CY5NVUA");