aws-sdk-core 2.11.379 → 2.11.380

Sign up to get free protection for your applications and to get access to all the features.
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