1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"2021-08-04",
5    "endpointPrefix":"snow-device-management",
6    "jsonVersion":"1.1",
7    "protocol":"rest-json",
8    "serviceFullName":"AWS Snow Device Management",
9    "serviceId":"Snow Device Management",
10    "signatureVersion":"v4",
11    "signingName":"snow-device-management",
12    "uid":"snow-device-management-2021-08-04"
13  },
14  "operations":{
15    "CancelTask":{
16      "name":"CancelTask",
17      "http":{
18        "method":"POST",
19        "requestUri":"/task/{taskId}/cancel",
20        "responseCode":200
21      },
22      "input":{"shape":"CancelTaskInput"},
23      "output":{"shape":"CancelTaskOutput"},
24      "errors":[
25        {"shape":"ThrottlingException"},
26        {"shape":"InternalServerException"},
27        {"shape":"ResourceNotFoundException"},
28        {"shape":"ValidationException"},
29        {"shape":"AccessDeniedException"}
30      ],
31      "documentation":"<p>Sends a cancel request for a specified task. You can cancel a task only if it's still in a <code>QUEUED</code> state. Tasks that are already running can't be cancelled.</p> <note> <p>A task might still run if it's processed from the queue before the <code>CancelTask</code> operation changes the task's state.</p> </note>"
32    },
33    "CreateTask":{
34      "name":"CreateTask",
35      "http":{
36        "method":"POST",
37        "requestUri":"/task",
38        "responseCode":200
39      },
40      "input":{"shape":"CreateTaskInput"},
41      "output":{"shape":"CreateTaskOutput"},
42      "errors":[
43        {"shape":"ServiceQuotaExceededException"},
44        {"shape":"ThrottlingException"},
45        {"shape":"InternalServerException"},
46        {"shape":"ResourceNotFoundException"},
47        {"shape":"ValidationException"},
48        {"shape":"AccessDeniedException"}
49      ],
50      "documentation":"<p>Instructs one or more devices to start a task, such as unlocking or rebooting.</p>"
51    },
52    "DescribeDevice":{
53      "name":"DescribeDevice",
54      "http":{
55        "method":"POST",
56        "requestUri":"/managed-device/{managedDeviceId}/describe",
57        "responseCode":200
58      },
59      "input":{"shape":"DescribeDeviceInput"},
60      "output":{"shape":"DescribeDeviceOutput"},
61      "errors":[
62        {"shape":"ThrottlingException"},
63        {"shape":"InternalServerException"},
64        {"shape":"ResourceNotFoundException"},
65        {"shape":"ValidationException"},
66        {"shape":"AccessDeniedException"}
67      ],
68      "documentation":"<p>Checks device-specific information, such as the device type, software version, IP addresses, and lock status.</p>"
69    },
70    "DescribeDeviceEc2Instances":{
71      "name":"DescribeDeviceEc2Instances",
72      "http":{
73        "method":"POST",
74        "requestUri":"/managed-device/{managedDeviceId}/resources/ec2/describe",
75        "responseCode":200
76      },
77      "input":{"shape":"DescribeDeviceEc2Input"},
78      "output":{"shape":"DescribeDeviceEc2Output"},
79      "errors":[
80        {"shape":"ThrottlingException"},
81        {"shape":"InternalServerException"},
82        {"shape":"ResourceNotFoundException"},
83        {"shape":"ValidationException"},
84        {"shape":"AccessDeniedException"}
85      ],
86      "documentation":"<p>Checks the current state of the Amazon EC2 instances. The output is similar to <code>describeDevice</code>, but the results are sourced from the device cache in the Amazon Web Services Cloud and include a subset of the available fields. </p>"
87    },
88    "DescribeExecution":{
89      "name":"DescribeExecution",
90      "http":{
91        "method":"POST",
92        "requestUri":"/task/{taskId}/execution/{managedDeviceId}",
93        "responseCode":200
94      },
95      "input":{"shape":"DescribeExecutionInput"},
96      "output":{"shape":"DescribeExecutionOutput"},
97      "errors":[
98        {"shape":"ThrottlingException"},
99        {"shape":"InternalServerException"},
100        {"shape":"ResourceNotFoundException"},
101        {"shape":"ValidationException"},
102        {"shape":"AccessDeniedException"}
103      ],
104      "documentation":"<p>Checks the status of a remote task running on one or more target devices.</p>"
105    },
106    "DescribeTask":{
107      "name":"DescribeTask",
108      "http":{
109        "method":"POST",
110        "requestUri":"/task/{taskId}",
111        "responseCode":200
112      },
113      "input":{"shape":"DescribeTaskInput"},
114      "output":{"shape":"DescribeTaskOutput"},
115      "errors":[
116        {"shape":"ThrottlingException"},
117        {"shape":"InternalServerException"},
118        {"shape":"ResourceNotFoundException"},
119        {"shape":"ValidationException"},
120        {"shape":"AccessDeniedException"}
121      ],
122      "documentation":"<p>Checks the metadata for a given task on a device. </p>"
123    },
124    "ListDeviceResources":{
125      "name":"ListDeviceResources",
126      "http":{
127        "method":"GET",
128        "requestUri":"/managed-device/{managedDeviceId}/resources",
129        "responseCode":200
130      },
131      "input":{"shape":"ListDeviceResourcesInput"},
132      "output":{"shape":"ListDeviceResourcesOutput"},
133      "errors":[
134        {"shape":"ThrottlingException"},
135        {"shape":"InternalServerException"},
136        {"shape":"ResourceNotFoundException"},
137        {"shape":"ValidationException"},
138        {"shape":"AccessDeniedException"}
139      ],
140      "documentation":"<p>Returns a list of the Amazon Web Services resources available for a device. Currently, Amazon EC2 instances are the only supported resource type.</p>"
141    },
142    "ListDevices":{
143      "name":"ListDevices",
144      "http":{
145        "method":"GET",
146        "requestUri":"/managed-devices",
147        "responseCode":200
148      },
149      "input":{"shape":"ListDevicesInput"},
150      "output":{"shape":"ListDevicesOutput"},
151      "errors":[
152        {"shape":"ThrottlingException"},
153        {"shape":"InternalServerException"},
154        {"shape":"ValidationException"},
155        {"shape":"AccessDeniedException"}
156      ],
157      "documentation":"<p>Returns a list of all devices on your Amazon Web Services account that have Amazon Web Services Snow Device Management enabled in the Amazon Web Services Region where the command is run.</p>"
158    },
159    "ListExecutions":{
160      "name":"ListExecutions",
161      "http":{
162        "method":"GET",
163        "requestUri":"/executions",
164        "responseCode":200
165      },
166      "input":{"shape":"ListExecutionsInput"},
167      "output":{"shape":"ListExecutionsOutput"},
168      "errors":[
169        {"shape":"ThrottlingException"},
170        {"shape":"InternalServerException"},
171        {"shape":"ResourceNotFoundException"},
172        {"shape":"ValidationException"},
173        {"shape":"AccessDeniedException"}
174      ],
175      "documentation":"<p>Returns the status of tasks for one or more target devices.</p>"
176    },
177    "ListTagsForResource":{
178      "name":"ListTagsForResource",
179      "http":{
180        "method":"GET",
181        "requestUri":"/tags/{resourceArn}",
182        "responseCode":200
183      },
184      "input":{"shape":"ListTagsForResourceInput"},
185      "output":{"shape":"ListTagsForResourceOutput"},
186      "errors":[
187        {"shape":"InternalServerException"},
188        {"shape":"ResourceNotFoundException"},
189        {"shape":"ValidationException"}
190      ],
191      "documentation":"<p>Returns a list of tags for a managed device or task.</p>"
192    },
193    "ListTasks":{
194      "name":"ListTasks",
195      "http":{
196        "method":"GET",
197        "requestUri":"/tasks",
198        "responseCode":200
199      },
200      "input":{"shape":"ListTasksInput"},
201      "output":{"shape":"ListTasksOutput"},
202      "errors":[
203        {"shape":"ThrottlingException"},
204        {"shape":"InternalServerException"},
205        {"shape":"ValidationException"},
206        {"shape":"AccessDeniedException"}
207      ],
208      "documentation":"<p>Returns a list of tasks that can be filtered by state.</p>"
209    },
210    "TagResource":{
211      "name":"TagResource",
212      "http":{
213        "method":"POST",
214        "requestUri":"/tags/{resourceArn}",
215        "responseCode":200
216      },
217      "input":{"shape":"TagResourceInput"},
218      "errors":[
219        {"shape":"InternalServerException"},
220        {"shape":"ResourceNotFoundException"},
221        {"shape":"ValidationException"}
222      ],
223      "documentation":"<p>Adds or replaces tags on a device or task.</p>"
224    },
225    "UntagResource":{
226      "name":"UntagResource",
227      "http":{
228        "method":"DELETE",
229        "requestUri":"/tags/{resourceArn}",
230        "responseCode":200
231      },
232      "input":{"shape":"UntagResourceInput"},
233      "errors":[
234        {"shape":"InternalServerException"},
235        {"shape":"ResourceNotFoundException"},
236        {"shape":"ValidationException"}
237      ],
238      "documentation":"<p>Removes a tag from a device or task.</p>",
239      "idempotent":true
240    }
241  },
242  "shapes":{
243    "AccessDeniedException":{
244      "type":"structure",
245      "required":["message"],
246      "members":{
247        "message":{"shape":"String"}
248      },
249      "documentation":"<p>You don't have sufficient access to perform this action.</p>",
250      "error":{
251        "httpStatusCode":403,
252        "senderFault":true
253      },
254      "exception":true
255    },
256    "AttachmentStatus":{
257      "type":"string",
258      "enum":[
259        "ATTACHING",
260        "ATTACHED",
261        "DETACHING",
262        "DETACHED"
263      ]
264    },
265    "Boolean":{
266      "type":"boolean",
267      "box":true
268    },
269    "CancelTaskInput":{
270      "type":"structure",
271      "required":["taskId"],
272      "members":{
273        "taskId":{
274          "shape":"TaskId",
275          "documentation":"<p>The ID of the task that you are attempting to cancel. You can retrieve a task ID by using the <code>ListTasks</code> operation.</p>",
276          "location":"uri",
277          "locationName":"taskId"
278        }
279      }
280    },
281    "CancelTaskOutput":{
282      "type":"structure",
283      "members":{
284        "taskId":{
285          "shape":"String",
286          "documentation":"<p>The ID of the task that you are attempting to cancel.</p>"
287        }
288      }
289    },
290    "Capacity":{
291      "type":"structure",
292      "members":{
293        "available":{
294          "shape":"Long",
295          "documentation":"<p>The amount of capacity available for use on the device.</p>"
296        },
297        "name":{
298          "shape":"CapacityNameString",
299          "documentation":"<p>The name of the type of capacity, such as memory.</p>"
300        },
301        "total":{
302          "shape":"Long",
303          "documentation":"<p>The total capacity on the device.</p>"
304        },
305        "unit":{
306          "shape":"CapacityUnitString",
307          "documentation":"<p>The unit of measure for the type of capacity.</p>"
308        },
309        "used":{
310          "shape":"Long",
311          "documentation":"<p>The amount of capacity used on the device.</p>"
312        }
313      },
314      "documentation":"<p>The physical capacity of the Amazon Web Services Snow Family device. </p>"
315    },
316    "CapacityList":{
317      "type":"list",
318      "member":{"shape":"Capacity"},
319      "max":100,
320      "min":0
321    },
322    "CapacityNameString":{
323      "type":"string",
324      "max":100,
325      "min":0
326    },
327    "CapacityUnitString":{
328      "type":"string",
329      "max":20,
330      "min":0
331    },
332    "Command":{
333      "type":"structure",
334      "members":{
335        "reboot":{
336          "shape":"Reboot",
337          "documentation":"<p>Reboots the device.</p>"
338        },
339        "unlock":{
340          "shape":"Unlock",
341          "documentation":"<p>Unlocks the device.</p>"
342        }
343      },
344      "documentation":"<p>The command given to the device to execute.</p>",
345      "union":true
346    },
347    "CpuOptions":{
348      "type":"structure",
349      "members":{
350        "coreCount":{
351          "shape":"Integer",
352          "documentation":"<p>The number of cores that the CPU can use.</p>"
353        },
354        "threadsPerCore":{
355          "shape":"Integer",
356          "documentation":"<p>The number of threads per core in the CPU.</p>"
357        }
358      },
359      "documentation":"<p>The options for how a device's CPU is configured.</p>"
360    },
361    "CreateTaskInput":{
362      "type":"structure",
363      "required":[
364        "command",
365        "targets"
366      ],
367      "members":{
368        "clientToken":{
369          "shape":"IdempotencyToken",
370          "documentation":"<p>A token ensuring that the action is called only once with the specified details.</p>",
371          "idempotencyToken":true
372        },
373        "command":{
374          "shape":"Command",
375          "documentation":"<p>The task to be performed. Only one task is executed on a device at a time.</p>"
376        },
377        "description":{
378          "shape":"TaskDescriptionString",
379          "documentation":"<p>A description of the task and its targets.</p>"
380        },
381        "tags":{
382          "shape":"TagMap",
383          "documentation":"<p>Optional metadata that you assign to a resource. You can use tags to categorize a resource in different ways, such as by purpose, owner, or environment. </p>"
384        },
385        "targets":{
386          "shape":"TargetList",
387          "documentation":"<p>A list of managed device IDs.</p>"
388        }
389      }
390    },
391    "CreateTaskOutput":{
392      "type":"structure",
393      "members":{
394        "taskArn":{
395          "shape":"String",
396          "documentation":"<p>The Amazon Resource Name (ARN) of the task that you created.</p>"
397        },
398        "taskId":{
399          "shape":"String",
400          "documentation":"<p>The ID of the task that you created.</p>"
401        }
402      }
403    },
404    "DescribeDeviceEc2Input":{
405      "type":"structure",
406      "required":[
407        "instanceIds",
408        "managedDeviceId"
409      ],
410      "members":{
411        "instanceIds":{
412          "shape":"InstanceIdsList",
413          "documentation":"<p>A list of instance IDs associated with the managed device.</p>"
414        },
415        "managedDeviceId":{
416          "shape":"ManagedDeviceId",
417          "documentation":"<p>The ID of the managed device.</p>",
418          "location":"uri",
419          "locationName":"managedDeviceId"
420        }
421      }
422    },
423    "DescribeDeviceEc2Output":{
424      "type":"structure",
425      "members":{
426        "instances":{
427          "shape":"InstanceSummaryList",
428          "documentation":"<p>A list of structures containing information about each instance. </p>"
429        }
430      }
431    },
432    "DescribeDeviceInput":{
433      "type":"structure",
434      "required":["managedDeviceId"],
435      "members":{
436        "managedDeviceId":{
437          "shape":"ManagedDeviceId",
438          "documentation":"<p>The ID of the device that you are checking the information of.</p>",
439          "location":"uri",
440          "locationName":"managedDeviceId"
441        }
442      }
443    },
444    "DescribeDeviceOutput":{
445      "type":"structure",
446      "members":{
447        "associatedWithJob":{
448          "shape":"String",
449          "documentation":"<p>The ID of the job used when ordering the device.</p>"
450        },
451        "deviceCapacities":{
452          "shape":"CapacityList",
453          "documentation":"<p>The hardware specifications of the device. </p>"
454        },
455        "deviceState":{
456          "shape":"UnlockState",
457          "documentation":"<p>The current state of the device.</p>"
458        },
459        "deviceType":{
460          "shape":"String",
461          "documentation":"<p>The type of Amazon Web Services Snow Family device.</p>"
462        },
463        "lastReachedOutAt":{
464          "shape":"Timestamp",
465          "documentation":"<p>When the device last contacted the Amazon Web Services Cloud. Indicates that the device is online.</p>"
466        },
467        "lastUpdatedAt":{
468          "shape":"Timestamp",
469          "documentation":"<p>When the device last pushed an update to the Amazon Web Services Cloud. Indicates when the device cache was refreshed.</p>"
470        },
471        "managedDeviceArn":{
472          "shape":"String",
473          "documentation":"<p>The Amazon Resource Name (ARN) of the device.</p>"
474        },
475        "managedDeviceId":{
476          "shape":"ManagedDeviceId",
477          "documentation":"<p>The ID of the device that you checked the information for.</p>"
478        },
479        "physicalNetworkInterfaces":{
480          "shape":"PhysicalNetworkInterfaceList",
481          "documentation":"<p>The network interfaces available on the device.</p>"
482        },
483        "software":{
484          "shape":"SoftwareInformation",
485          "documentation":"<p>The software installed on the device.</p>"
486        },
487        "tags":{
488          "shape":"TagMap",
489          "documentation":"<p>Optional metadata that you assign to a resource. You can use tags to categorize a resource in different ways, such as by purpose, owner, or environment. </p>"
490        }
491      }
492    },
493    "DescribeExecutionInput":{
494      "type":"structure",
495      "required":[
496        "managedDeviceId",
497        "taskId"
498      ],
499      "members":{
500        "managedDeviceId":{
501          "shape":"ManagedDeviceId",
502          "documentation":"<p>The ID of the managed device.</p>",
503          "location":"uri",
504          "locationName":"managedDeviceId"
505        },
506        "taskId":{
507          "shape":"TaskId",
508          "documentation":"<p>The ID of the task that the action is describing.</p>",
509          "location":"uri",
510          "locationName":"taskId"
511        }
512      }
513    },
514    "DescribeExecutionOutput":{
515      "type":"structure",
516      "members":{
517        "executionId":{
518          "shape":"ExecutionId",
519          "documentation":"<p>The ID of the execution.</p>"
520        },
521        "lastUpdatedAt":{
522          "shape":"Timestamp",
523          "documentation":"<p>When the status of the execution was last updated.</p>"
524        },
525        "managedDeviceId":{
526          "shape":"ManagedDeviceId",
527          "documentation":"<p>The ID of the managed device that the task is being executed on.</p>"
528        },
529        "startedAt":{
530          "shape":"Timestamp",
531          "documentation":"<p>When the execution began.</p>"
532        },
533        "state":{
534          "shape":"ExecutionState",
535          "documentation":"<p>The current state of the execution.</p>"
536        },
537        "taskId":{
538          "shape":"TaskId",
539          "documentation":"<p>The ID of the task being executed on the device.</p>"
540        }
541      }
542    },
543    "DescribeTaskInput":{
544      "type":"structure",
545      "required":["taskId"],
546      "members":{
547        "taskId":{
548          "shape":"TaskId",
549          "documentation":"<p>The ID of the task to be described.</p>",
550          "location":"uri",
551          "locationName":"taskId"
552        }
553      }
554    },
555    "DescribeTaskOutput":{
556      "type":"structure",
557      "members":{
558        "completedAt":{
559          "shape":"Timestamp",
560          "documentation":"<p>When the task was completed.</p>"
561        },
562        "createdAt":{
563          "shape":"Timestamp",
564          "documentation":"<p>When the <code>CreateTask</code> operation was called.</p>"
565        },
566        "description":{
567          "shape":"TaskDescriptionString",
568          "documentation":"<p>The description provided of the task and managed devices.</p>"
569        },
570        "lastUpdatedAt":{
571          "shape":"Timestamp",
572          "documentation":"<p>When the state of the task was last updated.</p>"
573        },
574        "state":{
575          "shape":"TaskState",
576          "documentation":"<p>The current state of the task.</p>"
577        },
578        "tags":{
579          "shape":"TagMap",
580          "documentation":"<p>Optional metadata that you assign to a resource. You can use tags to categorize a resource in different ways, such as by purpose, owner, or environment.</p>"
581        },
582        "targets":{
583          "shape":"TargetList",
584          "documentation":"<p>The managed devices that the task was sent to.</p>"
585        },
586        "taskArn":{
587          "shape":"String",
588          "documentation":"<p>The Amazon Resource Name (ARN) of the task.</p>"
589        },
590        "taskId":{
591          "shape":"String",
592          "documentation":"<p>The ID of the task.</p>"
593        }
594      }
595    },
596    "DeviceSummary":{
597      "type":"structure",
598      "members":{
599        "associatedWithJob":{
600          "shape":"String",
601          "documentation":"<p>The ID of the job used to order the device.</p>"
602        },
603        "managedDeviceArn":{
604          "shape":"String",
605          "documentation":"<p>The Amazon Resource Name (ARN) of the device.</p>"
606        },
607        "managedDeviceId":{
608          "shape":"ManagedDeviceId",
609          "documentation":"<p>The ID of the device.</p>"
610        },
611        "tags":{
612          "shape":"TagMap",
613          "documentation":"<p>Optional metadata that you assign to a resource. You can use tags to categorize a resource in different ways, such as by purpose, owner, or environment.</p>"
614        }
615      },
616      "documentation":"<p>Identifying information about the device.</p>"
617    },
618    "DeviceSummaryList":{
619      "type":"list",
620      "member":{"shape":"DeviceSummary"}
621    },
622    "EbsInstanceBlockDevice":{
623      "type":"structure",
624      "members":{
625        "attachTime":{
626          "shape":"Timestamp",
627          "documentation":"<p>When the attachment was initiated.</p>"
628        },
629        "deleteOnTermination":{
630          "shape":"Boolean",
631          "documentation":"<p>A value that indicates whether the volume is deleted on instance termination.</p>"
632        },
633        "status":{
634          "shape":"AttachmentStatus",
635          "documentation":"<p>The attachment state.</p>"
636        },
637        "volumeId":{
638          "shape":"String",
639          "documentation":"<p>The ID of the Amazon EBS volume.</p>"
640        }
641      },
642      "documentation":"<p>Describes a parameter used to set up an Amazon Elastic Block Store (Amazon EBS) volume in a block device mapping.</p>"
643    },
644    "ExecutionId":{
645      "type":"string",
646      "max":64,
647      "min":1
648    },
649    "ExecutionState":{
650      "type":"string",
651      "enum":[
652        "QUEUED",
653        "IN_PROGRESS",
654        "CANCELED",
655        "FAILED",
656        "SUCCEEDED",
657        "REJECTED",
658        "TIMED_OUT"
659      ]
660    },
661    "ExecutionSummary":{
662      "type":"structure",
663      "members":{
664        "executionId":{
665          "shape":"ExecutionId",
666          "documentation":"<p>The ID of the execution.</p>"
667        },
668        "managedDeviceId":{
669          "shape":"ManagedDeviceId",
670          "documentation":"<p>The ID of the managed device that the task is being executed on.</p>"
671        },
672        "state":{
673          "shape":"ExecutionState",
674          "documentation":"<p>The state of the execution.</p>"
675        },
676        "taskId":{
677          "shape":"TaskId",
678          "documentation":"<p>The ID of the task.</p>"
679        }
680      },
681      "documentation":"<p>The summary of a task execution on a specified device.</p>"
682    },
683    "ExecutionSummaryList":{
684      "type":"list",
685      "member":{"shape":"ExecutionSummary"}
686    },
687    "IdempotencyToken":{
688      "type":"string",
689      "max":64,
690      "min":1,
691      "pattern":"[!-~]+"
692    },
693    "Instance":{
694      "type":"structure",
695      "members":{
696        "amiLaunchIndex":{
697          "shape":"Integer",
698          "documentation":"<p>The Amazon Machine Image (AMI) launch index, which you can use to find this instance in the launch group. </p>"
699        },
700        "blockDeviceMappings":{
701          "shape":"InstanceBlockDeviceMappingList",
702          "documentation":"<p>Any block device mapping entries for the instance.</p>"
703        },
704        "cpuOptions":{
705          "shape":"CpuOptions",
706          "documentation":"<p>The CPU options for the instance.</p>"
707        },
708        "createdAt":{
709          "shape":"Timestamp",
710          "documentation":"<p>When the instance was created.</p>"
711        },
712        "imageId":{
713          "shape":"String",
714          "documentation":"<p>The ID of the AMI used to launch the instance.</p>"
715        },
716        "instanceId":{
717          "shape":"String",
718          "documentation":"<p>The ID of the instance.</p>"
719        },
720        "instanceType":{
721          "shape":"String",
722          "documentation":"<p>The instance type.</p>"
723        },
724        "privateIpAddress":{
725          "shape":"String",
726          "documentation":"<p>The private IPv4 address assigned to the instance.</p>"
727        },
728        "publicIpAddress":{
729          "shape":"String",
730          "documentation":"<p>The public IPv4 address assigned to the instance.</p>"
731        },
732        "rootDeviceName":{
733          "shape":"String",
734          "documentation":"<p>The device name of the root device volume (for example, <code>/dev/sda1</code>). </p>"
735        },
736        "securityGroups":{
737          "shape":"SecurityGroupIdentifierList",
738          "documentation":"<p>The security groups for the instance.</p>"
739        },
740        "state":{"shape":"InstanceState"},
741        "updatedAt":{
742          "shape":"Timestamp",
743          "documentation":"<p>When the instance was last updated.</p>"
744        }
745      },
746      "documentation":"<p>The description of an instance. Currently, Amazon EC2 instances are the only supported instance type.</p>"
747    },
748    "InstanceBlockDeviceMapping":{
749      "type":"structure",
750      "members":{
751        "deviceName":{
752          "shape":"String",
753          "documentation":"<p>The block device name.</p>"
754        },
755        "ebs":{
756          "shape":"EbsInstanceBlockDevice",
757          "documentation":"<p>The parameters used to automatically set up Amazon Elastic Block Store (Amazon EBS) volumes when the instance is launched. </p>"
758        }
759      },
760      "documentation":"<p>The description of a block device mapping.</p>"
761    },
762    "InstanceBlockDeviceMappingList":{
763      "type":"list",
764      "member":{"shape":"InstanceBlockDeviceMapping"}
765    },
766    "InstanceIdsList":{
767      "type":"list",
768      "member":{"shape":"String"}
769    },
770    "InstanceState":{
771      "type":"structure",
772      "members":{
773        "code":{
774          "shape":"Integer",
775          "documentation":"<p>The state of the instance as a 16-bit unsigned integer. </p> <p>The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal values between 256 and 65,535. These numerical values are used for internal purposes and should be ignored. </p> <p>The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal values between 0 and 255. </p> <p>The valid values for the instance state code are all in the range of the low byte. These values are: </p> <ul> <li> <p> <code>0</code> : <code>pending</code> </p> </li> <li> <p> <code>16</code> : <code>running</code> </p> </li> <li> <p> <code>32</code> : <code>shutting-down</code> </p> </li> <li> <p> <code>48</code> : <code>terminated</code> </p> </li> <li> <p> <code>64</code> : <code>stopping</code> </p> </li> <li> <p> <code>80</code> : <code>stopped</code> </p> </li> </ul> <p>You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in decimal. </p>"
776        },
777        "name":{
778          "shape":"InstanceStateName",
779          "documentation":"<p>The current state of the instance.</p>"
780        }
781      },
782      "documentation":"<p>The description of the current state of an instance.</p>"
783    },
784    "InstanceStateName":{
785      "type":"string",
786      "enum":[
787        "PENDING",
788        "RUNNING",
789        "SHUTTING_DOWN",
790        "TERMINATED",
791        "STOPPING",
792        "STOPPED"
793      ]
794    },
795    "InstanceSummary":{
796      "type":"structure",
797      "members":{
798        "instance":{
799          "shape":"Instance",
800          "documentation":"<p>A structure containing details about the instance.</p>"
801        },
802        "lastUpdatedAt":{
803          "shape":"Timestamp",
804          "documentation":"<p>When the instance summary was last updated.</p>"
805        }
806      },
807      "documentation":"<p>The details about the instance.</p>"
808    },
809    "InstanceSummaryList":{
810      "type":"list",
811      "member":{"shape":"InstanceSummary"}
812    },
813    "Integer":{
814      "type":"integer",
815      "box":true
816    },
817    "InternalServerException":{
818      "type":"structure",
819      "required":["message"],
820      "members":{
821        "message":{"shape":"String"}
822      },
823      "documentation":"<p>An unexpected error occurred while processing the request.</p>",
824      "error":{"httpStatusCode":500},
825      "exception":true,
826      "fault":true,
827      "retryable":{"throttling":false}
828    },
829    "IpAddressAssignment":{
830      "type":"string",
831      "enum":[
832        "DHCP",
833        "STATIC"
834      ]
835    },
836    "JobId":{
837      "type":"string",
838      "max":64,
839      "min":1
840    },
841    "ListDeviceResourcesInput":{
842      "type":"structure",
843      "required":["managedDeviceId"],
844      "members":{
845        "managedDeviceId":{
846          "shape":"ManagedDeviceId",
847          "documentation":"<p>The ID of the managed device that you are listing the resources of.</p>",
848          "location":"uri",
849          "locationName":"managedDeviceId"
850        },
851        "maxResults":{
852          "shape":"MaxResults",
853          "documentation":"<p>The maximum number of resources per page.</p>",
854          "location":"querystring",
855          "locationName":"maxResults"
856        },
857        "nextToken":{
858          "shape":"NextToken",
859          "documentation":"<p>A pagination token to continue to the next page of results.</p>",
860          "location":"querystring",
861          "locationName":"nextToken"
862        },
863        "type":{
864          "shape":"ListDeviceResourcesInputTypeString",
865          "documentation":"<p>A structure used to filter the results by type of resource.</p>",
866          "location":"querystring",
867          "locationName":"type"
868        }
869      }
870    },
871    "ListDeviceResourcesInputTypeString":{
872      "type":"string",
873      "max":50,
874      "min":1
875    },
876    "ListDeviceResourcesOutput":{
877      "type":"structure",
878      "members":{
879        "nextToken":{
880          "shape":"NextToken",
881          "documentation":"<p>A pagination token to continue to the next page of results.</p>"
882        },
883        "resources":{
884          "shape":"ResourceSummaryList",
885          "documentation":"<p>A structure defining the resource's type, Amazon Resource Name (ARN), and ID.</p>"
886        }
887      }
888    },
889    "ListDevicesInput":{
890      "type":"structure",
891      "members":{
892        "jobId":{
893          "shape":"JobId",
894          "documentation":"<p>The ID of the job used to order the device.</p>",
895          "location":"querystring",
896          "locationName":"jobId"
897        },
898        "maxResults":{
899          "shape":"MaxResults",
900          "documentation":"<p>The maximum number of devices to list per page.</p>",
901          "location":"querystring",
902          "locationName":"maxResults"
903        },
904        "nextToken":{
905          "shape":"NextToken",
906          "documentation":"<p>A pagination token to continue to the next page of results.</p>",
907          "location":"querystring",
908          "locationName":"nextToken"
909        }
910      }
911    },
912    "ListDevicesOutput":{
913      "type":"structure",
914      "members":{
915        "devices":{
916          "shape":"DeviceSummaryList",
917          "documentation":"<p>A list of device structures that contain information about the device.</p>"
918        },
919        "nextToken":{
920          "shape":"NextToken",
921          "documentation":"<p>A pagination token to continue to the next page of devices.</p>"
922        }
923      }
924    },
925    "ListExecutionsInput":{
926      "type":"structure",
927      "required":["taskId"],
928      "members":{
929        "maxResults":{
930          "shape":"MaxResults",
931          "documentation":"<p>The maximum number of tasks to list per page.</p>",
932          "location":"querystring",
933          "locationName":"maxResults"
934        },
935        "nextToken":{
936          "shape":"NextToken",
937          "documentation":"<p>A pagination token to continue to the next page of tasks.</p>",
938          "location":"querystring",
939          "locationName":"nextToken"
940        },
941        "state":{
942          "shape":"ExecutionState",
943          "documentation":"<p>A structure used to filter the tasks by their current state.</p>",
944          "location":"querystring",
945          "locationName":"state"
946        },
947        "taskId":{
948          "shape":"TaskId",
949          "documentation":"<p>The ID of the task.</p>",
950          "location":"querystring",
951          "locationName":"taskId"
952        }
953      }
954    },
955    "ListExecutionsOutput":{
956      "type":"structure",
957      "members":{
958        "executions":{
959          "shape":"ExecutionSummaryList",
960          "documentation":"<p>A list of executions. Each execution contains the task ID, the device that the task is executing on, the execution ID, and the status of the execution.</p>"
961        },
962        "nextToken":{
963          "shape":"NextToken",
964          "documentation":"<p>A pagination token to continue to the next page of executions.</p>"
965        }
966      }
967    },
968    "ListTagsForResourceInput":{
969      "type":"structure",
970      "required":["resourceArn"],
971      "members":{
972        "resourceArn":{
973          "shape":"String",
974          "documentation":"<p>The Amazon Resource Name (ARN) of the device or task.</p>",
975          "location":"uri",
976          "locationName":"resourceArn"
977        }
978      }
979    },
980    "ListTagsForResourceOutput":{
981      "type":"structure",
982      "members":{
983        "tags":{
984          "shape":"TagMap",
985          "documentation":"<p>The list of tags for the device or task.</p>"
986        }
987      }
988    },
989    "ListTasksInput":{
990      "type":"structure",
991      "members":{
992        "maxResults":{
993          "shape":"MaxResults",
994          "documentation":"<p>The maximum number of tasks per page.</p>",
995          "location":"querystring",
996          "locationName":"maxResults"
997        },
998        "nextToken":{
999          "shape":"NextToken",
1000          "documentation":"<p>A pagination token to continue to the next page of tasks.</p>",
1001          "location":"querystring",
1002          "locationName":"nextToken"
1003        },
1004        "state":{
1005          "shape":"TaskState",
1006          "documentation":"<p>A structure used to filter the list of tasks.</p>",
1007          "location":"querystring",
1008          "locationName":"state"
1009        }
1010      }
1011    },
1012    "ListTasksOutput":{
1013      "type":"structure",
1014      "members":{
1015        "nextToken":{
1016          "shape":"NextToken",
1017          "documentation":"<p>A pagination token to continue to the next page of tasks.</p>"
1018        },
1019        "tasks":{
1020          "shape":"TaskSummaryList",
1021          "documentation":"<p>A list of task structures containing details about each task.</p>"
1022        }
1023      }
1024    },
1025    "Long":{
1026      "type":"long",
1027      "box":true
1028    },
1029    "ManagedDeviceId":{
1030      "type":"string",
1031      "max":64,
1032      "min":1
1033    },
1034    "MaxResults":{
1035      "type":"integer",
1036      "box":true,
1037      "max":100,
1038      "min":1
1039    },
1040    "NextToken":{
1041      "type":"string",
1042      "max":1024,
1043      "min":1,
1044      "pattern":"[a-zA-Z0-9+/=]*"
1045    },
1046    "PhysicalConnectorType":{
1047      "type":"string",
1048      "enum":[
1049        "RJ45",
1050        "SFP_PLUS",
1051        "QSFP",
1052        "RJ45_2",
1053        "WIFI"
1054      ]
1055    },
1056    "PhysicalNetworkInterface":{
1057      "type":"structure",
1058      "members":{
1059        "defaultGateway":{
1060          "shape":"String",
1061          "documentation":"<p>The default gateway of the device.</p>"
1062        },
1063        "ipAddress":{
1064          "shape":"String",
1065          "documentation":"<p>The IP address of the device.</p>"
1066        },
1067        "ipAddressAssignment":{
1068          "shape":"IpAddressAssignment",
1069          "documentation":"<p>A value that describes whether the IP address is dynamic or persistent.</p>"
1070        },
1071        "macAddress":{
1072          "shape":"String",
1073          "documentation":"<p>The MAC address of the device.</p>"
1074        },
1075        "netmask":{
1076          "shape":"String",
1077          "documentation":"<p>The netmask used to divide the IP address into subnets.</p>"
1078        },
1079        "physicalConnectorType":{
1080          "shape":"PhysicalConnectorType",
1081          "documentation":"<p>The physical connector type.</p>"
1082        },
1083        "physicalNetworkInterfaceId":{
1084          "shape":"String",
1085          "documentation":"<p>The physical network interface ID.</p>"
1086        }
1087      },
1088      "documentation":"<p>The details about the physical network interface for the device.</p>"
1089    },
1090    "PhysicalNetworkInterfaceList":{
1091      "type":"list",
1092      "member":{"shape":"PhysicalNetworkInterface"}
1093    },
1094    "Reboot":{
1095      "type":"structure",
1096      "members":{
1097      },
1098      "documentation":"<p>A structure used to reboot the device.</p>"
1099    },
1100    "ResourceNotFoundException":{
1101      "type":"structure",
1102      "required":["message"],
1103      "members":{
1104        "message":{"shape":"String"}
1105      },
1106      "documentation":"<p>The request references a resource that doesn't exist.</p>",
1107      "error":{
1108        "httpStatusCode":404,
1109        "senderFault":true
1110      },
1111      "exception":true
1112    },
1113    "ResourceSummary":{
1114      "type":"structure",
1115      "required":["resourceType"],
1116      "members":{
1117        "arn":{
1118          "shape":"String",
1119          "documentation":"<p>The Amazon Resource Name (ARN) of the resource.</p>"
1120        },
1121        "id":{
1122          "shape":"String",
1123          "documentation":"<p>The ID of the resource.</p>"
1124        },
1125        "resourceType":{
1126          "shape":"String",
1127          "documentation":"<p>The resource type.</p>"
1128        }
1129      },
1130      "documentation":"<p>A summary of a resource available on the device.</p>"
1131    },
1132    "ResourceSummaryList":{
1133      "type":"list",
1134      "member":{"shape":"ResourceSummary"}
1135    },
1136    "SecurityGroupIdentifier":{
1137      "type":"structure",
1138      "members":{
1139        "groupId":{
1140          "shape":"String",
1141          "documentation":"<p>The security group ID.</p>"
1142        },
1143        "groupName":{
1144          "shape":"String",
1145          "documentation":"<p>The security group name.</p>"
1146        }
1147      },
1148      "documentation":"<p>Information about the device's security group.</p>"
1149    },
1150    "SecurityGroupIdentifierList":{
1151      "type":"list",
1152      "member":{"shape":"SecurityGroupIdentifier"}
1153    },
1154    "ServiceQuotaExceededException":{
1155      "type":"structure",
1156      "required":["message"],
1157      "members":{
1158        "message":{"shape":"String"}
1159      },
1160      "documentation":"<p>The request would cause a service quota to be exceeded.</p>",
1161      "error":{
1162        "httpStatusCode":402,
1163        "senderFault":true
1164      },
1165      "exception":true
1166    },
1167    "SoftwareInformation":{
1168      "type":"structure",
1169      "members":{
1170        "installState":{
1171          "shape":"String",
1172          "documentation":"<p>The state of the software that is installed or that is being installed on the device.</p>"
1173        },
1174        "installedVersion":{
1175          "shape":"String",
1176          "documentation":"<p>The version of the software currently installed on the device.</p>"
1177        },
1178        "installingVersion":{
1179          "shape":"String",
1180          "documentation":"<p>The version of the software being installed on the device.</p>"
1181        }
1182      },
1183      "documentation":"<p>Information about the software on the device.</p>"
1184    },
1185    "String":{"type":"string"},
1186    "TagKeys":{
1187      "type":"list",
1188      "member":{"shape":"String"}
1189    },
1190    "TagMap":{
1191      "type":"map",
1192      "key":{"shape":"String"},
1193      "value":{"shape":"String"}
1194    },
1195    "TagResourceInput":{
1196      "type":"structure",
1197      "required":[
1198        "resourceArn",
1199        "tags"
1200      ],
1201      "members":{
1202        "resourceArn":{
1203          "shape":"String",
1204          "documentation":"<p>The Amazon Resource Name (ARN) of the device or task.</p>",
1205          "location":"uri",
1206          "locationName":"resourceArn"
1207        },
1208        "tags":{
1209          "shape":"TagMap",
1210          "documentation":"<p>Optional metadata that you assign to a resource. You can use tags to categorize a resource in different ways, such as by purpose, owner, or environment.</p>"
1211        }
1212      }
1213    },
1214    "TargetList":{
1215      "type":"list",
1216      "member":{"shape":"String"},
1217      "max":10,
1218      "min":1
1219    },
1220    "TaskDescriptionString":{
1221      "type":"string",
1222      "max":128,
1223      "min":1,
1224      "pattern":"[A-Za-z0-9 _.,!#]*"
1225    },
1226    "TaskId":{
1227      "type":"string",
1228      "max":64,
1229      "min":1
1230    },
1231    "TaskState":{
1232      "type":"string",
1233      "enum":[
1234        "IN_PROGRESS",
1235        "CANCELED",
1236        "COMPLETED"
1237      ]
1238    },
1239    "TaskSummary":{
1240      "type":"structure",
1241      "required":["taskId"],
1242      "members":{
1243        "state":{
1244          "shape":"TaskState",
1245          "documentation":"<p>The state of the task assigned to one or many devices.</p>"
1246        },
1247        "tags":{
1248          "shape":"TagMap",
1249          "documentation":"<p>Optional metadata that you assign to a resource. You can use tags to categorize a resource in different ways, such as by purpose, owner, or environment.</p>"
1250        },
1251        "taskArn":{
1252          "shape":"String",
1253          "documentation":"<p>The Amazon Resource Name (ARN) of the task.</p>"
1254        },
1255        "taskId":{
1256          "shape":"TaskId",
1257          "documentation":"<p>The task ID.</p>"
1258        }
1259      },
1260      "documentation":"<p>Information about the task assigned to one or many devices.</p>"
1261    },
1262    "TaskSummaryList":{
1263      "type":"list",
1264      "member":{"shape":"TaskSummary"}
1265    },
1266    "ThrottlingException":{
1267      "type":"structure",
1268      "required":["message"],
1269      "members":{
1270        "message":{"shape":"String"}
1271      },
1272      "documentation":"<p>The request was denied due to request throttling.</p>",
1273      "error":{
1274        "httpStatusCode":429,
1275        "senderFault":true
1276      },
1277      "exception":true,
1278      "retryable":{"throttling":true}
1279    },
1280    "Timestamp":{"type":"timestamp"},
1281    "Unlock":{
1282      "type":"structure",
1283      "members":{
1284      },
1285      "documentation":"<p>A structure used to unlock a device.</p>"
1286    },
1287    "UnlockState":{
1288      "type":"string",
1289      "enum":[
1290        "UNLOCKED",
1291        "LOCKED",
1292        "UNLOCKING"
1293      ]
1294    },
1295    "UntagResourceInput":{
1296      "type":"structure",
1297      "required":[
1298        "resourceArn",
1299        "tagKeys"
1300      ],
1301      "members":{
1302        "resourceArn":{
1303          "shape":"String",
1304          "documentation":"<p>The Amazon Resource Name (ARN) of the device or task.</p>",
1305          "location":"uri",
1306          "locationName":"resourceArn"
1307        },
1308        "tagKeys":{
1309          "shape":"TagKeys",
1310          "documentation":"<p>Optional metadata that you assign to a resource. You can use tags to categorize a resource in different ways, such as by purpose, owner, or environment.</p>",
1311          "location":"querystring",
1312          "locationName":"tagKeys"
1313        }
1314      }
1315    },
1316    "ValidationException":{
1317      "type":"structure",
1318      "required":["message"],
1319      "members":{
1320        "message":{"shape":"String"}
1321      },
1322      "documentation":"<p>The input fails to satisfy the constraints specified by an Amazon Web Services service.</p>",
1323      "error":{
1324        "httpStatusCode":400,
1325        "senderFault":true
1326      },
1327      "exception":true
1328    }
1329  },
1330  "documentation":"<p>Amazon Web Services Snow Device Management documentation.</p>"
1331}
1332