Skip to content

Commit 9879d20

Browse files
author
AWS
committed
AWS Price List Service Update: Add Throttling Exception to all APIs.
1 parent 7b6c92b commit 9879d20

File tree

3 files changed

+44
-23
lines changed

3 files changed

+44
-23
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "AWS Price List Service",
4+
"contributor": "",
5+
"description": "Add Throttling Exception to all APIs."
6+
}

services/pricing/src/main/resources/codegen-resources/endpoint-rule-set.json

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
]
4141
}
4242
],
43-
"type": "tree",
4443
"rules": [
4544
{
4645
"conditions": [
@@ -83,7 +82,8 @@
8382
},
8483
"type": "endpoint"
8584
}
86-
]
85+
],
86+
"type": "tree"
8787
},
8888
{
8989
"conditions": [
@@ -96,7 +96,6 @@
9696
]
9797
}
9898
],
99-
"type": "tree",
10099
"rules": [
101100
{
102101
"conditions": [
@@ -110,7 +109,6 @@
110109
"assign": "PartitionResult"
111110
}
112111
],
113-
"type": "tree",
114112
"rules": [
115113
{
116114
"conditions": [
@@ -133,7 +131,6 @@
133131
]
134132
}
135133
],
136-
"type": "tree",
137134
"rules": [
138135
{
139136
"conditions": [
@@ -168,7 +165,6 @@
168165
]
169166
}
170167
],
171-
"type": "tree",
172168
"rules": [
173169
{
174170
"conditions": [],
@@ -179,14 +175,16 @@
179175
},
180176
"type": "endpoint"
181177
}
182-
]
178+
],
179+
"type": "tree"
183180
},
184181
{
185182
"conditions": [],
186183
"error": "FIPS and DualStack are enabled, but this partition does not support one or both",
187184
"type": "error"
188185
}
189-
]
186+
],
187+
"type": "tree"
190188
},
191189
{
192190
"conditions": [
@@ -200,14 +198,12 @@
200198
]
201199
}
202200
],
203-
"type": "tree",
204201
"rules": [
205202
{
206203
"conditions": [
207204
{
208205
"fn": "booleanEquals",
209206
"argv": [
210-
true,
211207
{
212208
"fn": "getAttr",
213209
"argv": [
@@ -216,11 +212,11 @@
216212
},
217213
"supportsFIPS"
218214
]
219-
}
215+
},
216+
true
220217
]
221218
}
222219
],
223-
"type": "tree",
224220
"rules": [
225221
{
226222
"conditions": [],
@@ -231,14 +227,16 @@
231227
},
232228
"type": "endpoint"
233229
}
234-
]
230+
],
231+
"type": "tree"
235232
},
236233
{
237234
"conditions": [],
238235
"error": "FIPS is enabled but this partition does not support FIPS",
239236
"type": "error"
240237
}
241-
]
238+
],
239+
"type": "tree"
242240
},
243241
{
244242
"conditions": [
@@ -252,7 +250,6 @@
252250
]
253251
}
254252
],
255-
"type": "tree",
256253
"rules": [
257254
{
258255
"conditions": [
@@ -272,7 +269,6 @@
272269
]
273270
}
274271
],
275-
"type": "tree",
276272
"rules": [
277273
{
278274
"conditions": [],
@@ -283,14 +279,16 @@
283279
},
284280
"type": "endpoint"
285281
}
286-
]
282+
],
283+
"type": "tree"
287284
},
288285
{
289286
"conditions": [],
290287
"error": "DualStack is enabled but this partition does not support DualStack",
291288
"type": "error"
292289
}
293-
]
290+
],
291+
"type": "tree"
294292
},
295293
{
296294
"conditions": [
@@ -326,9 +324,11 @@
326324
},
327325
"type": "endpoint"
328326
}
329-
]
327+
],
328+
"type": "tree"
330329
}
331-
]
330+
],
331+
"type": "tree"
332332
},
333333
{
334334
"conditions": [],

services/pricing/src/main/resources/codegen-resources/service-2.json

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
{"shape":"InvalidNextTokenException"},
2828
{"shape":"NotFoundException"},
2929
{"shape":"InternalErrorException"},
30+
{"shape":"ThrottlingException"},
3031
{"shape":"ExpiredNextTokenException"}
3132
],
3233
"documentation":"<p>Returns the metadata for one service or a list of the metadata for all services. Use this without a service code to get the service codes for all services. Use it with a service code, such as <code>AmazonEC2</code>, to get information specific to that service, such as the attribute names available for that service. For example, some of the attribute names available for EC2 are <code>volumeType</code>, <code>maxIopsVolume</code>, <code>operation</code>, <code>locationType</code>, and <code>instanceCapacity10xlarge</code>.</p>"
@@ -44,6 +45,7 @@
4445
{"shape":"InvalidNextTokenException"},
4546
{"shape":"NotFoundException"},
4647
{"shape":"InternalErrorException"},
48+
{"shape":"ThrottlingException"},
4749
{"shape":"ExpiredNextTokenException"}
4850
],
4951
"documentation":"<p>Returns a list of attribute values. Attributes are similar to the details in a Price List API offer file. For a list of available attributes, see <a href=\"https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/reading-an-offer.html#pps-defs\">Offer File Definitions</a> in the <a href=\"https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-what-is.html\">Billing and Cost Management User Guide</a>.</p>"
@@ -60,7 +62,8 @@
6062
{"shape":"InvalidParameterException"},
6163
{"shape":"NotFoundException"},
6264
{"shape":"AccessDeniedException"},
63-
{"shape":"InternalErrorException"}
65+
{"shape":"InternalErrorException"},
66+
{"shape":"ThrottlingException"}
6467
],
6568
"documentation":"<p> <i> <b>This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List API is subject to the Beta Service Participation terms of the <a href=\"https://aws.amazon.com/service-terms/\">Amazon Web Services Service Terms</a> (Section 1.10).</b> </i> </p> <p>This returns the URL that you can retrieve your Price List file from. This URL is based on the <code>PriceListArn</code> and <code>FileFormat</code> that you retrieve from the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_ListPriceLists.html\">ListPriceLists</a> response. </p>"
6669
},
@@ -77,6 +80,7 @@
7780
{"shape":"InvalidNextTokenException"},
7881
{"shape":"NotFoundException"},
7982
{"shape":"InternalErrorException"},
83+
{"shape":"ThrottlingException"},
8084
{"shape":"ExpiredNextTokenException"}
8185
],
8286
"documentation":"<p>Returns a list of all products that match the filter criteria.</p>"
@@ -95,6 +99,7 @@
9599
{"shape":"NotFoundException"},
96100
{"shape":"AccessDeniedException"},
97101
{"shape":"InternalErrorException"},
102+
{"shape":"ThrottlingException"},
98103
{"shape":"ExpiredNextTokenException"}
99104
],
100105
"documentation":"<p> <i> <b>This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List API is subject to the Beta Service Participation terms of the <a href=\"https://aws.amazon.com/service-terms/\">Amazon Web Services Service Terms</a> (Section 1.10).</b> </i> </p> <p>This returns a list of Price List references that the requester if authorized to view, given a <code>ServiceCode</code>, <code>CurrencyCode</code>, and an <code>EffectiveDate</code>. Use without a <code>RegionCode</code> filter to list Price List references from all available Amazon Web Services Regions. Use with a <code>RegionCode</code> filter to get the Price List reference that's specific to a specific Amazon Web Services Region. You can use the <code>PriceListArn</code> from the response to get your preferred Price List files through the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_GetPriceListFileUrl.html\">GetPriceListFileUrl</a> API.</p>"
@@ -338,7 +343,8 @@
338343
},
339344
"documentation":"<p>An error on the server occurred during the processing of your request. Try again later.</p>",
340345
"exception":true,
341-
"fault":true
346+
"fault":true,
347+
"retryable":{"throttling":false}
342348
},
343349
"InvalidNextTokenException":{
344350
"type":"structure",
@@ -443,7 +449,7 @@
443449
"type":"string",
444450
"max":2048,
445451
"min":18,
446-
"pattern":"arn:[A-Za-z0-9][-.A-Za-z0-9]{0,62}:pricing:::price-list/[A-Za-z0-9_/.-]{1,1023}"
452+
"pattern":"arn:[A-Za-z0-9][-.A-Za-z0-9]{0,62}:pricing:::price-list/[A-Za-z0-9+_/.-]{1,1023}"
447453
},
448454
"PriceListJsonItems":{
449455
"type":"list",
@@ -487,6 +493,15 @@
487493
},
488494
"String":{"type":"string"},
489495
"SynthesizedJsonPriceListJsonItem":{"type":"string"},
496+
"ThrottlingException":{
497+
"type":"structure",
498+
"members":{
499+
"Message":{"shape":"errorMessage"}
500+
},
501+
"documentation":"<p>You've made too many requests exceeding service quotas. </p>",
502+
"exception":true,
503+
"retryable":{"throttling":true}
504+
},
490505
"errorMessage":{"type":"string"}
491506
},
492507
"documentation":"<p>The Amazon Web Services Price List API is a centralized and convenient way to programmatically query Amazon Web Services for services, products, and pricing information. The Amazon Web Services Price List uses standardized product attributes such as <code>Location</code>, <code>Storage Class</code>, and <code>Operating System</code>, and provides prices at the SKU level. You can use the Amazon Web Services Price List to do the following:</p> <ul> <li> <p>Build cost control and scenario planning tools</p> </li> <li> <p>Reconcile billing data</p> </li> <li> <p>Forecast future spend for budgeting purposes</p> </li> <li> <p>Provide cost benefit analysis that compare your internal workloads with Amazon Web Services</p> </li> </ul> <p>Use <code>GetServices</code> without a service code to retrieve the service codes for all Amazon Web Services, then <code>GetServices</code> with a service code to retrieve the attribute names for that service. After you have the service code and attribute names, you can use <code>GetAttributeValues</code> to see what values are available for an attribute. With the service code and an attribute name and value, you can use <code>GetProducts</code> to find specific products that you're interested in, such as an <code>AmazonEC2</code> instance, with a <code>Provisioned IOPS</code> <code>volumeType</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/price-changes.html\">Using the Amazon Web Services Price List API</a> in the <i>Billing User Guide</i>.</p>"

0 commit comments

Comments
 (0)