• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"2018-05-10",
5    "endpointPrefix":"iotroborunner",
6    "jsonVersion":"1.1",
7    "protocol":"rest-json",
8    "serviceFullName":"AWS IoT RoboRunner",
9    "serviceId":"IoT RoboRunner",
10    "signatureVersion":"v4",
11    "signingName":"iotroborunner",
12    "uid":"iot-roborunner-2018-05-10"
13  },
14  "operations":{
15    "CreateDestination":{
16      "name":"CreateDestination",
17      "http":{
18        "method":"POST",
19        "requestUri":"/createDestination",
20        "responseCode":200
21      },
22      "input":{"shape":"CreateDestinationRequest"},
23      "output":{"shape":"CreateDestinationResponse"},
24      "errors":[
25        {"shape":"ConflictException"},
26        {"shape":"AccessDeniedException"},
27        {"shape":"ValidationException"},
28        {"shape":"ResourceNotFoundException"},
29        {"shape":"ThrottlingException"},
30        {"shape":"InternalServerException"},
31        {"shape":"ServiceQuotaExceededException"}
32      ],
33      "documentation":"<p>Grants permission to create a destination</p>",
34      "idempotent":true
35    },
36    "CreateSite":{
37      "name":"CreateSite",
38      "http":{
39        "method":"POST",
40        "requestUri":"/createSite",
41        "responseCode":200
42      },
43      "input":{"shape":"CreateSiteRequest"},
44      "output":{"shape":"CreateSiteResponse"},
45      "errors":[
46        {"shape":"ConflictException"},
47        {"shape":"AccessDeniedException"},
48        {"shape":"ValidationException"},
49        {"shape":"ThrottlingException"},
50        {"shape":"InternalServerException"},
51        {"shape":"ServiceQuotaExceededException"}
52      ],
53      "documentation":"<p>Grants permission to create a site</p>",
54      "idempotent":true
55    },
56    "CreateWorker":{
57      "name":"CreateWorker",
58      "http":{
59        "method":"POST",
60        "requestUri":"/createWorker",
61        "responseCode":200
62      },
63      "input":{"shape":"CreateWorkerRequest"},
64      "output":{"shape":"CreateWorkerResponse"},
65      "errors":[
66        {"shape":"ConflictException"},
67        {"shape":"AccessDeniedException"},
68        {"shape":"ValidationException"},
69        {"shape":"ResourceNotFoundException"},
70        {"shape":"ThrottlingException"},
71        {"shape":"InternalServerException"},
72        {"shape":"ServiceQuotaExceededException"}
73      ],
74      "documentation":"<p>Grants permission to create a worker</p>",
75      "idempotent":true
76    },
77    "CreateWorkerFleet":{
78      "name":"CreateWorkerFleet",
79      "http":{
80        "method":"POST",
81        "requestUri":"/createWorkerFleet",
82        "responseCode":200
83      },
84      "input":{"shape":"CreateWorkerFleetRequest"},
85      "output":{"shape":"CreateWorkerFleetResponse"},
86      "errors":[
87        {"shape":"ConflictException"},
88        {"shape":"AccessDeniedException"},
89        {"shape":"ValidationException"},
90        {"shape":"ResourceNotFoundException"},
91        {"shape":"ThrottlingException"},
92        {"shape":"InternalServerException"},
93        {"shape":"ServiceQuotaExceededException"}
94      ],
95      "documentation":"<p>Grants permission to create a worker fleet</p>",
96      "idempotent":true
97    },
98    "DeleteDestination":{
99      "name":"DeleteDestination",
100      "http":{
101        "method":"POST",
102        "requestUri":"/deleteDestination",
103        "responseCode":200
104      },
105      "input":{"shape":"DeleteDestinationRequest"},
106      "output":{"shape":"DeleteDestinationResponse"},
107      "errors":[
108        {"shape":"ConflictException"},
109        {"shape":"AccessDeniedException"},
110        {"shape":"ValidationException"},
111        {"shape":"ResourceNotFoundException"},
112        {"shape":"ThrottlingException"},
113        {"shape":"InternalServerException"}
114      ],
115      "documentation":"<p>Grants permission to delete a destination</p>"
116    },
117    "DeleteSite":{
118      "name":"DeleteSite",
119      "http":{
120        "method":"POST",
121        "requestUri":"/deleteSite",
122        "responseCode":200
123      },
124      "input":{"shape":"DeleteSiteRequest"},
125      "output":{"shape":"DeleteSiteResponse"},
126      "errors":[
127        {"shape":"ConflictException"},
128        {"shape":"AccessDeniedException"},
129        {"shape":"ValidationException"},
130        {"shape":"ResourceNotFoundException"},
131        {"shape":"ThrottlingException"},
132        {"shape":"InternalServerException"}
133      ],
134      "documentation":"<p>Grants permission to delete a site</p>"
135    },
136    "DeleteWorker":{
137      "name":"DeleteWorker",
138      "http":{
139        "method":"POST",
140        "requestUri":"/deleteWorker",
141        "responseCode":200
142      },
143      "input":{"shape":"DeleteWorkerRequest"},
144      "output":{"shape":"DeleteWorkerResponse"},
145      "errors":[
146        {"shape":"ConflictException"},
147        {"shape":"AccessDeniedException"},
148        {"shape":"ValidationException"},
149        {"shape":"ResourceNotFoundException"},
150        {"shape":"ThrottlingException"},
151        {"shape":"InternalServerException"}
152      ],
153      "documentation":"<p>Grants permission to delete a worker</p>"
154    },
155    "DeleteWorkerFleet":{
156      "name":"DeleteWorkerFleet",
157      "http":{
158        "method":"POST",
159        "requestUri":"/deleteWorkerFleet",
160        "responseCode":200
161      },
162      "input":{"shape":"DeleteWorkerFleetRequest"},
163      "output":{"shape":"DeleteWorkerFleetResponse"},
164      "errors":[
165        {"shape":"ConflictException"},
166        {"shape":"AccessDeniedException"},
167        {"shape":"ValidationException"},
168        {"shape":"ResourceNotFoundException"},
169        {"shape":"ThrottlingException"},
170        {"shape":"InternalServerException"}
171      ],
172      "documentation":"<p>Grants permission to delete a worker fleet</p>"
173    },
174    "GetDestination":{
175      "name":"GetDestination",
176      "http":{
177        "method":"GET",
178        "requestUri":"/getDestination",
179        "responseCode":200
180      },
181      "input":{"shape":"GetDestinationRequest"},
182      "output":{"shape":"GetDestinationResponse"},
183      "errors":[
184        {"shape":"AccessDeniedException"},
185        {"shape":"ValidationException"},
186        {"shape":"ResourceNotFoundException"},
187        {"shape":"ThrottlingException"},
188        {"shape":"InternalServerException"}
189      ],
190      "documentation":"<p>Grants permission to get a destination</p>"
191    },
192    "GetSite":{
193      "name":"GetSite",
194      "http":{
195        "method":"GET",
196        "requestUri":"/getSite",
197        "responseCode":200
198      },
199      "input":{"shape":"GetSiteRequest"},
200      "output":{"shape":"GetSiteResponse"},
201      "errors":[
202        {"shape":"AccessDeniedException"},
203        {"shape":"ValidationException"},
204        {"shape":"ResourceNotFoundException"},
205        {"shape":"ThrottlingException"},
206        {"shape":"InternalServerException"}
207      ],
208      "documentation":"<p>Grants permission to get a site</p>"
209    },
210    "GetWorker":{
211      "name":"GetWorker",
212      "http":{
213        "method":"GET",
214        "requestUri":"/getWorker",
215        "responseCode":200
216      },
217      "input":{"shape":"GetWorkerRequest"},
218      "output":{"shape":"GetWorkerResponse"},
219      "errors":[
220        {"shape":"AccessDeniedException"},
221        {"shape":"ValidationException"},
222        {"shape":"ResourceNotFoundException"},
223        {"shape":"ThrottlingException"},
224        {"shape":"InternalServerException"}
225      ],
226      "documentation":"<p>Grants permission to get a worker</p>"
227    },
228    "GetWorkerFleet":{
229      "name":"GetWorkerFleet",
230      "http":{
231        "method":"GET",
232        "requestUri":"/getWorkerFleet",
233        "responseCode":200
234      },
235      "input":{"shape":"GetWorkerFleetRequest"},
236      "output":{"shape":"GetWorkerFleetResponse"},
237      "errors":[
238        {"shape":"AccessDeniedException"},
239        {"shape":"ValidationException"},
240        {"shape":"ResourceNotFoundException"},
241        {"shape":"ThrottlingException"},
242        {"shape":"InternalServerException"}
243      ],
244      "documentation":"<p>Grants permission to get a worker fleet</p>"
245    },
246    "ListDestinations":{
247      "name":"ListDestinations",
248      "http":{
249        "method":"GET",
250        "requestUri":"/listDestinations",
251        "responseCode":200
252      },
253      "input":{"shape":"ListDestinationsRequest"},
254      "output":{"shape":"ListDestinationsResponse"},
255      "errors":[
256        {"shape":"AccessDeniedException"},
257        {"shape":"ValidationException"},
258        {"shape":"ResourceNotFoundException"},
259        {"shape":"ThrottlingException"},
260        {"shape":"InternalServerException"}
261      ],
262      "documentation":"<p>Grants permission to list destinations</p>"
263    },
264    "ListSites":{
265      "name":"ListSites",
266      "http":{
267        "method":"GET",
268        "requestUri":"/listSites",
269        "responseCode":200
270      },
271      "input":{"shape":"ListSitesRequest"},
272      "output":{"shape":"ListSitesResponse"},
273      "errors":[
274        {"shape":"AccessDeniedException"},
275        {"shape":"ValidationException"},
276        {"shape":"ThrottlingException"},
277        {"shape":"InternalServerException"}
278      ],
279      "documentation":"<p>Grants permission to list sites</p>"
280    },
281    "ListWorkerFleets":{
282      "name":"ListWorkerFleets",
283      "http":{
284        "method":"GET",
285        "requestUri":"/listWorkerFleets",
286        "responseCode":200
287      },
288      "input":{"shape":"ListWorkerFleetsRequest"},
289      "output":{"shape":"ListWorkerFleetsResponse"},
290      "errors":[
291        {"shape":"AccessDeniedException"},
292        {"shape":"ValidationException"},
293        {"shape":"ResourceNotFoundException"},
294        {"shape":"ThrottlingException"},
295        {"shape":"InternalServerException"}
296      ],
297      "documentation":"<p>Grants permission to list worker fleets</p>"
298    },
299    "ListWorkers":{
300      "name":"ListWorkers",
301      "http":{
302        "method":"GET",
303        "requestUri":"/listWorkers",
304        "responseCode":200
305      },
306      "input":{"shape":"ListWorkersRequest"},
307      "output":{"shape":"ListWorkersResponse"},
308      "errors":[
309        {"shape":"AccessDeniedException"},
310        {"shape":"ValidationException"},
311        {"shape":"ResourceNotFoundException"},
312        {"shape":"ThrottlingException"},
313        {"shape":"InternalServerException"}
314      ],
315      "documentation":"<p>Grants permission to list workers</p>"
316    },
317    "UpdateDestination":{
318      "name":"UpdateDestination",
319      "http":{
320        "method":"POST",
321        "requestUri":"/updateDestination",
322        "responseCode":200
323      },
324      "input":{"shape":"UpdateDestinationRequest"},
325      "output":{"shape":"UpdateDestinationResponse"},
326      "errors":[
327        {"shape":"AccessDeniedException"},
328        {"shape":"ValidationException"},
329        {"shape":"ResourceNotFoundException"},
330        {"shape":"ThrottlingException"},
331        {"shape":"InternalServerException"}
332      ],
333      "documentation":"<p>Grants permission to update a destination</p>"
334    },
335    "UpdateSite":{
336      "name":"UpdateSite",
337      "http":{
338        "method":"POST",
339        "requestUri":"/updateSite",
340        "responseCode":200
341      },
342      "input":{"shape":"UpdateSiteRequest"},
343      "output":{"shape":"UpdateSiteResponse"},
344      "errors":[
345        {"shape":"AccessDeniedException"},
346        {"shape":"ValidationException"},
347        {"shape":"ResourceNotFoundException"},
348        {"shape":"ThrottlingException"},
349        {"shape":"InternalServerException"}
350      ],
351      "documentation":"<p>Grants permission to update a site</p>"
352    },
353    "UpdateWorker":{
354      "name":"UpdateWorker",
355      "http":{
356        "method":"POST",
357        "requestUri":"/updateWorker",
358        "responseCode":200
359      },
360      "input":{"shape":"UpdateWorkerRequest"},
361      "output":{"shape":"UpdateWorkerResponse"},
362      "errors":[
363        {"shape":"AccessDeniedException"},
364        {"shape":"ValidationException"},
365        {"shape":"ResourceNotFoundException"},
366        {"shape":"ThrottlingException"},
367        {"shape":"InternalServerException"}
368      ],
369      "documentation":"<p>Grants permission to update a worker</p>"
370    },
371    "UpdateWorkerFleet":{
372      "name":"UpdateWorkerFleet",
373      "http":{
374        "method":"POST",
375        "requestUri":"/updateWorkerFleet",
376        "responseCode":200
377      },
378      "input":{"shape":"UpdateWorkerFleetRequest"},
379      "output":{"shape":"UpdateWorkerFleetResponse"},
380      "errors":[
381        {"shape":"AccessDeniedException"},
382        {"shape":"ValidationException"},
383        {"shape":"ResourceNotFoundException"},
384        {"shape":"ThrottlingException"},
385        {"shape":"InternalServerException"}
386      ],
387      "documentation":"<p>Grants permission to update a worker fleet</p>"
388    }
389  },
390  "shapes":{
391    "AccessDeniedException":{
392      "type":"structure",
393      "members":{
394        "message":{"shape":"String"}
395      },
396      "documentation":"<p>User does not have sufficient access to perform this action.</p>",
397      "error":{
398        "httpStatusCode":403,
399        "senderFault":true
400      },
401      "exception":true,
402      "retryable":{"throttling":false}
403    },
404    "CartesianCoordinates":{
405      "type":"structure",
406      "required":[
407        "x",
408        "y"
409      ],
410      "members":{
411        "x":{
412          "shape":"Double",
413          "documentation":"<p>X coordinate.</p>"
414        },
415        "y":{
416          "shape":"Double",
417          "documentation":"<p>Y coordinate.</p>"
418        },
419        "z":{
420          "shape":"Double",
421          "documentation":"<p>Z coordinate.</p>"
422        }
423      },
424      "documentation":"<p>Cartesian coordinates in 3D space relative to the RoboRunner origin.</p>"
425    },
426    "ConflictException":{
427      "type":"structure",
428      "members":{
429        "message":{"shape":"String"}
430      },
431      "documentation":"<p>Exception thrown if a resource in a create request already exists.</p>",
432      "error":{
433        "httpStatusCode":409,
434        "senderFault":true
435      },
436      "exception":true
437    },
438    "CreateDestinationRequest":{
439      "type":"structure",
440      "required":[
441        "name",
442        "site"
443      ],
444      "members":{
445        "clientToken":{
446          "shape":"IdempotencyToken",
447          "idempotencyToken":true
448        },
449        "name":{"shape":"Name"},
450        "site":{"shape":"SiteGenericIdentifier"},
451        "state":{
452          "shape":"DestinationState",
453          "documentation":"<p>The state of the destination. Default used if not specified.</p>"
454        },
455        "additionalFixedProperties":{"shape":"DestinationAdditionalFixedProperties"}
456      }
457    },
458    "CreateDestinationResponse":{
459      "type":"structure",
460      "required":[
461        "arn",
462        "id",
463        "createdAt",
464        "updatedAt",
465        "state"
466      ],
467      "members":{
468        "arn":{"shape":"DestinationArn"},
469        "id":{"shape":"DestinationId"},
470        "createdAt":{"shape":"CreatedAtTimestamp"},
471        "updatedAt":{"shape":"UpdatedAtTimestamp"},
472        "state":{"shape":"DestinationState"}
473      }
474    },
475    "CreateSiteRequest":{
476      "type":"structure",
477      "required":[
478        "name",
479        "countryCode"
480      ],
481      "members":{
482        "clientToken":{
483          "shape":"IdempotencyToken",
484          "idempotencyToken":true
485        },
486        "name":{"shape":"Name"},
487        "countryCode":{"shape":"SiteCountryCode"},
488        "description":{"shape":"SiteDescription"}
489      }
490    },
491    "CreateSiteResponse":{
492      "type":"structure",
493      "required":[
494        "arn",
495        "id",
496        "createdAt",
497        "updatedAt"
498      ],
499      "members":{
500        "arn":{"shape":"SiteArn"},
501        "id":{"shape":"SiteId"},
502        "createdAt":{"shape":"CreatedAtTimestamp"},
503        "updatedAt":{"shape":"UpdatedAtTimestamp"}
504      }
505    },
506    "CreateWorkerFleetRequest":{
507      "type":"structure",
508      "required":[
509        "name",
510        "site"
511      ],
512      "members":{
513        "clientToken":{
514          "shape":"IdempotencyToken",
515          "idempotencyToken":true
516        },
517        "name":{"shape":"Name"},
518        "site":{"shape":"SiteGenericIdentifier"},
519        "additionalFixedProperties":{"shape":"WorkerFleetAdditionalFixedProperties"}
520      }
521    },
522    "CreateWorkerFleetResponse":{
523      "type":"structure",
524      "required":[
525        "arn",
526        "id",
527        "createdAt",
528        "updatedAt"
529      ],
530      "members":{
531        "arn":{"shape":"WorkerFleetArn"},
532        "id":{"shape":"WorkerFleetId"},
533        "createdAt":{"shape":"CreatedAtTimestamp"},
534        "updatedAt":{"shape":"UpdatedAtTimestamp"}
535      }
536    },
537    "CreateWorkerRequest":{
538      "type":"structure",
539      "required":[
540        "name",
541        "fleet"
542      ],
543      "members":{
544        "clientToken":{
545          "shape":"IdempotencyToken",
546          "idempotencyToken":true
547        },
548        "name":{"shape":"Name"},
549        "fleet":{"shape":"WorkerFleetGenericIdentifier"},
550        "additionalTransientProperties":{"shape":"WorkerAdditionalTransientPropertiesJson"},
551        "additionalFixedProperties":{"shape":"WorkerAdditionalFixedPropertiesJson"},
552        "vendorProperties":{"shape":"VendorProperties"},
553        "position":{"shape":"PositionCoordinates"},
554        "orientation":{"shape":"Orientation"}
555      }
556    },
557    "CreateWorkerResponse":{
558      "type":"structure",
559      "required":[
560        "arn",
561        "id",
562        "createdAt",
563        "updatedAt",
564        "site"
565      ],
566      "members":{
567        "arn":{"shape":"WorkerArn"},
568        "id":{"shape":"WorkerId"},
569        "createdAt":{"shape":"CreatedAtTimestamp"},
570        "updatedAt":{"shape":"UpdatedAtTimestamp"},
571        "site":{"shape":"SiteArn"}
572      }
573    },
574    "CreatedAtTimestamp":{
575      "type":"timestamp",
576      "documentation":"<p>Timestamp at which the resource was created.</p>"
577    },
578    "DeleteDestinationRequest":{
579      "type":"structure",
580      "required":["id"],
581      "members":{
582        "id":{"shape":"DestinationGenericIdentifier"}
583      }
584    },
585    "DeleteDestinationResponse":{
586      "type":"structure",
587      "members":{
588      }
589    },
590    "DeleteSiteRequest":{
591      "type":"structure",
592      "required":["id"],
593      "members":{
594        "id":{"shape":"SiteGenericIdentifier"}
595      }
596    },
597    "DeleteSiteResponse":{
598      "type":"structure",
599      "members":{
600      }
601    },
602    "DeleteWorkerFleetRequest":{
603      "type":"structure",
604      "required":["id"],
605      "members":{
606        "id":{"shape":"WorkerFleetGenericIdentifier"}
607      }
608    },
609    "DeleteWorkerFleetResponse":{
610      "type":"structure",
611      "members":{
612      }
613    },
614    "DeleteWorkerRequest":{
615      "type":"structure",
616      "required":["id"],
617      "members":{
618        "id":{"shape":"WorkerGenericIdentifier"}
619      }
620    },
621    "DeleteWorkerResponse":{
622      "type":"structure",
623      "members":{
624      }
625    },
626    "Destination":{
627      "type":"structure",
628      "required":[
629        "arn",
630        "id",
631        "name",
632        "site",
633        "createdAt",
634        "updatedAt",
635        "state"
636      ],
637      "members":{
638        "arn":{"shape":"DestinationArn"},
639        "id":{"shape":"DestinationId"},
640        "name":{"shape":"Name"},
641        "site":{"shape":"SiteArn"},
642        "createdAt":{"shape":"CreatedAtTimestamp"},
643        "updatedAt":{"shape":"UpdatedAtTimestamp"},
644        "state":{"shape":"DestinationState"},
645        "additionalFixedProperties":{"shape":"DestinationAdditionalFixedProperties"}
646      },
647      "documentation":"<p>Area within a facility where work can be performed.</p>"
648    },
649    "DestinationAdditionalFixedProperties":{
650      "type":"string",
651      "documentation":"<p>JSON document containing additional fixed properties regarding the destination</p>",
652      "max":131072,
653      "min":1
654    },
655    "DestinationArn":{
656      "type":"string",
657      "documentation":"<p>Destination ARN.</p>",
658      "max":1011,
659      "min":1,
660      "pattern":"arn:aws:iotroborunner:[\\w-]+:\\w+:destination/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$|^arn:aws:iotroborunner:[\\w-]+:\\w+:site/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/destination/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
661    },
662    "DestinationGenericIdentifier":{
663      "type":"string",
664      "documentation":"<p>Destination ARN.</p>",
665      "max":1011,
666      "min":1,
667      "pattern":"arn:aws:iotroborunner:[\\w-]+:\\w+:destination/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$|^arn:aws:iotroborunner:[\\w-]+:\\w+:site/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/destination/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
668    },
669    "DestinationId":{
670      "type":"string",
671      "documentation":"<p>Filters access by the destination's identifier</p>",
672      "max":255,
673      "min":1
674    },
675    "DestinationState":{
676      "type":"string",
677      "documentation":"<p>State of the destination.</p>",
678      "enum":[
679        "ENABLED",
680        "DISABLED",
681        "DECOMMISSIONED"
682      ]
683    },
684    "Destinations":{
685      "type":"list",
686      "member":{"shape":"Destination"},
687      "documentation":"<p>List of destinations.</p>"
688    },
689    "Double":{
690      "type":"double",
691      "box":true
692    },
693    "GetDestinationRequest":{
694      "type":"structure",
695      "required":["id"],
696      "members":{
697        "id":{
698          "shape":"DestinationGenericIdentifier",
699          "location":"querystring",
700          "locationName":"id"
701        }
702      }
703    },
704    "GetDestinationResponse":{
705      "type":"structure",
706      "required":[
707        "arn",
708        "id",
709        "name",
710        "site",
711        "createdAt",
712        "updatedAt",
713        "state"
714      ],
715      "members":{
716        "arn":{"shape":"DestinationArn"},
717        "id":{"shape":"DestinationId"},
718        "name":{"shape":"Name"},
719        "site":{"shape":"SiteArn"},
720        "createdAt":{"shape":"CreatedAtTimestamp"},
721        "updatedAt":{"shape":"UpdatedAtTimestamp"},
722        "state":{"shape":"DestinationState"},
723        "additionalFixedProperties":{"shape":"DestinationAdditionalFixedProperties"}
724      }
725    },
726    "GetSiteRequest":{
727      "type":"structure",
728      "required":["id"],
729      "members":{
730        "id":{
731          "shape":"SiteGenericIdentifier",
732          "location":"querystring",
733          "locationName":"id"
734        }
735      }
736    },
737    "GetSiteResponse":{
738      "type":"structure",
739      "required":[
740        "arn",
741        "id",
742        "name",
743        "countryCode",
744        "createdAt",
745        "updatedAt"
746      ],
747      "members":{
748        "arn":{"shape":"SiteArn"},
749        "id":{"shape":"SiteId"},
750        "name":{"shape":"Name"},
751        "countryCode":{"shape":"SiteCountryCode"},
752        "description":{"shape":"SiteDescription"},
753        "createdAt":{"shape":"CreatedAtTimestamp"},
754        "updatedAt":{"shape":"UpdatedAtTimestamp"}
755      }
756    },
757    "GetWorkerFleetRequest":{
758      "type":"structure",
759      "required":["id"],
760      "members":{
761        "id":{
762          "shape":"WorkerFleetGenericIdentifier",
763          "location":"querystring",
764          "locationName":"id"
765        }
766      }
767    },
768    "GetWorkerFleetResponse":{
769      "type":"structure",
770      "required":[
771        "id",
772        "arn",
773        "name",
774        "site",
775        "createdAt",
776        "updatedAt"
777      ],
778      "members":{
779        "id":{"shape":"WorkerFleetId"},
780        "arn":{"shape":"WorkerFleetArn"},
781        "name":{"shape":"Name"},
782        "site":{"shape":"SiteArn"},
783        "createdAt":{"shape":"CreatedAtTimestamp"},
784        "updatedAt":{"shape":"UpdatedAtTimestamp"},
785        "additionalFixedProperties":{"shape":"WorkerFleetAdditionalFixedProperties"}
786      }
787    },
788    "GetWorkerRequest":{
789      "type":"structure",
790      "required":["id"],
791      "members":{
792        "id":{
793          "shape":"WorkerGenericIdentifier",
794          "location":"querystring",
795          "locationName":"id"
796        }
797      }
798    },
799    "GetWorkerResponse":{
800      "type":"structure",
801      "required":[
802        "arn",
803        "id",
804        "fleet",
805        "site",
806        "createdAt",
807        "updatedAt",
808        "name"
809      ],
810      "members":{
811        "arn":{"shape":"WorkerArn"},
812        "id":{"shape":"WorkerId"},
813        "fleet":{"shape":"WorkerFleetArn"},
814        "site":{"shape":"SiteArn"},
815        "createdAt":{"shape":"CreatedAtTimestamp"},
816        "updatedAt":{"shape":"UpdatedAtTimestamp"},
817        "name":{"shape":"Name"},
818        "additionalTransientProperties":{"shape":"WorkerAdditionalTransientPropertiesJson"},
819        "additionalFixedProperties":{"shape":"WorkerAdditionalFixedPropertiesJson"},
820        "vendorProperties":{"shape":"VendorProperties"},
821        "position":{"shape":"PositionCoordinates"},
822        "orientation":{"shape":"Orientation"}
823      }
824    },
825    "IdempotencyToken":{
826      "type":"string",
827      "documentation":"<p>Token used for detecting replayed requests. Replayed requests will not be performed multiple times.</p>",
828      "max":64,
829      "min":1,
830      "pattern":"[!-~]*"
831    },
832    "InternalServerException":{
833      "type":"structure",
834      "members":{
835        "message":{"shape":"String"}
836      },
837      "documentation":"<p>Exception thrown if something goes wrong within the service.</p>",
838      "error":{"httpStatusCode":500},
839      "exception":true,
840      "fault":true
841    },
842    "ListDestinationsRequest":{
843      "type":"structure",
844      "required":["site"],
845      "members":{
846        "site":{
847          "shape":"SiteGenericIdentifier",
848          "location":"querystring",
849          "locationName":"site"
850        },
851        "maxResults":{
852          "shape":"PageSize",
853          "location":"querystring",
854          "locationName":"maxResults"
855        },
856        "nextToken":{
857          "shape":"PaginationToken",
858          "location":"querystring",
859          "locationName":"nextToken"
860        },
861        "state":{
862          "shape":"DestinationState",
863          "location":"querystring",
864          "locationName":"state"
865        }
866      }
867    },
868    "ListDestinationsResponse":{
869      "type":"structure",
870      "members":{
871        "nextToken":{"shape":"PaginationToken"},
872        "destinations":{"shape":"Destinations"}
873      }
874    },
875    "ListSitesPageSize":{
876      "type":"integer",
877      "documentation":"<p>Maximum number of results to retrieve in a single ListSites call.</p>",
878      "box":true,
879      "max":25,
880      "min":1
881    },
882    "ListSitesRequest":{
883      "type":"structure",
884      "members":{
885        "maxResults":{
886          "shape":"ListSitesPageSize",
887          "location":"querystring",
888          "locationName":"maxResults"
889        },
890        "nextToken":{
891          "shape":"PaginationToken",
892          "location":"querystring",
893          "locationName":"nextToken"
894        }
895      }
896    },
897    "ListSitesResponse":{
898      "type":"structure",
899      "members":{
900        "nextToken":{"shape":"PaginationToken"},
901        "sites":{"shape":"Sites"}
902      }
903    },
904    "ListWorkerFleetsPageSize":{
905      "type":"integer",
906      "documentation":"<p>Maximum number of results to retrieve in a single ListWorkerFleets call.</p>",
907      "box":true,
908      "max":25,
909      "min":1
910    },
911    "ListWorkerFleetsRequest":{
912      "type":"structure",
913      "required":["site"],
914      "members":{
915        "site":{
916          "shape":"SiteGenericIdentifier",
917          "location":"querystring",
918          "locationName":"site"
919        },
920        "maxResults":{
921          "shape":"ListWorkerFleetsPageSize",
922          "location":"querystring",
923          "locationName":"maxResults"
924        },
925        "nextToken":{
926          "shape":"PaginationToken",
927          "location":"querystring",
928          "locationName":"nextToken"
929        }
930      }
931    },
932    "ListWorkerFleetsResponse":{
933      "type":"structure",
934      "members":{
935        "nextToken":{"shape":"PaginationToken"},
936        "workerFleets":{"shape":"WorkerFleets"}
937      }
938    },
939    "ListWorkersPageSize":{
940      "type":"integer",
941      "documentation":"<p>Maximum number of results to retrieve in a single ListWorkers call.</p>",
942      "box":true,
943      "max":25,
944      "min":1
945    },
946    "ListWorkersRequest":{
947      "type":"structure",
948      "required":["site"],
949      "members":{
950        "site":{
951          "shape":"SiteGenericIdentifier",
952          "location":"querystring",
953          "locationName":"site"
954        },
955        "maxResults":{
956          "shape":"ListWorkersPageSize",
957          "location":"querystring",
958          "locationName":"maxResults"
959        },
960        "nextToken":{
961          "shape":"PaginationToken",
962          "location":"querystring",
963          "locationName":"nextToken"
964        },
965        "fleet":{
966          "shape":"WorkerFleetGenericIdentifier",
967          "location":"querystring",
968          "locationName":"fleet"
969        }
970      }
971    },
972    "ListWorkersResponse":{
973      "type":"structure",
974      "members":{
975        "nextToken":{"shape":"PaginationToken"},
976        "workers":{"shape":"Workers"}
977      }
978    },
979    "Name":{
980      "type":"string",
981      "documentation":"<p>Human friendly name of the resource.</p>",
982      "max":255,
983      "min":1
984    },
985    "Orientation":{
986      "type":"structure",
987      "members":{
988        "degrees":{
989          "shape":"OrientationDegreesDouble",
990          "documentation":"<p>Degrees, limited on [0, 360)</p>"
991        }
992      },
993      "documentation":"<p>Worker orientation measured in units clockwise from north.</p>",
994      "union":true
995    },
996    "OrientationDegreesDouble":{
997      "type":"double",
998      "box":true,
999      "max":360,
1000      "min":0
1001    },
1002    "PageSize":{
1003      "type":"integer",
1004      "documentation":"<p>Maximum number of results to retrieve in a single call.</p>",
1005      "box":true,
1006      "max":1000,
1007      "min":1
1008    },
1009    "PaginationToken":{
1010      "type":"string",
1011      "documentation":"<p>Pagination token returned when another page of data exists. Provide it in your next call to the API to receive the next page.</p>",
1012      "max":2048,
1013      "min":1,
1014      "pattern":".*[a-zA-Z0-9_.-/+=]*.*"
1015    },
1016    "PositionCoordinates":{
1017      "type":"structure",
1018      "members":{
1019        "cartesianCoordinates":{
1020          "shape":"CartesianCoordinates",
1021          "documentation":"<p>Cartesian coordinates.</p>"
1022        }
1023      },
1024      "documentation":"<p>Supported coordinates for worker position.</p>",
1025      "union":true
1026    },
1027    "ResourceNotFoundException":{
1028      "type":"structure",
1029      "members":{
1030        "message":{"shape":"String"}
1031      },
1032      "documentation":"<p>Exception thrown if a resource referenced in the request doesn't exist.</p>",
1033      "error":{
1034        "httpStatusCode":404,
1035        "senderFault":true
1036      },
1037      "exception":true
1038    },
1039    "ServiceQuotaExceededException":{
1040      "type":"structure",
1041      "members":{
1042        "message":{"shape":"String"}
1043      },
1044      "documentation":"<p>Exception thrown if the user's AWS account has reached a service limit and the operation cannot proceed.</p>",
1045      "error":{
1046        "httpStatusCode":402,
1047        "senderFault":true
1048      },
1049      "exception":true,
1050      "retryable":{"throttling":false}
1051    },
1052    "Site":{
1053      "type":"structure",
1054      "required":[
1055        "arn",
1056        "name",
1057        "countryCode",
1058        "createdAt"
1059      ],
1060      "members":{
1061        "arn":{"shape":"SiteArn"},
1062        "name":{
1063          "shape":"Name",
1064          "documentation":"<p>The name of the site. Mutable after creation and unique within a given account.</p>"
1065        },
1066        "countryCode":{"shape":"SiteCountryCode"},
1067        "createdAt":{"shape":"CreatedAtTimestamp"}
1068      },
1069      "documentation":"<p>Facility containing destinations, workers, activities, and tasks.</p>"
1070    },
1071    "SiteArn":{
1072      "type":"string",
1073      "documentation":"<p>Site ARN.</p>",
1074      "max":1011,
1075      "min":1,
1076      "pattern":"arn:aws:iotroborunner:[\\w-]+:\\w+:site/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
1077    },
1078    "SiteCountryCode":{
1079      "type":"string",
1080      "documentation":"<p>A valid ISO 3166-1 alpha-2 code for the country in which the site resides. e.g., US.</p>",
1081      "max":2,
1082      "min":2,
1083      "pattern":"[a-zA-Z]{2}"
1084    },
1085    "SiteDescription":{
1086      "type":"string",
1087      "documentation":"<p>A high-level description of the site.</p>",
1088      "max":140,
1089      "min":0
1090    },
1091    "SiteGenericIdentifier":{
1092      "type":"string",
1093      "documentation":"<p>Site ARN.</p>",
1094      "max":1011,
1095      "min":1,
1096      "pattern":"arn:aws:iotroborunner:[\\w-]+:\\w+:site/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
1097    },
1098    "SiteId":{
1099      "type":"string",
1100      "documentation":"<p>Filters access by the site's identifier</p>",
1101      "max":255,
1102      "min":1
1103    },
1104    "Sites":{
1105      "type":"list",
1106      "member":{"shape":"Site"},
1107      "documentation":"<p>List of facilities.</p>"
1108    },
1109    "String":{"type":"string"},
1110    "ThrottlingException":{
1111      "type":"structure",
1112      "members":{
1113        "message":{"shape":"String"}
1114      },
1115      "documentation":"<p>Exception thrown if the api has been called too quickly be the client.</p>",
1116      "error":{
1117        "httpStatusCode":429,
1118        "senderFault":true
1119      },
1120      "exception":true,
1121      "retryable":{"throttling":true}
1122    },
1123    "UpdateDestinationRequest":{
1124      "type":"structure",
1125      "required":["id"],
1126      "members":{
1127        "id":{"shape":"DestinationGenericIdentifier"},
1128        "name":{"shape":"Name"},
1129        "state":{"shape":"DestinationState"},
1130        "additionalFixedProperties":{"shape":"DestinationAdditionalFixedProperties"}
1131      }
1132    },
1133    "UpdateDestinationResponse":{
1134      "type":"structure",
1135      "required":[
1136        "arn",
1137        "id",
1138        "name",
1139        "updatedAt",
1140        "state"
1141      ],
1142      "members":{
1143        "arn":{"shape":"DestinationArn"},
1144        "id":{"shape":"DestinationId"},
1145        "name":{"shape":"Name"},
1146        "updatedAt":{"shape":"UpdatedAtTimestamp"},
1147        "state":{"shape":"DestinationState"},
1148        "additionalFixedProperties":{"shape":"DestinationAdditionalFixedProperties"}
1149      }
1150    },
1151    "UpdateSiteRequest":{
1152      "type":"structure",
1153      "required":["id"],
1154      "members":{
1155        "id":{"shape":"SiteGenericIdentifier"},
1156        "name":{"shape":"Name"},
1157        "countryCode":{"shape":"SiteCountryCode"},
1158        "description":{"shape":"SiteDescription"}
1159      }
1160    },
1161    "UpdateSiteResponse":{
1162      "type":"structure",
1163      "required":[
1164        "arn",
1165        "id",
1166        "name",
1167        "updatedAt"
1168      ],
1169      "members":{
1170        "arn":{"shape":"SiteArn"},
1171        "id":{"shape":"SiteId"},
1172        "name":{"shape":"Name"},
1173        "countryCode":{"shape":"SiteCountryCode"},
1174        "description":{"shape":"SiteDescription"},
1175        "updatedAt":{"shape":"UpdatedAtTimestamp"}
1176      }
1177    },
1178    "UpdateWorkerFleetRequest":{
1179      "type":"structure",
1180      "required":["id"],
1181      "members":{
1182        "id":{"shape":"WorkerFleetGenericIdentifier"},
1183        "name":{"shape":"Name"},
1184        "additionalFixedProperties":{"shape":"WorkerFleetAdditionalFixedProperties"}
1185      }
1186    },
1187    "UpdateWorkerFleetResponse":{
1188      "type":"structure",
1189      "required":[
1190        "arn",
1191        "id",
1192        "name",
1193        "updatedAt"
1194      ],
1195      "members":{
1196        "arn":{"shape":"WorkerFleetArn"},
1197        "id":{"shape":"WorkerFleetId"},
1198        "name":{"shape":"Name"},
1199        "updatedAt":{"shape":"UpdatedAtTimestamp"},
1200        "additionalFixedProperties":{"shape":"WorkerFleetAdditionalFixedProperties"}
1201      }
1202    },
1203    "UpdateWorkerRequest":{
1204      "type":"structure",
1205      "required":["id"],
1206      "members":{
1207        "id":{"shape":"WorkerGenericIdentifier"},
1208        "name":{"shape":"Name"},
1209        "additionalTransientProperties":{"shape":"WorkerAdditionalTransientPropertiesJson"},
1210        "additionalFixedProperties":{"shape":"WorkerAdditionalFixedPropertiesJson"},
1211        "vendorProperties":{"shape":"VendorProperties"},
1212        "position":{"shape":"PositionCoordinates"},
1213        "orientation":{"shape":"Orientation"}
1214      }
1215    },
1216    "UpdateWorkerResponse":{
1217      "type":"structure",
1218      "required":[
1219        "arn",
1220        "id",
1221        "fleet",
1222        "updatedAt",
1223        "name"
1224      ],
1225      "members":{
1226        "arn":{"shape":"WorkerArn"},
1227        "id":{"shape":"WorkerId"},
1228        "fleet":{"shape":"WorkerFleetArn"},
1229        "updatedAt":{"shape":"UpdatedAtTimestamp"},
1230        "name":{"shape":"Name"},
1231        "additionalTransientProperties":{"shape":"WorkerAdditionalTransientPropertiesJson"},
1232        "additionalFixedProperties":{"shape":"WorkerAdditionalFixedPropertiesJson"},
1233        "orientation":{"shape":"Orientation"},
1234        "vendorProperties":{"shape":"VendorProperties"},
1235        "position":{"shape":"PositionCoordinates"}
1236      }
1237    },
1238    "UpdatedAtTimestamp":{
1239      "type":"timestamp",
1240      "documentation":"<p>Timestamp at which the resource was last updated.</p>"
1241    },
1242    "ValidationException":{
1243      "type":"structure",
1244      "members":{
1245        "message":{"shape":"String"}
1246      },
1247      "documentation":"<p>Exception thrown if an invalid parameter is provided to an API.</p>",
1248      "error":{
1249        "httpStatusCode":400,
1250        "senderFault":true
1251      },
1252      "exception":true
1253    },
1254    "VendorAdditionalFixedPropertiesJson":{
1255      "type":"string",
1256      "documentation":"<p>JSON blob containing unstructured vendor properties that are fixed and won't change during regular operation.</p>",
1257      "max":131072,
1258      "min":1
1259    },
1260    "VendorAdditionalTransientPropertiesJson":{
1261      "type":"string",
1262      "documentation":"<p>JSON blob containing unstructured vendor properties that are transient and may change during regular operation.</p>",
1263      "max":131072,
1264      "min":1
1265    },
1266    "VendorProperties":{
1267      "type":"structure",
1268      "required":["vendorWorkerId"],
1269      "members":{
1270        "vendorWorkerId":{"shape":"VendorWorkerId"},
1271        "vendorWorkerIpAddress":{"shape":"VendorWorkerIpAddress"},
1272        "vendorAdditionalTransientProperties":{"shape":"VendorAdditionalTransientPropertiesJson"},
1273        "vendorAdditionalFixedProperties":{"shape":"VendorAdditionalFixedPropertiesJson"}
1274      },
1275      "documentation":"<p>Properties of the worker that are provided by the vendor FMS.</p>"
1276    },
1277    "VendorWorkerId":{
1278      "type":"string",
1279      "documentation":"<p>The worker ID defined by the vendor FMS.</p>",
1280      "max":255,
1281      "min":1
1282    },
1283    "VendorWorkerIpAddress":{
1284      "type":"string",
1285      "documentation":"<p>The worker IP address defined by the vendor FMS.</p>",
1286      "max":45,
1287      "min":1
1288    },
1289    "Worker":{
1290      "type":"structure",
1291      "required":[
1292        "arn",
1293        "id",
1294        "fleet",
1295        "createdAt",
1296        "updatedAt",
1297        "name",
1298        "site"
1299      ],
1300      "members":{
1301        "arn":{"shape":"WorkerArn"},
1302        "id":{"shape":"WorkerId"},
1303        "fleet":{"shape":"WorkerFleetArn"},
1304        "createdAt":{"shape":"CreatedAtTimestamp"},
1305        "updatedAt":{"shape":"UpdatedAtTimestamp"},
1306        "name":{"shape":"Name"},
1307        "site":{"shape":"SiteArn"},
1308        "additionalTransientProperties":{"shape":"WorkerAdditionalTransientPropertiesJson"},
1309        "additionalFixedProperties":{"shape":"WorkerAdditionalFixedPropertiesJson"},
1310        "vendorProperties":{"shape":"VendorProperties"},
1311        "position":{"shape":"PositionCoordinates"},
1312        "orientation":{"shape":"Orientation"}
1313      },
1314      "documentation":"<p>A unit capable of performing tasks.</p>"
1315    },
1316    "WorkerAdditionalFixedPropertiesJson":{
1317      "type":"string",
1318      "documentation":"<p>JSON blob containing unstructured worker properties that are fixed and won't change during regular operation.</p>",
1319      "max":131072,
1320      "min":1
1321    },
1322    "WorkerAdditionalTransientPropertiesJson":{
1323      "type":"string",
1324      "documentation":"<p>JSON blob containing unstructured worker properties that are transient and may change during regular operation.</p>",
1325      "max":131072,
1326      "min":1
1327    },
1328    "WorkerArn":{
1329      "type":"string",
1330      "documentation":"<p>Full ARN of the worker.</p>",
1331      "max":1011,
1332      "min":1,
1333      "pattern":"arn:aws:iotroborunner:[\\w-]+:\\w+:site/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/worker-fleet/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/worker/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
1334    },
1335    "WorkerFleet":{
1336      "type":"structure",
1337      "required":[
1338        "arn",
1339        "id",
1340        "name",
1341        "site",
1342        "createdAt",
1343        "updatedAt"
1344      ],
1345      "members":{
1346        "arn":{"shape":"WorkerFleetArn"},
1347        "id":{"shape":"WorkerFleetId"},
1348        "name":{"shape":"Name"},
1349        "site":{"shape":"SiteArn"},
1350        "createdAt":{"shape":"CreatedAtTimestamp"},
1351        "updatedAt":{"shape":"UpdatedAtTimestamp"},
1352        "additionalFixedProperties":{"shape":"WorkerFleetAdditionalFixedProperties"}
1353      },
1354      "documentation":"<p>A collection of workers organized within a facility.</p>"
1355    },
1356    "WorkerFleetAdditionalFixedProperties":{
1357      "type":"string",
1358      "documentation":"<p>JSON blob containing additional fixed properties regarding the worker fleet</p>",
1359      "max":131072,
1360      "min":1
1361    },
1362    "WorkerFleetArn":{
1363      "type":"string",
1364      "documentation":"<p>Full ARN of the worker fleet.</p>",
1365      "max":1011,
1366      "min":1,
1367      "pattern":"arn:aws:iotroborunner:[\\w-]+:\\w+:site/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/worker-fleet/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
1368    },
1369    "WorkerFleetGenericIdentifier":{
1370      "type":"string",
1371      "documentation":"<p>Full ARN of the worker fleet.</p>",
1372      "max":1011,
1373      "min":1,
1374      "pattern":"arn:aws:iotroborunner:[\\w-]+:\\w+:site/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/worker-fleet/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
1375    },
1376    "WorkerFleetId":{
1377      "type":"string",
1378      "documentation":"<p>Filters access by the worker fleet's identifier</p>",
1379      "max":255,
1380      "min":1
1381    },
1382    "WorkerFleets":{
1383      "type":"list",
1384      "member":{"shape":"WorkerFleet"},
1385      "documentation":"<p>List of worker fleets.</p>"
1386    },
1387    "WorkerGenericIdentifier":{
1388      "type":"string",
1389      "documentation":"<p>Full ARN of the worker.</p>",
1390      "max":1011,
1391      "min":1,
1392      "pattern":"arn:aws:iotroborunner:[\\w-]+:\\w+:site/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/worker-fleet/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/worker/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"
1393    },
1394    "WorkerId":{
1395      "type":"string",
1396      "documentation":"<p>Filters access by the workers identifier</p>",
1397      "max":255,
1398      "min":1
1399    },
1400    "Workers":{
1401      "type":"list",
1402      "member":{"shape":"Worker"},
1403      "documentation":"<p>List of workers.</p>"
1404    }
1405  },
1406  "documentation":"<p>An example service, deployed with the Octane Service creator, which will echo the string</p>"
1407}
1408