Skip to content

Commit f6861bf

Browse files
Merge pull request #309 from plivo/add-campaign-optional-fields
feat: add sample3-5 and policy links to campaign create/update
2 parents ee3e05c + a60c5db commit f6861bf

6 files changed

Lines changed: 73 additions & 13 deletions

File tree

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Change Log
22

3+
## [5.46.6](https://github.com/plivo/plivo-java/tree/v5.46.6) (2026-02-18)
4+
**Feature - Campaign API optional fields support**
5+
- Added `sample3`, `sample4`, `sample5` optional sample message fields to Campaign `creator` and `updater` methods
6+
- Added `termsAndConditionsLink` and `privacyPolicyLink` optional fields to Campaign `creator` and `updater` methods
7+
38
## [5.46.5](https://github.com/plivo/plivo-java/tree/v5.46.5) (2026-01-20)
49
**Feature - HA Number support**
510
- Added `haEnable` optional parameter to `PhoneNumberCreator` for enabling HA functionality during phone number rent

src/main/java/com/plivo/api/models/campaign/Campaign.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,12 @@ public class Campaign extends BaseResource {
3535

3636

3737

38-
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) {
39-
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);
38+
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) {
39+
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);
4040
}
4141

42-
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) {
43-
return new CampaignUpdater(campaign_id,reseller_id,description,sample1,sample2,message_flow,help_message,optin_keywords,optin_message,optout_keywords,optout_message,help_keywords);
42+
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) {
43+
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);
4444
}
4545

