@unboundcx/sdk 2.6.12 → 2.6.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/services/messaging.js +91 -20
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unboundcx/sdk",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.14",
|
|
4
4
|
"description": "Official JavaScript SDK for the Unbound API - A comprehensive toolkit for integrating with Unbound's communication, AI, and data management services",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"type": "module",
|
package/services/messaging.js
CHANGED
|
@@ -799,11 +799,30 @@ export class TollFreeCampaignsService {
|
|
|
799
799
|
return result;
|
|
800
800
|
}
|
|
801
801
|
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
802
|
+
/**
|
|
803
|
+
* List all toll-free campaigns with optional filtering
|
|
804
|
+
* @param {Object} [params] - Filter parameters
|
|
805
|
+
* @param {number} [params.page=1] - Page number
|
|
806
|
+
* @param {number} [params.limit=50] - Items per page
|
|
807
|
+
* @param {string} [params.name] - Filter by campaign name
|
|
808
|
+
* @param {string} [params.status] - Filter by status
|
|
809
|
+
* @param {string} [params.operatorType='contains'] - Filter operator: contains, equals, startsWith, endsWith
|
|
810
|
+
* @returns {Promise<Array>} List of campaigns
|
|
811
|
+
*/
|
|
812
|
+
async list({ page, limit, name, status, operatorType } = {}) {
|
|
813
|
+
const queryParams = new URLSearchParams();
|
|
814
|
+
|
|
815
|
+
if (page !== undefined) queryParams.append('page', page);
|
|
816
|
+
if (limit !== undefined) queryParams.append('limit', limit);
|
|
817
|
+
if (name) queryParams.append('name', name);
|
|
818
|
+
if (status) queryParams.append('status', status);
|
|
819
|
+
if (operatorType) queryParams.append('operatorType', operatorType);
|
|
820
|
+
|
|
821
|
+
const url = queryParams.toString()
|
|
822
|
+
? `/messaging/campaigns/tollfree?${queryParams.toString()}`
|
|
823
|
+
: '/messaging/campaigns/tollfree';
|
|
824
|
+
|
|
825
|
+
const result = await this.sdk._fetch(url, 'GET');
|
|
807
826
|
return result;
|
|
808
827
|
}
|
|
809
828
|
|
|
@@ -876,13 +895,29 @@ export class TenDlcBrandsService {
|
|
|
876
895
|
}
|
|
877
896
|
|
|
878
897
|
/**
|
|
879
|
-
* List all 10DLC brands
|
|
898
|
+
* List all 10DLC brands with optional filtering
|
|
899
|
+
* @param {Object} [params] - Filter parameters
|
|
900
|
+
* @param {number} [params.page=1] - Page number
|
|
901
|
+
* @param {number} [params.limit=50] - Items per page
|
|
902
|
+
* @param {string} [params.name] - Filter by brand name
|
|
903
|
+
* @param {string} [params.status] - Filter by status
|
|
904
|
+
* @param {string} [params.operatorType='contains'] - Filter operator: contains, equals, startsWith, endsWith
|
|
905
|
+
* @returns {Promise<Array>} List of brands
|
|
880
906
|
*/
|
|
881
|
-
async list() {
|
|
882
|
-
const
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
);
|
|
907
|
+
async list({ page, limit, name, status, operatorType } = {}) {
|
|
908
|
+
const queryParams = new URLSearchParams();
|
|
909
|
+
|
|
910
|
+
if (page !== undefined) queryParams.append('page', page);
|
|
911
|
+
if (limit !== undefined) queryParams.append('limit', limit);
|
|
912
|
+
if (name) queryParams.append('name', name);
|
|
913
|
+
if (status) queryParams.append('status', status);
|
|
914
|
+
if (operatorType) queryParams.append('operatorType', operatorType);
|
|
915
|
+
|
|
916
|
+
const url = queryParams.toString()
|
|
917
|
+
? `/messaging/campaigns/10dlc/brand?${queryParams.toString()}`
|
|
918
|
+
: '/messaging/campaigns/10dlc/brand';
|
|
919
|
+
|
|
920
|
+
const result = await this.sdk._fetch(url, 'GET');
|
|
886
921
|
return result;
|
|
887
922
|
}
|
|
888
923
|
|
|
@@ -1088,6 +1123,26 @@ export class TenDlcBrandsService {
|
|
|
1088
1123
|
);
|
|
1089
1124
|
return result;
|
|
1090
1125
|
}
|
|
1126
|
+
|
|
1127
|
+
/**
|
|
1128
|
+
* Resend two-factor authentication email for PUBLIC_PROFIT brands
|
|
1129
|
+
* @param {string} brandId - Brand ID to resend 2FA for
|
|
1130
|
+
* @returns {Promise<Object>} Success message and details
|
|
1131
|
+
*/
|
|
1132
|
+
async resend2fa(brandId) {
|
|
1133
|
+
this.sdk.validateParams(
|
|
1134
|
+
{ brandId },
|
|
1135
|
+
{
|
|
1136
|
+
brandId: { type: 'string', required: true },
|
|
1137
|
+
},
|
|
1138
|
+
);
|
|
1139
|
+
|
|
1140
|
+
const result = await this.sdk._fetch(
|
|
1141
|
+
`/messaging/campaigns/10dlc/brand/${brandId}/resend-2fa`,
|
|
1142
|
+
'POST',
|
|
1143
|
+
);
|
|
1144
|
+
return result;
|
|
1145
|
+
}
|
|
1091
1146
|
}
|
|
1092
1147
|
|
|
1093
1148
|
export class TenDlcCampaignManagementService {
|
|
@@ -1096,13 +1151,29 @@ export class TenDlcCampaignManagementService {
|
|
|
1096
1151
|
}
|
|
1097
1152
|
|
|
1098
1153
|
/**
|
|
1099
|
-
* List all 10DLC campaigns
|
|
1154
|
+
* List all 10DLC campaigns with optional filtering
|
|
1155
|
+
* @param {Object} [params] - Filter parameters
|
|
1156
|
+
* @param {number} [params.page=1] - Page number
|
|
1157
|
+
* @param {number} [params.limit=50] - Items per page
|
|
1158
|
+
* @param {string} [params.name] - Filter by campaign name
|
|
1159
|
+
* @param {string} [params.status] - Filter by status
|
|
1160
|
+
* @param {string} [params.operatorType='contains'] - Filter operator: contains, equals, startsWith, endsWith
|
|
1161
|
+
* @returns {Promise<Array>} List of campaigns
|
|
1100
1162
|
*/
|
|
1101
|
-
async list() {
|
|
1102
|
-
const
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
);
|
|
1163
|
+
async list({ page, limit, name, status, operatorType } = {}) {
|
|
1164
|
+
const queryParams = new URLSearchParams();
|
|
1165
|
+
|
|
1166
|
+
if (page !== undefined) queryParams.append('page', page);
|
|
1167
|
+
if (limit !== undefined) queryParams.append('limit', limit);
|
|
1168
|
+
if (name) queryParams.append('name', name);
|
|
1169
|
+
if (status) queryParams.append('status', status);
|
|
1170
|
+
if (operatorType) queryParams.append('operatorType', operatorType);
|
|
1171
|
+
|
|
1172
|
+
const url = queryParams.toString()
|
|
1173
|
+
? `/messaging/campaigns/10dlc/campaign?${queryParams.toString()}`
|
|
1174
|
+
: '/messaging/campaigns/10dlc/campaign';
|
|
1175
|
+
|
|
1176
|
+
const result = await this.sdk._fetch(url, 'GET');
|
|
1106
1177
|
return result;
|
|
1107
1178
|
}
|
|
1108
1179
|
|
|
@@ -1247,9 +1318,9 @@ export class TenDlcCampaignManagementService {
|
|
|
1247
1318
|
helpMessage: { type: 'string', required: false },
|
|
1248
1319
|
optInMessage: { type: 'string', required: false },
|
|
1249
1320
|
optOutMessage: { type: 'string', required: false },
|
|
1250
|
-
helpKeywords: { type: '
|
|
1251
|
-
optinKeywords: { type: '
|
|
1252
|
-
optoutKeywords: { type: '
|
|
1321
|
+
helpKeywords: { type: 'array', required: false },
|
|
1322
|
+
optinKeywords: { type: 'array', required: false },
|
|
1323
|
+
optoutKeywords: { type: 'array', required: false },
|
|
1253
1324
|
affiliateMarketing: { type: 'boolean', required: false },
|
|
1254
1325
|
ageGated: { type: 'boolean', required: false },
|
|
1255
1326
|
directLending: { type: 'boolean', required: false },
|