aws-sdk-core 2.11.379 → 2.11.380

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e57ce7d5300862786670f8562a54f6164ce9898e
4
- data.tar.gz: 2a4e695fae9d30e3c8220096f518fbf1b6b0eb34
3
+ metadata.gz: 8ebcc17e112c12f2337ab1f11c5da8f8dc4a709b
4
+ data.tar.gz: a4d347aa045797363287d74657a1eeab2f15bdc6
5
5
  SHA512:
6
- metadata.gz: a94f7e8033014a9e1fe27533f195a6bd64b9e770b0148cfcbeb31c0466af81639a86d0d5a3ac4423b705f2838a041a4478905308a62c21d21b596d495355e297
7
- data.tar.gz: 91ac245c274cb3f977f7627ef3d22763a2dc9043f9a82d6b656bf4f7520dc61db77047a1b7c110e35f2a78749e679b992444a4c9b7632dc5d719ee50a2651e4d
6
+ metadata.gz: 5c6ca4f368e61b8081591311855f06989cb9a2852879f7054175ddf4c4ed02b675964793a5ccb1e0e536f7b15d97bcc80423ce881260d2026ee8ce97436388a7
7
+ data.tar.gz: 944eeca0a18931860d4081bc5406c331a150fe982527a642ac9e49adc069e67e2191069388e1d37f65d2bbd5e15f45b383f15e29351ee7ca8ebb9293474f1f01
@@ -157,6 +157,70 @@
157
157
  {"shape":"ResourceNotFoundException"}
158
158
  ]
159
159
  },