4646
public static CampaignImporter importer(String campaign_id, String campaignAlias) {

src/main/java/com/plivo/api/models/campaign/CampaignCreator.java

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ public class CampaignCreator extends Creator<CampaignCreateResponse> {
2121
private Boolean affiliateMarketing;
2222
private String sample1;
2323
private String sample2;
24+
private String sample3;
25+
private String sample4;
26+
private String sample5;
2427
private String url;
2528
private String method;
2629
private String messageFlow;
@@ -30,8 +33,10 @@ public class CampaignCreator extends Creator<CampaignCreateResponse> {
3033
private String optinMessage;
3134
private String optoutKeywords;
3235
private String helpKeywords;
33-
34-
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) {
36+
private String termsAndConditionsLink;
37+
private String privacyPolicyLink;
38+
39+
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) {
3540

3641
this.brandID = brandID;
3742
this.campaignAlias = campaignAlias;
@@ -47,8 +52,11 @@ public class CampaignCreator extends Creator<CampaignCreateResponse> {
4752
this.subscriberOptout = subscriberOptout;
4853
this.subscriberHelp = subscriberHelp;
4954
this.affiliateMarketing = affiliateMarketing;
50-
this.sample2 = sample2;
5155
this.sample1 = sample1;
56+
this.sample2 = sample2;
57+
this.sample3 = sample3;
58+
this.sample4 = sample4;
59+
this.sample5 = sample5;
5260
this.url = url;
5361
this.method = method;
5462
this.messageFlow = messageFlow;
@@ -58,6 +66,8 @@ public class CampaignCreator extends Creator<CampaignCreateResponse> {
5866
this.optinMessage = optinMessage;
5967
this.optoutKeywords = optoutKeywords;
6068
this.helpKeywords = helpKeywords;
69+
this.termsAndConditionsLink = termsAndConditionsLink;
70+
this.privacyPolicyLink = privacyPolicyLink;
6171
}
6272

6373
public String brandID(){
@@ -85,6 +95,21 @@ public String sample2(){
8595
public String sample1(){
8696
return this.sample1;
8797
}
98+
public String sample3(){
99+
return this.sample3;
100+
}
101+
public String sample4(){
102+
return this.sample4;
103+
}
104+
public String sample5(){
105+
return this.sample5;
106+
}
107+
public String termsAndConditionsLink(){
108+
return this.termsAndConditionsLink;
109+
}
110+
public String privacyPolicyLink(){
111+
return this.privacyPolicyLink;
112+
}
88113
public Boolean affiliateMarketing(){
89114
return this.affiliateMarketing;
90115
}

src/main/java/com/plivo/api/models/campaign/CampaignUpdater.java

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,31 +9,41 @@ public class CampaignUpdater extends Updater<CampaignUpdateResponse> {
99
private String description;
1010
private String sample1;
1111
private String sample2;
12+
private String sample3;
13+
private String sample4;
14+
private String sample5;
1215
private String messageFlow;
1316
private String helpMessage;
1417
private String optinKeywords;
1518
private String optinMessage;
1619
private String optoutKeywords;
1720
private String optoutMessage;
1821
private String helpKeywords;
22+
private String termsAndConditionsLink;
23+
private String privacyPolicyLink;
1924

20-
CampaignUpdater(String campaignId, String resellerId, String description, String sample1, String sample2,
25+
CampaignUpdater(String campaignId, String resellerId, String description, String sample1, String sample2, String sample3, String sample4, String sample5,
2126
String messageFlow, String helpMessage, String optinKeywords, String optinMessage, String optoutKeywords,
22-
String optoutMessage, String helpKeywords) {
27+
String optoutMessage, String helpKeywords, String termsAndConditionsLink, String privacyPolicyLink) {
2328

2429
super(campaignId);
2530

2631
this.resellerId = resellerId;
2732
this.description = description;
2833
this.sample1 = sample1;
2934
this.sample2 = sample2;
35+
this.sample3 = sample3;
36+
this.sample4 = sample4;
37+
this.sample5 = sample5;
3038
this.messageFlow = messageFlow;
3139
this.helpMessage = helpMessage;
3240
this.optinKeywords = optinKeywords;
3341
this.optinMessage = optinMessage;
3442
this.optoutKeywords = optoutKeywords;
3543
this.optoutMessage = optoutMessage;
3644
this.helpKeywords = helpKeywords;
45+
this.termsAndConditionsLink = termsAndConditionsLink;
46+
this.privacyPolicyLink = privacyPolicyLink;
3747
}
3848

3949
public String campaignId() {
@@ -56,6 +66,26 @@ public String sample2() {
5666
return this.sample2;
5767
}
5868

69+
public String sample3() {
70+
return this.sample3;
71+
}
72+
73+
public String sample4() {
74+
return this.sample4;
75+
}
76+
77+
public String sample5() {
78+
return this.sample5;
79+
}
80+
81+
public String termsAndConditionsLink() {
82+
return this.termsAndConditionsLink;
83+
}
84+
85+
public String privacyPolicyLink() {
86+
return this.privacyPolicyLink;
87+
}
88+
5989
public String messageFlow() {
6090
return this.messageFlow;
6191
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
5.46.4
1+
5.46.6

src/test/java/com/plivo/api/CampaignTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public void campaignCreateShouldSucceed() throws Exception {
2626

2727
expectResponse(fixtureName, 202);
2828
String[] sub_usecase = new String[]{"2FA", "MARKETING"};
29-
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();
29+
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();
3030

3131
assertRequest("POST", "10dlc/Campaign/");
3232
}
@@ -46,8 +46,8 @@ public void campaignUpdateShouldSucceed() throws Exception {
4646
String fixtureName = "campaignUpdateResponse.json";
4747

4848
expectResponse(fixtureName, 202);
49-
50-
CampaignUpdateResponse response = Campaign.updater("CY5NVUA","","","sample1 updated","","","","","","","","").client(client).update();
49+
50+
CampaignUpdateResponse response = Campaign.updater("CY5NVUA","","","sample1 updated","","","","","","","","", null, null, null, null, null).client(client).update();
5151
assertEquals("CY5NVUA", response.getCampaign().getCampaignID());
5252

5353
assertRequest("POST", "10dlc/Campaign/%s/", "CY5NVUA");

0 commit comments

Comments
 (0)