1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"2013-12-02",
5    "endpointPrefix":"kinesis",
6    "jsonVersion":"1.1",
7    "protocol":"json",
8    "protocolSettings":{"h2":"eventstream"},
9    "serviceAbbreviation":"Kinesis",
10    "serviceFullName":"Amazon Kinesis",
11    "serviceId":"Kinesis",
12    "signatureVersion":"v4",
13    "targetPrefix":"Kinesis_20131202",
14    "uid":"kinesis-2013-12-02"
15  },
16  "operations":{
17    "AddTagsToStream":{
18      "name":"AddTagsToStream",
19      "http":{
20        "method":"POST",
21        "requestUri":"/"
22      },
23      "input":{"shape":"AddTagsToStreamInput"},
24      "errors":[
25        {"shape":"ResourceNotFoundException"},
26        {"shape":"ResourceInUseException"},
27        {"shape":"InvalidArgumentException"},
28        {"shape":"LimitExceededException"}
29      ]
30    },
31    "CreateStream":{
32      "name":"CreateStream",
33      "http":{
34        "method":"POST",
35        "requestUri":"/"
36      },
37      "input":{"shape":"CreateStreamInput"},
38      "errors":[
39        {"shape":"ResourceInUseException"},
40        {"shape":"LimitExceededException"},
41        {"shape":"InvalidArgumentException"}
42      ]
43    },
44    "DecreaseStreamRetentionPeriod":{
45      "name":"DecreaseStreamRetentionPeriod",
46      "http":{
47        "method":"POST",
48        "requestUri":"/"
49      },
50      "input":{"shape":"DecreaseStreamRetentionPeriodInput"},
51      "errors":[
52        {"shape":"ResourceInUseException"},
53        {"shape":"ResourceNotFoundException"},
54        {"shape":"LimitExceededException"},
55        {"shape":"InvalidArgumentException"}
56      ]
57    },
58    "DeleteStream":{
59      "name":"DeleteStream",
60      "http":{
61        "method":"POST",
62        "requestUri":"/"
63      },
64      "input":{"shape":"DeleteStreamInput"},
65      "errors":[
66        {"shape":"ResourceNotFoundException"},
67        {"shape":"LimitExceededException"},
68        {"shape":"ResourceInUseException"}
69      ]
70    },
71    "DeregisterStreamConsumer":{
72      "name":"DeregisterStreamConsumer",
73      "http":{
74        "method":"POST",
75        "requestUri":"/"
76      },
77      "input":{"shape":"DeregisterStreamConsumerInput"},
78      "errors":[
79        {"shape":"LimitExceededException"},
80        {"shape":"ResourceNotFoundException"},
81        {"shape":"InvalidArgumentException"}
82      ]
83    },
84    "DescribeLimits":{
85      "name":"DescribeLimits",
86      "http":{
87        "method":"POST",
88        "requestUri":"/"
89      },
90      "input":{"shape":"DescribeLimitsInput"},
91      "output":{"shape":"DescribeLimitsOutput"},
92      "errors":[
93        {"shape":"LimitExceededException"}
94      ]
95    },
96    "DescribeStream":{
97      "name":"DescribeStream",
98      "http":{
99        "method":"POST",
100        "requestUri":"/"
101      },
102      "input":{"shape":"DescribeStreamInput"},
103      "output":{"shape":"DescribeStreamOutput"},
104      "errors":[
105        {"shape":"ResourceNotFoundException"},
106        {"shape":"LimitExceededException"}
107      ]
108    },
109    "DescribeStreamConsumer":{
110      "name":"DescribeStreamConsumer",
111      "http":{
112        "method":"POST",
113        "requestUri":"/"
114      },
115      "input":{"shape":"DescribeStreamConsumerInput"},
116      "output":{"shape":"DescribeStreamConsumerOutput"},
117      "errors":[
118        {"shape":"LimitExceededException"},
119        {"shape":"ResourceNotFoundException"},
120        {"shape":"InvalidArgumentException"}
121      ]
122    },
123    "DescribeStreamSummary":{
124      "name":"DescribeStreamSummary",
125      "http":{
126        "method":"POST",
127        "requestUri":"/"
128      },
129      "input":{"shape":"DescribeStreamSummaryInput"},
130      "output":{"shape":"DescribeStreamSummaryOutput"},
131      "errors":[
132        {"shape":"ResourceNotFoundException"},
133        {"shape":"LimitExceededException"}
134      ]
135    },
136    "DisableEnhancedMonitoring":{
137      "name":"DisableEnhancedMonitoring",
138      "http":{
139        "method":"POST",
140        "requestUri":"/"
141      },
142      "input":{"shape":"DisableEnhancedMonitoringInput"},
143      "output":{"shape":"EnhancedMonitoringOutput"},
144      "errors":[
145        {"shape":"InvalidArgumentException"},
146        {"shape":"LimitExceededException"},
147        {"shape":"ResourceInUseException"},
148        {"shape":"ResourceNotFoundException"}
149      ]
150    },
151    "EnableEnhancedMonitoring":{
152      "name":"EnableEnhancedMonitoring",
153      "http":{
154        "method":"POST",
155        "requestUri":"/"
156      },
157      "input":{"shape":"EnableEnhancedMonitoringInput"},
158      "output":{"shape":"EnhancedMonitoringOutput"},
159      "errors":[
160        {"shape":"InvalidArgumentException"},
161        {"shape":"LimitExceededException"},
162        {"shape":"ResourceInUseException"},
163        {"shape":"ResourceNotFoundException"}
164      ]
165    },
166    "GetRecords":{
167      "name":"GetRecords",
168      "http":{
169        "method":"POST",
170        "requestUri":"/"
171      },
172      "input":{"shape":"GetRecordsInput"},
173      "output":{"shape":"GetRecordsOutput"},
174      "errors":[
175        {"shape":"ResourceNotFoundException"},
176        {"shape":"InvalidArgumentException"},
177        {"shape":"ProvisionedThroughputExceededException"},
178        {"shape":"ExpiredIteratorException"},
179        {"shape":"KMSDisabledException"},
180        {"shape":"KMSInvalidStateException"},
181        {"shape":"KMSAccessDeniedException"},
182        {"shape":"KMSNotFoundException"},
183        {"shape":"KMSOptInRequired"},
184        {"shape":"KMSThrottlingException"}
185      ]
186    },
187    "GetShardIterator":{
188      "name":"GetShardIterator",
189      "http":{
190        "method":"POST",
191        "requestUri":"/"
192      },
193      "input":{"shape":"GetShardIteratorInput"},
194      "output":{"shape":"GetShardIteratorOutput"},
195      "errors":[
196        {"shape":"ResourceNotFoundException"},
197        {"shape":"InvalidArgumentException"},
198        {"shape":"ProvisionedThroughputExceededException"}
199      ]
200    },
201    "IncreaseStreamRetentionPeriod":{
202      "name":"IncreaseStreamRetentionPeriod",
203      "http":{
204        "method":"POST",
205        "requestUri":"/"
206      },
207      "input":{"shape":"IncreaseStreamRetentionPeriodInput"},
208      "errors":[
209        {"shape":"ResourceInUseException"},
210        {"shape":"ResourceNotFoundException"},
211        {"shape":"LimitExceededException"},
212        {"shape":"InvalidArgumentException"}
213      ]
214    },
215    "ListShards":{
216      "name":"ListShards",
217      "http":{
218        "method":"POST",
219        "requestUri":"/"
220      },
221      "input":{"shape":"ListShardsInput"},
222      "output":{"shape":"ListShardsOutput"},
223      "errors":[
224        {"shape":"ResourceNotFoundException"},
225        {"shape":"InvalidArgumentException"},
226        {"shape":"LimitExceededException"},
227        {"shape":"ExpiredNextTokenException"},
228        {"shape":"ResourceInUseException"}
229      ]
230    },
231    "ListStreamConsumers":{
232      "name":"ListStreamConsumers",
233      "http":{
234        "method":"POST",
235        "requestUri":"/"
236      },
237      "input":{"shape":"ListStreamConsumersInput"},
238      "output":{"shape":"ListStreamConsumersOutput"},
239      "errors":[
240        {"shape":"ResourceNotFoundException"},
241        {"shape":"InvalidArgumentException"},
242        {"shape":"LimitExceededException"},
243        {"shape":"ExpiredNextTokenException"},
244        {"shape":"ResourceInUseException"}
245      ]
246    },
247    "ListStreams":{
248      "name":"ListStreams",
249      "http":{
250        "method":"POST",
251        "requestUri":"/"
252      },
253      "input":{"shape":"ListStreamsInput"},
254      "output":{"shape":"ListStreamsOutput"},
255      "errors":[
256        {"shape":"LimitExceededException"}
257      ]
258    },
259    "ListTagsForStream":{
260      "name":"ListTagsForStream",
261      "http":{
262        "method":"POST",
263        "requestUri":"/"
264      },
265      "input":{"shape":"ListTagsForStreamInput"},
266      "output":{"shape":"ListTagsForStreamOutput"},
267      "errors":[
268        {"shape":"ResourceNotFoundException"},
269        {"shape":"InvalidArgumentException"},
270        {"shape":"LimitExceededException"}
271      ]
272    },
273    "MergeShards":{
274      "name":"MergeShards",
275      "http":{
276        "method":"POST",
277        "requestUri":"/"
278      },
279      "input":{"shape":"MergeShardsInput"},
280      "errors":[
281        {"shape":"ResourceNotFoundException"},
282        {"shape":"ResourceInUseException"},
283        {"shape":"InvalidArgumentException"},
284        {"shape":"LimitExceededException"}
285      ]
286    },
287    "PutRecord":{
288      "name":"PutRecord",
289      "http":{
290        "method":"POST",
291        "requestUri":"/"
292      },
293      "input":{"shape":"PutRecordInput"},
294      "output":{"shape":"PutRecordOutput"},
295      "errors":[
296        {"shape":"ResourceNotFoundException"},
297        {"shape":"InvalidArgumentException"},
298        {"shape":"ProvisionedThroughputExceededException"},
299        {"shape":"KMSDisabledException"},
300        {"shape":"KMSInvalidStateException"},
301        {"shape":"KMSAccessDeniedException"},
302        {"shape":"KMSNotFoundException"},
303        {"shape":"KMSOptInRequired"},
304        {"shape":"KMSThrottlingException"}
305      ]
306    },
307    "PutRecords":{
308      "name":"PutRecords",
309      "http":{
310        "method":"POST",
311        "requestUri":"/"
312      },
313      "input":{"shape":"PutRecordsInput"},
314      "output":{"shape":"PutRecordsOutput"},
315      "errors":[
316        {"shape":"ResourceNotFoundException"},
317        {"shape":"InvalidArgumentException"},
318        {"shape":"ProvisionedThroughputExceededException"},
319        {"shape":"KMSDisabledException"},
320        {"shape":"KMSInvalidStateException"},
321        {"shape":"KMSAccessDeniedException"},
322        {"shape":"KMSNotFoundException"},
323        {"shape":"KMSOptInRequired"},
324        {"shape":"KMSThrottlingException"}
325      ]
326    },
327    "RegisterStreamConsumer":{
328      "name":"RegisterStreamConsumer",
329      "http":{
330        "method":"POST",
331        "requestUri":"/"
332      },
333      "input":{"shape":"RegisterStreamConsumerInput"},
334      "output":{"shape":"RegisterStreamConsumerOutput"},
335      "errors":[
336        {"shape":"InvalidArgumentException"},
337        {"shape":"LimitExceededException"},
338        {"shape":"ResourceInUseException"},
339        {"shape":"ResourceNotFoundException"}
340      ]
341    },
342    "RemoveTagsFromStream":{
343      "name":"RemoveTagsFromStream",
344      "http":{
345        "method":"POST",
346        "requestUri":"/"
347      },
348      "input":{"shape":"RemoveTagsFromStreamInput"},
349      "errors":[
350        {"shape":"ResourceNotFoundException"},
351        {"shape":"ResourceInUseException"},
352        {"shape":"InvalidArgumentException"},
353        {"shape":"LimitExceededException"}
354      ]
355    },
356    "SplitShard":{
357      "name":"SplitShard",
358      "http":{
359        "method":"POST",
360        "requestUri":"/"
361      },
362      "input":{"shape":"SplitShardInput"},
363      "errors":[
364        {"shape":"ResourceNotFoundException"},
365        {"shape":"ResourceInUseException"},
366        {"shape":"InvalidArgumentException"},
367        {"shape":"LimitExceededException"}
368      ]
369    },
370    "StartStreamEncryption":{
371      "name":"StartStreamEncryption",
372      "http":{
373        "method":"POST",
374        "requestUri":"/"
375      },
376      "input":{"shape":"StartStreamEncryptionInput"},
377      "errors":[
378        {"shape":"InvalidArgumentException"},
379        {"shape":"LimitExceededException"},
380        {"shape":"ResourceInUseException"},
381        {"shape":"ResourceNotFoundException"},
382        {"shape":"KMSDisabledException"},
383        {"shape":"KMSInvalidStateException"},
384        {"shape":"KMSAccessDeniedException"},
385        {"shape":"KMSNotFoundException"},
386        {"shape":"KMSOptInRequired"},
387        {"shape":"KMSThrottlingException"}
388      ]
389    },
390    "StopStreamEncryption":{
391      "name":"StopStreamEncryption",
392      "http":{
393        "method":"POST",
394        "requestUri":"/"
395      },
396      "input":{"shape":"StopStreamEncryptionInput"},
397      "errors":[
398        {"shape":"InvalidArgumentException"},
399        {"shape":"LimitExceededException"},
400        {"shape":"ResourceInUseException"},
401        {"shape":"ResourceNotFoundException"}
402      ]
403    },
404    "SubscribeToShard":{
405      "name":"SubscribeToShard",
406      "http":{
407        "method":"POST",
408        "requestUri":"/"
409      },
410      "input":{"shape":"SubscribeToShardInput"},
411      "output":{"shape":"SubscribeToShardOutput"},
412      "errors":[
413        {"shape":"ResourceNotFoundException"},
414        {"shape":"InvalidArgumentException"},
415        {"shape":"ResourceInUseException"},
416        {"shape":"LimitExceededException"}
417      ]
418    },
419    "UpdateShardCount":{
420      "name":"UpdateShardCount",
421      "http":{
422        "method":"POST",
423        "requestUri":"/"
424      },
425      "input":{"shape":"UpdateShardCountInput"},
426      "output":{"shape":"UpdateShardCountOutput"},
427      "errors":[
428        {"shape":"InvalidArgumentException"},
429        {"shape":"LimitExceededException"},
430        {"shape":"ResourceInUseException"},
431        {"shape":"ResourceNotFoundException"}
432      ]
433    }
434  },
435  "shapes":{
436    "AddTagsToStreamInput":{
437      "type":"structure",
438      "required":[
439        "StreamName",
440        "Tags"
441      ],
442      "members":{
443        "StreamName":{"shape":"StreamName"},
444        "Tags":{"shape":"TagMap"}
445      }
446    },
447    "BooleanObject":{"type":"boolean"},
448    "ChildShard":{
449      "type":"structure",
450      "required":[
451        "ShardId",
452        "ParentShards",
453        "HashKeyRange"
454      ],
455      "members":{
456        "ShardId":{"shape":"ShardId"},
457        "ParentShards":{"shape":"ShardIdList"},
458        "HashKeyRange":{"shape":"HashKeyRange"}
459      }
460    },
461    "ChildShardList":{
462      "type":"list",
463      "member":{"shape":"ChildShard"}
464    },
465    "Consumer":{
466      "type":"structure",
467      "required":[
468        "ConsumerName",
469        "ConsumerARN",
470        "ConsumerStatus",
471        "ConsumerCreationTimestamp"
472      ],
473      "members":{
474        "ConsumerName":{"shape":"ConsumerName"},
475        "ConsumerARN":{"shape":"ConsumerARN"},
476        "ConsumerStatus":{"shape":"ConsumerStatus"},
477        "ConsumerCreationTimestamp":{"shape":"Timestamp"}
478      }
479    },
480    "ConsumerARN":{
481      "type":"string",
482      "max":2048,
483      "min":1,
484      "pattern":"^(arn):aws.*:kinesis:.*:\\d{12}:.*stream\\/[a-zA-Z0-9_.-]+\\/consumer\\/[a-zA-Z0-9_.-]+:[0-9]+"
485    },
486    "ConsumerCountObject":{
487      "type":"integer",
488      "max":1000000,
489      "min":0
490    },
491    "ConsumerDescription":{
492      "type":"structure",
493      "required":[
494        "ConsumerName",
495        "ConsumerARN",
496        "ConsumerStatus",
497        "ConsumerCreationTimestamp",
498        "StreamARN"
499      ],
500      "members":{
501        "ConsumerName":{"shape":"ConsumerName"},
502        "ConsumerARN":{"shape":"ConsumerARN"},
503        "ConsumerStatus":{"shape":"ConsumerStatus"},
504        "ConsumerCreationTimestamp":{"shape":"Timestamp"},
505        "StreamARN":{"shape":"StreamARN"}
506      }
507    },
508    "ConsumerList":{
509      "type":"list",
510      "member":{"shape":"Consumer"}
511    },
512    "ConsumerName":{
513      "type":"string",
514      "max":128,
515      "min":1,
516      "pattern":"[a-zA-Z0-9_.-]+"
517    },
518    "ConsumerStatus":{
519      "type":"string",
520      "enum":[
521        "CREATING",
522        "DELETING",
523        "ACTIVE"
524      ]
525    },
526    "CreateStreamInput":{
527      "type":"structure",
528      "required":[
529        "StreamName",
530        "ShardCount"
531      ],
532      "members":{
533        "StreamName":{"shape":"StreamName"},
534        "ShardCount":{"shape":"PositiveIntegerObject"}
535      }
536    },
537    "Data":{
538      "type":"blob",
539      "max":1048576,
540      "min":0
541    },
542    "DecreaseStreamRetentionPeriodInput":{
543      "type":"structure",
544      "required":[
545        "StreamName",
546        "RetentionPeriodHours"
547      ],
548      "members":{
549        "StreamName":{"shape":"StreamName"},
550        "RetentionPeriodHours":{"shape":"RetentionPeriodHours"}
551      }
552    },
553    "DeleteStreamInput":{
554      "type":"structure",
555      "required":["StreamName"],
556      "members":{
557        "StreamName":{"shape":"StreamName"},
558        "EnforceConsumerDeletion":{"shape":"BooleanObject"}
559      }
560    },
561    "DeregisterStreamConsumerInput":{
562      "type":"structure",
563      "members":{
564        "StreamARN":{"shape":"StreamARN"},
565        "ConsumerName":{"shape":"ConsumerName"},
566        "ConsumerARN":{"shape":"ConsumerARN"}
567      }
568    },
569    "DescribeLimitsInput":{
570      "type":"structure",
571      "members":{
572      }
573    },
574    "DescribeLimitsOutput":{
575      "type":"structure",
576      "required":[
577        "ShardLimit",
578        "OpenShardCount"
579      ],
580      "members":{
581        "ShardLimit":{"shape":"ShardCountObject"},
582        "OpenShardCount":{"shape":"ShardCountObject"}
583      }
584    },
585    "DescribeStreamConsumerInput":{
586      "type":"structure",
587      "members":{
588        "StreamARN":{"shape":"StreamARN"},
589        "ConsumerName":{"shape":"ConsumerName"},
590        "ConsumerARN":{"shape":"ConsumerARN"}
591      }
592    },
593    "DescribeStreamConsumerOutput":{
594      "type":"structure",
595      "required":["ConsumerDescription"],
596      "members":{
597        "ConsumerDescription":{"shape":"ConsumerDescription"}
598      }
599    },
600    "DescribeStreamInput":{
601      "type":"structure",
602      "required":["StreamName"],
603      "members":{
604        "StreamName":{"shape":"StreamName"},
605        "Limit":{"shape":"DescribeStreamInputLimit"},
606        "ExclusiveStartShardId":{"shape":"ShardId"}
607      }
608    },
609    "DescribeStreamInputLimit":{
610      "type":"integer",
611      "max":10000,
612      "min":1
613    },
614    "DescribeStreamOutput":{
615      "type":"structure",
616      "required":["StreamDescription"],
617      "members":{
618        "StreamDescription":{"shape":"StreamDescription"}
619      }
620    },
621    "DescribeStreamSummaryInput":{
622      "type":"structure",
623      "required":["StreamName"],
624      "members":{
625        "StreamName":{"shape":"StreamName"}
626      }
627    },
628    "DescribeStreamSummaryOutput":{
629      "type":"structure",
630      "required":["StreamDescriptionSummary"],
631      "members":{
632        "StreamDescriptionSummary":{"shape":"StreamDescriptionSummary"}
633      }
634    },
635    "DisableEnhancedMonitoringInput":{
636      "type":"structure",
637      "required":[
638        "StreamName",
639        "ShardLevelMetrics"
640      ],
641      "members":{
642        "StreamName":{"shape":"StreamName"},
643        "ShardLevelMetrics":{"shape":"MetricsNameList"}
644      }
645    },
646    "EnableEnhancedMonitoringInput":{
647      "type":"structure",
648      "required":[
649        "StreamName",
650        "ShardLevelMetrics"
651      ],
652      "members":{
653        "StreamName":{"shape":"StreamName"},
654        "ShardLevelMetrics":{"shape":"MetricsNameList"}
655      }
656    },
657    "EncryptionType":{
658      "type":"string",
659      "enum":[
660        "NONE",
661        "KMS"
662      ]
663    },
664    "EnhancedMetrics":{
665      "type":"structure",
666      "members":{
667        "ShardLevelMetrics":{"shape":"MetricsNameList"}
668      }
669    },
670    "EnhancedMonitoringList":{
671      "type":"list",
672      "member":{"shape":"EnhancedMetrics"}
673    },
674    "EnhancedMonitoringOutput":{
675      "type":"structure",
676      "members":{
677        "StreamName":{"shape":"StreamName"},
678        "CurrentShardLevelMetrics":{"shape":"MetricsNameList"},
679        "DesiredShardLevelMetrics":{"shape":"MetricsNameList"}
680      }
681    },
682    "ErrorCode":{"type":"string"},
683    "ErrorMessage":{"type":"string"},
684    "ExpiredIteratorException":{
685      "type":"structure",
686      "members":{
687        "message":{"shape":"ErrorMessage"}
688      },
689      "exception":true
690    },
691    "ExpiredNextTokenException":{
692      "type":"structure",
693      "members":{
694        "message":{"shape":"ErrorMessage"}
695      },
696      "exception":true
697    },
698    "GetRecordsInput":{
699      "type":"structure",
700      "required":["ShardIterator"],
701      "members":{
702        "ShardIterator":{"shape":"ShardIterator"},
703        "Limit":{"shape":"GetRecordsInputLimit"}
704      }
705    },
706    "GetRecordsInputLimit":{
707      "type":"integer",
708      "max":10000,
709      "min":1
710    },
711    "GetRecordsOutput":{
712      "type":"structure",
713      "required":["Records"],
714      "members":{
715        "Records":{"shape":"RecordList"},
716        "NextShardIterator":{"shape":"ShardIterator"},
717        "MillisBehindLatest":{"shape":"MillisBehindLatest"},
718        "ChildShards":{"shape":"ChildShardList"}
719      }
720    },
721    "GetShardIteratorInput":{
722      "type":"structure",
723      "required":[
724        "StreamName",
725        "ShardId",
726        "ShardIteratorType"
727      ],
728      "members":{
729        "StreamName":{"shape":"StreamName"},
730        "ShardId":{"shape":"ShardId"},
731        "ShardIteratorType":{"shape":"ShardIteratorType"},
732        "StartingSequenceNumber":{"shape":"SequenceNumber"},
733        "Timestamp":{"shape":"Timestamp"}
734      }
735    },
736    "GetShardIteratorOutput":{
737      "type":"structure",
738      "members":{
739        "ShardIterator":{"shape":"ShardIterator"}
740      }
741    },
742    "HashKey":{
743      "type":"string",
744      "pattern":"0|([1-9]\\d{0,38})"
745    },
746    "HashKeyRange":{
747      "type":"structure",
748      "required":[
749        "StartingHashKey",
750        "EndingHashKey"
751      ],
752      "members":{
753        "StartingHashKey":{"shape":"HashKey"},
754        "EndingHashKey":{"shape":"HashKey"}
755      }
756    },
757    "IncreaseStreamRetentionPeriodInput":{
758      "type":"structure",
759      "required":[
760        "StreamName",
761        "RetentionPeriodHours"
762      ],
763      "members":{
764        "StreamName":{"shape":"StreamName"},
765        "RetentionPeriodHours":{"shape":"RetentionPeriodHours"}
766      }
767    },
768    "InternalFailureException":{
769      "type":"structure",
770      "members":{
771        "message":{"shape":"ErrorMessage"}
772      },
773      "exception":true,
774      "fault":true
775    },
776    "InvalidArgumentException":{
777      "type":"structure",
778      "members":{
779        "message":{"shape":"ErrorMessage"}
780      },
781      "exception":true
782    },
783    "KMSAccessDeniedException":{
784      "type":"structure",
785      "members":{
786        "message":{"shape":"ErrorMessage"}
787      },
788      "exception":true
789    },
790    "KMSDisabledException":{
791      "type":"structure",
792      "members":{
793        "message":{"shape":"ErrorMessage"}
794      },
795      "exception":true
796    },
797    "KMSInvalidStateException":{
798      "type":"structure",
799      "members":{
800        "message":{"shape":"ErrorMessage"}
801      },
802      "exception":true
803    },
804    "KMSNotFoundException":{
805      "type":"structure",
806      "members":{
807        "message":{"shape":"ErrorMessage"}
808      },
809      "exception":true
810    },
811    "KMSOptInRequired":{
812      "type":"structure",
813      "members":{
814        "message":{"shape":"ErrorMessage"}
815      },
816      "exception":true
817    },
818    "KMSThrottlingException":{
819      "type":"structure",
820      "members":{
821        "message":{"shape":"ErrorMessage"}
822      },
823      "exception":true
824    },
825    "KeyId":{
826      "type":"string",
827      "max":2048,
828      "min":1
829    },
830    "LimitExceededException":{
831      "type":"structure",
832      "members":{
833        "message":{"shape":"ErrorMessage"}
834      },
835      "exception":true
836    },
837    "ListShardsInput":{
838      "type":"structure",
839      "members":{
840        "StreamName":{"shape":"StreamName"},
841        "NextToken":{"shape":"NextToken"},
842        "ExclusiveStartShardId":{"shape":"ShardId"},
843        "MaxResults":{"shape":"ListShardsInputLimit"},
844        "StreamCreationTimestamp":{"shape":"Timestamp"},
845        "ShardFilter":{"shape":"ShardFilter"}
846      }
847    },
848    "ListShardsInputLimit":{
849      "type":"integer",
850      "max":10000,
851      "min":1
852    },
853    "ListShardsOutput":{
854      "type":"structure",
855      "members":{
856        "Shards":{"shape":"ShardList"},
857        "NextToken":{"shape":"NextToken"}
858      }
859    },
860    "ListStreamConsumersInput":{
861      "type":"structure",
862      "required":["StreamARN"],
863      "members":{
864        "StreamARN":{"shape":"StreamARN"},
865        "NextToken":{"shape":"NextToken"},
866        "MaxResults":{"shape":"ListStreamConsumersInputLimit"},
867        "StreamCreationTimestamp":{"shape":"Timestamp"}
868      }
869    },
870    "ListStreamConsumersInputLimit":{
871      "type":"integer",
872      "max":10000,
873      "min":1
874    },
875    "ListStreamConsumersOutput":{
876      "type":"structure",
877      "members":{
878        "Consumers":{"shape":"ConsumerList"},
879        "NextToken":{"shape":"NextToken"}
880      }
881    },
882    "ListStreamsInput":{
883      "type":"structure",
884      "members":{
885        "Limit":{"shape":"ListStreamsInputLimit"},
886        "ExclusiveStartStreamName":{"shape":"StreamName"}
887      }
888    },
889    "ListStreamsInputLimit":{
890      "type":"integer",
891      "max":10000,
892      "min":1
893    },
894    "ListStreamsOutput":{
895      "type":"structure",
896      "required":[
897        "StreamNames",
898        "HasMoreStreams"
899      ],
900      "members":{
901        "StreamNames":{"shape":"StreamNameList"},
902        "HasMoreStreams":{"shape":"BooleanObject"}
903      }
904    },
905    "ListTagsForStreamInput":{
906      "type":"structure",
907      "required":["StreamName"],
908      "members":{
909        "StreamName":{"shape":"StreamName"},
910        "ExclusiveStartTagKey":{"shape":"TagKey"},
911        "Limit":{"shape":"ListTagsForStreamInputLimit"}
912      }
913    },
914    "ListTagsForStreamInputLimit":{
915      "type":"integer",
916      "max":50,
917      "min":1
918    },
919    "ListTagsForStreamOutput":{
920      "type":"structure",
921      "required":[
922        "Tags",
923        "HasMoreTags"
924      ],
925      "members":{
926        "Tags":{"shape":"TagList"},
927        "HasMoreTags":{"shape":"BooleanObject"}
928      }
929    },
930    "MergeShardsInput":{
931      "type":"structure",
932      "required":[
933        "StreamName",
934        "ShardToMerge",
935        "AdjacentShardToMerge"
936      ],
937      "members":{
938        "StreamName":{"shape":"StreamName"},
939        "ShardToMerge":{"shape":"ShardId"},
940        "AdjacentShardToMerge":{"shape":"ShardId"}
941      }
942    },
943    "MetricsName":{
944      "type":"string",
945      "enum":[
946        "IncomingBytes",
947        "IncomingRecords",
948        "OutgoingBytes",
949        "OutgoingRecords",
950        "WriteProvisionedThroughputExceeded",
951        "ReadProvisionedThroughputExceeded",
952        "IteratorAgeMilliseconds",
953        "ALL"
954      ]
955    },
956    "MetricsNameList":{
957      "type":"list",
958      "member":{"shape":"MetricsName"},
959      "max":7,
960      "min":1
961    },
962    "MillisBehindLatest":{
963      "type":"long",
964      "min":0
965    },
966    "NextToken":{
967      "type":"string",
968      "max":1048576,
969      "min":1
970    },
971    "PartitionKey":{
972      "type":"string",
973      "max":256,
974      "min":1
975    },
976    "PositiveIntegerObject":{
977      "type":"integer",
978      "min":1
979    },
980    "ProvisionedThroughputExceededException":{
981      "type":"structure",
982      "members":{
983        "message":{"shape":"ErrorMessage"}
984      },
985      "exception":true
986    },
987    "PutRecordInput":{
988      "type":"structure",
989      "required":[
990        "StreamName",
991        "Data",
992        "PartitionKey"
993      ],
994      "members":{
995        "StreamName":{"shape":"StreamName"},
996        "Data":{"shape":"Data"},
997        "PartitionKey":{"shape":"PartitionKey"},
998        "ExplicitHashKey":{"shape":"HashKey"},
999        "SequenceNumberForOrdering":{"shape":"SequenceNumber"}
1000      }
1001    },
1002    "PutRecordOutput":{
1003      "type":"structure",
1004      "required":[
1005        "ShardId",
1006        "SequenceNumber"
1007      ],
1008      "members":{
1009        "ShardId":{"shape":"ShardId"},
1010        "SequenceNumber":{"shape":"SequenceNumber"},
1011        "EncryptionType":{"shape":"EncryptionType"}
1012      }
1013    },
1014    "PutRecordsInput":{
1015      "type":"structure",
1016      "required":[
1017        "Records",
1018        "StreamName"
1019      ],
1020      "members":{
1021        "Records":{"shape":"PutRecordsRequestEntryList"},
1022        "StreamName":{"shape":"StreamName"}
1023      }
1024    },
1025    "PutRecordsOutput":{
1026      "type":"structure",
1027      "required":["Records"],
1028      "members":{
1029        "FailedRecordCount":{"shape":"PositiveIntegerObject"},
1030        "Records":{"shape":"PutRecordsResultEntryList"},
1031        "EncryptionType":{"shape":"EncryptionType"}
1032      }
1033    },
1034    "PutRecordsRequestEntry":{
1035      "type":"structure",
1036      "required":[
1037        "Data",
1038        "PartitionKey"
1039      ],
1040      "members":{
1041        "Data":{"shape":"Data"},
1042        "ExplicitHashKey":{"shape":"HashKey"},
1043        "PartitionKey":{"shape":"PartitionKey"}
1044      }
1045    },
1046    "PutRecordsRequestEntryList":{
1047      "type":"list",
1048      "member":{"shape":"PutRecordsRequestEntry"},
1049      "max":500,
1050      "min":1
1051    },
1052    "PutRecordsResultEntry":{
1053      "type":"structure",
1054      "members":{
1055        "SequenceNumber":{"shape":"SequenceNumber"},
1056        "ShardId":{"shape":"ShardId"},
1057        "ErrorCode":{"shape":"ErrorCode"},
1058        "ErrorMessage":{"shape":"ErrorMessage"}
1059      }
1060    },
1061    "PutRecordsResultEntryList":{
1062      "type":"list",
1063      "member":{"shape":"PutRecordsResultEntry"},
1064      "max":500,
1065      "min":1
1066    },
1067    "Record":{
1068      "type":"structure",
1069      "required":[
1070        "SequenceNumber",
1071        "Data",
1072        "PartitionKey"
1073      ],
1074      "members":{
1075        "SequenceNumber":{"shape":"SequenceNumber"},
1076        "ApproximateArrivalTimestamp":{"shape":"Timestamp"},
1077        "Data":{"shape":"Data"},
1078        "PartitionKey":{"shape":"PartitionKey"},
1079        "EncryptionType":{"shape":"EncryptionType"}
1080      }
1081    },
1082    "RecordList":{
1083      "type":"list",
1084      "member":{"shape":"Record"}
1085    },
1086    "RegisterStreamConsumerInput":{
1087      "type":"structure",
1088      "required":[
1089        "StreamARN",
1090        "ConsumerName"
1091      ],
1092      "members":{
1093        "StreamARN":{"shape":"StreamARN"},
1094        "ConsumerName":{"shape":"ConsumerName"}
1095      }
1096    },
1097    "RegisterStreamConsumerOutput":{
1098      "type":"structure",
1099      "required":["Consumer"],
1100      "members":{
1101        "Consumer":{"shape":"Consumer"}
1102      }
1103    },
1104    "RemoveTagsFromStreamInput":{
1105      "type":"structure",
1106      "required":[
1107        "StreamName",
1108        "TagKeys"
1109      ],
1110      "members":{
1111        "StreamName":{"shape":"StreamName"},
1112        "TagKeys":{"shape":"TagKeyList"}
1113      }
1114    },
1115    "ResourceInUseException":{
1116      "type":"structure",
1117      "members":{
1118        "message":{"shape":"ErrorMessage"}
1119      },
1120      "exception":true
1121    },
1122    "ResourceNotFoundException":{
1123      "type":"structure",
1124      "members":{
1125        "message":{"shape":"ErrorMessage"}
1126      },
1127      "exception":true
1128    },
1129    "RetentionPeriodHours":{"type":"integer"},
1130    "ScalingType":{
1131      "type":"string",
1132      "enum":["UNIFORM_SCALING"]
1133    },
1134    "SequenceNumber":{
1135      "type":"string",
1136      "pattern":"0|([1-9]\\d{0,128})"
1137    },
1138    "SequenceNumberRange":{
1139      "type":"structure",
1140      "required":["StartingSequenceNumber"],
1141      "members":{
1142        "StartingSequenceNumber":{"shape":"SequenceNumber"},
1143        "EndingSequenceNumber":{"shape":"SequenceNumber"}
1144      }
1145    },
1146    "Shard":{
1147      "type":"structure",
1148      "required":[
1149        "ShardId",
1150        "HashKeyRange",
1151        "SequenceNumberRange"
1152      ],
1153      "members":{
1154        "ShardId":{"shape":"ShardId"},
1155        "ParentShardId":{"shape":"ShardId"},
1156        "AdjacentParentShardId":{"shape":"ShardId"},
1157        "HashKeyRange":{"shape":"HashKeyRange"},
1158        "SequenceNumberRange":{"shape":"SequenceNumberRange"}
1159      }
1160    },
1161    "ShardCountObject":{
1162      "type":"integer",
1163      "max":1000000,
1164      "min":0
1165    },
1166    "ShardFilter":{
1167      "type":"structure",
1168      "required":["Type"],
1169      "members":{
1170        "Type":{"shape":"ShardFilterType"},
1171        "ShardId":{"shape":"ShardId"},
1172        "Timestamp":{"shape":"Timestamp"}
1173      }
1174    },
1175    "ShardFilterType":{
1176      "type":"string",
1177      "enum":[
1178        "AFTER_SHARD_ID",
1179        "AT_TRIM_HORIZON",
1180        "FROM_TRIM_HORIZON",
1181        "AT_LATEST",
1182        "AT_TIMESTAMP",
1183        "FROM_TIMESTAMP"
1184      ]
1185    },
1186    "ShardId":{
1187      "type":"string",
1188      "max":128,
1189      "min":1,
1190      "pattern":"[a-zA-Z0-9_.-]+"
1191    },
1192    "ShardIdList":{
1193      "type":"list",
1194      "member":{"shape":"ShardId"}
1195    },
1196    "ShardIterator":{
1197      "type":"string",
1198      "max":512,
1199      "min":1
1200    },
1201    "ShardIteratorType":{
1202      "type":"string",
1203      "enum":[
1204        "AT_SEQUENCE_NUMBER",
1205        "AFTER_SEQUENCE_NUMBER",
1206        "TRIM_HORIZON",
1207        "LATEST",
1208        "AT_TIMESTAMP"
1209      ]
1210    },
1211    "ShardList":{
1212      "type":"list",
1213      "member":{"shape":"Shard"}
1214    },
1215    "SplitShardInput":{
1216      "type":"structure",
1217      "required":[
1218        "StreamName",
1219        "ShardToSplit",
1220        "NewStartingHashKey"
1221      ],
1222      "members":{
1223        "StreamName":{"shape":"StreamName"},
1224        "ShardToSplit":{"shape":"ShardId"},
1225        "NewStartingHashKey":{"shape":"HashKey"}
1226      }
1227    },
1228    "StartStreamEncryptionInput":{
1229      "type":"structure",
1230      "required":[
1231        "StreamName",
1232        "EncryptionType",
1233        "KeyId"
1234      ],
1235      "members":{
1236        "StreamName":{"shape":"StreamName"},
1237        "EncryptionType":{"shape":"EncryptionType"},
1238        "KeyId":{"shape":"KeyId"}
1239      }
1240    },
1241    "StartingPosition":{
1242      "type":"structure",
1243      "required":["Type"],
1244      "members":{
1245        "Type":{"shape":"ShardIteratorType"},
1246        "SequenceNumber":{"shape":"SequenceNumber"},
1247        "Timestamp":{"shape":"Timestamp"}
1248      }
1249    },
1250    "StopStreamEncryptionInput":{
1251      "type":"structure",
1252      "required":[
1253        "StreamName",
1254        "EncryptionType",
1255        "KeyId"
1256      ],
1257      "members":{
1258        "StreamName":{"shape":"StreamName"},
1259        "EncryptionType":{"shape":"EncryptionType"},
1260        "KeyId":{"shape":"KeyId"}
1261      }
1262    },
1263    "StreamARN":{
1264      "type":"string",
1265      "max":2048,
1266      "min":1,
1267      "pattern":"arn:aws.*:kinesis:.*:\\d{12}:stream/.+"
1268    },
1269    "StreamDescription":{
1270      "type":"structure",
1271      "required":[
1272        "StreamName",
1273        "StreamARN",
1274        "StreamStatus",
1275        "Shards",
1276        "HasMoreShards",
1277        "RetentionPeriodHours",
1278        "StreamCreationTimestamp",
1279        "EnhancedMonitoring"
1280      ],
1281      "members":{
1282        "StreamName":{"shape":"StreamName"},
1283        "StreamARN":{"shape":"StreamARN"},
1284        "StreamStatus":{"shape":"StreamStatus"},
1285        "Shards":{"shape":"ShardList"},
1286        "HasMoreShards":{"shape":"BooleanObject"},
1287        "RetentionPeriodHours":{"shape":"RetentionPeriodHours"},
1288        "StreamCreationTimestamp":{"shape":"Timestamp"},
1289        "EnhancedMonitoring":{"shape":"EnhancedMonitoringList"},
1290        "EncryptionType":{"shape":"EncryptionType"},
1291        "KeyId":{"shape":"KeyId"}
1292      }
1293    },
1294    "StreamDescriptionSummary":{
1295      "type":"structure",
1296      "required":[
1297        "StreamName",
1298        "StreamARN",
1299        "StreamStatus",
1300        "RetentionPeriodHours",
1301        "StreamCreationTimestamp",
1302        "EnhancedMonitoring",
1303        "OpenShardCount"
1304      ],
1305      "members":{
1306        "StreamName":{"shape":"StreamName"},
1307        "StreamARN":{"shape":"StreamARN"},
1308        "StreamStatus":{"shape":"StreamStatus"},
1309        "RetentionPeriodHours":{"shape":"RetentionPeriodHours"},
1310        "StreamCreationTimestamp":{"shape":"Timestamp"},
1311        "EnhancedMonitoring":{"shape":"EnhancedMonitoringList"},
1312        "EncryptionType":{"shape":"EncryptionType"},
1313        "KeyId":{"shape":"KeyId"},
1314        "OpenShardCount":{"shape":"ShardCountObject"},
1315        "ConsumerCount":{"shape":"ConsumerCountObject"}
1316      }
1317    },
1318    "StreamName":{
1319      "type":"string",
1320      "max":128,
1321      "min":1,
1322      "pattern":"[a-zA-Z0-9_.-]+"
1323    },
1324    "StreamNameList":{
1325      "type":"list",
1326      "member":{"shape":"StreamName"}
1327    },
1328    "StreamStatus":{
1329      "type":"string",
1330      "enum":[
1331        "CREATING",
1332        "DELETING",
1333        "ACTIVE",
1334        "UPDATING"
1335      ]
1336    },
1337    "SubscribeToShardEvent":{
1338      "type":"structure",
1339      "required":[
1340        "Records",
1341        "ContinuationSequenceNumber",
1342        "MillisBehindLatest"
1343      ],
1344      "members":{
1345        "Records":{"shape":"RecordList"},
1346        "ContinuationSequenceNumber":{"shape":"SequenceNumber"},
1347        "MillisBehindLatest":{"shape":"MillisBehindLatest"},
1348        "ChildShards":{"shape":"ChildShardList"}
1349      },
1350      "event":true
1351    },
1352    "SubscribeToShardEventStream":{
1353      "type":"structure",
1354      "required":["SubscribeToShardEvent"],
1355      "members":{
1356        "SubscribeToShardEvent":{"shape":"SubscribeToShardEvent"},
1357        "ResourceNotFoundException":{"shape":"ResourceNotFoundException"},
1358        "ResourceInUseException":{"shape":"ResourceInUseException"},
1359        "KMSDisabledException":{"shape":"KMSDisabledException"},
1360        "KMSInvalidStateException":{"shape":"KMSInvalidStateException"},
1361        "KMSAccessDeniedException":{"shape":"KMSAccessDeniedException"},
1362        "KMSNotFoundException":{"shape":"KMSNotFoundException"},
1363        "KMSOptInRequired":{"shape":"KMSOptInRequired"},
1364        "KMSThrottlingException":{"shape":"KMSThrottlingException"},
1365        "InternalFailureException":{"shape":"InternalFailureException"}
1366      },
1367      "eventstream":true
1368    },
1369    "SubscribeToShardInput":{
1370      "type":"structure",
1371      "required":[
1372        "ConsumerARN",
1373        "ShardId",
1374        "StartingPosition"
1375      ],
1376      "members":{
1377        "ConsumerARN":{"shape":"ConsumerARN"},
1378        "ShardId":{"shape":"ShardId"},
1379        "StartingPosition":{"shape":"StartingPosition"}
1380      }
1381    },
1382    "SubscribeToShardOutput":{
1383      "type":"structure",
1384      "required":["EventStream"],
1385      "members":{
1386        "EventStream":{"shape":"SubscribeToShardEventStream"}
1387      }
1388    },
1389    "Tag":{
1390      "type":"structure",
1391      "required":["Key"],
1392      "members":{
1393        "Key":{"shape":"TagKey"},
1394        "Value":{"shape":"TagValue"}
1395      }
1396    },
1397    "TagKey":{
1398      "type":"string",
1399      "max":128,
1400      "min":1
1401    },
1402    "TagKeyList":{
1403      "type":"list",
1404      "member":{"shape":"TagKey"},
1405      "max":50,
1406      "min":1
1407    },
1408    "TagList":{
1409      "type":"list",
1410      "member":{"shape":"Tag"},
1411      "max":200,
1412      "min":0
1413    },
1414    "TagMap":{
1415      "type":"map",
1416      "key":{"shape":"TagKey"},
1417      "value":{"shape":"TagValue"},
1418      "max":200,
1419      "min":1
1420    },
1421    "TagValue":{
1422      "type":"string",
1423      "max":256,
1424      "min":0
1425    },
1426    "Timestamp":{"type":"timestamp"},
1427    "UpdateShardCountInput":{
1428      "type":"structure",
1429      "required":[
1430        "StreamName",
1431        "TargetShardCount",
1432        "ScalingType"
1433      ],
1434      "members":{
1435        "StreamName":{"shape":"StreamName"},
1436        "TargetShardCount":{"shape":"PositiveIntegerObject"},
1437        "ScalingType":{"shape":"ScalingType"}
1438      }
1439    },
1440    "UpdateShardCountOutput":{
1441      "type":"structure",
1442      "members":{
1443        "StreamName":{"shape":"StreamName"},
1444        "CurrentShardCount":{"shape":"PositiveIntegerObject"},
1445        "TargetShardCount":{"shape":"PositiveIntegerObject"}
1446      }
1447    }
1448  }
1449}
1450