1{
2    "smithy": "1.0",
3    "metadata": {
4        "suppressions": [
5            {
6                "id": "HttpMethodSemantics",
7                "namespace": "*"
8            },
9            {
10                "id": "HttpResponseCodeSemantics",
11                "namespace": "*"
12            },
13            {
14                "id": "PaginatedTrait",
15                "namespace": "*"
16            },
17            {
18                "id": "HttpHeaderTrait",
19                "namespace": "*"
20            },
21            {
22                "id": "HttpUriConflict",
23                "namespace": "*"
24            },
25            {
26                "id": "Service",
27                "namespace": "*"
28            }
29        ]
30    },
31    "shapes": {
32        "com.amazonaws.elasticinference#AcceleratorHealthStatus": {
33            "type": "string",
34            "traits": {
35                "smithy.api#length": {
36                    "min": 1,
37                    "max": 256
38                }
39            }
40        },
41        "com.amazonaws.elasticinference#AcceleratorId": {
42            "type": "string",
43            "traits": {
44                "smithy.api#length": {
45                    "min": 1,
46                    "max": 256
47                },
48                "smithy.api#pattern": "^eia-[0-9a-f]+$"
49            }
50        },
51        "com.amazonaws.elasticinference#AcceleratorIdList": {
52            "type": "list",
53            "member": {
54                "target": "com.amazonaws.elasticinference#AcceleratorId"
55            },
56            "traits": {
57                "smithy.api#length": {
58                    "min": 0,
59                    "max": 1000
60                }
61            }
62        },
63        "com.amazonaws.elasticinference#AcceleratorType": {
64            "type": "structure",
65            "members": {
66                "acceleratorTypeName": {
67                    "target": "com.amazonaws.elasticinference#AcceleratorTypeName",
68                    "traits": {
69                        "smithy.api#documentation": "<p>\n            The name of the Elastic Inference Accelerator type.\n        </p>"
70                    }
71                },
72                "memoryInfo": {
73                    "target": "com.amazonaws.elasticinference#MemoryInfo",
74                    "traits": {
75                        "smithy.api#documentation": "<p>\n            The memory information of the Elastic Inference Accelerator type.\n        </p>"
76                    }
77                },
78                "throughputInfo": {
79                    "target": "com.amazonaws.elasticinference#ThroughputInfoList",
80                    "traits": {
81                        "smithy.api#documentation": "<p>\n            The throughput information of the Elastic Inference Accelerator type.\n        </p>"
82                    }
83                }
84            },
85            "traits": {
86                "smithy.api#documentation": "<p>\n            The details of an Elastic Inference Accelerator type.\n        </p>"
87            }
88        },
89        "com.amazonaws.elasticinference#AcceleratorTypeList": {
90            "type": "list",
91            "member": {
92                "target": "com.amazonaws.elasticinference#AcceleratorType"
93            },
94            "traits": {
95                "smithy.api#length": {
96                    "min": 0,
97                    "max": 100
98                }
99            }
100        },
101        "com.amazonaws.elasticinference#AcceleratorTypeName": {
102            "type": "string",
103            "traits": {
104                "smithy.api#length": {
105                    "min": 1,
106                    "max": 256
107                },
108                "smithy.api#pattern": "^\\S+$"
109            }
110        },
111        "com.amazonaws.elasticinference#AcceleratorTypeNameList": {
112            "type": "list",
113            "member": {
114                "target": "com.amazonaws.elasticinference#AcceleratorTypeName"
115            },
116            "traits": {
117                "smithy.api#length": {
118                    "min": 0,
119                    "max": 100
120                }
121            }
122        },
123        "com.amazonaws.elasticinference#AcceleratorTypeOffering": {
124            "type": "structure",
125            "members": {
126                "acceleratorType": {
127                    "target": "com.amazonaws.elasticinference#AcceleratorTypeName",
128                    "traits": {
129                        "smithy.api#documentation": "<p>\n            The name of the Elastic Inference Accelerator type.\n        </p>"
130                    }
131                },
132                "locationType": {
133                    "target": "com.amazonaws.elasticinference#LocationType",
134                    "traits": {
135                        "smithy.api#documentation": "<p>\n            The location type for the offering. It can assume the following values:\n            region: defines that the offering is at the regional level.\n            availability-zone: defines that the offering is at the availability zone level.\n            availability-zone-id: defines that the offering is at the availability zone level, defined by the availability zone id.\n        </p>"
136                    }
137                },
138                "location": {
139                    "target": "com.amazonaws.elasticinference#Location",
140                    "traits": {
141                        "smithy.api#documentation": "<p>\n            The location for the offering.\n            It will return either the region, availability zone or availability zone id for the offering depending on the locationType value.\n        </p>"
142                    }
143                }
144            },
145            "traits": {
146                "smithy.api#documentation": "<p>\n            The offering for an Elastic Inference Accelerator type.\n        </p>"
147            }
148        },
149        "com.amazonaws.elasticinference#AcceleratorTypeOfferingList": {
150            "type": "list",
151            "member": {
152                "target": "com.amazonaws.elasticinference#AcceleratorTypeOffering"
153            },
154            "traits": {
155                "smithy.api#length": {
156                    "min": 0,
157                    "max": 100
158                }
159            }
160        },
161        "com.amazonaws.elasticinference#AvailabilityZone": {
162            "type": "string",
163            "traits": {
164                "smithy.api#length": {
165                    "min": 1,
166                    "max": 256
167                }
168            }
169        },
170        "com.amazonaws.elasticinference#BadRequestException": {
171            "type": "structure",
172            "members": {
173                "message": {
174                    "target": "com.amazonaws.elasticinference#String"
175                }
176            },
177            "traits": {
178                "smithy.api#documentation": "<p>\n            Raised when a malformed input has been provided to the API.\n        </p>",
179                "smithy.api#error": "client",
180                "smithy.api#httpError": 400
181            }
182        },
183        "com.amazonaws.elasticinference#DescribeAcceleratorOfferings": {
184            "type": "operation",
185            "input": {
186                "target": "com.amazonaws.elasticinference#DescribeAcceleratorOfferingsRequest"
187            },
188            "output": {
189                "target": "com.amazonaws.elasticinference#DescribeAcceleratorOfferingsResponse"
190            },
191            "errors": [
192                {
193                    "target": "com.amazonaws.elasticinference#BadRequestException"
194                },
195                {
196                    "target": "com.amazonaws.elasticinference#InternalServerException"
197                },
198                {
199                    "target": "com.amazonaws.elasticinference#ResourceNotFoundException"
200                }
201            ],
202            "traits": {
203                "smithy.api#documentation": "<p>\n            Describes the locations in which a given accelerator type or set of types is present in a given region.\n        </p>",
204                "smithy.api#http": {
205                    "method": "POST",
206                    "uri": "/describe-accelerator-offerings",
207                    "code": 200
208                }
209            }
210        },
211        "com.amazonaws.elasticinference#DescribeAcceleratorOfferingsRequest": {
212            "type": "structure",
213            "members": {
214                "locationType": {
215                    "target": "com.amazonaws.elasticinference#LocationType",
216                    "traits": {
217                        "smithy.api#documentation": "<p>\n            The location type that you want to describe accelerator type offerings for. It can assume the following values:\n            region: will return the accelerator type offering at the regional level.\n            availability-zone: will return the accelerator type offering at the availability zone level.\n            availability-zone-id: will return the accelerator type offering at the availability zone level returning the availability zone id.\n        </p>",
218                        "smithy.api#required": {}
219                    }
220                },
221                "acceleratorTypes": {
222                    "target": "com.amazonaws.elasticinference#AcceleratorTypeNameList",
223                    "traits": {
224                        "smithy.api#documentation": "<p>\n            The list of accelerator types to describe.\n        </p>"
225                    }
226                }
227            }
228        },
229        "com.amazonaws.elasticinference#DescribeAcceleratorOfferingsResponse": {
230            "type": "structure",
231            "members": {
232                "acceleratorTypeOfferings": {
233                    "target": "com.amazonaws.elasticinference#AcceleratorTypeOfferingList",
234                    "traits": {
235                        "smithy.api#documentation": "<p>\n            The list of accelerator type offerings for a specific location.\n        </p>"
236                    }
237                }
238            }
239        },
240        "com.amazonaws.elasticinference#DescribeAcceleratorTypes": {
241            "type": "operation",
242            "input": {
243                "target": "com.amazonaws.elasticinference#DescribeAcceleratorTypesRequest"
244            },
245            "output": {
246                "target": "com.amazonaws.elasticinference#DescribeAcceleratorTypesResponse"
247            },
248            "errors": [
249                {
250                    "target": "com.amazonaws.elasticinference#InternalServerException"
251                }
252            ],
253            "traits": {
254                "smithy.api#documentation": "<p>\n            Describes the accelerator types available in a given region, as well as their characteristics, such as memory and throughput.\n        </p>",
255                "smithy.api#http": {
256                    "method": "GET",
257                    "uri": "/describe-accelerator-types",
258                    "code": 200
259                }
260            }
261        },
262        "com.amazonaws.elasticinference#DescribeAcceleratorTypesRequest": {
263            "type": "structure",
264            "members": {}
265        },
266        "com.amazonaws.elasticinference#DescribeAcceleratorTypesResponse": {
267            "type": "structure",
268            "members": {
269                "acceleratorTypes": {
270                    "target": "com.amazonaws.elasticinference#AcceleratorTypeList",
271                    "traits": {
272                        "smithy.api#documentation": "<p>\n            The available accelerator types.\n        </p>"
273                    }
274                }
275            }
276        },
277        "com.amazonaws.elasticinference#DescribeAccelerators": {
278            "type": "operation",
279            "input": {
280                "target": "com.amazonaws.elasticinference#DescribeAcceleratorsRequest"
281            },
282            "output": {
283                "target": "com.amazonaws.elasticinference#DescribeAcceleratorsResponse"
284            },
285            "errors": [
286                {
287                    "target": "com.amazonaws.elasticinference#BadRequestException"
288                },
289                {
290                    "target": "com.amazonaws.elasticinference#InternalServerException"
291                },
292                {
293                    "target": "com.amazonaws.elasticinference#ResourceNotFoundException"
294                }
295            ],
296            "traits": {
297                "smithy.api#documentation": "<p>\n            Describes information over a provided set of accelerators belonging to an account.\n        </p>",
298                "smithy.api#http": {
299                    "method": "POST",
300                    "uri": "/describe-accelerators",
301                    "code": 200
302                },
303                "smithy.api#paginated": {
304                    "inputToken": "nextToken",
305                    "outputToken": "nextToken",
306                    "pageSize": "maxResults"
307                }
308            }
309        },
310        "com.amazonaws.elasticinference#DescribeAcceleratorsRequest": {
311            "type": "structure",
312            "members": {
313                "acceleratorIds": {
314                    "target": "com.amazonaws.elasticinference#AcceleratorIdList",
315                    "traits": {
316                        "smithy.api#documentation": "<p>\n            The IDs of the accelerators to describe.\n        </p>"
317                    }
318                },
319                "filters": {
320                    "target": "com.amazonaws.elasticinference#FilterList",
321                    "traits": {
322                        "smithy.api#documentation": "<p>\n            One or more filters. Filter names and values are case-sensitive. Valid filter names are:\n            accelerator-types: can provide a list of accelerator type names to filter for.\n            instance-id: can provide a list of EC2 instance ids to filter for.\n        </p>"
323                    }
324                },
325                "maxResults": {
326                    "target": "com.amazonaws.elasticinference#MaxResults",
327                    "traits": {
328                        "smithy.api#documentation": "<p>\n            The total number of items to return in the command's output. If the total number of items available is more than the value specified, a NextToken is provided in the command's output.\n            To resume pagination, provide the NextToken value in the starting-token argument of a subsequent command.\n            Do not use the NextToken response element directly outside of the AWS CLI.\n        </p>"
329                    }
330                },
331                "nextToken": {
332                    "target": "com.amazonaws.elasticinference#NextToken",
333                    "traits": {
334                        "smithy.api#documentation": "<p>\n            A token to specify where to start paginating. This is the NextToken from a previously truncated response.\n        </p>"
335                    }
336                }
337            }
338        },
339        "com.amazonaws.elasticinference#DescribeAcceleratorsResponse": {
340            "type": "structure",
341            "members": {
342                "acceleratorSet": {
343                    "target": "com.amazonaws.elasticinference#ElasticInferenceAcceleratorSet",
344                    "traits": {
345                        "smithy.api#documentation": "<p>\n            The details of the Elastic Inference Accelerators.\n        </p>"
346                    }
347                },
348                "nextToken": {
349                    "target": "com.amazonaws.elasticinference#NextToken",
350                    "traits": {
351                        "smithy.api#documentation": "<p>\n            A token to specify where to start paginating. This is the NextToken from a previously truncated response.\n        </p>"
352                    }
353                }
354            }
355        },
356        "com.amazonaws.elasticinference#EC2MatterhornCfSoothsayerApiGatewayLambda": {
357            "type": "service",
358            "version": "2017-07-25",
359            "operations": [
360                {
361                    "target": "com.amazonaws.elasticinference#DescribeAcceleratorOfferings"
362                },
363                {
364                    "target": "com.amazonaws.elasticinference#DescribeAccelerators"
365                },
366                {
367                    "target": "com.amazonaws.elasticinference#DescribeAcceleratorTypes"
368                },
369                {
370                    "target": "com.amazonaws.elasticinference#ListTagsForResource"
371                },
372                {
373                    "target": "com.amazonaws.elasticinference#TagResource"
374                },
375                {
376                    "target": "com.amazonaws.elasticinference#UntagResource"
377                }
378            ],
379            "traits": {
380                "aws.api#service": {
381                    "sdkId": "Elastic Inference",
382                    "arnNamespace": "elastic-inference",
383                    "cloudFormationName": "ElasticInference",
384                    "cloudTrailEventSource": "elasticinference.amazonaws.com",
385                    "endpointPrefix": "api.elastic-inference"
386                },
387                "aws.auth#sigv4": {
388                    "name": "elastic-inference"
389                },
390                "aws.protocols#restJson1": {},
391                "smithy.api#documentation": "<p>\n            Elastic Inference public APIs.\n        </p>",
392                "smithy.api#title": "Amazon Elastic  Inference"
393            }
394        },
395        "com.amazonaws.elasticinference#ElasticInferenceAccelerator": {
396            "type": "structure",
397            "members": {
398                "acceleratorHealth": {
399                    "target": "com.amazonaws.elasticinference#ElasticInferenceAcceleratorHealth",
400                    "traits": {
401                        "smithy.api#documentation": "<p>\n            The health of the Elastic Inference Accelerator.\n        </p>"
402                    }
403                },
404                "acceleratorType": {
405                    "target": "com.amazonaws.elasticinference#AcceleratorTypeName",
406                    "traits": {
407                        "smithy.api#documentation": "<p>\n            The type of the Elastic Inference Accelerator.\n        </p>"
408                    }
409                },
410                "acceleratorId": {
411                    "target": "com.amazonaws.elasticinference#AcceleratorId",
412                    "traits": {
413                        "smithy.api#documentation": "<p>\n            The ID of the Elastic Inference Accelerator.\n        </p>"
414                    }
415                },
416                "availabilityZone": {
417                    "target": "com.amazonaws.elasticinference#AvailabilityZone",
418                    "traits": {
419                        "smithy.api#documentation": "<p>\n            The availability zone where the Elastic Inference Accelerator is present.\n        </p>"
420                    }
421                },
422                "attachedResource": {
423                    "target": "com.amazonaws.elasticinference#ResourceARN2",
424                    "traits": {
425                        "smithy.api#documentation": "<p>\n            The ARN of the resource that the Elastic Inference Accelerator is attached to.\n        </p>"
426                    }
427                }
428            },
429            "traits": {
430                "smithy.api#documentation": "<p>\n            The details of an Elastic Inference Accelerator.\n        </p>"
431            }
432        },
433        "com.amazonaws.elasticinference#ElasticInferenceAcceleratorHealth": {
434            "type": "structure",
435            "members": {
436                "status": {
437                    "target": "com.amazonaws.elasticinference#AcceleratorHealthStatus",
438                    "traits": {
439                        "smithy.api#documentation": "<p>\n            The health status of the Elastic Inference Accelerator.\n        </p>"
440                    }
441                }
442            },
443            "traits": {
444                "smithy.api#documentation": "<p>\n            The health details of an Elastic Inference Accelerator.\n        </p>"
445            }
446        },
447        "com.amazonaws.elasticinference#ElasticInferenceAcceleratorSet": {
448            "type": "list",
449            "member": {
450                "target": "com.amazonaws.elasticinference#ElasticInferenceAccelerator",
451                "traits": {
452                    "smithy.api#xmlName": "item"
453                }
454            }
455        },
456        "com.amazonaws.elasticinference#Filter": {
457            "type": "structure",
458            "members": {
459                "name": {
460                    "target": "com.amazonaws.elasticinference#FilterName",
461                    "traits": {
462                        "smithy.api#documentation": "<p>\n            The filter name for the Elastic Inference Accelerator list. It can assume the following values:\n            accelerator-type: the type of Elastic Inference Accelerator to filter for.\n            instance-id: an EC2 instance id to filter for.\n        </p>"
463                    }
464                },
465                "values": {
466                    "target": "com.amazonaws.elasticinference#ValueStringList",
467                    "traits": {
468                        "smithy.api#documentation": "<p>\n            The values for the filter of the Elastic Inference Accelerator list.\n        </p>"
469                    }
470                }
471            },
472            "traits": {
473                "smithy.api#documentation": "<p>\n            A filter expression for the Elastic Inference Accelerator list.\n        </p>"
474            }
475        },
476        "com.amazonaws.elasticinference#FilterList": {
477            "type": "list",
478            "member": {
479                "target": "com.amazonaws.elasticinference#Filter"
480            },
481            "traits": {
482                "smithy.api#length": {
483                    "min": 0,
484                    "max": 100
485                }
486            }
487        },
488        "com.amazonaws.elasticinference#FilterName": {
489            "type": "string",
490            "traits": {
491                "smithy.api#length": {
492                    "min": 1,
493                    "max": 128
494                },
495                "smithy.api#pattern": "^\\S+$"
496            }
497        },
498        "com.amazonaws.elasticinference#Integer": {
499            "type": "integer"
500        },
501        "com.amazonaws.elasticinference#InternalServerException": {
502            "type": "structure",
503            "members": {
504                "message": {
505                    "target": "com.amazonaws.elasticinference#String"
506                }
507            },
508            "traits": {
509                "smithy.api#documentation": "<p>\n            Raised when an unexpected error occurred during request processing.\n        </p>",
510                "smithy.api#error": "server",
511                "smithy.api#httpError": 500
512            }
513        },
514        "com.amazonaws.elasticinference#Key": {
515            "type": "string",
516            "traits": {
517                "smithy.api#length": {
518                    "min": 1,
519                    "max": 256
520                },
521                "smithy.api#pattern": "^\\S+$"
522            }
523        },
524        "com.amazonaws.elasticinference#KeyValuePair": {
525            "type": "structure",
526            "members": {
527                "key": {
528                    "target": "com.amazonaws.elasticinference#Key",
529                    "traits": {
530                        "smithy.api#documentation": "<p>\n            The throughput value of the Elastic Inference Accelerator type. It can assume the following values:\n            TFLOPS16bit: the throughput expressed in 16bit TeraFLOPS.\n            TFLOPS32bit: the throughput expressed in 32bit TeraFLOPS.\n        </p>"
531                    }
532                },
533                "value": {
534                    "target": "com.amazonaws.elasticinference#Value",
535                    "traits": {
536                        "smithy.api#documentation": "<p>\n            The throughput value of the Elastic Inference Accelerator type.\n        </p>"
537                    }
538                }
539            },
540            "traits": {
541                "smithy.api#documentation": "<p>\n            A throughput entry for an Elastic Inference Accelerator type.\n        </p>"
542            }
543        },
544        "com.amazonaws.elasticinference#ListTagsForResource": {
545            "type": "operation",
546            "input": {
547                "target": "com.amazonaws.elasticinference#ListTagsForResourceRequest"
548            },
549            "output": {
550                "target": "com.amazonaws.elasticinference#ListTagsForResourceResult"
551            },
552            "errors": [
553                {
554                    "target": "com.amazonaws.elasticinference#BadRequestException"
555                },
556                {
557                    "target": "com.amazonaws.elasticinference#InternalServerException"
558                },
559                {
560                    "target": "com.amazonaws.elasticinference#ResourceNotFoundException"
561                }
562            ],
563            "traits": {
564                "smithy.api#documentation": "<p>\n            Returns all tags of an Elastic Inference Accelerator.\n        </p>",
565                "smithy.api#http": {
566                    "method": "GET",
567                    "uri": "/tags/{resourceArn}",
568                    "code": 200
569                }
570            }
571        },
572        "com.amazonaws.elasticinference#ListTagsForResourceRequest": {
573            "type": "structure",
574            "members": {
575                "resourceArn": {
576                    "target": "com.amazonaws.elasticinference#ResourceARN",
577                    "traits": {
578                        "smithy.api#documentation": "<p>\n            The ARN of the Elastic Inference Accelerator to list the tags for.\n        </p>",
579                        "smithy.api#httpLabel": {},
580                        "smithy.api#required": {}
581                    }
582                }
583            }
584        },
585        "com.amazonaws.elasticinference#ListTagsForResourceResult": {
586            "type": "structure",
587            "members": {
588                "tags": {
589                    "target": "com.amazonaws.elasticinference#TagMap",
590                    "traits": {
591                        "smithy.api#documentation": "<p>\n            The tags of the Elastic Inference Accelerator.\n        </p>"
592                    }
593                }
594            }
595        },
596        "com.amazonaws.elasticinference#Location": {
597            "type": "string",
598            "traits": {
599                "smithy.api#length": {
600                    "min": 1,
601                    "max": 256
602                }
603            }
604        },
605        "com.amazonaws.elasticinference#LocationType": {
606            "type": "string",
607            "traits": {
608                "smithy.api#enum": [
609                    {
610                        "value": "region",
611                        "name": "region"
612                    },
613                    {
614                        "value": "availability-zone",
615                        "name": "availability_zone"
616                    },
617                    {
618                        "value": "availability-zone-id",
619                        "name": "availability_zone_id"
620                    }
621                ],
622                "smithy.api#length": {
623                    "min": 1,
624                    "max": 256
625                }
626            }
627        },
628        "com.amazonaws.elasticinference#MaxResults": {
629            "type": "integer",
630            "traits": {
631                "smithy.api#range": {
632                    "min": 0,
633                    "max": 100
634                }
635            }
636        },
637        "com.amazonaws.elasticinference#MemoryInfo": {
638            "type": "structure",
639            "members": {
640                "sizeInMiB": {
641                    "target": "com.amazonaws.elasticinference#Integer",
642                    "traits": {
643                        "smithy.api#documentation": "<p>\n            The size in mebibytes of the Elastic Inference Accelerator type.\n        </p>"
644                    }
645                }
646            },
647            "traits": {
648                "smithy.api#documentation": "<p>\n            The memory information of an Elastic Inference Accelerator type.\n        </p>"
649            }
650        },
651        "com.amazonaws.elasticinference#NextToken": {
652            "type": "string",
653            "traits": {
654                "smithy.api#length": {
655                    "min": 1,
656                    "max": 2048
657                },
658                "smithy.api#pattern": "^[A-Za-z0-9+/]+={0,2}$"
659            }
660        },
661        "com.amazonaws.elasticinference#ResourceARN": {
662            "type": "string",
663            "traits": {
664                "smithy.api#length": {
665                    "min": 1,
666                    "max": 1011
667                },
668                "smithy.api#pattern": "^arn:aws\\S*:elastic-inference:\\S+:\\d{12}:elastic-inference-accelerator/eia-[0-9a-f]+$"
669            }
670        },
671        "com.amazonaws.elasticinference#ResourceARN2": {
672            "type": "string",
673            "traits": {
674                "smithy.api#length": {
675                    "min": 1,
676                    "max": 1283
677                }
678            }
679        },
680        "com.amazonaws.elasticinference#ResourceNotFoundException": {
681            "type": "structure",
682            "members": {
683                "message": {
684                    "target": "com.amazonaws.elasticinference#String"
685                }
686            },
687            "traits": {
688                "smithy.api#documentation": "<p>\n            Raised when the requested resource cannot be found.\n        </p>",
689                "smithy.api#error": "client",
690                "smithy.api#httpError": 404
691            }
692        },
693        "com.amazonaws.elasticinference#String": {
694            "type": "string",
695            "traits": {
696                "smithy.api#length": {
697                    "min": 0,
698                    "max": 500000
699                },
700                "smithy.api#pattern": "^.*$"
701            }
702        },
703        "com.amazonaws.elasticinference#TagKey": {
704            "type": "string",
705            "traits": {
706                "smithy.api#length": {
707                    "min": 1,
708                    "max": 128
709                },
710                "smithy.api#pattern": "^\\S$"
711            }
712        },
713        "com.amazonaws.elasticinference#TagKeyList": {
714            "type": "list",
715            "member": {
716                "target": "com.amazonaws.elasticinference#TagKey"
717            },
718            "traits": {
719                "smithy.api#length": {
720                    "min": 1,
721                    "max": 50
722                }
723            }
724        },
725        "com.amazonaws.elasticinference#TagMap": {
726            "type": "map",
727            "key": {
728                "target": "com.amazonaws.elasticinference#TagKey"
729            },
730            "value": {
731                "target": "com.amazonaws.elasticinference#TagValue"
732            },
733            "traits": {
734                "smithy.api#length": {
735                    "min": 1,
736                    "max": 50
737                }
738            }
739        },
740        "com.amazonaws.elasticinference#TagResource": {
741            "type": "operation",
742            "input": {
743                "target": "com.amazonaws.elasticinference#TagResourceRequest"
744            },
745            "output": {
746                "target": "com.amazonaws.elasticinference#TagResourceResult"
747            },
748            "errors": [
749                {
750                    "target": "com.amazonaws.elasticinference#BadRequestException"
751                },
752                {
753                    "target": "com.amazonaws.elasticinference#InternalServerException"
754                },
755                {
756                    "target": "com.amazonaws.elasticinference#ResourceNotFoundException"
757                }
758            ],
759            "traits": {
760                "smithy.api#documentation": "<p>\n            Adds the specified tags to an Elastic Inference Accelerator.\n        </p>",
761                "smithy.api#http": {
762                    "method": "POST",
763                    "uri": "/tags/{resourceArn}",
764                    "code": 200
765                }
766            }
767        },
768        "com.amazonaws.elasticinference#TagResourceRequest": {
769            "type": "structure",
770            "members": {
771                "resourceArn": {
772                    "target": "com.amazonaws.elasticinference#ResourceARN",
773                    "traits": {
774                        "smithy.api#documentation": "<p>\n            The ARN of the Elastic Inference Accelerator to tag.\n        </p>",
775                        "smithy.api#httpLabel": {},
776                        "smithy.api#required": {}
777                    }
778                },
779                "tags": {
780                    "target": "com.amazonaws.elasticinference#TagMap",
781                    "traits": {
782                        "smithy.api#documentation": "<p>\n            The tags to add to the Elastic Inference Accelerator.\n        </p>",
783                        "smithy.api#required": {}
784                    }
785                }
786            }
787        },
788        "com.amazonaws.elasticinference#TagResourceResult": {
789            "type": "structure",
790            "members": {}
791        },
792        "com.amazonaws.elasticinference#TagValue": {
793            "type": "string",
794            "traits": {
795                "smithy.api#length": {
796                    "min": 0,
797                    "max": 256
798                }
799            }
800        },
801        "com.amazonaws.elasticinference#ThroughputInfoList": {
802            "type": "list",
803            "member": {
804                "target": "com.amazonaws.elasticinference#KeyValuePair",
805                "traits": {
806                    "smithy.api#xmlName": "item"
807                }
808            },
809            "traits": {
810                "smithy.api#length": {
811                    "min": 0,
812                    "max": 100
813                }
814            }
815        },
816        "com.amazonaws.elasticinference#UntagResource": {
817            "type": "operation",
818            "input": {
819                "target": "com.amazonaws.elasticinference#UntagResourceRequest"
820            },
821            "output": {
822                "target": "com.amazonaws.elasticinference#UntagResourceResult"
823            },
824            "errors": [
825                {
826                    "target": "com.amazonaws.elasticinference#BadRequestException"
827                },
828                {
829                    "target": "com.amazonaws.elasticinference#InternalServerException"
830                },
831                {
832                    "target": "com.amazonaws.elasticinference#ResourceNotFoundException"
833                }
834            ],
835            "traits": {
836                "smithy.api#documentation": "<p>\n            Removes the specified tags from an Elastic Inference Accelerator.\n        </p>",
837                "smithy.api#http": {
838                    "method": "DELETE",
839                    "uri": "/tags/{resourceArn}",
840                    "code": 200
841                }
842            }
843        },
844        "com.amazonaws.elasticinference#UntagResourceRequest": {
845            "type": "structure",
846            "members": {
847                "resourceArn": {
848                    "target": "com.amazonaws.elasticinference#ResourceARN",
849                    "traits": {
850                        "smithy.api#documentation": "<p>\n            The ARN of the Elastic Inference Accelerator to untag.\n        </p>",
851                        "smithy.api#httpLabel": {},
852                        "smithy.api#required": {}
853                    }
854                },
855                "tagKeys": {
856                    "target": "com.amazonaws.elasticinference#TagKeyList",
857                    "traits": {
858                        "smithy.api#documentation": "<p>\n            The list of tags to remove from the Elastic Inference Accelerator.\n        </p>",
859                        "smithy.api#httpQuery": "tagKeys",
860                        "smithy.api#required": {}
861                    }
862                }
863            }
864        },
865        "com.amazonaws.elasticinference#UntagResourceResult": {
866            "type": "structure",
867            "members": {}
868        },
869        "com.amazonaws.elasticinference#Value": {
870            "type": "integer"
871        },
872        "com.amazonaws.elasticinference#ValueStringList": {
873            "type": "list",
874            "member": {
875                "target": "com.amazonaws.elasticinference#String"
876            },
877            "traits": {
878                "smithy.api#length": {
879                    "min": 0,
880                    "max": 100
881                }
882            }
883        }
884    }
885}
886