160
+ "ListContactFlows":{
161
+ "name":"ListContactFlows",
162
+ "http":{
163
+ "method":"GET",
164
+ "requestUri":"/contact-flows-summary/{InstanceId}"
165
+ },
166
+ "input":{"shape":"ListContactFlowsRequest"},
167
+ "output":{"shape":"ListContactFlowsResponse"},
168
+ "errors":[
169
+ {"shape":"InvalidRequestException"},
170
+ {"shape":"InvalidParameterException"},
171
+ {"shape":"ResourceNotFoundException"},
172
+ {"shape":"ThrottlingException"},
173
+ {"shape":"InternalServiceException"}
174
+ ]
175
+ },
176
+ "ListHoursOfOperations":{
177
+ "name":"ListHoursOfOperations",
178
+ "http":{
179
+ "method":"GET",
180
+ "requestUri":"/hours-of-operations-summary/{InstanceId}"
181
+ },
182
+ "input":{"shape":"ListHoursOfOperationsRequest"},
183
+ "output":{"shape":"ListHoursOfOperationsResponse"},
184
+ "errors":[
185
+ {"shape":"InvalidRequestException"},
186
+ {"shape":"InvalidParameterException"},
187
+ {"shape":"ResourceNotFoundException"},
188
+ {"shape":"ThrottlingException"},
189
+ {"shape":"InternalServiceException"}
190
+ ]
191
+ },
192
+ "ListPhoneNumbers":{
193
+ "name":"ListPhoneNumbers",
194
+ "http":{
195
+ "method":"GET",
196
+ "requestUri":"/phone-numbers-summary/{InstanceId}"
197
+ },
198
+ "input":{"shape":"ListPhoneNumbersRequest"},
199
+ "output":{"shape":"ListPhoneNumbersResponse"},
200
+ "errors":[
201
+ {"shape":"InvalidRequestException"},
202
+ {"shape":"InvalidParameterException"},
203
+ {"shape":"ResourceNotFoundException"},
204
+ {"shape":"ThrottlingException"},
205
+ {"shape":"InternalServiceException"}
206
+ ]
207
+ },
208
+ "ListQueues":{
209
+ "name":"ListQueues",
210
+ "http":{
211
+ "method":"GET",
212
+ "requestUri":"/queues-summary/{InstanceId}"
213
+ },
214
+ "input":{"shape":"ListQueuesRequest"},
215
+ "output":{"shape":"ListQueuesResponse"},
216
+ "errors":[
217
+ {"shape":"InvalidRequestException"},
218
+ {"shape":"InvalidParameterException"},
219
+ {"shape":"ResourceNotFoundException"},
220
+ {"shape":"ThrottlingException"},
221
+ {"shape":"InternalServiceException"}
222
+ ]
223
+ },
160
224
  "ListRoutingProfiles":{
161
225
  "name":"ListRoutingProfiles",
162
226
  "http":{
@@ -405,6 +469,39 @@
405
469
  "type":"string",
406
470
  "max":500
407
471
  },
472
+ "ContactFlowName":{"type":"string"},
473
+ "ContactFlowSummary":{
474
+ "type":"structure",
475
+ "members":{
476
+ "Id":{"shape":"ContactFlowId"},
477
+ "Arn":{"shape":"ARN"},
478
+ "Name":{"shape":"ContactFlowName"},
479
+ "ContactFlowType":{"shape":"ContactFlowType"}
480
+ }
481
+ },
482
+ "ContactFlowSummaryList":{
483
+ "type":"list",
484
+ "member":{"shape":"ContactFlowSummary"}
485
+ },
486
+ "ContactFlowType":{
487
+ "type":"string",
488
+ "enum":[
489
+ "CONTACT_FLOW",
490
+ "CUSTOMER_QUEUE",
491
+ "CUSTOMER_HOLD",
492
+ "CUSTOMER_WHISPER",
493
+ "AGENT_HOLD",
494
+ "AGENT_WHISPER",
495
+ "OUTBOUND_WHISPER",
496
+ "AGENT_TRANSFER",
497
+ "QUEUE_TRANSFER"
498
+ ]
499
+ },
500
+ "ContactFlowTypes":{
501
+ "type":"list",
502
+ "member":{"shape":"ContactFlowType"},
503
+ "max":10
504
+ },
408
505
  "ContactId":{
409
506
  "type":"string",
410
507
  "max":256,
@@ -872,6 +969,20 @@
872
969
  "type":"list",
873
970
  "member":{"shape":"HistoricalMetric"}
874
971
  },
972
+ "HoursOfOperationId":{"type":"string"},
973
+ "HoursOfOperationName":{"type":"string"},
974
+ "HoursOfOperationSummary":{
975
+ "type":"structure",
976
+ "members":{
977
+ "Id":{"shape":"HoursOfOperationId"},
978
+ "Arn":{"shape":"ARN"},
979
+ "Name":{"shape":"HoursOfOperationName"}
980
+ }
981
+ },
982
+ "HoursOfOperationSummaryList":{
983
+ "type":"list",
984
+ "member":{"shape":"HoursOfOperationSummary"}
985
+ },
875
986
  "InstanceId":{
876
987
  "type":"string",
877
988
  "max":100,
@@ -909,6 +1020,138 @@
909
1020
  "error":{"httpStatusCode":429},
910
1021
  "exception":true
911
1022
  },
1023
+ "ListContactFlowsRequest":{
1024
+ "type":"structure",
1025
+ "required":["InstanceId"],
1026
+ "members":{
1027
+ "InstanceId":{
1028
+ "shape":"InstanceId",
1029
+ "location":"uri",
1030
+ "locationName":"InstanceId"
1031
+ },
1032
+ "ContactFlowTypes":{
1033
+ "shape":"ContactFlowTypes",
1034
+ "location":"querystring",
1035
+ "locationName":"contactFlowTypes"
1036
+ },
1037
+ "NextToken":{
1038
+ "shape":"NextToken",
1039
+ "location":"querystring",
1040
+ "locationName":"nextToken"
1041
+ },
1042
+ "MaxResults":{
1043
+ "shape":"MaxResult1000",
1044
+ "location":"querystring",
1045
+ "locationName":"maxResults"
1046
+ }
1047
+ }
1048
+ },
1049
+ "ListContactFlowsResponse":{
1050
+ "type":"structure",
1051
+ "members":{
1052
+ "ContactFlowSummaryList":{"shape":"ContactFlowSummaryList"},
1053
+ "NextToken":{"shape":"NextToken"}
1054
+ }
1055
+ },
1056
+ "ListHoursOfOperationsRequest":{
1057
+ "type":"structure",
1058
+ "required":["InstanceId"],
1059
+ "members":{
1060
+ "InstanceId":{
1061
+ "shape":"InstanceId",
1062
+ "location":"uri",
1063
+ "locationName":"InstanceId"
1064
+ },
1065
+ "NextToken":{
1066
+ "shape":"NextToken",
1067
+ "location":"querystring",
1068
+ "locationName":"nextToken"
1069
+ },
1070
+ "MaxResults":{
1071
+ "shape":"MaxResult1000",
1072
+ "location":"querystring",
1073
+ "locationName":"maxResults"
1074
+ }
1075
+ }
1076
+ },
1077
+ "ListHoursOfOperationsResponse":{
1078
+ "type":"structure",
1079
+ "members":{
1080
+ "HoursOfOperationSummaryList":{"shape":"HoursOfOperationSummaryList"},
1081
+ "NextToken":{"shape":"NextToken"}
1082
+ }
1083
+ },
1084
+ "ListPhoneNumbersRequest":{
1085
+ "type":"structure",
1086
+ "required":["InstanceId"],
1087
+ "members":{
1088
+ "InstanceId":{
1089
+ "shape":"InstanceId",
1090
+ "location":"uri",
1091
+ "locationName":"InstanceId"
1092
+ },
1093
+ "PhoneNumberTypes":{
1094
+ "shape":"PhoneNumberTypes",
1095
+ "location":"querystring",
1096
+ "locationName":"phoneNumberTypes"
1097
+ },
1098
+ "PhoneNumberCountryCodes":{
1099
+ "shape":"PhoneNumberCountryCodes",
1100
+ "location":"querystring",
1101
+ "locationName":"phoneNumberCountryCodes"
1102
+ },
1103
+ "NextToken":{
1104
+ "shape":"NextToken",
1105
+ "location":"querystring",
1106
+ "locationName":"nextToken"
1107
+ },
1108
+ "MaxResults":{
1109
+ "shape":"MaxResult1000",
1110
+ "location":"querystring",
1111
+ "locationName":"maxResults"
1112
+ }
1113
+ }
1114
+ },
1115
+ "ListPhoneNumbersResponse":{
1116
+ "type":"structure",
1117
+ "members":{
1118
+ "PhoneNumberSummaryList":{"shape":"PhoneNumberSummaryList"},
1119
+ "NextToken":{"shape":"NextToken"}
1120
+ }
1121
+ },
1122
+ "ListQueuesRequest":{
1123
+ "type":"structure",
1124
+ "required":["InstanceId"],
1125
+ "members":{
1126
+ "InstanceId":{
1127
+ "shape":"InstanceId",
1128
+ "location":"uri",
1129
+ "locationName":"InstanceId"
1130
+ },
1131
+ "QueueTypes":{
1132
+ "shape":"QueueTypes",
1133
+ "location":"querystring",
1134
+ "locationName":"queueTypes"
1135
+ },
1136
+ "NextToken":{
1137
+ "shape":"NextToken",
1138
+ "location":"querystring",
1139
+ "locationName":"nextToken"
1140
+ },
1141
+ "MaxResults":{
1142
+ "shape":"MaxResult1000",
1143
+ "location":"querystring",
1144
+ "locationName":"maxResults"
1145
+ }
1146
+ }
1147
+ },
1148
+ "ListQueuesResponse":{
1149
+ "type":"structure",
1150
+ "members":{
1151
+ "QueueSummaryList":{"shape":"QueueSummaryList"},
1152
+ "NextToken":{"shape":"NextToken"}
1153
+ }
1154
+ },
912
1155
  "ListRoutingProfilesRequest":{
913
1156
  "type":"structure",
914
1157
  "required":["InstanceId"],
@@ -1050,6 +1293,280 @@
1050
1293
  "pattern":"/^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)[a-zA-Z\\d\\S]{8,64}$/"
1051
1294
  },
1052
1295
  "PhoneNumber":{"type":"string"},
1296
+ "PhoneNumberCountryCode":{
1297
+ "type":"string",
1298
+ "enum":[
1299
+ "AF",
1300
+ "AL",
1301
+ "DZ",
1302
+ "AS",
1303
+ "AD",
1304
+ "AO",
1305
+ "AI",
1306
+ "AQ",
1307
+ "AG",
1308
+ "AR",
1309
+ "AM",
1310
+ "AW",
1311
+ "AU",
1312
+ "AT",
1313
+ "AZ",
1314
+ "BS",
1315
+ "BH",
1316
+ "BD",
1317
+ "BB",
1318
+ "BY",
1319
+ "BE",
1320
+ "BZ",
1321
+ "BJ",
1322
+ "BM",
1323
+ "BT",
1324
+ "BO",
1325
+ "BA",
1326
+ "BW",
1327
+ "BR",
1328
+ "IO",
1329
+ "VG",
1330
+ "BN",
1331
+ "BG",
1332
+ "BF",
1333
+ "BI",
1334
+ "KH",
1335
+ "CM",
1336
+ "CA",
1337
+ "CV",
1338
+ "KY",
1339
+ "CF",
1340
+ "TD",
1341
+ "CL",
1342
+ "CN",
1343
+ "CX",
1344
+ "CC",
1345
+ "CO",
1346
+ "KM",
1347
+ "CK",
1348
+ "CR",
1349
+ "HR",
1350
+ "CU",
1351
+ "CW",
1352
+ "CY",
1353
+ "CZ",
1354
+ "CD",
1355
+ "DK",
1356
+ "DJ",
1357
+ "DM",
1358
+ "DO",
1359
+ "TL",
1360
+ "EC",
1361
+ "EG",
1362
+ "SV",
1363
+ "GQ",
1364
+ "ER",
1365
+ "EE",
1366
+ "ET",
1367
+ "FK",
1368
+ "FO",
1369
+ "FJ",
1370
+ "FI",
1371
+ "FR",
1372
+ "PF",
1373
+ "GA",
1374
+ "GM",
1375
+ "GE",
1376
+ "DE",
1377
+ "GH",
1378
+ "GI",
1379
+ "GR",
1380
+ "GL",
1381
+ "GD",
1382
+ "GU",
1383
+ "GT",
1384
+ "GG",
1385
+ "GN",
1386
+ "GW",
1387
+ "GY",
1388
+ "HT",
1389
+ "HN",
1390
+ "HK",
1391
+ "HU",
1392
+ "IS",
1393
+ "IN",
1394
+ "ID",
1395
+ "IR",
1396
+ "IQ",
1397
+ "IE",
1398
+ "IM",
1399
+ "IL",
1400
+ "IT",
1401
+ "CI",
1402
+ "JM",
1403
+ "JP",
1404
+ "JE",
1405
+ "JO",
1406
+ "KZ",
1407
+ "KE",
1408
+ "KI",
1409
+ "KW",
1410
+ "KG",
1411
+ "LA",
1412
+ "LV",
1413
+ "LB",
1414
+ "LS",
1415
+ "LR",
1416
+ "LY",
1417
+ "LI",
1418
+ "LT",
1419
+ "LU",
1420
+ "MO",
1421
+ "MK",
1422
+ "MG",
1423
+ "MW",
1424
+ "MY",
1425
+ "MV",
1426
+ "ML",
1427
+ "MT",
1428
+ "MH",
1429
+ "MR",
1430
+ "MU",
1431
+ "YT",
1432
+ "MX",
1433
+ "FM",
1434
+ "MD",
1435
+ "MC",
1436
+ "MN",
1437
+ "ME",
1438
+ "MS",
1439
+ "MA",
1440
+ "MZ",
1441
+ "MM",
1442
+ "NA",
1443
+ "NR",
1444
+ "NP",
1445
+ "NL",
1446
+ "AN",
1447
+ "NC",
1448
+ "NZ",
1449
+ "NI",
1450
+ "NE",
1451
+ "NG",
1452
+ "NU",
1453
+ "KP",
1454
+ "MP",
1455
+ "NO",
1456
+ "OM",
1457
+ "PK",
1458
+ "PW",
1459
+ "PA",
1460
+ "PG",
1461
+ "PY",
1462
+ "PE",
1463
+ "PH",
1464
+ "PN",
1465
+ "PL",
1466
+ "PT",
1467
+ "PR",
1468
+ "QA",
1469
+ "CG",
1470
+ "RE",
1471
+ "RO",
1472
+ "RU",
1473
+ "RW",
1474
+ "BL",
1475
+ "SH",
1476
+ "KN",
1477
+ "LC",
1478
+ "MF",
1479
+ "PM",
1480
+ "VC",
1481
+ "WS",
1482
+ "SM",
1483
+ "ST",
1484
+ "SA",
1485
+ "SN",
1486
+ "RS",
1487
+ "SC",
1488
+ "SL",
1489
+ "SG",
1490
+ "SX",
1491
+ "SK",
1492
+ "SI",
1493
+ "SB",
1494
+ "SO",
1495
+ "ZA",
1496
+ "KR",
1497
+ "ES",
1498
+ "LK",
1499
+ "SD",
1500
+ "SR",
1501
+ "SJ",
1502
+ "SZ",
1503
+ "SE",
1504
+ "CH",
1505
+ "SY",
1506
+ "TW",
1507
+ "TJ",
1508
+ "TZ",
1509
+ "TH",
1510
+ "TG",
1511
+ "TK",
1512
+ "TO",
1513
+ "TT",
1514
+ "TN",
1515
+ "TR",
1516
+ "TM",
1517
+ "TC",
1518
+ "TV",
1519
+ "VI",
1520
+ "UG",
1521
+ "UA",
1522
+ "AE",
1523
+ "GB",
1524
+ "US",
1525
+ "UY",
1526
+ "UZ",
1527
+ "VU",
1528
+ "VA",
1529
+ "VE",
1530
+ "VN",
1531
+ "WF",
1532
+ "EH",
1533
+ "YE",
1534
+ "ZM",
1535
+ "ZW"
1536
+ ]
1537
+ },
1538
+ "PhoneNumberCountryCodes":{
1539
+ "type":"list",
1540
+ "member":{"shape":"PhoneNumberCountryCode"},
1541
+ "max":10
1542
+ },
1543
+ "PhoneNumberId":{"type":"string"},
1544
+ "PhoneNumberSummary":{
1545
+ "type":"structure",
1546
+ "members":{
1547
+ "Id":{"shape":"PhoneNumberId"},
1548
+ "Arn":{"shape":"ARN"},
1549
+ "PhoneNumber":{"shape":"PhoneNumber"},
1550
+ "PhoneNumberType":{"shape":"PhoneNumberType"},
1551
+ "PhoneNumberCountryCode":{"shape":"PhoneNumberCountryCode"}
1552
+ }
1553
+ },
1554
+ "PhoneNumberSummaryList":{
1555
+ "type":"list",
1556
+ "member":{"shape":"PhoneNumberSummary"}
1557
+ },
1558
+ "PhoneNumberType":{
1559
+ "type":"string",
1560
+ "enum":[
1561
+ "TOLL_FREE",
1562
+ "DID"
1563
+ ]
1564
+ },
1565
+ "PhoneNumberTypes":{
1566
+ "type":"list",
1567
+ "member":{"shape":"PhoneNumberType"},
1568
+ "max":2
1569
+ },
1053
1570
  "PhoneType":{
1054
1571
  "type":"string",
1055
1572
  "enum":[
@@ -1058,6 +1575,11 @@
1058
1575
  ]
1059
1576
  },
1060
1577
  "QueueId":{"type":"string"},
1578
+ "QueueName":{
1579
+ "type":"string",
1580
+ "max":256,
1581
+ "min":1
1582
+ },
1061
1583
  "QueueReference":{
1062
1584
  "type":"structure",
1063
1585
  "members":{
@@ -1065,6 +1587,31 @@
1065
1587
  "Arn":{"shape":"ARN"}
1066
1588
  }
1067
1589
  },
1590
+ "QueueSummary":{
1591
+ "type":"structure",
1592
+ "members":{
1593
+ "Id":{"shape":"QueueId"},
1594
+ "Arn":{"shape":"ARN"},
1595
+ "Name":{"shape":"QueueName"},
1596
+ "QueueType":{"shape":"QueueType"}
1597
+ }
1598
+ },
1599
+ "QueueSummaryList":{
1600
+ "type":"list",
1601
+ "member":{"shape":"QueueSummary"}
1602
+ },
1603
+ "QueueType":{
1604
+ "type":"string",
1605
+ "enum":[
1606
+ "STANDARD",
1607
+ "AGENT"
1608
+ ]
1609
+ },
1610
+ "QueueTypes":{
1611
+ "type":"list",
1612
+ "member":{"shape":"QueueType"},
1613
+ "max":2
1614
+ },
1068
1615
  "Queues":{
1069
1616
  "type":"list",
1070
1617
  "member":{"shape":"QueueId"},
@@ -2,13 +2,61 @@
2
2
  "pagination": {
3
3
  "GetCurrentMetricData": {
4
4
  "input_token": "NextToken",
5
- "output_token": "NextToken",
6
- "limit_key": "MaxResults"
5
+ "limit_key": "MaxResults",
6
+ "output_token": "NextToken"
7
7
  },
8
8
  "GetMetricData": {
9
9
  "input_token": "NextToken",
10
+ "limit_key": "MaxResults",
11
+ "output_token": "NextToken"
12
+ },
13
+ "ListContactFlows": {
14
+ "input_token": "NextToken",
15
+ "limit_key": "MaxResults",
16
+ "output_token": "NextToken",
17
+ "result_key": "ContactFlowSummaryList"
18
+ },
19
+ "ListHoursOfOperations": {
20
+ "input_token": "NextToken",
21
+ "limit_key": "MaxResults",
22
+ "output_token": "NextToken",
23
+ "result_key": "HoursOfOperationSummaryList"
24
+ },
25
+ "ListPhoneNumbers": {
26
+ "input_token": "NextToken",
27
+ "limit_key": "MaxResults",
28
+ "output_token": "NextToken",
29
+ "result_key": "PhoneNumberSummaryList"
30
+ },
31
+ "ListQueues": {
32
+ "input_token": "NextToken",
33
+ "limit_key": "MaxResults",
34
+ "output_token": "NextToken",
35
+ "result_key": "QueueSummaryList"
36
+ },
37
+ "ListRoutingProfiles": {
38
+ "input_token": "NextToken",
39
+ "limit_key": "MaxResults",
40
+ "output_token": "NextToken",
41
+ "result_key": "RoutingProfileSummaryList"
42
+ },
43
+ "ListSecurityProfiles": {
44
+ "input_token": "NextToken",
45
+ "limit_key": "MaxResults",
46
+ "output_token": "NextToken",
47
+ "result_key": "SecurityProfileSummaryList"
48
+ },
49
+ "ListUserHierarchyGroups": {
50
+ "input_token": "NextToken",
51
+ "limit_key": "MaxResults",
52
+ "output_token": "NextToken",
53
+ "result_key": "UserHierarchyGroupSummaryList"
54
+ },
55
+ "ListUsers": {
56
+ "input_token": "NextToken",
57
+ "limit_key": "MaxResults",
10
58
  "output_token": "NextToken",
11
- "limit_key": "MaxResults"
59
+ "result_key": "UserSummaryList"
12
60
  }
13
61
  }
14
- }
62
+ }
@@ -766,6 +766,7 @@
766
766
  "Astrid",
