1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"2018-11-05",
5    "endpointPrefix":"transfer",
6    "jsonVersion":"1.1",
7    "protocol":"json",
8    "serviceAbbreviation":"AWS Transfer",
9    "serviceFullName":"AWS Transfer Family",
10    "serviceId":"Transfer",
11    "signatureVersion":"v4",
12    "signingName":"transfer",
13    "targetPrefix":"TransferService",
14    "uid":"transfer-2018-11-05"
15  },
16  "operations":{
17    "CreateAccess":{
18      "name":"CreateAccess",
19      "http":{
20        "method":"POST",
21        "requestUri":"/"
22      },
23      "input":{"shape":"CreateAccessRequest"},
24      "output":{"shape":"CreateAccessResponse"},
25      "errors":[
26        {"shape":"ServiceUnavailableException"},
27        {"shape":"InternalServiceError"},
28        {"shape":"InvalidRequestException"},
29        {"shape":"ResourceExistsException"},
30        {"shape":"ResourceNotFoundException"}
31      ]
32    },
33    "CreateServer":{
34      "name":"CreateServer",
35      "http":{
36        "method":"POST",
37        "requestUri":"/"
38      },
39      "input":{"shape":"CreateServerRequest"},
40      "output":{"shape":"CreateServerResponse"},
41      "errors":[
42        {"shape":"AccessDeniedException"},
43        {"shape":"ServiceUnavailableException"},
44        {"shape":"InternalServiceError"},
45        {"shape":"InvalidRequestException"},
46        {"shape":"ResourceExistsException"},
47        {"shape":"ResourceNotFoundException"},
48        {"shape":"ThrottlingException"}
49      ]
50    },
51    "CreateUser":{
52      "name":"CreateUser",
53      "http":{
54        "method":"POST",
55        "requestUri":"/"
56      },
57      "input":{"shape":"CreateUserRequest"},
58      "output":{"shape":"CreateUserResponse"},
59      "errors":[
60        {"shape":"ServiceUnavailableException"},
61        {"shape":"InternalServiceError"},
62        {"shape":"InvalidRequestException"},
63        {"shape":"ResourceExistsException"},
64        {"shape":"ResourceNotFoundException"}
65      ]
66    },
67    "CreateWorkflow":{
68      "name":"CreateWorkflow",
69      "http":{
70        "method":"POST",
71        "requestUri":"/"
72      },
73      "input":{"shape":"CreateWorkflowRequest"},
74      "output":{"shape":"CreateWorkflowResponse"},
75      "errors":[
76        {"shape":"AccessDeniedException"},
77        {"shape":"ServiceUnavailableException"},
78        {"shape":"InternalServiceError"},
79        {"shape":"InvalidRequestException"},
80        {"shape":"ResourceExistsException"},
81        {"shape":"ThrottlingException"}
82      ]
83    },
84    "DeleteAccess":{
85      "name":"DeleteAccess",
86      "http":{
87        "method":"POST",
88        "requestUri":"/"
89      },
90      "input":{"shape":"DeleteAccessRequest"},
91      "errors":[
92        {"shape":"ServiceUnavailableException"},
93        {"shape":"InternalServiceError"},
94        {"shape":"InvalidRequestException"},
95        {"shape":"ResourceNotFoundException"}
96      ]
97    },
98    "DeleteServer":{
99      "name":"DeleteServer",
100      "http":{
101        "method":"POST",
102        "requestUri":"/"
103      },
104      "input":{"shape":"DeleteServerRequest"},
105      "errors":[
106        {"shape":"AccessDeniedException"},
107        {"shape":"ServiceUnavailableException"},
108        {"shape":"InternalServiceError"},
109        {"shape":"InvalidRequestException"},
110        {"shape":"ResourceNotFoundException"}
111      ]
112    },
113    "DeleteSshPublicKey":{
114      "name":"DeleteSshPublicKey",
115      "http":{
116        "method":"POST",
117        "requestUri":"/"
118      },
119      "input":{"shape":"DeleteSshPublicKeyRequest"},
120      "errors":[
121        {"shape":"ServiceUnavailableException"},
122        {"shape":"InternalServiceError"},
123        {"shape":"InvalidRequestException"},
124        {"shape":"ResourceNotFoundException"},
125        {"shape":"ThrottlingException"}
126      ]
127    },
128    "DeleteUser":{
129      "name":"DeleteUser",
130      "http":{
131        "method":"POST",
132        "requestUri":"/"
133      },
134      "input":{"shape":"DeleteUserRequest"},
135      "errors":[
136        {"shape":"ServiceUnavailableException"},
137        {"shape":"InternalServiceError"},
138        {"shape":"InvalidRequestException"},
139        {"shape":"ResourceNotFoundException"}
140      ]
141    },
142    "DeleteWorkflow":{
143      "name":"DeleteWorkflow",
144      "http":{
145        "method":"POST",
146        "requestUri":"/"
147      },
148      "input":{"shape":"DeleteWorkflowRequest"},
149      "errors":[
150        {"shape":"AccessDeniedException"},
151        {"shape":"ServiceUnavailableException"},
152        {"shape":"InternalServiceError"},
153        {"shape":"InvalidRequestException"},
154        {"shape":"ResourceNotFoundException"}
155      ]
156    },
157    "DescribeAccess":{
158      "name":"DescribeAccess",
159      "http":{
160        "method":"POST",
161        "requestUri":"/"
162      },
163      "input":{"shape":"DescribeAccessRequest"},
164      "output":{"shape":"DescribeAccessResponse"},
165      "errors":[
166        {"shape":"ServiceUnavailableException"},
167        {"shape":"InternalServiceError"},
168        {"shape":"InvalidRequestException"},
169        {"shape":"ResourceNotFoundException"}
170      ]
171    },
172    "DescribeExecution":{
173      "name":"DescribeExecution",
174      "http":{
175        "method":"POST",
176        "requestUri":"/"
177      },
178      "input":{"shape":"DescribeExecutionRequest"},
179      "output":{"shape":"DescribeExecutionResponse"},
180      "errors":[
181        {"shape":"ServiceUnavailableException"},
182        {"shape":"InternalServiceError"},
183        {"shape":"InvalidRequestException"},
184        {"shape":"ResourceNotFoundException"}
185      ]
186    },
187    "DescribeSecurityPolicy":{
188      "name":"DescribeSecurityPolicy",
189      "http":{
190        "method":"POST",
191        "requestUri":"/"
192      },
193      "input":{"shape":"DescribeSecurityPolicyRequest"},
194      "output":{"shape":"DescribeSecurityPolicyResponse"},
195      "errors":[
196        {"shape":"ServiceUnavailableException"},
197        {"shape":"InternalServiceError"},
198        {"shape":"InvalidRequestException"},
199        {"shape":"ResourceNotFoundException"}
200      ]
201    },
202    "DescribeServer":{
203      "name":"DescribeServer",
204      "http":{
205        "method":"POST",
206        "requestUri":"/"
207      },
208      "input":{"shape":"DescribeServerRequest"},
209      "output":{"shape":"DescribeServerResponse"},
210      "errors":[
211        {"shape":"ServiceUnavailableException"},
212        {"shape":"InternalServiceError"},
213        {"shape":"InvalidRequestException"},
214        {"shape":"ResourceNotFoundException"}
215      ]
216    },
217    "DescribeUser":{
218      "name":"DescribeUser",
219      "http":{
220        "method":"POST",
221        "requestUri":"/"
222      },
223      "input":{"shape":"DescribeUserRequest"},
224      "output":{"shape":"DescribeUserResponse"},
225      "errors":[
226        {"shape":"ServiceUnavailableException"},
227        {"shape":"InternalServiceError"},
228        {"shape":"InvalidRequestException"},
229        {"shape":"ResourceNotFoundException"}
230      ]
231    },
232    "DescribeWorkflow":{
233      "name":"DescribeWorkflow",
234      "http":{
235        "method":"POST",
236        "requestUri":"/"
237      },
238      "input":{"shape":"DescribeWorkflowRequest"},
239      "output":{"shape":"DescribeWorkflowResponse"},
240      "errors":[
241        {"shape":"ServiceUnavailableException"},
242        {"shape":"InternalServiceError"},
243        {"shape":"InvalidRequestException"},
244        {"shape":"ResourceNotFoundException"}
245      ]
246    },
247    "ImportSshPublicKey":{
248      "name":"ImportSshPublicKey",
249      "http":{
250        "method":"POST",
251        "requestUri":"/"
252      },
253      "input":{"shape":"ImportSshPublicKeyRequest"},
254      "output":{"shape":"ImportSshPublicKeyResponse"},
255      "errors":[
256        {"shape":"ServiceUnavailableException"},
257        {"shape":"InternalServiceError"},
258        {"shape":"InvalidRequestException"},
259        {"shape":"ResourceExistsException"},
260        {"shape":"ResourceNotFoundException"},
261        {"shape":"ThrottlingException"}
262      ]
263    },
264    "ListAccesses":{
265      "name":"ListAccesses",
266      "http":{
267        "method":"POST",
268        "requestUri":"/"
269      },
270      "input":{"shape":"ListAccessesRequest"},
271      "output":{"shape":"ListAccessesResponse"},
272      "errors":[
273        {"shape":"ServiceUnavailableException"},
274        {"shape":"InternalServiceError"},
275        {"shape":"InvalidNextTokenException"},
276        {"shape":"InvalidRequestException"},
277        {"shape":"ResourceNotFoundException"}
278      ]
279    },
280    "ListExecutions":{
281      "name":"ListExecutions",
282      "http":{
283        "method":"POST",
284        "requestUri":"/"
285      },
286      "input":{"shape":"ListExecutionsRequest"},
287      "output":{"shape":"ListExecutionsResponse"},
288      "errors":[
289        {"shape":"ServiceUnavailableException"},
290        {"shape":"InternalServiceError"},
291        {"shape":"InvalidNextTokenException"},
292        {"shape":"InvalidRequestException"},
293        {"shape":"ResourceNotFoundException"}
294      ]
295    },
296    "ListSecurityPolicies":{
297      "name":"ListSecurityPolicies",
298      "http":{
299        "method":"POST",
300        "requestUri":"/"
301      },
302      "input":{"shape":"ListSecurityPoliciesRequest"},
303      "output":{"shape":"ListSecurityPoliciesResponse"},
304      "errors":[
305        {"shape":"ServiceUnavailableException"},
306        {"shape":"InternalServiceError"},
307        {"shape":"InvalidNextTokenException"},
308        {"shape":"InvalidRequestException"}
309      ]
310    },
311    "ListServers":{
312      "name":"ListServers",
313      "http":{
314        "method":"POST",
315        "requestUri":"/"
316      },
317      "input":{"shape":"ListServersRequest"},
318      "output":{"shape":"ListServersResponse"},
319      "errors":[
320        {"shape":"ServiceUnavailableException"},
321        {"shape":"InternalServiceError"},
322        {"shape":"InvalidNextTokenException"},
323        {"shape":"InvalidRequestException"}
324      ]
325    },
326    "ListTagsForResource":{
327      "name":"ListTagsForResource",
328      "http":{
329        "method":"POST",
330        "requestUri":"/"
331      },
332      "input":{"shape":"ListTagsForResourceRequest"},
333      "output":{"shape":"ListTagsForResourceResponse"},
334      "errors":[
335        {"shape":"ServiceUnavailableException"},
336        {"shape":"InternalServiceError"},
337        {"shape":"InvalidNextTokenException"},
338        {"shape":"InvalidRequestException"}
339      ]
340    },
341    "ListUsers":{
342      "name":"ListUsers",
343      "http":{
344        "method":"POST",
345        "requestUri":"/"
346      },
347      "input":{"shape":"ListUsersRequest"},
348      "output":{"shape":"ListUsersResponse"},
349      "errors":[
350        {"shape":"ServiceUnavailableException"},
351        {"shape":"InternalServiceError"},
352        {"shape":"InvalidNextTokenException"},
353        {"shape":"InvalidRequestException"},
354        {"shape":"ResourceNotFoundException"}
355      ]
356    },
357    "ListWorkflows":{
358      "name":"ListWorkflows",
359      "http":{
360        "method":"POST",
361        "requestUri":"/"
362      },
363      "input":{"shape":"ListWorkflowsRequest"},
364      "output":{"shape":"ListWorkflowsResponse"},
365      "errors":[
366        {"shape":"ServiceUnavailableException"},
367        {"shape":"InternalServiceError"},
368        {"shape":"InvalidNextTokenException"},
369        {"shape":"InvalidRequestException"}
370      ]
371    },
372    "SendWorkflowStepState":{
373      "name":"SendWorkflowStepState",
374      "http":{
375        "method":"POST",
376        "requestUri":"/"
377      },
378      "input":{"shape":"SendWorkflowStepStateRequest"},
379      "output":{"shape":"SendWorkflowStepStateResponse"},
380      "errors":[
381        {"shape":"AccessDeniedException"},
382        {"shape":"ServiceUnavailableException"},
383        {"shape":"InternalServiceError"},
384        {"shape":"InvalidRequestException"},
385        {"shape":"ResourceNotFoundException"},
386        {"shape":"ThrottlingException"}
387      ]
388    },
389    "StartServer":{
390      "name":"StartServer",
391      "http":{
392        "method":"POST",
393        "requestUri":"/"
394      },
395      "input":{"shape":"StartServerRequest"},
396      "errors":[
397        {"shape":"ServiceUnavailableException"},
398        {"shape":"InternalServiceError"},
399        {"shape":"InvalidRequestException"},
400        {"shape":"ResourceNotFoundException"},
401        {"shape":"ThrottlingException"}
402      ]
403    },
404    "StopServer":{
405      "name":"StopServer",
406      "http":{
407        "method":"POST",
408        "requestUri":"/"
409      },
410      "input":{"shape":"StopServerRequest"},
411      "errors":[
412        {"shape":"ServiceUnavailableException"},
413        {"shape":"InternalServiceError"},
414        {"shape":"InvalidRequestException"},
415        {"shape":"ResourceNotFoundException"},
416        {"shape":"ThrottlingException"}
417      ]
418    },
419    "TagResource":{
420      "name":"TagResource",
421      "http":{
422        "method":"POST",
423        "requestUri":"/"
424      },
425      "input":{"shape":"TagResourceRequest"},
426      "errors":[
427        {"shape":"ServiceUnavailableException"},
428        {"shape":"InternalServiceError"},
429        {"shape":"InvalidRequestException"},
430        {"shape":"ResourceNotFoundException"}
431      ]
432    },
433    "TestIdentityProvider":{
434      "name":"TestIdentityProvider",
435      "http":{
436        "method":"POST",
437        "requestUri":"/"
438      },
439      "input":{"shape":"TestIdentityProviderRequest"},
440      "output":{"shape":"TestIdentityProviderResponse"},
441      "errors":[
442        {"shape":"ServiceUnavailableException"},
443        {"shape":"InternalServiceError"},
444        {"shape":"InvalidRequestException"},
445        {"shape":"ResourceNotFoundException"}
446      ]
447    },
448    "UntagResource":{
449      "name":"UntagResource",
450      "http":{
451        "method":"POST",
452        "requestUri":"/"
453      },
454      "input":{"shape":"UntagResourceRequest"},
455      "errors":[
456        {"shape":"ServiceUnavailableException"},
457        {"shape":"InternalServiceError"},
458        {"shape":"InvalidRequestException"},
459        {"shape":"ResourceNotFoundException"}
460      ]
461    },
462    "UpdateAccess":{
463      "name":"UpdateAccess",
464      "http":{
465        "method":"POST",
466        "requestUri":"/"
467      },
468      "input":{"shape":"UpdateAccessRequest"},
469      "output":{"shape":"UpdateAccessResponse"},
470      "errors":[
471        {"shape":"ServiceUnavailableException"},
472        {"shape":"InternalServiceError"},
473        {"shape":"InvalidRequestException"},
474        {"shape":"ResourceExistsException"},
475        {"shape":"ResourceNotFoundException"}
476      ]
477    },
478    "UpdateServer":{
479      "name":"UpdateServer",
480      "http":{
481        "method":"POST",
482        "requestUri":"/"
483      },
484      "input":{"shape":"UpdateServerRequest"},
485      "output":{"shape":"UpdateServerResponse"},
486      "errors":[
487        {"shape":"AccessDeniedException"},
488        {"shape":"ServiceUnavailableException"},
489        {"shape":"ConflictException"},
490        {"shape":"InternalServiceError"},
491        {"shape":"InvalidRequestException"},
492        {"shape":"ResourceExistsException"},
493        {"shape":"ResourceNotFoundException"},
494        {"shape":"ThrottlingException"}
495      ]
496    },
497    "UpdateUser":{
498      "name":"UpdateUser",
499      "http":{
500        "method":"POST",
501        "requestUri":"/"
502      },
503      "input":{"shape":"UpdateUserRequest"},
504      "output":{"shape":"UpdateUserResponse"},
505      "errors":[
506        {"shape":"ServiceUnavailableException"},
507        {"shape":"InternalServiceError"},
508        {"shape":"InvalidRequestException"},
509        {"shape":"ResourceNotFoundException"},
510        {"shape":"ThrottlingException"}
511      ]
512    }
513  },
514  "shapes":{
515    "AccessDeniedException":{
516      "type":"structure",
517      "members":{
518        "Message":{"shape":"ServiceErrorMessage"}
519      },
520      "exception":true,
521      "synthetic":true
522    },
523    "AddressAllocationId":{"type":"string"},
524    "AddressAllocationIds":{
525      "type":"list",
526      "member":{"shape":"AddressAllocationId"}
527    },
528    "Arn":{
529      "type":"string",
530      "max":1600,
531      "min":20,
532      "pattern":"arn:.*"
533    },
534    "CallbackToken":{
535      "type":"string",
536      "max":64,
537      "min":1,
538      "pattern":"\\w+"
539    },
540    "Certificate":{
541      "type":"string",
542      "max":1600
543    },
544    "ConflictException":{
545      "type":"structure",
546      "required":["Message"],
547      "members":{
548        "Message":{"shape":"Message"}
549      },
550      "exception":true
551    },
552    "CopyStepDetails":{
553      "type":"structure",
554      "members":{
555        "Name":{"shape":"WorkflowStepName"},
556        "DestinationFileLocation":{"shape":"InputFileLocation"},
557        "OverwriteExisting":{"shape":"OverwriteExisting"}
558      }
559    },
560    "CreateAccessRequest":{
561      "type":"structure",
562      "required":[
563        "Role",
564        "ServerId",
565        "ExternalId"
566      ],
567      "members":{
568        "HomeDirectory":{"shape":"HomeDirectory"},
569        "HomeDirectoryType":{"shape":"HomeDirectoryType"},
570        "HomeDirectoryMappings":{"shape":"HomeDirectoryMappings"},
571        "Policy":{"shape":"Policy"},
572        "PosixProfile":{"shape":"PosixProfile"},
573        "Role":{"shape":"Role"},
574        "ServerId":{"shape":"ServerId"},
575        "ExternalId":{"shape":"ExternalId"}
576      }
577    },
578    "CreateAccessResponse":{
579      "type":"structure",
580      "required":[
581        "ServerId",
582        "ExternalId"
583      ],
584      "members":{
585        "ServerId":{"shape":"ServerId"},
586        "ExternalId":{"shape":"ExternalId"}
587      }
588    },
589    "CreateServerRequest":{
590      "type":"structure",
591      "members":{
592        "Certificate":{"shape":"Certificate"},
593        "Domain":{"shape":"Domain"},
594        "EndpointDetails":{"shape":"EndpointDetails"},
595        "EndpointType":{"shape":"EndpointType"},
596        "HostKey":{"shape":"HostKey"},
597        "IdentityProviderDetails":{"shape":"IdentityProviderDetails"},
598        "IdentityProviderType":{"shape":"IdentityProviderType"},
599        "LoggingRole":{"shape":"Role"},
600        "Protocols":{"shape":"Protocols"},
601        "SecurityPolicyName":{"shape":"SecurityPolicyName"},
602        "Tags":{"shape":"Tags"},
603        "WorkflowDetails":{"shape":"WorkflowDetails"}
604      }
605    },
606    "CreateServerResponse":{
607      "type":"structure",
608      "required":["ServerId"],
609      "members":{
610        "ServerId":{"shape":"ServerId"}
611      }
612    },
613    "CreateUserRequest":{
614      "type":"structure",
615      "required":[
616        "Role",
617        "ServerId",
618        "UserName"
619      ],
620      "members":{
621        "HomeDirectory":{"shape":"HomeDirectory"},
622        "HomeDirectoryType":{"shape":"HomeDirectoryType"},
623        "HomeDirectoryMappings":{"shape":"HomeDirectoryMappings"},
624        "Policy":{"shape":"Policy"},
625        "PosixProfile":{"shape":"PosixProfile"},
626        "Role":{"shape":"Role"},
627        "ServerId":{"shape":"ServerId"},
628        "SshPublicKeyBody":{"shape":"SshPublicKeyBody"},
629        "Tags":{"shape":"Tags"},
630        "UserName":{"shape":"UserName"}
631      }
632    },
633    "CreateUserResponse":{
634      "type":"structure",
635      "required":[
636        "ServerId",
637        "UserName"
638      ],
639      "members":{
640        "ServerId":{"shape":"ServerId"},
641        "UserName":{"shape":"UserName"}
642      }
643    },
644    "CreateWorkflowRequest":{
645      "type":"structure",
646      "required":["Steps"],
647      "members":{
648        "Description":{"shape":"WorkflowDescription"},
649        "Steps":{"shape":"WorkflowSteps"},
650        "OnExceptionSteps":{"shape":"WorkflowSteps"},
651        "Tags":{"shape":"Tags"}
652      }
653    },
654    "CreateWorkflowResponse":{
655      "type":"structure",
656      "required":["WorkflowId"],
657      "members":{
658        "WorkflowId":{"shape":"WorkflowId"}
659      }
660    },
661    "CustomStepDetails":{
662      "type":"structure",
663      "members":{
664        "Name":{"shape":"WorkflowStepName"},
665        "Target":{"shape":"CustomStepTarget"},
666        "TimeoutSeconds":{"shape":"CustomStepTimeoutSeconds"}
667      }
668    },
669    "CustomStepStatus":{
670      "type":"string",
671      "enum":[
672        "SUCCESS",
673        "FAILURE"
674      ]
675    },
676    "CustomStepTarget":{
677      "type":"string",
678      "max":170,
679      "pattern":"arn:[a-z-]+:lambda:.*$"
680    },
681    "CustomStepTimeoutSeconds":{
682      "type":"integer",
683      "max":1800,
684      "min":1
685    },
686    "DateImported":{"type":"timestamp"},
687    "DeleteAccessRequest":{
688      "type":"structure",
689      "required":[
690        "ServerId",
691        "ExternalId"
692      ],
693      "members":{
694        "ServerId":{"shape":"ServerId"},
695        "ExternalId":{"shape":"ExternalId"}
696      }
697    },
698    "DeleteServerRequest":{
699      "type":"structure",
700      "required":["ServerId"],
701      "members":{
702        "ServerId":{"shape":"ServerId"}
703      }
704    },
705    "DeleteSshPublicKeyRequest":{
706      "type":"structure",
707      "required":[
708        "ServerId",
709        "SshPublicKeyId",
710        "UserName"
711      ],
712      "members":{
713        "ServerId":{"shape":"ServerId"},
714        "SshPublicKeyId":{"shape":"SshPublicKeyId"},
715        "UserName":{"shape":"UserName"}
716      }
717    },
718    "DeleteStepDetails":{
719      "type":"structure",
720      "members":{
721        "Name":{"shape":"WorkflowStepName"}
722      }
723    },
724    "DeleteUserRequest":{
725      "type":"structure",
726      "required":[
727        "ServerId",
728        "UserName"
729      ],
730      "members":{
731        "ServerId":{"shape":"ServerId"},
732        "UserName":{"shape":"UserName"}
733      }
734    },
735    "DeleteWorkflowRequest":{
736      "type":"structure",
737      "required":["WorkflowId"],
738      "members":{
739        "WorkflowId":{"shape":"WorkflowId"}
740      }
741    },
742    "DescribeAccessRequest":{
743      "type":"structure",
744      "required":[
745        "ServerId",
746        "ExternalId"
747      ],
748      "members":{
749        "ServerId":{"shape":"ServerId"},
750        "ExternalId":{"shape":"ExternalId"}
751      }
752    },
753    "DescribeAccessResponse":{
754      "type":"structure",
755      "required":[
756        "ServerId",
757        "Access"
758      ],
759      "members":{
760        "ServerId":{"shape":"ServerId"},
761        "Access":{"shape":"DescribedAccess"}
762      }
763    },
764    "DescribeExecutionRequest":{
765      "type":"structure",
766      "required":[
767        "ExecutionId",
768        "WorkflowId"
769      ],
770      "members":{
771        "ExecutionId":{"shape":"ExecutionId"},
772        "WorkflowId":{"shape":"WorkflowId"}
773      }
774    },
775    "DescribeExecutionResponse":{
776      "type":"structure",
777      "required":[
778        "WorkflowId",
779        "Execution"
780      ],
781      "members":{
782        "WorkflowId":{"shape":"WorkflowId"},
783        "Execution":{"shape":"DescribedExecution"}
784      }
785    },
786    "DescribeSecurityPolicyRequest":{
787      "type":"structure",
788      "required":["SecurityPolicyName"],
789      "members":{
790        "SecurityPolicyName":{"shape":"SecurityPolicyName"}
791      }
792    },
793    "DescribeSecurityPolicyResponse":{
794      "type":"structure",
795      "required":["SecurityPolicy"],
796      "members":{
797        "SecurityPolicy":{"shape":"DescribedSecurityPolicy"}
798      }
799    },
800    "DescribeServerRequest":{
801      "type":"structure",
802      "required":["ServerId"],
803      "members":{
804        "ServerId":{"shape":"ServerId"}
805      }
806    },
807    "DescribeServerResponse":{
808      "type":"structure",
809      "required":["Server"],
810      "members":{
811        "Server":{"shape":"DescribedServer"}
812      }
813    },
814    "DescribeUserRequest":{
815      "type":"structure",
816      "required":[
817        "ServerId",
818        "UserName"
819      ],
820      "members":{
821        "ServerId":{"shape":"ServerId"},
822        "UserName":{"shape":"UserName"}
823      }
824    },
825    "DescribeUserResponse":{
826      "type":"structure",
827      "required":[
828        "ServerId",
829        "User"
830      ],
831      "members":{
832        "ServerId":{"shape":"ServerId"},
833        "User":{"shape":"DescribedUser"}
834      }
835    },
836    "DescribeWorkflowRequest":{
837      "type":"structure",
838      "required":["WorkflowId"],
839      "members":{
840        "WorkflowId":{"shape":"WorkflowId"}
841      }
842    },
843    "DescribeWorkflowResponse":{
844      "type":"structure",
845      "required":["Workflow"],
846      "members":{
847        "Workflow":{"shape":"DescribedWorkflow"}
848      }
849    },
850    "DescribedAccess":{
851      "type":"structure",
852      "members":{
853        "HomeDirectory":{"shape":"HomeDirectory"},
854        "HomeDirectoryMappings":{"shape":"HomeDirectoryMappings"},
855        "HomeDirectoryType":{"shape":"HomeDirectoryType"},
856        "Policy":{"shape":"Policy"},
857        "PosixProfile":{"shape":"PosixProfile"},
858        "Role":{"shape":"Role"},
859        "ExternalId":{"shape":"ExternalId"}
860      }
861    },
862    "DescribedExecution":{
863      "type":"structure",
864      "members":{
865        "ExecutionId":{"shape":"ExecutionId"},
866        "InitialFileLocation":{"shape":"FileLocation"},
867        "ServiceMetadata":{"shape":"ServiceMetadata"},
868        "ExecutionRole":{"shape":"Role"},
869        "LoggingConfiguration":{"shape":"LoggingConfiguration"},
870        "PosixProfile":{"shape":"PosixProfile"},
871        "Status":{"shape":"ExecutionStatus"},
872        "Results":{"shape":"ExecutionResults"}
873      }
874    },
875    "DescribedSecurityPolicy":{
876      "type":"structure",
877      "required":["SecurityPolicyName"],
878      "members":{
879        "Fips":{"shape":"Fips"},
880        "SecurityPolicyName":{"shape":"SecurityPolicyName"},
881        "SshCiphers":{"shape":"SecurityPolicyOptions"},
882        "SshKexs":{"shape":"SecurityPolicyOptions"},
883        "SshMacs":{"shape":"SecurityPolicyOptions"},
884        "TlsCiphers":{"shape":"SecurityPolicyOptions"}
885      }
886    },
887    "DescribedServer":{
888      "type":"structure",
889      "required":["Arn"],
890      "members":{
891        "Arn":{"shape":"Arn"},
892        "Certificate":{"shape":"Certificate"},
893        "ProtocolDetails":{"shape":"ProtocolDetails"},
894        "Domain":{"shape":"Domain"},
895        "EndpointDetails":{"shape":"EndpointDetails"},
896        "EndpointType":{"shape":"EndpointType"},
897        "HostKeyFingerprint":{"shape":"HostKeyFingerprint"},
898        "IdentityProviderDetails":{"shape":"IdentityProviderDetails"},
899        "IdentityProviderType":{"shape":"IdentityProviderType"},
900        "LoggingRole":{"shape":"Role"},
901        "Protocols":{"shape":"Protocols"},
902        "SecurityPolicyName":{"shape":"SecurityPolicyName"},
903        "ServerId":{"shape":"ServerId"},
904        "State":{"shape":"State"},
905        "Tags":{"shape":"Tags"},
906        "UserCount":{"shape":"UserCount"},
907        "WorkflowDetails":{"shape":"WorkflowDetails"}
908      }
909    },
910    "DescribedUser":{
911      "type":"structure",
912      "required":["Arn"],
913      "members":{
914        "Arn":{"shape":"Arn"},
915        "HomeDirectory":{"shape":"HomeDirectory"},
916        "HomeDirectoryMappings":{"shape":"HomeDirectoryMappings"},
917        "HomeDirectoryType":{"shape":"HomeDirectoryType"},
918        "Policy":{"shape":"Policy"},
919        "PosixProfile":{"shape":"PosixProfile"},
920        "Role":{"shape":"Role"},
921        "SshPublicKeys":{"shape":"SshPublicKeys"},
922        "Tags":{"shape":"Tags"},
923        "UserName":{"shape":"UserName"}
924      }
925    },
926    "DescribedWorkflow":{
927      "type":"structure",
928      "required":["Arn"],
929      "members":{
930        "Arn":{"shape":"Arn"},
931        "Description":{"shape":"WorkflowDescription"},
932        "Steps":{"shape":"WorkflowSteps"},
933        "OnExceptionSteps":{"shape":"WorkflowSteps"},
934        "WorkflowId":{"shape":"WorkflowId"},
935        "Tags":{"shape":"Tags"}
936      }
937    },
938    "DirectoryId":{
939      "type":"string",
940      "max":12,
941      "min":12,
942      "pattern":"^d-[0-9a-f]{10}$"
943    },
944    "Domain":{
945      "type":"string",
946      "enum":[
947        "S3",
948        "EFS"
949      ]
950    },
951    "EfsFileLocation":{
952      "type":"structure",
953      "members":{
954        "FileSystemId":{"shape":"EfsFileSystemId"},
955        "Path":{"shape":"EfsPath"}
956      }
957    },
958    "EfsFileSystemId":{
959      "type":"string",
960      "max":128,
961      "pattern":"^(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:(access-point/fsap|file-system/fs)-[0-9a-f]{8,40}|fs(ap)?-[0-9a-f]{8,40})$"
962    },
963    "EfsPath":{
964      "type":"string",
965      "max":100,
966      "min":1,
967      "pattern":"^(\\/|(\\/(?!\\.)+[^$#<>;`|&?{}^*/\\n]+){1,4})$"
968    },
969    "EndpointDetails":{
970      "type":"structure",
971      "members":{
972        "AddressAllocationIds":{"shape":"AddressAllocationIds"},
973        "SubnetIds":{"shape":"SubnetIds"},
974        "VpcEndpointId":{"shape":"VpcEndpointId"},
975        "VpcId":{"shape":"VpcId"},
976        "SecurityGroupIds":{"shape":"SecurityGroupIds"}
977      }
978    },
979    "EndpointType":{
980      "type":"string",
981      "enum":[
982        "PUBLIC",
983        "VPC",
984        "VPC_ENDPOINT"
985      ]
986    },
987    "ExecutionError":{
988      "type":"structure",
989      "required":[
990        "Type",
991        "Message"
992      ],
993      "members":{
994        "Type":{"shape":"ExecutionErrorType"},
995        "Message":{"shape":"ExecutionErrorMessage"}
996      }
997    },
998    "ExecutionErrorMessage":{"type":"string"},
999    "ExecutionErrorType":{
1000      "type":"string",
1001      "enum":["PERMISSION_DENIED"]
1002    },
1003    "ExecutionId":{
1004      "type":"string",
1005      "max":36,
1006      "min":36,
1007      "pattern":"^[0-9a-fA-F]{8}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{12}$"
1008    },
1009    "ExecutionResults":{
1010      "type":"structure",
1011      "members":{
1012        "Steps":{"shape":"ExecutionStepResults"},
1013        "OnExceptionSteps":{"shape":"ExecutionStepResults"}
1014      }
1015    },
1016    "ExecutionStatus":{
1017      "type":"string",
1018      "enum":[
1019        "IN_PROGRESS",
1020        "COMPLETED",
1021        "EXCEPTION",
1022        "HANDLING_EXCEPTION"
1023      ]
1024    },
1025    "ExecutionStepResult":{
1026      "type":"structure",
1027      "members":{
1028        "StepType":{"shape":"WorkflowStepType"},
1029        "Outputs":{"shape":"StepResultOutputsJson"},
1030        "Error":{"shape":"ExecutionError"}
1031      }
1032    },
1033    "ExecutionStepResults":{
1034      "type":"list",
1035      "member":{"shape":"ExecutionStepResult"},
1036      "max":50,
1037      "min":1
1038    },
1039    "ExternalId":{
1040      "type":"string",
1041      "max":256,
1042      "min":1,
1043      "pattern":"^S-1-[\\d-]+$"
1044    },
1045    "FileLocation":{
1046      "type":"structure",
1047      "members":{
1048        "S3FileLocation":{"shape":"S3FileLocation"},
1049        "EfsFileLocation":{"shape":"EfsFileLocation"}
1050      }
1051    },
1052    "Fips":{"type":"boolean"},
1053    "HomeDirectory":{
1054      "type":"string",
1055      "max":1024,
1056      "pattern":"^$|/.*"
1057    },
1058    "HomeDirectoryMapEntry":{
1059      "type":"structure",
1060      "required":[
1061        "Entry",
1062        "Target"
1063      ],
1064      "members":{
1065        "Entry":{"shape":"MapEntry"},
1066        "Target":{"shape":"MapTarget"}
1067      }
1068    },
1069    "HomeDirectoryMappings":{
1070      "type":"list",
1071      "member":{"shape":"HomeDirectoryMapEntry"},
1072      "max":50,
1073      "min":1
1074    },
1075    "HomeDirectoryType":{
1076      "type":"string",
1077      "enum":[
1078        "PATH",
1079        "LOGICAL"
1080      ]
1081    },
1082    "HostKey":{
1083      "type":"string",
1084      "max":4096,
1085      "sensitive":true
1086    },
1087    "HostKeyFingerprint":{"type":"string"},
1088    "IdentityProviderDetails":{
1089      "type":"structure",
1090      "members":{
1091        "Url":{"shape":"Url"},
1092        "InvocationRole":{"shape":"Role"},
1093        "DirectoryId":{"shape":"DirectoryId"}
1094      }
1095    },
1096    "IdentityProviderType":{
1097      "type":"string",
1098      "enum":[
1099        "SERVICE_MANAGED",
1100        "API_GATEWAY",
1101        "AWS_DIRECTORY_SERVICE"
1102      ]
1103    },
1104    "ImportSshPublicKeyRequest":{
1105      "type":"structure",
1106      "required":[
1107        "ServerId",
1108        "SshPublicKeyBody",
1109        "UserName"
1110      ],
1111      "members":{
1112        "ServerId":{"shape":"ServerId"},
1113        "SshPublicKeyBody":{"shape":"SshPublicKeyBody"},
1114        "UserName":{"shape":"UserName"}
1115      }
1116    },
1117    "ImportSshPublicKeyResponse":{
1118      "type":"structure",
1119      "required":[
1120        "ServerId",
1121        "SshPublicKeyId",
1122        "UserName"
1123      ],
1124      "members":{
1125        "ServerId":{"shape":"ServerId"},
1126        "SshPublicKeyId":{"shape":"SshPublicKeyId"},
1127        "UserName":{"shape":"UserName"}
1128      }
1129    },
1130    "InputFileLocation":{
1131      "type":"structure",
1132      "members":{
1133        "S3FileLocation":{"shape":"S3InputFileLocation"},
1134        "EfsFileLocation":{"shape":"EfsFileLocation"}
1135      }
1136    },
1137    "InternalServiceError":{
1138      "type":"structure",
1139      "required":["Message"],
1140      "members":{
1141        "Message":{"shape":"Message"}
1142      },
1143      "exception":true,
1144      "fault":true
1145    },
1146    "InvalidNextTokenException":{
1147      "type":"structure",
1148      "required":["Message"],
1149      "members":{
1150        "Message":{"shape":"Message"}
1151      },
1152      "exception":true
1153    },
1154    "InvalidRequestException":{
1155      "type":"structure",
1156      "required":["Message"],
1157      "members":{
1158        "Message":{"shape":"Message"}
1159      },
1160      "exception":true
1161    },
1162    "ListAccessesRequest":{
1163      "type":"structure",
1164      "required":["ServerId"],
1165      "members":{
1166        "MaxResults":{"shape":"MaxResults"},
1167        "NextToken":{"shape":"NextToken"},
1168        "ServerId":{"shape":"ServerId"}
1169      }
1170    },
1171    "ListAccessesResponse":{
1172      "type":"structure",
1173      "required":[
1174        "ServerId",
1175        "Accesses"
1176      ],
1177      "members":{
1178        "NextToken":{"shape":"NextToken"},
1179        "ServerId":{"shape":"ServerId"},
1180        "Accesses":{"shape":"ListedAccesses"}
1181      }
1182    },
1183    "ListExecutionsRequest":{
1184      "type":"structure",
1185      "required":["WorkflowId"],
1186      "members":{
1187        "MaxResults":{"shape":"MaxResults"},
1188        "NextToken":{"shape":"NextToken"},
1189        "WorkflowId":{"shape":"WorkflowId"}
1190      }
1191    },
1192    "ListExecutionsResponse":{
1193      "type":"structure",
1194      "required":[
1195        "WorkflowId",
1196        "Executions"
1197      ],
1198      "members":{
1199        "NextToken":{"shape":"NextToken"},
1200        "WorkflowId":{"shape":"WorkflowId"},
1201        "Executions":{"shape":"ListedExecutions"}
1202      }
1203    },
1204    "ListSecurityPoliciesRequest":{
1205      "type":"structure",
1206      "members":{
1207        "MaxResults":{"shape":"MaxResults"},
1208        "NextToken":{"shape":"NextToken"}
1209      }
1210    },
1211    "ListSecurityPoliciesResponse":{
1212      "type":"structure",
1213      "required":["SecurityPolicyNames"],
1214      "members":{
1215        "NextToken":{"shape":"NextToken"},
1216        "SecurityPolicyNames":{"shape":"SecurityPolicyNames"}
1217      }
1218    },
1219    "ListServersRequest":{
1220      "type":"structure",
1221      "members":{
1222        "MaxResults":{"shape":"MaxResults"},
1223        "NextToken":{"shape":"NextToken"}
1224      }
1225    },
1226    "ListServersResponse":{
1227      "type":"structure",
1228      "required":["Servers"],
1229      "members":{
1230        "NextToken":{"shape":"NextToken"},
1231        "Servers":{"shape":"ListedServers"}
1232      }
1233    },
1234    "ListTagsForResourceRequest":{
1235      "type":"structure",
1236      "required":["Arn"],
1237      "members":{
1238        "Arn":{"shape":"Arn"},
1239        "MaxResults":{"shape":"MaxResults"},
1240        "NextToken":{"shape":"NextToken"}
1241      }
1242    },
1243    "ListTagsForResourceResponse":{
1244      "type":"structure",
1245      "members":{
1246        "Arn":{"shape":"Arn"},
1247        "NextToken":{"shape":"NextToken"},
1248        "Tags":{"shape":"Tags"}
1249      }
1250    },
1251    "ListUsersRequest":{
1252      "type":"structure",
1253      "required":["ServerId"],
1254      "members":{
1255        "MaxResults":{"shape":"MaxResults"},
1256        "NextToken":{"shape":"NextToken"},
1257        "ServerId":{"shape":"ServerId"}
1258      }
1259    },
1260    "ListUsersResponse":{
1261      "type":"structure",
1262      "required":[
1263        "ServerId",
1264        "Users"
1265      ],
1266      "members":{
1267        "NextToken":{"shape":"NextToken"},
1268        "ServerId":{"shape":"ServerId"},
1269        "Users":{"shape":"ListedUsers"}
1270      }
1271    },
1272    "ListWorkflowsRequest":{
1273      "type":"structure",
1274      "members":{
1275        "MaxResults":{"shape":"MaxResults"},
1276        "NextToken":{"shape":"NextToken"}
1277      }
1278    },
1279    "ListWorkflowsResponse":{
1280      "type":"structure",
1281      "required":["Workflows"],
1282      "members":{
1283        "NextToken":{"shape":"NextToken"},
1284        "Workflows":{"shape":"ListedWorkflows"}
1285      }
1286    },
1287    "ListedAccess":{
1288      "type":"structure",
1289      "members":{
1290        "HomeDirectory":{"shape":"HomeDirectory"},
1291        "HomeDirectoryType":{"shape":"HomeDirectoryType"},
1292        "Role":{"shape":"Role"},
1293        "ExternalId":{"shape":"ExternalId"}
1294      }
1295    },
1296    "ListedAccesses":{
1297      "type":"list",
1298      "member":{"shape":"ListedAccess"}
1299    },
1300    "ListedExecution":{
1301      "type":"structure",
1302      "members":{
1303        "ExecutionId":{"shape":"ExecutionId"},
1304        "InitialFileLocation":{"shape":"FileLocation"},
1305        "ServiceMetadata":{"shape":"ServiceMetadata"},
1306        "Status":{"shape":"ExecutionStatus"}
1307      }
1308    },
1309    "ListedExecutions":{
1310      "type":"list",
1311      "member":{"shape":"ListedExecution"}
1312    },
1313    "ListedServer":{
1314      "type":"structure",
1315      "required":["Arn"],
1316      "members":{
1317        "Arn":{"shape":"Arn"},
1318        "Domain":{"shape":"Domain"},
1319        "IdentityProviderType":{"shape":"IdentityProviderType"},
1320        "EndpointType":{"shape":"EndpointType"},
1321        "LoggingRole":{"shape":"Role"},
1322        "ServerId":{"shape":"ServerId"},
1323        "State":{"shape":"State"},
1324        "UserCount":{"shape":"UserCount"}
1325      }
1326    },
1327    "ListedServers":{
1328      "type":"list",
1329      "member":{"shape":"ListedServer"}
1330    },
1331    "ListedUser":{
1332      "type":"structure",
1333      "required":["Arn"],
1334      "members":{
1335        "Arn":{"shape":"Arn"},
1336        "HomeDirectory":{"shape":"HomeDirectory"},
1337        "HomeDirectoryType":{"shape":"HomeDirectoryType"},
1338        "Role":{"shape":"Role"},
1339        "SshPublicKeyCount":{"shape":"SshPublicKeyCount"},
1340        "UserName":{"shape":"UserName"}
1341      }
1342    },
1343    "ListedUsers":{
1344      "type":"list",
1345      "member":{"shape":"ListedUser"}
1346    },
1347    "ListedWorkflow":{
1348      "type":"structure",
1349      "members":{
1350        "WorkflowId":{"shape":"WorkflowId"},
1351        "Description":{"shape":"WorkflowDescription"},
1352        "Arn":{"shape":"Arn"}
1353      }
1354    },
1355    "ListedWorkflows":{
1356      "type":"list",
1357      "member":{"shape":"ListedWorkflow"}
1358    },
1359    "LogGroupName":{
1360      "type":"string",
1361      "max":512,
1362      "min":1,
1363      "pattern":"[\\.\\-_/#A-Za-z0-9]*"
1364    },
1365    "LoggingConfiguration":{
1366      "type":"structure",
1367      "members":{
1368        "LoggingRole":{"shape":"Role"},
1369        "LogGroupName":{"shape":"LogGroupName"}
1370      }
1371    },
1372    "MapEntry":{
1373      "type":"string",
1374      "max":1024,
1375      "pattern":"^/.*"
1376    },
1377    "MapTarget":{
1378      "type":"string",
1379      "max":1024,
1380      "pattern":"^/.*"
1381    },
1382    "MaxResults":{
1383      "type":"integer",
1384      "max":1000,
1385      "min":1
1386    },
1387    "Message":{"type":"string"},
1388    "NextToken":{
1389      "type":"string",
1390      "max":6144,
1391      "min":1
1392    },
1393    "NullableRole":{
1394      "type":"string",
1395      "max":2048,
1396      "pattern":"^$|arn:.*role/.*"
1397    },
1398    "OnUploadWorkflowDetails":{
1399      "type":"list",
1400      "member":{"shape":"WorkflowDetail"},
1401      "max":1
1402    },
1403    "OverwriteExisting":{
1404      "type":"string",
1405      "enum":[
1406        "TRUE",
1407        "FALSE"
1408      ]
1409    },
1410    "PassiveIp":{
1411      "type":"string",
1412      "max":15
1413    },
1414    "Policy":{
1415      "type":"string",
1416      "max":2048
1417    },
1418    "PosixId":{
1419      "type":"long",
1420      "max":4294967295,
1421      "min":0
1422    },
1423    "PosixProfile":{
1424      "type":"structure",
1425      "required":[
1426        "Uid",
1427        "Gid"
1428      ],
1429      "members":{
1430        "Uid":{"shape":"PosixId"},
1431        "Gid":{"shape":"PosixId"},
1432        "SecondaryGids":{"shape":"SecondaryGids"}
1433      }
1434    },
1435    "Protocol":{
1436      "type":"string",
1437      "enum":[
1438        "SFTP",
1439        "FTP",
1440        "FTPS"
1441      ]
1442    },
1443    "ProtocolDetails":{
1444      "type":"structure",
1445      "members":{
1446        "PassiveIp":{"shape":"PassiveIp"}
1447      }
1448    },
1449    "Protocols":{
1450      "type":"list",
1451      "member":{"shape":"Protocol"},
1452      "max":3,
1453      "min":1
1454    },
1455    "Resource":{"type":"string"},
1456    "ResourceExistsException":{
1457      "type":"structure",
1458      "required":[
1459        "Message",
1460        "Resource",
1461        "ResourceType"
1462      ],
1463      "members":{
1464        "Message":{"shape":"Message"},
1465        "Resource":{"shape":"Resource"},
1466        "ResourceType":{"shape":"ResourceType"}
1467      },
1468      "exception":true
1469    },
1470    "ResourceNotFoundException":{
1471      "type":"structure",
1472      "required":[
1473        "Message",
1474        "Resource",
1475        "ResourceType"
1476      ],
1477      "members":{
1478        "Message":{"shape":"Message"},
1479        "Resource":{"shape":"Resource"},
1480        "ResourceType":{"shape":"ResourceType"}
1481      },
1482      "exception":true
1483    },
1484    "ResourceType":{"type":"string"},
1485    "Response":{"type":"string"},
1486    "RetryAfterSeconds":{"type":"string"},
1487    "Role":{
1488      "type":"string",
1489      "max":2048,
1490      "min":20,
1491      "pattern":"arn:.*role/.*"
1492    },
1493    "S3Bucket":{
1494      "type":"string",
1495      "max":63,
1496      "min":3,
1497      "pattern":"^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$"
1498    },
1499    "S3Etag":{
1500      "type":"string",
1501      "max":65536,
1502      "min":1,
1503      "pattern":"^.+$"
1504    },
1505    "S3FileLocation":{
1506      "type":"structure",
1507      "members":{
1508        "Bucket":{"shape":"S3Bucket"},
1509        "Key":{"shape":"S3Key"},
1510        "VersionId":{"shape":"S3VersionId"},
1511        "Etag":{"shape":"S3Etag"}
1512      }
1513    },
1514    "S3InputFileLocation":{
1515      "type":"structure",
1516      "members":{
1517        "Bucket":{"shape":"S3Bucket"},
1518        "Key":{"shape":"S3Key"}
1519      }
1520    },
1521    "S3Key":{
1522      "type":"string",
1523      "max":1024,
1524      "pattern":"[\\P{M}\\p{M}]*"
1525    },
1526    "S3Tag":{
1527      "type":"structure",
1528      "required":[
1529        "Key",
1530        "Value"
1531      ],
1532      "members":{
1533        "Key":{"shape":"S3TagKey"},
1534        "Value":{"shape":"S3TagValue"}
1535      }
1536    },
1537    "S3TagKey":{
1538      "type":"string",
1539      "max":128,
1540      "min":1,
1541      "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"
1542    },
1543    "S3TagValue":{
1544      "type":"string",
1545      "max":256,
1546      "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"
1547    },
1548    "S3Tags":{
1549      "type":"list",
1550      "member":{"shape":"S3Tag"},
1551      "max":10,
1552      "min":1
1553    },
1554    "S3VersionId":{
1555      "type":"string",
1556      "max":1024,
1557      "min":1,
1558      "pattern":"^.+$"
1559    },
1560    "SecondaryGids":{
1561      "type":"list",
1562      "member":{"shape":"PosixId"},
1563      "max":16,
1564      "min":0
1565    },
1566    "SecurityGroupId":{
1567      "type":"string",
1568      "max":20,
1569      "min":11,
1570      "pattern":"^sg-[0-9a-f]{8,17}$"
1571    },
1572    "SecurityGroupIds":{
1573      "type":"list",
1574      "member":{"shape":"SecurityGroupId"}
1575    },
1576    "SecurityPolicyName":{
1577      "type":"string",
1578      "max":100,
1579      "pattern":"TransferSecurityPolicy-.+"
1580    },
1581    "SecurityPolicyNames":{
1582      "type":"list",
1583      "member":{"shape":"SecurityPolicyName"}
1584    },
1585    "SecurityPolicyOption":{
1586      "type":"string",
1587      "max":50
1588    },
1589    "SecurityPolicyOptions":{
1590      "type":"list",
1591      "member":{"shape":"SecurityPolicyOption"}
1592    },
1593    "SendWorkflowStepStateRequest":{
1594      "type":"structure",
1595      "required":[
1596        "WorkflowId",
1597        "ExecutionId",
1598        "Token",
1599        "Status"
1600      ],
1601      "members":{
1602        "WorkflowId":{"shape":"WorkflowId"},
1603        "ExecutionId":{"shape":"ExecutionId"},
1604        "Token":{"shape":"CallbackToken"},
1605        "Status":{"shape":"CustomStepStatus"}
1606      }
1607    },
1608    "SendWorkflowStepStateResponse":{
1609      "type":"structure",
1610      "members":{
1611      }
1612    },
1613    "ServerId":{
1614      "type":"string",
1615      "max":19,
1616      "min":19,
1617      "pattern":"^s-([0-9a-f]{17})$"
1618    },
1619    "ServiceErrorMessage":{"type":"string"},
1620    "ServiceMetadata":{
1621      "type":"structure",
1622      "required":["UserDetails"],
1623      "members":{
1624        "UserDetails":{"shape":"UserDetails"}
1625      }
1626    },
1627    "ServiceUnavailableException":{
1628      "type":"structure",
1629      "members":{
1630        "Message":{"shape":"ServiceErrorMessage"}
1631      },
1632      "exception":true,
1633      "fault":true,
1634      "synthetic":true
1635    },
1636    "SessionId":{
1637      "type":"string",
1638      "max":32,
1639      "min":3,
1640      "pattern":"^[\\w-]*$"
1641    },
1642    "SourceIp":{
1643      "type":"string",
1644      "max":32,
1645      "pattern":"^\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}$"
1646    },
1647    "SshPublicKey":{
1648      "type":"structure",
1649      "required":[
1650        "DateImported",
1651        "SshPublicKeyBody",
1652        "SshPublicKeyId"
1653      ],
1654      "members":{
1655        "DateImported":{"shape":"DateImported"},
1656        "SshPublicKeyBody":{"shape":"SshPublicKeyBody"},
1657        "SshPublicKeyId":{"shape":"SshPublicKeyId"}
1658      }
1659    },
1660    "SshPublicKeyBody":{
1661      "type":"string",
1662      "max":2048,
1663      "pattern":"^ssh-rsa\\s+[A-Za-z0-9+/]+[=]{0,3}(\\s+.+)?\\s*$"
1664    },
1665    "SshPublicKeyCount":{"type":"integer"},
1666    "SshPublicKeyId":{
1667      "type":"string",
1668      "max":21,
1669      "min":21,
1670      "pattern":"^key-[0-9a-f]{17}$"
1671    },
1672    "SshPublicKeys":{
1673      "type":"list",
1674      "member":{"shape":"SshPublicKey"},
1675      "max":5
1676    },
1677    "StartServerRequest":{
1678      "type":"structure",
1679      "required":["ServerId"],
1680      "members":{
1681        "ServerId":{"shape":"ServerId"}
1682      }
1683    },
1684    "State":{
1685      "type":"string",
1686      "enum":[
1687        "OFFLINE",
1688        "ONLINE",
1689        "STARTING",
1690        "STOPPING",
1691        "START_FAILED",
1692        "STOP_FAILED"
1693      ]
1694    },
1695    "StatusCode":{"type":"integer"},
1696    "StepResultOutputsJson":{
1697      "type":"string",
1698      "max":65536
1699    },
1700    "StopServerRequest":{
1701      "type":"structure",
1702      "required":["ServerId"],
1703      "members":{
1704        "ServerId":{"shape":"ServerId"}
1705      }
1706    },
1707    "SubnetId":{"type":"string"},
1708    "SubnetIds":{
1709      "type":"list",
1710      "member":{"shape":"SubnetId"}
1711    },
1712    "Tag":{
1713      "type":"structure",
1714      "required":[
1715        "Key",
1716        "Value"
1717      ],
1718      "members":{
1719        "Key":{"shape":"TagKey"},
1720        "Value":{"shape":"TagValue"}
1721      }
1722    },
1723    "TagKey":{
1724      "type":"string",
1725      "max":128
1726    },
1727    "TagKeys":{
1728      "type":"list",
1729      "member":{"shape":"TagKey"},
1730      "max":50,
1731      "min":1
1732    },
1733    "TagResourceRequest":{
1734      "type":"structure",
1735      "required":[
1736        "Arn",
1737        "Tags"
1738      ],
1739      "members":{
1740        "Arn":{"shape":"Arn"},
1741        "Tags":{"shape":"Tags"}
1742      }
1743    },
1744    "TagStepDetails":{
1745      "type":"structure",
1746      "members":{
1747        "Name":{"shape":"WorkflowStepName"},
1748        "Tags":{"shape":"S3Tags"}
1749      }
1750    },
1751    "TagValue":{
1752      "type":"string",
1753      "max":256
1754    },
1755    "Tags":{
1756      "type":"list",
1757      "member":{"shape":"Tag"},
1758      "max":50,
1759      "min":1
1760    },
1761    "TestIdentityProviderRequest":{
1762      "type":"structure",
1763      "required":[
1764        "ServerId",
1765        "UserName"
1766      ],
1767      "members":{
1768        "ServerId":{"shape":"ServerId"},
1769        "ServerProtocol":{"shape":"Protocol"},
1770        "SourceIp":{"shape":"SourceIp"},
1771        "UserName":{"shape":"UserName"},
1772        "UserPassword":{"shape":"UserPassword"}
1773      }
1774    },
1775    "TestIdentityProviderResponse":{
1776      "type":"structure",
1777      "required":[
1778        "StatusCode",
1779        "Url"
1780      ],
1781      "members":{
1782        "Response":{"shape":"Response"},
1783        "StatusCode":{"shape":"StatusCode"},
1784        "Message":{"shape":"Message"},
1785        "Url":{"shape":"Url"}
1786      }
1787    },
1788    "ThrottlingException":{
1789      "type":"structure",
1790      "members":{
1791        "RetryAfterSeconds":{"shape":"RetryAfterSeconds"}
1792      },
1793      "exception":true
1794    },
1795    "UntagResourceRequest":{
1796      "type":"structure",
1797      "required":[
1798        "Arn",
1799        "TagKeys"
1800      ],
1801      "members":{
1802        "Arn":{"shape":"Arn"},
1803        "TagKeys":{"shape":"TagKeys"}
1804      }
1805    },
1806    "UpdateAccessRequest":{
1807      "type":"structure",
1808      "required":[
1809        "ServerId",
1810        "ExternalId"
1811      ],
1812      "members":{
1813        "HomeDirectory":{"shape":"HomeDirectory"},
1814        "HomeDirectoryType":{"shape":"HomeDirectoryType"},
1815        "HomeDirectoryMappings":{"shape":"HomeDirectoryMappings"},
1816        "Policy":{"shape":"Policy"},
1817        "PosixProfile":{"shape":"PosixProfile"},
1818        "Role":{"shape":"Role"},
1819        "ServerId":{"shape":"ServerId"},
1820        "ExternalId":{"shape":"ExternalId"}
1821      }
1822    },
1823    "UpdateAccessResponse":{
1824      "type":"structure",
1825      "required":[
1826        "ServerId",
1827        "ExternalId"
1828      ],
1829      "members":{
1830        "ServerId":{"shape":"ServerId"},
1831        "ExternalId":{"shape":"ExternalId"}
1832      }
1833    },
1834    "UpdateServerRequest":{
1835      "type":"structure",
1836      "required":["ServerId"],
1837      "members":{
1838        "Certificate":{"shape":"Certificate"},
1839        "ProtocolDetails":{"shape":"ProtocolDetails"},
1840        "EndpointDetails":{"shape":"EndpointDetails"},
1841        "EndpointType":{"shape":"EndpointType"},
1842        "HostKey":{"shape":"HostKey"},
1843        "IdentityProviderDetails":{"shape":"IdentityProviderDetails"},
1844        "LoggingRole":{"shape":"NullableRole"},
1845        "Protocols":{"shape":"Protocols"},
1846        "SecurityPolicyName":{"shape":"SecurityPolicyName"},
1847        "ServerId":{"shape":"ServerId"},
1848        "WorkflowDetails":{"shape":"WorkflowDetails"}
1849      }
1850    },
1851    "UpdateServerResponse":{
1852      "type":"structure",
1853      "required":["ServerId"],
1854      "members":{
1855        "ServerId":{"shape":"ServerId"}
1856      }
1857    },
1858    "UpdateUserRequest":{
1859      "type":"structure",
1860      "required":[
1861        "ServerId",
1862        "UserName"
1863      ],
1864      "members":{
1865        "HomeDirectory":{"shape":"HomeDirectory"},
1866        "HomeDirectoryType":{"shape":"HomeDirectoryType"},
1867        "HomeDirectoryMappings":{"shape":"HomeDirectoryMappings"},
1868        "Policy":{"shape":"Policy"},
1869        "PosixProfile":{"shape":"PosixProfile"},
1870        "Role":{"shape":"Role"},
1871        "ServerId":{"shape":"ServerId"},
1872        "UserName":{"shape":"UserName"}
1873      }
1874    },
1875    "UpdateUserResponse":{
1876      "type":"structure",
1877      "required":[
1878        "ServerId",
1879        "UserName"
1880      ],
1881      "members":{
1882        "ServerId":{"shape":"ServerId"},
1883        "UserName":{"shape":"UserName"}
1884      }
1885    },
1886    "Url":{
1887      "type":"string",
1888      "max":255
1889    },
1890    "UserCount":{"type":"integer"},
1891    "UserDetails":{
1892      "type":"structure",
1893      "required":[
1894        "UserName",
1895        "ServerId"
1896      ],
1897      "members":{
1898        "UserName":{"shape":"UserName"},
1899        "ServerId":{"shape":"ServerId"},
1900        "SessionId":{"shape":"SessionId"}
1901      }
1902    },
1903    "UserName":{
1904      "type":"string",
1905      "max":100,
1906      "min":3,
1907      "pattern":"^[\\w][\\w@.-]{2,99}$"
1908    },
1909    "UserPassword":{
1910      "type":"string",
1911      "max":1024,
1912      "sensitive":true
1913    },
1914    "VpcEndpointId":{
1915      "type":"string",
1916      "max":22,
1917      "min":22,
1918      "pattern":"^vpce-[0-9a-f]{17}$"
1919    },
1920    "VpcId":{"type":"string"},
1921    "WorkflowDescription":{
1922      "type":"string",
1923      "max":256,
1924      "pattern":"^[\\w- ]*$"
1925    },
1926    "WorkflowDetail":{
1927      "type":"structure",
1928      "required":[
1929        "WorkflowId",
1930        "ExecutionRole"
1931      ],
1932      "members":{
1933        "WorkflowId":{"shape":"WorkflowId"},
1934        "ExecutionRole":{"shape":"Role"}
1935      }
1936    },
1937    "WorkflowDetails":{
1938      "type":"structure",
1939      "required":["OnUpload"],
1940      "members":{
1941        "OnUpload":{"shape":"OnUploadWorkflowDetails"}
1942      }
1943    },
1944    "WorkflowId":{
1945      "type":"string",
1946      "max":19,
1947      "min":19,
1948      "pattern":"^w-([a-z0-9]{17})$"
1949    },
1950    "WorkflowStep":{
1951      "type":"structure",
1952      "members":{
1953        "Type":{"shape":"WorkflowStepType"},
1954        "CopyStepDetails":{"shape":"CopyStepDetails"},
1955        "CustomStepDetails":{"shape":"CustomStepDetails"},
1956        "DeleteStepDetails":{"shape":"DeleteStepDetails"},
1957        "TagStepDetails":{"shape":"TagStepDetails"}
1958      }
1959    },
1960    "WorkflowStepName":{
1961      "type":"string",
1962      "max":30,
1963      "pattern":"^[\\w-]*$"
1964    },
1965    "WorkflowStepType":{
1966      "type":"string",
1967      "enum":[
1968        "COPY",
1969        "CUSTOM",
1970        "TAG",
1971        "DELETE"
1972      ]
1973    },
1974    "WorkflowSteps":{
1975      "type":"list",
1976      "member":{"shape":"WorkflowStep"},
1977      "max":8
1978    }
1979  }
1980}
1981