@unboundcx/sdk 2.6.8 → 2.6.10
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 +384 -25
- package/services/phoneNumbers.js +26 -23
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unboundcx/sdk",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.10",
|
|
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
|
@@ -626,20 +626,6 @@ export class TollFreeCampaignsService {
|
|
|
626
626
|
return result;
|
|
627
627
|
}
|
|
628
628
|
|
|
629
|
-
async get(campaignId) {
|
|
630
|
-
this.sdk.validateParams(
|
|
631
|
-
{ campaignId },
|
|
632
|
-
{
|
|
633
|
-
campaignId: { type: 'string', required: true },
|
|
634
|
-
},
|
|
635
|
-
);
|
|
636
|
-
|
|
637
|
-
const result = await this.sdk._fetch(
|
|
638
|
-
`/messaging/campaigns/tollfree/${campaignId}`,
|
|
639
|
-
'GET',
|
|
640
|
-
);
|
|
641
|
-
return result;
|
|
642
|
-
}
|
|
643
629
|
|
|
644
630
|
async list() {
|
|
645
631
|
const result = await this.sdk._fetch(
|
|
@@ -658,13 +644,13 @@ export class TollFreeCampaignsService {
|
|
|
658
644
|
);
|
|
659
645
|
|
|
660
646
|
const result = await this.sdk._fetch(
|
|
661
|
-
`/messaging/campaigns/tollfree/${campaignId}
|
|
662
|
-
'
|
|
647
|
+
`/messaging/campaigns/tollfree/refresh/${campaignId}`,
|
|
648
|
+
'GET',
|
|
663
649
|
);
|
|
664
650
|
return result;
|
|
665
651
|
}
|
|
666
652
|
|
|
667
|
-
async
|
|
653
|
+
async getPhoneNumberCampaignStatus(phoneNumber) {
|
|
668
654
|
this.sdk.validateParams(
|
|
669
655
|
{ phoneNumber },
|
|
670
656
|
{
|
|
@@ -672,14 +658,9 @@ export class TollFreeCampaignsService {
|
|
|
672
658
|
},
|
|
673
659
|
);
|
|
674
660
|
|
|
675
|
-
const options = {
|
|
676
|
-
query: { phoneNumber },
|
|
677
|
-
};
|
|
678
|
-
|
|
679
661
|
const result = await this.sdk._fetch(
|
|
680
|
-
|
|
662
|
+
`/messaging/campaigns/tollfree/phoneNumber/${encodeURIComponent(phoneNumber)}/campaignStatus`,
|
|
681
663
|
'GET',
|
|
682
|
-
options,
|
|
683
664
|
);
|
|
684
665
|
return result;
|
|
685
666
|
}
|
|
@@ -688,9 +669,51 @@ export class TollFreeCampaignsService {
|
|
|
688
669
|
export class TenDlcCampaignsService {
|
|
689
670
|
constructor(sdk) {
|
|
690
671
|
this.sdk = sdk;
|
|
672
|
+
this.brands = new TenDlcBrandsService(sdk);
|
|
673
|
+
this.campaigns = new TenDlcCampaignManagementService(sdk);
|
|
674
|
+
}
|
|
675
|
+
|
|
676
|
+
/**
|
|
677
|
+
* Get phone number campaign status for 10DLC
|
|
678
|
+
* @param {string} phoneNumber - Phone number to check
|
|
679
|
+
* @returns {Promise<Object>} Campaign status information
|
|
680
|
+
*/
|
|
681
|
+
async getPhoneNumberCampaignStatus(phoneNumber) {
|
|
682
|
+
this.sdk.validateParams(
|
|
683
|
+
{ phoneNumber },
|
|
684
|
+
{
|
|
685
|
+
phoneNumber: { type: 'string', required: true },
|
|
686
|
+
},
|
|
687
|
+
);
|
|
688
|
+
|
|
689
|
+
const result = await this.sdk._fetch(
|
|
690
|
+
`/messaging/campaigns/10dlc/phoneNumber/${encodeURIComponent(phoneNumber)}/campaignStatus`,
|
|
691
|
+
'GET',
|
|
692
|
+
);
|
|
693
|
+
return result;
|
|
691
694
|
}
|
|
695
|
+
}
|
|
692
696
|
|
|
693
|
-
|
|
697
|
+
export class TenDlcBrandsService {
|
|
698
|
+
constructor(sdk) {
|
|
699
|
+
this.sdk = sdk;
|
|
700
|
+
}
|
|
701
|
+
|
|
702
|
+
/**
|
|
703
|
+
* List all 10DLC brands
|
|
704
|
+
*/
|
|
705
|
+
async list() {
|
|
706
|
+
const result = await this.sdk._fetch(
|
|
707
|
+
'/messaging/campaigns/10dlc/brand',
|
|
708
|
+
'GET',
|
|
709
|
+
);
|
|
710
|
+
return result;
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
/**
|
|
714
|
+
* Create a new 10DLC brand
|
|
715
|
+
*/
|
|
716
|
+
async create({
|
|
694
717
|
companyName,
|
|
695
718
|
ein,
|
|
696
719
|
website,
|
|
@@ -747,7 +770,28 @@ export class TenDlcCampaignsService {
|
|
|
747
770
|
return result;
|
|
748
771
|
}
|
|
749
772
|
|
|
750
|
-
|
|
773
|
+
/**
|
|
774
|
+
* Get a 10DLC brand by ID
|
|
775
|
+
*/
|
|
776
|
+
async get(brandId) {
|
|
777
|
+
this.sdk.validateParams(
|
|
778
|
+
{ brandId },
|
|
779
|
+
{
|
|
780
|
+
brandId: { type: 'string', required: true },
|
|
781
|
+
},
|
|
782
|
+
);
|
|
783
|
+
|
|
784
|
+
const result = await this.sdk._fetch(
|
|
785
|
+
`/messaging/campaigns/10dlc/brand/${brandId}`,
|
|
786
|
+
'GET',
|
|
787
|
+
);
|
|
788
|
+
return result;
|
|
789
|
+
}
|
|
790
|
+
|
|
791
|
+
/**
|
|
792
|
+
* Update a 10DLC brand
|
|
793
|
+
*/
|
|
794
|
+
async update(brandId, { companyName, website }) {
|
|
751
795
|
this.sdk.validateParams(
|
|
752
796
|
{ brandId },
|
|
753
797
|
{
|
|
@@ -772,4 +816,319 @@ export class TenDlcCampaignsService {
|
|
|
772
816
|
);
|
|
773
817
|
return result;
|
|
774
818
|
}
|
|
819
|
+
|
|
820
|
+
/**
|
|
821
|
+
* Delete a 10DLC brand
|
|
822
|
+
*/
|
|
823
|
+
async delete(brandId) {
|
|
824
|
+
this.sdk.validateParams(
|
|
825
|
+
{ brandId },
|
|
826
|
+
{
|
|
827
|
+
brandId: { type: 'string', required: true },
|
|
828
|
+
},
|
|
829
|
+
);
|
|
830
|
+
|
|
831
|
+
const result = await this.sdk._fetch(
|
|
832
|
+
`/messaging/campaigns/10dlc/brand/${brandId}`,
|
|
833
|
+
'DELETE',
|
|
834
|
+
);
|
|
835
|
+
return result;
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
/**
|
|
839
|
+
* Revet a 10DLC brand
|
|
840
|
+
*/
|
|
841
|
+
async revet(brandId) {
|
|
842
|
+
this.sdk.validateParams(
|
|
843
|
+
{ brandId },
|
|
844
|
+
{
|
|
845
|
+
brandId: { type: 'string', required: true },
|
|
846
|
+
},
|
|
847
|
+
);
|
|
848
|
+
|
|
849
|
+
const result = await this.sdk._fetch(
|
|
850
|
+
`/messaging/campaigns/10dlc/brand/${brandId}/revet`,
|
|
851
|
+
'PUT',
|
|
852
|
+
);
|
|
853
|
+
return result;
|
|
854
|
+
}
|
|
855
|
+
|
|
856
|
+
/**
|
|
857
|
+
* Get brand feedback
|
|
858
|
+
*/
|
|
859
|
+
async getFeedback(brandId) {
|
|
860
|
+
this.sdk.validateParams(
|
|
861
|
+
{ brandId },
|
|
862
|
+
{
|
|
863
|
+
brandId: { type: 'string', required: true },
|
|
864
|
+
},
|
|
865
|
+
);
|
|
866
|
+
|
|
867
|
+
const result = await this.sdk._fetch(
|
|
868
|
+
`/messaging/campaigns/10dlc/brand/${brandId}/feedback`,
|
|
869
|
+
'GET',
|
|
870
|
+
);
|
|
871
|
+
return result;
|
|
872
|
+
}
|
|
873
|
+
|
|
874
|
+
/**
|
|
875
|
+
* Create external brand vetting
|
|
876
|
+
*/
|
|
877
|
+
async createExternalVetting(brandId, vettingData) {
|
|
878
|
+
this.sdk.validateParams(
|
|
879
|
+
{ brandId },
|
|
880
|
+
{
|
|
881
|
+
brandId: { type: 'string', required: true },
|
|
882
|
+
vettingData: { type: 'object', required: false },
|
|
883
|
+
},
|
|
884
|
+
);
|
|
885
|
+
|
|
886
|
+
const options = {
|
|
887
|
+
body: vettingData || {},
|
|
888
|
+
};
|
|
889
|
+
|
|
890
|
+
const result = await this.sdk._fetch(
|
|
891
|
+
`/messaging/campaigns/10dlc/brand/${brandId}/externalVetting`,
|
|
892
|
+
'POST',
|
|
893
|
+
options,
|
|
894
|
+
);
|
|
895
|
+
return result;
|
|
896
|
+
}
|
|
897
|
+
|
|
898
|
+
/**
|
|
899
|
+
* Get brand external vetting responses
|
|
900
|
+
*/
|
|
901
|
+
async getExternalVettingResponses(brandId) {
|
|
902
|
+
this.sdk.validateParams(
|
|
903
|
+
{ brandId },
|
|
904
|
+
{
|
|
905
|
+
brandId: { type: 'string', required: true },
|
|
906
|
+
},
|
|
907
|
+
);
|
|
908
|
+
|
|
909
|
+
const result = await this.sdk._fetch(
|
|
910
|
+
`/messaging/campaigns/10dlc/brand/${brandId}/externalvetting/responses`,
|
|
911
|
+
'GET',
|
|
912
|
+
);
|
|
913
|
+
return result;
|
|
914
|
+
}
|
|
915
|
+
}
|
|
916
|
+
|
|
917
|
+
export class TenDlcCampaignManagementService {
|
|
918
|
+
constructor(sdk) {
|
|
919
|
+
this.sdk = sdk;
|
|
920
|
+
}
|
|
921
|
+
|
|
922
|
+
/**
|
|
923
|
+
* List all 10DLC campaigns
|
|
924
|
+
*/
|
|
925
|
+
async list() {
|
|
926
|
+
const result = await this.sdk._fetch(
|
|
927
|
+
'/messaging/campaigns/10dlc/campaign',
|
|
928
|
+
'GET',
|
|
929
|
+
);
|
|
930
|
+
return result;
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
/**
|
|
934
|
+
* Create a new 10DLC campaign
|
|
935
|
+
*/
|
|
936
|
+
async create(campaignData) {
|
|
937
|
+
this.sdk.validateParams(
|
|
938
|
+
campaignData,
|
|
939
|
+
{
|
|
940
|
+
brandId: { type: 'string', required: true },
|
|
941
|
+
description: { type: 'string', required: true },
|
|
942
|
+
messageFlow: { type: 'string', required: true },
|
|
943
|
+
helpMessage: { type: 'string', required: false },
|
|
944
|
+
optInMessage: { type: 'string', required: false },
|
|
945
|
+
optOutMessage: { type: 'string', required: false },
|
|
946
|
+
useCase: { type: 'string', required: false },
|
|
947
|
+
vertical: { type: 'string', required: false },
|
|
948
|
+
},
|
|
949
|
+
);
|
|
950
|
+
|
|
951
|
+
const options = {
|
|
952
|
+
body: campaignData,
|
|
953
|
+
};
|
|
954
|
+
|
|
955
|
+
const result = await this.sdk._fetch(
|
|
956
|
+
'/messaging/campaigns/10dlc/campaign',
|
|
957
|
+
'POST',
|
|
958
|
+
options,
|
|
959
|
+
);
|
|
960
|
+
return result;
|
|
961
|
+
}
|
|
962
|
+
|
|
963
|
+
/**
|
|
964
|
+
* Get a 10DLC campaign by ID
|
|
965
|
+
*/
|
|
966
|
+
async get(campaignId) {
|
|
967
|
+
this.sdk.validateParams(
|
|
968
|
+
{ campaignId },
|
|
969
|
+
{
|
|
970
|
+
campaignId: { type: 'string', required: true },
|
|
971
|
+
},
|
|
972
|
+
);
|
|
973
|
+
|
|
974
|
+
const result = await this.sdk._fetch(
|
|
975
|
+
`/messaging/campaigns/10dlc/campaign/${campaignId}`,
|
|
976
|
+
'GET',
|
|
977
|
+
);
|
|
978
|
+
return result;
|
|
979
|
+
}
|
|
980
|
+
|
|
981
|
+
/**
|
|
982
|
+
* Update a 10DLC campaign
|
|
983
|
+
*/
|
|
984
|
+
async update(campaignId, updateData) {
|
|
985
|
+
this.sdk.validateParams(
|
|
986
|
+
{ campaignId },
|
|
987
|
+
{
|
|
988
|
+
campaignId: { type: 'string', required: true },
|
|
989
|
+
description: { type: 'string', required: false },
|
|
990
|
+
messageFlow: { type: 'string', required: false },
|
|
991
|
+
helpMessage: { type: 'string', required: false },
|
|
992
|
+
optInMessage: { type: 'string', required: false },
|
|
993
|
+
optOutMessage: { type: 'string', required: false },
|
|
994
|
+
},
|
|
995
|
+
);
|
|
996
|
+
|
|
997
|
+
const options = {
|
|
998
|
+
body: updateData,
|
|
999
|
+
};
|
|
1000
|
+
|
|
1001
|
+
const result = await this.sdk._fetch(
|
|
1002
|
+
`/messaging/campaigns/10dlc/campaign/${campaignId}`,
|
|
1003
|
+
'PUT',
|
|
1004
|
+
options,
|
|
1005
|
+
);
|
|
1006
|
+
return result;
|
|
1007
|
+
}
|
|
1008
|
+
|
|
1009
|
+
/**
|
|
1010
|
+
* Delete a 10DLC campaign
|
|
1011
|
+
*/
|
|
1012
|
+
async delete(campaignId) {
|
|
1013
|
+
this.sdk.validateParams(
|
|
1014
|
+
{ campaignId },
|
|
1015
|
+
{
|
|
1016
|
+
campaignId: { type: 'string', required: true },
|
|
1017
|
+
},
|
|
1018
|
+
);
|
|
1019
|
+
|
|
1020
|
+
const result = await this.sdk._fetch(
|
|
1021
|
+
`/messaging/campaigns/10dlc/campaign/${campaignId}`,
|
|
1022
|
+
'DELETE',
|
|
1023
|
+
);
|
|
1024
|
+
return result;
|
|
1025
|
+
}
|
|
1026
|
+
|
|
1027
|
+
/**
|
|
1028
|
+
* Get campaign operation status
|
|
1029
|
+
*/
|
|
1030
|
+
async getOperationStatus(campaignId) {
|
|
1031
|
+
this.sdk.validateParams(
|
|
1032
|
+
{ campaignId },
|
|
1033
|
+
{
|
|
1034
|
+
campaignId: { type: 'string', required: true },
|
|
1035
|
+
},
|
|
1036
|
+
);
|
|
1037
|
+
|
|
1038
|
+
const result = await this.sdk._fetch(
|
|
1039
|
+
`/messaging/campaigns/10dlc/campaign/${campaignId}/operationStatus`,
|
|
1040
|
+
'GET',
|
|
1041
|
+
);
|
|
1042
|
+
return result;
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1045
|
+
/**
|
|
1046
|
+
* Get MNO campaign metadata
|
|
1047
|
+
*/
|
|
1048
|
+
async getMnoMetaData(campaignId) {
|
|
1049
|
+
this.sdk.validateParams(
|
|
1050
|
+
{ campaignId },
|
|
1051
|
+
{
|
|
1052
|
+
campaignId: { type: 'string', required: true },
|
|
1053
|
+
},
|
|
1054
|
+
);
|
|
1055
|
+
|
|
1056
|
+
const result = await this.sdk._fetch(
|
|
1057
|
+
`/messaging/campaigns/10dlc/campaign/${campaignId}/mnoMetaData`,
|
|
1058
|
+
'GET',
|
|
1059
|
+
);
|
|
1060
|
+
return result;
|
|
1061
|
+
}
|
|
1062
|
+
|
|
1063
|
+
/**
|
|
1064
|
+
* Add phone number to campaign
|
|
1065
|
+
*/
|
|
1066
|
+
async addPhoneNumber(campaignId, phoneNumberData) {
|
|
1067
|
+
this.sdk.validateParams(
|
|
1068
|
+
{ campaignId, phoneNumberData },
|
|
1069
|
+
{
|
|
1070
|
+
campaignId: { type: 'string', required: true },
|
|
1071
|
+
phoneNumberData: { type: 'object', required: true },
|
|
1072
|
+
},
|
|
1073
|
+
);
|
|
1074
|
+
|
|
1075
|
+
const options = {
|
|
1076
|
+
body: phoneNumberData,
|
|
1077
|
+
};
|
|
1078
|
+
|
|
1079
|
+
const result = await this.sdk._fetch(
|
|
1080
|
+
`/messaging/campaigns/10dlc/campaign/${campaignId}/phoneNumber`,
|
|
1081
|
+
'POST',
|
|
1082
|
+
options,
|
|
1083
|
+
);
|
|
1084
|
+
return result;
|
|
1085
|
+
}
|
|
1086
|
+
|
|
1087
|
+
/**
|
|
1088
|
+
* Update phone number in campaign
|
|
1089
|
+
*/
|
|
1090
|
+
async updatePhoneNumber(campaignId, phoneNumberData) {
|
|
1091
|
+
this.sdk.validateParams(
|
|
1092
|
+
{ campaignId, phoneNumberData },
|
|
1093
|
+
{
|
|
1094
|
+
campaignId: { type: 'string', required: true },
|
|
1095
|
+
phoneNumberData: { type: 'object', required: true },
|
|
1096
|
+
},
|
|
1097
|
+
);
|
|
1098
|
+
|
|
1099
|
+
const options = {
|
|
1100
|
+
body: phoneNumberData,
|
|
1101
|
+
};
|
|
1102
|
+
|
|
1103
|
+
const result = await this.sdk._fetch(
|
|
1104
|
+
`/messaging/campaigns/10dlc/campaign/${campaignId}/phoneNumber`,
|
|
1105
|
+
'PUT',
|
|
1106
|
+
options,
|
|
1107
|
+
);
|
|
1108
|
+
return result;
|
|
1109
|
+
}
|
|
1110
|
+
|
|
1111
|
+
/**
|
|
1112
|
+
* Remove phone number from campaign
|
|
1113
|
+
*/
|
|
1114
|
+
async removePhoneNumber(campaignId, phoneNumberData) {
|
|
1115
|
+
this.sdk.validateParams(
|
|
1116
|
+
{ campaignId, phoneNumberData },
|
|
1117
|
+
{
|
|
1118
|
+
campaignId: { type: 'string', required: true },
|
|
1119
|
+
phoneNumberData: { type: 'object', required: true },
|
|
1120
|
+
},
|
|
1121
|
+
);
|
|
1122
|
+
|
|
1123
|
+
const options = {
|
|
1124
|
+
body: phoneNumberData,
|
|
1125
|
+
};
|
|
1126
|
+
|
|
1127
|
+
const result = await this.sdk._fetch(
|
|
1128
|
+
`/messaging/campaigns/10dlc/campaign/${campaignId}/phoneNumber`,
|
|
1129
|
+
'DELETE',
|
|
1130
|
+
options,
|
|
1131
|
+
);
|
|
1132
|
+
return result;
|
|
1133
|
+
}
|
|
775
1134
|
}
|
package/services/phoneNumbers.js
CHANGED
|
@@ -321,29 +321,30 @@ export class PhoneNumbersService {
|
|
|
321
321
|
|
|
322
322
|
async getPortingOrders({
|
|
323
323
|
page,
|
|
324
|
-
includePhoneNumbers = true,
|
|
325
324
|
status,
|
|
326
325
|
customerReference,
|
|
327
326
|
sort,
|
|
328
327
|
limit,
|
|
328
|
+
id,
|
|
329
|
+
operatorType = 'contains',
|
|
329
330
|
} = {}) {
|
|
330
|
-
const
|
|
331
|
+
const query = {
|
|
332
|
+
page,
|
|
333
|
+
status,
|
|
334
|
+
customerReference,
|
|
335
|
+
id,
|
|
336
|
+
operatorType,
|
|
337
|
+
sort,
|
|
338
|
+
limit,
|
|
339
|
+
};
|
|
331
340
|
|
|
332
|
-
|
|
333
|
-
if (includePhoneNumbers !== undefined)
|
|
334
|
-
params.append('includePhoneNumbers', includePhoneNumbers);
|
|
335
|
-
if (status) params.append('status', status);
|
|
336
|
-
if (customerReference)
|
|
337
|
-
params.append('customerReference', customerReference);
|
|
338
|
-
if (sort) params.append('sort', sort);
|
|
339
|
-
if (limit) params.append('limit', limit);
|
|
341
|
+
const url = '/phoneNumbers/porting/orders';
|
|
340
342
|
|
|
341
|
-
const
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
: '/phoneNumbers/porting/orders';
|
|
343
|
+
const params = {
|
|
344
|
+
query,
|
|
345
|
+
};
|
|
345
346
|
|
|
346
|
-
const result = await this.sdk._fetch(url, 'GET');
|
|
347
|
+
const result = await this.sdk._fetch(url, 'GET', params);
|
|
347
348
|
return result;
|
|
348
349
|
}
|
|
349
350
|
|
|
@@ -695,10 +696,10 @@ export class PhoneNumbersService {
|
|
|
695
696
|
* @example
|
|
696
697
|
* // Get all comments
|
|
697
698
|
* const allComments = await sdk.phoneNumbers.getPortingComments("port_123...");
|
|
698
|
-
*
|
|
699
|
+
*
|
|
699
700
|
* // Get only public comments
|
|
700
701
|
* const publicComments = await sdk.phoneNumbers.getPortingComments("port_123...", { includeInternal: 'false' });
|
|
701
|
-
*
|
|
702
|
+
*
|
|
702
703
|
* // Get only internal comments
|
|
703
704
|
* const internalComments = await sdk.phoneNumbers.getPortingComments("port_123...", { includeInternal: 'only' });
|
|
704
705
|
*/
|
|
@@ -716,7 +717,9 @@ export class PhoneNumbersService {
|
|
|
716
717
|
}
|
|
717
718
|
|
|
718
719
|
const queryString = params.toString();
|
|
719
|
-
const url = `/phoneNumbers/porting/orders/${id}/comments${
|
|
720
|
+
const url = `/phoneNumbers/porting/orders/${id}/comments${
|
|
721
|
+
queryString ? '?' + queryString : ''
|
|
722
|
+
}`;
|
|
720
723
|
|
|
721
724
|
const result = await this.sdk._fetch(url, 'GET');
|
|
722
725
|
return result;
|
|
@@ -735,7 +738,7 @@ export class PhoneNumbersService {
|
|
|
735
738
|
* comment: "Please expedite this port request",
|
|
736
739
|
* isInternal: false
|
|
737
740
|
* });
|
|
738
|
-
*
|
|
741
|
+
*
|
|
739
742
|
* // Post an internal comment (team use only)
|
|
740
743
|
* const internalComment = await sdk.phoneNumbers.postPortingComment("port_123...", {
|
|
741
744
|
* comment: "Customer called - they need this ASAP",
|
|
@@ -764,11 +767,11 @@ export class PhoneNumbersService {
|
|
|
764
767
|
|
|
765
768
|
/**
|
|
766
769
|
* Auto-create porting orders by grouping phone numbers by carrier
|
|
767
|
-
*
|
|
770
|
+
*
|
|
768
771
|
* Analyzes phone numbers using internal LRN lookup, groups them by carrier,
|
|
769
|
-
* and either previews the groupings (dry run) or creates separate porting
|
|
772
|
+
* and either previews the groupings (dry run) or creates separate porting
|
|
770
773
|
* orders for each carrier group.
|
|
771
|
-
*
|
|
774
|
+
*
|
|
772
775
|
* @param {Object} params
|
|
773
776
|
* @param {string[]} params.phoneNumbers - Array of +E.164 formatted phone numbers (max 100)
|
|
774
777
|
* @param {string} params.name - Base name for orders (will be appended with carrier names)
|
|
@@ -782,7 +785,7 @@ export class PhoneNumbersService {
|
|
|
782
785
|
* dryRun: true
|
|
783
786
|
* });
|
|
784
787
|
* // Returns carrier groups with proposed order names
|
|
785
|
-
*
|
|
788
|
+
*
|
|
786
789
|
* // Create orders for each carrier
|
|
787
790
|
* const result = await sdk.phoneNumbers.autoCreateOrders({
|
|
788
791
|
* phoneNumbers: ['+15551234567', '+15551234568', '+15551234569'],
|