767
767
  "Bianca",
768
768
  "Brian",
769
+ "Camila",
769
770
  "Carla",
770
771
  "Carmen",
771
772
  "Celine",
@@ -795,6 +796,7 @@
795
796
  "Liv",
796
797
  "Lotte",
797
798
  "Lucia",
799
+ "Lupe",
798
800
  "Mads",
799
801
  "Maja",
800
802
  "Marlene",
@@ -3382,42 +3382,26 @@
3382
3382
  }
3383
3383
  },
3384
3384
  "sts" : {
3385
- "defaults" : {
3386
- "credentialScope" : {
3387
- "region" : "us-east-1"
3388
- },
3389
- "hostname" : "sts.amazonaws.com"
3390
- },
3391
3385
  "endpoints" : {
3392
- "ap-east-1" : {
3393
- "credentialScope" : {
3394
- "region" : "ap-east-1"
3395
- },
3396
- "hostname" : "sts.ap-east-1.amazonaws.com"
3397
- },
3386
+ "ap-east-1" : { },
3398
3387
  "ap-northeast-1" : { },
3399
- "ap-northeast-2" : {
3400
- "credentialScope" : {
3401
- "region" : "ap-northeast-2"
3402
- },
3403
- "hostname" : "sts.ap-northeast-2.amazonaws.com"
3404
- },
3388
+ "ap-northeast-2" : { },
3405
3389
  "ap-south-1" : { },
3406
3390
  "ap-southeast-1" : { },
3407
3391
  "ap-southeast-2" : { },
3408
- "aws-global" : { },
3392
+ "aws-global" : {
3393
+ "credentialScope" : {
3394
+ "region" : "us-east-1"
3395
+ },
3396
+ "hostname" : "sts.amazonaws.com"
3397
+ },
3409
3398
  "ca-central-1" : { },
3410
3399
  "eu-central-1" : { },
3411
3400
  "eu-north-1" : { },
3412
3401
  "eu-west-1" : { },
3413
3402
  "eu-west-2" : { },
3414
3403
  "eu-west-3" : { },
3415
- "me-south-1" : {
3416
- "credentialScope" : {
3417
- "region" : "me-south-1"
3418
- },
3419
- "hostname" : "sts.me-south-1.amazonaws.com"
3420
- },
3404
+ "me-south-1" : { },
3421
3405
  "sa-east-1" : { },
3422
3406
  "us-east-1" : { },
3423
3407
  "us-east-1-fips" : {
@@ -327,6 +327,7 @@ module Aws
327
327
  autoload :S3RequestSigner, 'aws-sdk-core/plugins/s3_request_signer'
328
328
  autoload :S3SseCpk, 'aws-sdk-core/plugins/s3_sse_cpk'
329
329
  autoload :S3UrlEncodedKeys, 'aws-sdk-core/plugins/s3_url_encoded_keys'
330
+ autoload :STSRegionalEndpoints, 'aws-sdk-core/plugins/sts_regional_endpoints'
330
331
  autoload :SQSQueueUrls, 'aws-sdk-core/plugins/sqs_queue_urls'
331
332
  autoload :SQSMd5s, 'aws-sdk-core/plugins/sqs_md5s'
332
333
  autoload :StubResponses, 'aws-sdk-core/plugins/stub_responses'
@@ -274,6 +274,10 @@ module Aws
274
274
  Aws::Plugins::S3RequestSigner
275
275
  ))
276
276
 
277
+ plugins('AWS Security Token Service', add: %w(
278
+ Aws::Plugins::STSRegionalEndpoints
279
+ ))
280
+
277
281
  plugins('AWS S3 Control', add: %w(
278
282
  Aws::Plugins::S3HostId
279
283
  Aws::Plugins::S3ControlDns
@@ -2,12 +2,34 @@ module Aws
2
2
  # @api private
3
3
  class EndpointProvider
4
4
 
5
+ # when sts_regional_endpoint set to `legacy`
6
+ # endpoint pattern stays global for
7
+ # following regions
8
+ STS_LEGACY_REGIONS = %w(
9
+ ap-northeast-1
10
+ ap-south-1
11
+ ap-southeast-1
12
+ ap-southeast-2
13
+ aws-global
14
+ ca-central-1
15
+ eu-central-1
16
+ eu-north-1
17
+ eu-west-1
18
+ eu-west-2
19
+ eu-west-3
20
+ sa-east-1
21
+ us-east-1
22
+ us-east-2
23
+ us-west-1
24
+ us-west-2
25
+ )
26
+
5
27
  def initialize(rules)
6
28
  @rules = rules
7
29
  end
8
30
 
9
- def resolve(region, service)
10
- "https://" + endpoint_for(region, service)
31
+ def resolve(region, service, sts_regional_endpoints = nil)
32
+ "https://" + endpoint_for(region, service, sts_regional_endpoints)
11
33
  end
12
34
 
13
35
  def signing_region(region, service)
@@ -27,7 +49,7 @@ module Aws
27
49
 
28
50
  private
29
51
 
30
- def endpoint_for(region, service)
52
+ def endpoint_for(region, service, sts_regional_endpoints)
31
53
  partition = get_partition(region)
32
54
  endpoint = default_endpoint(partition, service, region)
33
55
  service_cfg = partition.fetch("services", {}).fetch(service, {})
@@ -35,8 +57,13 @@ module Aws
35
57
  # Check for service-level default endpoint.
36
58
  endpoint = service_cfg.fetch("defaults", {}).fetch("hostname", endpoint)
37
59
 
60
+ # Check for sts legacy behavior
61
+ sts_legacy = service == 'sts' &&
62
+ sts_regional_endpoints == 'legacy' &&
63
+ STS_LEGACY_REGIONS.include?(region)
64
+
38
65
  # Check for global endpoint.
39
- if service_cfg["isRegionalized"] == false
66
+ if sts_legacy || service_cfg["isRegionalized"] == false
40
67
  region = service_cfg.fetch("partitionEndpoint", region)
41
68
  end
42
69
 
@@ -81,8 +108,8 @@ module Aws
81
108
 
82
109
  class << self
83
110
 
84
- def resolve(region, service)
85
- default_provider.resolve(region, service)
111
+ def resolve(region, service, sts_regional_endpoints = nil)
112
+ default_provider.resolve(region, service, sts_regional_endpoints)
86
113
  end
87
114
 
88
115
  def signing_region(region, service)
@@ -26,6 +26,8 @@ module Aws
26
26
  endpoint_prefix = cfg.api.metadata['endpointPrefix']
27
27
  if cfg.region && endpoint_prefix
28
28
  EndpointProvider.resolve(cfg.region, endpoint_prefix)
29
+ sts_regional = cfg.respond_to?(:sts_regional_endpoints) ? cfg.sts_regional_endpoints : nil
30
+ EndpointProvider.resolve(cfg.region, endpoint_prefix, sts_regional)
29
31
  end
30
32
  end
31
33
 
@@ -0,0 +1,30 @@
1
+ module Aws
2
+ module Plugins
3
+
4
+ class STSRegionalEndpoints < Seahorse::Client::Plugin
5
+
6
+ option(:sts_regional_endpoints,
7
+ default: 'legacy',
8
+ doc_type: String,
9
+ docstring: <<-DOCS) do |cfg|
10
+ Passing in 'regional' to enable regional endpoint for STS for all supported
11
+ regions (except 'aws-global'), defaults to 'legacy' mode, using global endpoint
12
+ for legacy regions.
13
+ DOCS
14
+ resolve_sts_regional_endpoints(cfg)
15
+ end
16
+
17
+ private
18
+
19
+ def self.resolve_sts_regional_endpoints(cfg)
20
+ env_mode = ENV['AWS_STS_REGIONAL_ENDPOINTS']
21
+ env_mode = nil if env_mode == ''
22
+ cfg_mode = Aws.shared_config.sts_regional_endpoints(
23
+ profile: cfg.profile)
24
+ env_mode || cfg_mode || 'legacy'
25
+ end
26
+
27
+ end
28
+
29
+ end
30
+ end
@@ -128,6 +128,21 @@ module Aws
128
128
  end
129
129
  end
130
130
 
131
+ def sts_regional_endpoints(opts = {})
132
+ p = opts[:profile] || @profile_name
133
+ if @config_enabled
134
+ if @parsed_credentials
135
+ mode = @parsed_credentials.fetch(p, {})["sts_regional_endpoints"]
136
+ end
137
+ if @parsed_config
138
+ mode ||= @parsed_config.fetch(p, {})["sts_regional_endpoints"]
139
+ end
140
+ mode
141
+ else
142
+ nil
143
+ end
144
+ end
145
+
131
146
  def endpoint_discovery(opts = {})
132
147
  p = opts[:profile] || @profile_name
133
148
  if @config_enabled && @parsed_config
@@ -1,3 +1,3 @@
1
1
  module Aws
2
- VERSION = '2.11.379'
2
+ VERSION = '2.11.380'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.11.379
4
+ version: 2.11.380
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-22 00:00:00.000000000 Z
11
+ date: 2019-10-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jmespath
@@ -1057,6 +1057,7 @@ files:
1057
1057
  - lib/aws-sdk-core/plugins/s3_url_encoded_keys.rb
1058
1058
  - lib/aws-sdk-core/plugins/sqs_md5s.rb
1059
1059
  - lib/aws-sdk-core/plugins/sqs_queue_urls.rb
1060
+ - lib/aws-sdk-core/plugins/sts_regional_endpoints.rb
1060
1061
  - lib/aws-sdk-core/plugins/stub_responses.rb
1061
1062
  - lib/aws-sdk-core/plugins/swf_read_timeouts.rb
1062
1063
  - lib/aws-sdk-core/plugins/user_agent.rb