1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"2017-08-22",
5    "endpointPrefix":"acm-pca",
6    "jsonVersion":"1.1",
7    "protocol":"json",
8    "serviceAbbreviation":"ACM-PCA",
9    "serviceFullName":"AWS Certificate Manager Private Certificate Authority",
10    "serviceId":"ACM PCA",
11    "signatureVersion":"v4",
12    "targetPrefix":"ACMPrivateCA",
13    "uid":"acm-pca-2017-08-22"
14  },
15  "operations":{
16    "CreateCertificateAuthority":{
17      "name":"CreateCertificateAuthority",
18      "http":{
19        "method":"POST",
20        "requestUri":"/"
21      },
22      "input":{"shape":"CreateCertificateAuthorityRequest"},
23      "output":{"shape":"CreateCertificateAuthorityResponse"},
24      "errors":[
25        {"shape":"InvalidArgsException"},
26        {"shape":"InvalidPolicyException"},
27        {"shape":"InvalidTagException"},
28        {"shape":"LimitExceededException"}
29      ],
30      "idempotent":true
31    },
32    "CreateCertificateAuthorityAuditReport":{
33      "name":"CreateCertificateAuthorityAuditReport",
34      "http":{
35        "method":"POST",
36        "requestUri":"/"
37      },
38      "input":{"shape":"CreateCertificateAuthorityAuditReportRequest"},
39      "output":{"shape":"CreateCertificateAuthorityAuditReportResponse"},
40      "errors":[
41        {"shape":"RequestInProgressException"},
42        {"shape":"RequestFailedException"},
43        {"shape":"ResourceNotFoundException"},
44        {"shape":"InvalidArnException"},
45        {"shape":"InvalidArgsException"},
46        {"shape":"InvalidStateException"}
47      ],
48      "idempotent":true
49    },
50    "CreatePermission":{
51      "name":"CreatePermission",
52      "http":{
53        "method":"POST",
54        "requestUri":"/"
55      },
56      "input":{"shape":"CreatePermissionRequest"},
57      "errors":[
58        {"shape":"ResourceNotFoundException"},
59        {"shape":"InvalidArnException"},
60        {"shape":"PermissionAlreadyExistsException"},
61        {"shape":"LimitExceededException"},
62        {"shape":"InvalidStateException"},
63        {"shape":"RequestFailedException"}
64      ]
65    },
66    "DeleteCertificateAuthority":{
67      "name":"DeleteCertificateAuthority",
68      "http":{
69        "method":"POST",
70        "requestUri":"/"
71      },
72      "input":{"shape":"DeleteCertificateAuthorityRequest"},
73      "errors":[
74        {"shape":"ConcurrentModificationException"},
75        {"shape":"ResourceNotFoundException"},
76        {"shape":"InvalidArnException"},
77        {"shape":"InvalidStateException"}
78      ]
79    },
80    "DeletePermission":{
81      "name":"DeletePermission",
82      "http":{
83        "method":"POST",
84        "requestUri":"/"
85      },
86      "input":{"shape":"DeletePermissionRequest"},
87      "errors":[
88        {"shape":"ResourceNotFoundException"},
89        {"shape":"InvalidArnException"},
90        {"shape":"InvalidStateException"},
91        {"shape":"RequestFailedException"}
92      ]
93    },
94    "DeletePolicy":{
95      "name":"DeletePolicy",
96      "http":{
97        "method":"POST",
98        "requestUri":"/"
99      },
100      "input":{"shape":"DeletePolicyRequest"},
101      "errors":[
102        {"shape":"ConcurrentModificationException"},
103        {"shape":"InvalidArnException"},
104        {"shape":"InvalidStateException"},
105        {"shape":"LockoutPreventedException"},
106        {"shape":"RequestFailedException"},
107        {"shape":"ResourceNotFoundException"}
108      ]
109    },
110    "DescribeCertificateAuthority":{
111      "name":"DescribeCertificateAuthority",
112      "http":{
113        "method":"POST",
114        "requestUri":"/"
115      },
116      "input":{"shape":"DescribeCertificateAuthorityRequest"},
117      "output":{"shape":"DescribeCertificateAuthorityResponse"},
118      "errors":[
119        {"shape":"ResourceNotFoundException"},
120        {"shape":"InvalidArnException"}
121      ]
122    },
123    "DescribeCertificateAuthorityAuditReport":{
124      "name":"DescribeCertificateAuthorityAuditReport",
125      "http":{
126        "method":"POST",
127        "requestUri":"/"
128      },
129      "input":{"shape":"DescribeCertificateAuthorityAuditReportRequest"},
130      "output":{"shape":"DescribeCertificateAuthorityAuditReportResponse"},
131      "errors":[
132        {"shape":"ResourceNotFoundException"},
133        {"shape":"InvalidArnException"},
134        {"shape":"InvalidArgsException"}
135      ]
136    },
137    "GetCertificate":{
138      "name":"GetCertificate",
139      "http":{
140        "method":"POST",
141        "requestUri":"/"
142      },
143      "input":{"shape":"GetCertificateRequest"},
144      "output":{"shape":"GetCertificateResponse"},
145      "errors":[
146        {"shape":"RequestInProgressException"},
147        {"shape":"RequestFailedException"},
148        {"shape":"ResourceNotFoundException"},
149        {"shape":"InvalidArnException"},
150        {"shape":"InvalidStateException"}
151      ]
152    },
153    "GetCertificateAuthorityCertificate":{
154      "name":"GetCertificateAuthorityCertificate",
155      "http":{
156        "method":"POST",
157        "requestUri":"/"
158      },
159      "input":{"shape":"GetCertificateAuthorityCertificateRequest"},
160      "output":{"shape":"GetCertificateAuthorityCertificateResponse"},
161      "errors":[
162        {"shape":"ResourceNotFoundException"},
163        {"shape":"InvalidStateException"},
164        {"shape":"InvalidArnException"}
165      ]
166    },
167    "GetCertificateAuthorityCsr":{
168      "name":"GetCertificateAuthorityCsr",
169      "http":{
170        "method":"POST",
171        "requestUri":"/"
172      },
173      "input":{"shape":"GetCertificateAuthorityCsrRequest"},
174      "output":{"shape":"GetCertificateAuthorityCsrResponse"},
175      "errors":[
176        {"shape":"RequestInProgressException"},
177        {"shape":"RequestFailedException"},
178        {"shape":"ResourceNotFoundException"},
179        {"shape":"InvalidArnException"},
180        {"shape":"InvalidStateException"}
181      ]
182    },
183    "GetPolicy":{
184      "name":"GetPolicy",
185      "http":{
186        "method":"POST",
187        "requestUri":"/"
188      },
189      "input":{"shape":"GetPolicyRequest"},
190      "output":{"shape":"GetPolicyResponse"},
191      "errors":[
192        {"shape":"InvalidArnException"},
193        {"shape":"InvalidStateException"},
194        {"shape":"RequestFailedException"},
195        {"shape":"ResourceNotFoundException"}
196      ]
197    },
198    "ImportCertificateAuthorityCertificate":{
199      "name":"ImportCertificateAuthorityCertificate",
200      "http":{
201        "method":"POST",
202        "requestUri":"/"
203      },
204      "input":{"shape":"ImportCertificateAuthorityCertificateRequest"},
205      "errors":[
206        {"shape":"ConcurrentModificationException"},
207        {"shape":"RequestInProgressException"},
208        {"shape":"RequestFailedException"},
209        {"shape":"ResourceNotFoundException"},
210        {"shape":"InvalidArnException"},
211        {"shape":"InvalidRequestException"},
212        {"shape":"InvalidStateException"},
213        {"shape":"MalformedCertificateException"},
214        {"shape":"CertificateMismatchException"}
215      ]
216    },
217    "IssueCertificate":{
218      "name":"IssueCertificate",
219      "http":{
220        "method":"POST",
221        "requestUri":"/"
222      },
223      "input":{"shape":"IssueCertificateRequest"},
224      "output":{"shape":"IssueCertificateResponse"},
225      "errors":[
226        {"shape":"LimitExceededException"},
227        {"shape":"ResourceNotFoundException"},
228        {"shape":"InvalidStateException"},
229        {"shape":"InvalidArnException"},
230        {"shape":"InvalidArgsException"},
231        {"shape":"MalformedCSRException"}
232      ],
233      "idempotent":true
234    },
235    "ListCertificateAuthorities":{
236      "name":"ListCertificateAuthorities",
237      "http":{
238        "method":"POST",
239        "requestUri":"/"
240      },
241      "input":{"shape":"ListCertificateAuthoritiesRequest"},
242      "output":{"shape":"ListCertificateAuthoritiesResponse"},
243      "errors":[
244        {"shape":"InvalidNextTokenException"}
245      ]
246    },
247    "ListPermissions":{
248      "name":"ListPermissions",
249      "http":{
250        "method":"POST",
251        "requestUri":"/"
252      },
253      "input":{"shape":"ListPermissionsRequest"},
254      "output":{"shape":"ListPermissionsResponse"},
255      "errors":[
256        {"shape":"ResourceNotFoundException"},
257        {"shape":"InvalidArnException"},
258        {"shape":"InvalidNextTokenException"},
259        {"shape":"InvalidStateException"},
260        {"shape":"RequestFailedException"}
261      ]
262    },
263    "ListTags":{
264      "name":"ListTags",
265      "http":{
266        "method":"POST",
267        "requestUri":"/"
268      },
269      "input":{"shape":"ListTagsRequest"},
270      "output":{"shape":"ListTagsResponse"},
271      "errors":[
272        {"shape":"ResourceNotFoundException"},
273        {"shape":"InvalidArnException"},
274        {"shape":"InvalidStateException"}
275      ]
276    },
277    "PutPolicy":{
278      "name":"PutPolicy",
279      "http":{
280        "method":"POST",
281        "requestUri":"/"
282      },
283      "input":{"shape":"PutPolicyRequest"},
284      "errors":[
285        {"shape":"ConcurrentModificationException"},
286        {"shape":"InvalidArnException"},
287        {"shape":"InvalidStateException"},
288        {"shape":"InvalidPolicyException"},
289        {"shape":"LockoutPreventedException"},
290        {"shape":"RequestFailedException"},
291        {"shape":"ResourceNotFoundException"}
292      ]
293    },
294    "RestoreCertificateAuthority":{
295      "name":"RestoreCertificateAuthority",
296      "http":{
297        "method":"POST",
298        "requestUri":"/"
299      },
300      "input":{"shape":"RestoreCertificateAuthorityRequest"},
301      "errors":[
302        {"shape":"ResourceNotFoundException"},
303        {"shape":"InvalidStateException"},
304        {"shape":"InvalidArnException"}
305      ]
306    },
307    "RevokeCertificate":{
308      "name":"RevokeCertificate",
309      "http":{
310        "method":"POST",
311        "requestUri":"/"
312      },
313      "input":{"shape":"RevokeCertificateRequest"},
314      "errors":[
315        {"shape":"ConcurrentModificationException"},
316        {"shape":"InvalidArnException"},
317        {"shape":"InvalidRequestException"},
318        {"shape":"InvalidStateException"},
319        {"shape":"LimitExceededException"},
320        {"shape":"ResourceNotFoundException"},
321        {"shape":"RequestAlreadyProcessedException"},
322        {"shape":"RequestInProgressException"},
323        {"shape":"RequestFailedException"}
324      ]
325    },
326    "TagCertificateAuthority":{
327      "name":"TagCertificateAuthority",
328      "http":{
329        "method":"POST",
330        "requestUri":"/"
331      },
332      "input":{"shape":"TagCertificateAuthorityRequest"},
333      "errors":[
334        {"shape":"ResourceNotFoundException"},
335        {"shape":"InvalidArnException"},
336        {"shape":"InvalidStateException"},
337        {"shape":"InvalidTagException"},
338        {"shape":"TooManyTagsException"}
339      ]
340    },
341    "UntagCertificateAuthority":{
342      "name":"UntagCertificateAuthority",
343      "http":{
344        "method":"POST",
345        "requestUri":"/"
346      },
347      "input":{"shape":"UntagCertificateAuthorityRequest"},
348      "errors":[
349        {"shape":"ResourceNotFoundException"},
350        {"shape":"InvalidArnException"},
351        {"shape":"InvalidStateException"},
352        {"shape":"InvalidTagException"}
353      ]
354    },
355    "UpdateCertificateAuthority":{
356      "name":"UpdateCertificateAuthority",
357      "http":{
358        "method":"POST",
359        "requestUri":"/"
360      },
361      "input":{"shape":"UpdateCertificateAuthorityRequest"},
362      "errors":[
363        {"shape":"ConcurrentModificationException"},
364        {"shape":"ResourceNotFoundException"},
365        {"shape":"InvalidArgsException"},
366        {"shape":"InvalidArnException"},
367        {"shape":"InvalidStateException"},
368        {"shape":"InvalidPolicyException"}
369      ]
370    }
371  },
372  "shapes":{
373    "ASN1PrintableString64":{
374      "type":"string",
375      "max":64,
376      "min":0,
377      "pattern":"[a-zA-Z0-9'()+-.?:/= ]*"
378    },
379    "ASN1Subject":{
380      "type":"structure",
381      "members":{
382        "Country":{"shape":"CountryCodeString"},
383        "Organization":{"shape":"String64"},
384        "OrganizationalUnit":{"shape":"String64"},
385        "DistinguishedNameQualifier":{"shape":"ASN1PrintableString64"},
386        "State":{"shape":"String128"},
387        "CommonName":{"shape":"String64"},
388        "SerialNumber":{"shape":"ASN1PrintableString64"},
389        "Locality":{"shape":"String128"},
390        "Title":{"shape":"String64"},
391        "Surname":{"shape":"String40"},
392        "GivenName":{"shape":"String16"},
393        "Initials":{"shape":"String5"},
394        "Pseudonym":{"shape":"String128"},
395        "GenerationQualifier":{"shape":"String3"}
396      }
397    },
398    "AWSPolicy":{
399      "type":"string",
400      "max":20480,
401      "min":1,
402      "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+"
403    },
404    "AccessDescription":{
405      "type":"structure",
406      "required":[
407        "AccessMethod",
408        "AccessLocation"
409      ],
410      "members":{
411        "AccessMethod":{"shape":"AccessMethod"},
412        "AccessLocation":{"shape":"GeneralName"}
413      },
414      "box":true
415    },
416    "AccessDescriptionList":{
417      "type":"list",
418      "member":{"shape":"AccessDescription"}
419    },
420    "AccessMethod":{
421      "type":"structure",
422      "members":{
423        "CustomObjectIdentifier":{"shape":"CustomObjectIdentifier"},
424        "AccessMethodType":{"shape":"AccessMethodType"}
425      }
426    },
427    "AccessMethodType":{
428      "type":"string",
429      "enum":[
430        "CA_REPOSITORY",
431        "RESOURCE_PKI_MANIFEST",
432        "RESOURCE_PKI_NOTIFY"
433      ]
434    },
435    "AccountId":{
436      "type":"string",
437      "max":12,
438      "min":12,
439      "pattern":"[0-9]+"
440    },
441    "ActionList":{
442      "type":"list",
443      "member":{"shape":"ActionType"},
444      "max":3,
445      "min":1
446    },
447    "ActionType":{
448      "type":"string",
449      "enum":[
450        "IssueCertificate",
451        "GetCertificate",
452        "ListPermissions"
453      ]
454    },
455    "ApiPassthrough":{
456      "type":"structure",
457      "members":{
458        "Extensions":{"shape":"Extensions"},
459        "Subject":{"shape":"ASN1Subject"}
460      }
461    },
462    "Arn":{
463      "type":"string",
464      "max":200,
465      "min":5,
466      "pattern":"arn:[\\w+=/,.@-]+:[\\w+=/,.@-]+:[\\w+=/,.@-]*:[0-9]*:[\\w+=,.@-]+(/[\\w+=,.@-]+)*"
467    },
468    "AuditReportId":{
469      "type":"string",
470      "max":36,
471      "min":36,
472      "pattern":"[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}"
473    },
474    "AuditReportResponseFormat":{
475      "type":"string",
476      "enum":[
477        "JSON",
478        "CSV"
479      ]
480    },
481    "AuditReportStatus":{
482      "type":"string",
483      "enum":[
484        "CREATING",
485        "SUCCESS",
486        "FAILED"
487      ]
488    },
489    "Boolean":{"type":"boolean"},
490    "CertificateAuthorities":{
491      "type":"list",
492      "member":{"shape":"CertificateAuthority"}
493    },
494    "CertificateAuthority":{
495      "type":"structure",
496      "members":{
497        "Arn":{"shape":"Arn"},
498        "OwnerAccount":{"shape":"AccountId"},
499        "CreatedAt":{"shape":"TStamp"},
500        "LastStateChangeAt":{"shape":"TStamp"},
501        "Type":{"shape":"CertificateAuthorityType"},
502        "Serial":{"shape":"String"},
503        "Status":{"shape":"CertificateAuthorityStatus"},
504        "NotBefore":{"shape":"TStamp"},
505        "NotAfter":{"shape":"TStamp"},
506        "FailureReason":{"shape":"FailureReason"},
507        "CertificateAuthorityConfiguration":{"shape":"CertificateAuthorityConfiguration"},
508        "RevocationConfiguration":{"shape":"RevocationConfiguration"},
509        "RestorableUntil":{"shape":"TStamp"},
510        "KeyStorageSecurityStandard":{"shape":"KeyStorageSecurityStandard"}
511      }
512    },
513    "CertificateAuthorityConfiguration":{
514      "type":"structure",
515      "required":[
516        "KeyAlgorithm",
517        "SigningAlgorithm",
518        "Subject"
519      ],
520      "members":{
521        "KeyAlgorithm":{"shape":"KeyAlgorithm"},
522        "SigningAlgorithm":{"shape":"SigningAlgorithm"},
523        "Subject":{"shape":"ASN1Subject"},
524        "CsrExtensions":{"shape":"CsrExtensions"}
525      }
526    },
527    "CertificateAuthorityStatus":{
528      "type":"string",
529      "enum":[
530        "CREATING",
531        "PENDING_CERTIFICATE",
532        "ACTIVE",
533        "DELETED",
534        "DISABLED",
535        "EXPIRED",
536        "FAILED"
537      ]
538    },
539    "CertificateAuthorityType":{
540      "type":"string",
541      "enum":[
542        "ROOT",
543        "SUBORDINATE"
544      ]
545    },
546    "CertificateBody":{"type":"string"},
547    "CertificateBodyBlob":{
548      "type":"blob",
549      "max":32768,
550      "min":1
551    },
552    "CertificateChain":{"type":"string"},
553    "CertificateChainBlob":{
554      "type":"blob",
555      "max":2097152,
556      "min":0
557    },
558    "CertificateMismatchException":{
559      "type":"structure",
560      "members":{
561        "message":{"shape":"String"}
562      },
563      "exception":true
564    },
565    "CertificatePolicyList":{
566      "type":"list",
567      "member":{"shape":"PolicyInformation"},
568      "max":20,
569      "min":1
570    },
571    "ConcurrentModificationException":{
572      "type":"structure",
573      "members":{
574        "message":{"shape":"String"}
575      },
576      "exception":true
577    },
578    "CountryCodeString":{
579      "type":"string",
580      "max":2,
581      "min":2,
582      "pattern":"[A-Za-z]{2}"
583    },
584    "CreateCertificateAuthorityAuditReportRequest":{
585      "type":"structure",
586      "required":[
587        "CertificateAuthorityArn",
588        "S3BucketName",
589        "AuditReportResponseFormat"
590      ],
591      "members":{
592        "CertificateAuthorityArn":{"shape":"Arn"},
593        "S3BucketName":{"shape":"S3BucketName"},
594        "AuditReportResponseFormat":{"shape":"AuditReportResponseFormat"}
595      }
596    },
597    "CreateCertificateAuthorityAuditReportResponse":{
598      "type":"structure",
599      "members":{
600        "AuditReportId":{"shape":"AuditReportId"},
601        "S3Key":{"shape":"S3Key"}
602      }
603    },
604    "CreateCertificateAuthorityRequest":{
605      "type":"structure",
606      "required":[
607        "CertificateAuthorityConfiguration",
608        "CertificateAuthorityType"
609      ],
610      "members":{
611        "CertificateAuthorityConfiguration":{"shape":"CertificateAuthorityConfiguration"},
612        "RevocationConfiguration":{"shape":"RevocationConfiguration"},
613        "CertificateAuthorityType":{"shape":"CertificateAuthorityType"},
614        "IdempotencyToken":{"shape":"IdempotencyToken"},
615        "KeyStorageSecurityStandard":{"shape":"KeyStorageSecurityStandard"},
616        "Tags":{"shape":"TagList"}
617      }
618    },
619    "CreateCertificateAuthorityResponse":{
620      "type":"structure",
621      "members":{
622        "CertificateAuthorityArn":{"shape":"Arn"}
623      }
624    },
625    "CreatePermissionRequest":{
626      "type":"structure",
627      "required":[
628        "CertificateAuthorityArn",
629        "Principal",
630        "Actions"
631      ],
632      "members":{
633        "CertificateAuthorityArn":{"shape":"Arn"},
634        "Principal":{"shape":"Principal"},
635        "SourceAccount":{"shape":"AccountId"},
636        "Actions":{"shape":"ActionList"}
637      }
638    },
639    "CrlConfiguration":{
640      "type":"structure",
641      "required":["Enabled"],
642      "members":{
643        "Enabled":{
644          "shape":"Boolean",
645          "box":true
646        },
647        "ExpirationInDays":{
648          "shape":"Integer1To5000",
649          "box":true
650        },
651        "CustomCname":{"shape":"String253"},
652        "S3BucketName":{"shape":"String3To255"},
653        "S3ObjectAcl":{"shape":"S3ObjectAcl"}
654      }
655    },
656    "CsrBlob":{
657      "type":"blob",
658      "max":32768,
659      "min":1
660    },
661    "CsrBody":{"type":"string"},
662    "CsrExtensions":{
663      "type":"structure",
664      "members":{
665        "KeyUsage":{"shape":"KeyUsage"},
666        "SubjectInformationAccess":{"shape":"AccessDescriptionList"}
667      }
668    },
669    "CustomObjectIdentifier":{
670      "type":"string",
671      "max":64,
672      "min":0,
673      "pattern":"^([0-2])\\.([0-9]|([0-3][0-9]))((\\.([0-9]+)){0,126})$"
674    },
675    "DeleteCertificateAuthorityRequest":{
676      "type":"structure",
677      "required":["CertificateAuthorityArn"],
678      "members":{
679        "CertificateAuthorityArn":{"shape":"Arn"},
680        "PermanentDeletionTimeInDays":{"shape":"PermanentDeletionTimeInDays"}
681      }
682    },
683    "DeletePermissionRequest":{
684      "type":"structure",
685      "required":[
686        "CertificateAuthorityArn",
687        "Principal"
688      ],
689      "members":{
690        "CertificateAuthorityArn":{"shape":"Arn"},
691        "Principal":{"shape":"Principal"},
692        "SourceAccount":{"shape":"AccountId"}
693      }
694    },
695    "DeletePolicyRequest":{
696      "type":"structure",
697      "required":["ResourceArn"],
698      "members":{
699        "ResourceArn":{"shape":"Arn"}
700      }
701    },
702    "DescribeCertificateAuthorityAuditReportRequest":{
703      "type":"structure",
704      "required":[
705        "CertificateAuthorityArn",
706        "AuditReportId"
707      ],
708      "members":{
709        "CertificateAuthorityArn":{"shape":"Arn"},
710        "AuditReportId":{"shape":"AuditReportId"}
711      }
712    },
713    "DescribeCertificateAuthorityAuditReportResponse":{
714      "type":"structure",
715      "members":{
716        "AuditReportStatus":{"shape":"AuditReportStatus"},
717        "S3BucketName":{"shape":"S3BucketName"},
718        "S3Key":{"shape":"S3Key"},
719        "CreatedAt":{"shape":"TStamp"}
720      }
721    },
722    "DescribeCertificateAuthorityRequest":{
723      "type":"structure",
724      "required":["CertificateAuthorityArn"],
725      "members":{
726        "CertificateAuthorityArn":{"shape":"Arn"}
727      }
728    },
729    "DescribeCertificateAuthorityResponse":{
730      "type":"structure",
731      "members":{
732        "CertificateAuthority":{"shape":"CertificateAuthority"}
733      }
734    },
735    "EdiPartyName":{
736      "type":"structure",
737      "required":["PartyName"],
738      "members":{
739        "PartyName":{"shape":"String256"},
740        "NameAssigner":{"shape":"String256"}
741      }
742    },
743    "ExtendedKeyUsage":{
744      "type":"structure",
745      "members":{
746        "ExtendedKeyUsageType":{"shape":"ExtendedKeyUsageType"},
747        "ExtendedKeyUsageObjectIdentifier":{"shape":"CustomObjectIdentifier"}
748      }
749    },
750    "ExtendedKeyUsageList":{
751      "type":"list",
752      "member":{"shape":"ExtendedKeyUsage"},
753      "max":20,
754      "min":1
755    },
756    "ExtendedKeyUsageType":{
757      "type":"string",
758      "enum":[
759        "SERVER_AUTH",
760        "CLIENT_AUTH",
761        "CODE_SIGNING",
762        "EMAIL_PROTECTION",
763        "TIME_STAMPING",
764        "OCSP_SIGNING",
765        "SMART_CARD_LOGIN",
766        "DOCUMENT_SIGNING",
767        "CERTIFICATE_TRANSPARENCY"
768      ]
769    },
770    "Extensions":{
771      "type":"structure",
772      "members":{
773        "CertificatePolicies":{"shape":"CertificatePolicyList"},
774        "ExtendedKeyUsage":{"shape":"ExtendedKeyUsageList"},
775        "KeyUsage":{"shape":"KeyUsage"},
776        "SubjectAlternativeNames":{"shape":"GeneralNameList"}
777      }
778    },
779    "FailureReason":{
780      "type":"string",
781      "enum":[
782        "REQUEST_TIMED_OUT",
783        "UNSUPPORTED_ALGORITHM",
784        "OTHER"
785      ]
786    },
787    "GeneralName":{
788      "type":"structure",
789      "members":{
790        "OtherName":{"shape":"OtherName"},
791        "Rfc822Name":{"shape":"String256"},
792        "DnsName":{"shape":"String253"},
793        "DirectoryName":{"shape":"ASN1Subject"},
794        "EdiPartyName":{"shape":"EdiPartyName"},
795        "UniformResourceIdentifier":{"shape":"String253"},
796        "IpAddress":{"shape":"String39"},
797        "RegisteredId":{"shape":"CustomObjectIdentifier"}
798      }
799    },
800    "GeneralNameList":{
801      "type":"list",
802      "member":{"shape":"GeneralName"},
803      "max":20,
804      "min":1
805    },
806    "GetCertificateAuthorityCertificateRequest":{
807      "type":"structure",
808      "required":["CertificateAuthorityArn"],
809      "members":{
810        "CertificateAuthorityArn":{"shape":"Arn"}
811      }
812    },
813    "GetCertificateAuthorityCertificateResponse":{
814      "type":"structure",
815      "members":{
816        "Certificate":{"shape":"CertificateBody"},
817        "CertificateChain":{"shape":"CertificateChain"}
818      }
819    },
820    "GetCertificateAuthorityCsrRequest":{
821      "type":"structure",
822      "required":["CertificateAuthorityArn"],
823      "members":{
824        "CertificateAuthorityArn":{"shape":"Arn"}
825      }
826    },
827    "GetCertificateAuthorityCsrResponse":{
828      "type":"structure",
829      "members":{
830        "Csr":{"shape":"CsrBody"}
831      }
832    },
833    "GetCertificateRequest":{
834      "type":"structure",
835      "required":[
836        "CertificateAuthorityArn",
837        "CertificateArn"
838      ],
839      "members":{
840        "CertificateAuthorityArn":{"shape":"Arn"},
841        "CertificateArn":{"shape":"Arn"}
842      }
843    },
844    "GetCertificateResponse":{
845      "type":"structure",
846      "members":{
847        "Certificate":{"shape":"CertificateBody"},
848        "CertificateChain":{"shape":"CertificateChain"}
849      }
850    },
851    "GetPolicyRequest":{
852      "type":"structure",
853      "required":["ResourceArn"],
854      "members":{
855        "ResourceArn":{"shape":"Arn"}
856      }
857    },
858    "GetPolicyResponse":{
859      "type":"structure",
860      "members":{
861        "Policy":{"shape":"AWSPolicy"}
862      }
863    },
864    "IdempotencyToken":{
865      "type":"string",
866      "max":36,
867      "min":1,
868      "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]*"
869    },
870    "ImportCertificateAuthorityCertificateRequest":{
871      "type":"structure",
872      "required":[
873        "CertificateAuthorityArn",
874        "Certificate"
875      ],
876      "members":{
877        "CertificateAuthorityArn":{"shape":"Arn"},
878        "Certificate":{"shape":"CertificateBodyBlob"},
879        "CertificateChain":{"shape":"CertificateChainBlob"}
880      }
881    },
882    "Integer1To5000":{
883      "type":"integer",
884      "max":5000,
885      "min":1
886    },
887    "InvalidArgsException":{
888      "type":"structure",
889      "members":{
890        "message":{"shape":"String"}
891      },
892      "exception":true
893    },
894    "InvalidArnException":{
895      "type":"structure",
896      "members":{
897        "message":{"shape":"String"}
898      },
899      "exception":true
900    },
901    "InvalidNextTokenException":{
902      "type":"structure",
903      "members":{
904        "message":{"shape":"String"}
905      },
906      "exception":true
907    },
908    "InvalidPolicyException":{
909      "type":"structure",
910      "members":{
911        "message":{"shape":"String"}
912      },
913      "exception":true
914    },
915    "InvalidRequestException":{
916      "type":"structure",
917      "members":{
918        "message":{"shape":"String"}
919      },
920      "exception":true
921    },
922    "InvalidStateException":{
923      "type":"structure",
924      "members":{
925        "message":{"shape":"String"}
926      },
927      "exception":true
928    },
929    "InvalidTagException":{
930      "type":"structure",
931      "members":{
932        "message":{"shape":"String"}
933      },
934      "exception":true
935    },
936    "IssueCertificateRequest":{
937      "type":"structure",
938      "required":[
939        "CertificateAuthorityArn",
940        "Csr",
941        "SigningAlgorithm",
942        "Validity"
943      ],
944      "members":{
945        "ApiPassthrough":{"shape":"ApiPassthrough"},
946        "CertificateAuthorityArn":{"shape":"Arn"},
947        "Csr":{"shape":"CsrBlob"},
948        "SigningAlgorithm":{"shape":"SigningAlgorithm"},
949        "TemplateArn":{"shape":"Arn"},
950        "Validity":{"shape":"Validity"},
951        "ValidityNotBefore":{"shape":"Validity"},
952        "IdempotencyToken":{"shape":"IdempotencyToken"}
953      }
954    },
955    "IssueCertificateResponse":{
956      "type":"structure",
957      "members":{
958        "CertificateArn":{"shape":"Arn"}
959      }
960    },
961    "KeyAlgorithm":{
962      "type":"string",
963      "enum":[
964        "RSA_2048",
965        "RSA_4096",
966        "EC_prime256v1",
967        "EC_secp384r1"
968      ]
969    },
970    "KeyStorageSecurityStandard":{
971      "type":"string",
972      "enum":[
973        "FIPS_140_2_LEVEL_2_OR_HIGHER",
974        "FIPS_140_2_LEVEL_3_OR_HIGHER"
975      ]
976    },
977    "KeyUsage":{
978      "type":"structure",
979      "members":{
980        "DigitalSignature":{"shape":"Boolean"},
981        "NonRepudiation":{"shape":"Boolean"},
982        "KeyEncipherment":{"shape":"Boolean"},
983        "DataEncipherment":{"shape":"Boolean"},
984        "KeyAgreement":{"shape":"Boolean"},
985        "KeyCertSign":{"shape":"Boolean"},
986        "CRLSign":{"shape":"Boolean"},
987        "EncipherOnly":{"shape":"Boolean"},
988        "DecipherOnly":{"shape":"Boolean"}
989      }
990    },
991    "LimitExceededException":{
992      "type":"structure",
993      "members":{
994        "message":{"shape":"String"}
995      },
996      "exception":true
997    },
998    "ListCertificateAuthoritiesRequest":{
999      "type":"structure",
1000      "members":{
1001        "NextToken":{"shape":"NextToken"},
1002        "MaxResults":{"shape":"MaxResults"},
1003        "ResourceOwner":{"shape":"ResourceOwner"}
1004      }
1005    },
1006    "ListCertificateAuthoritiesResponse":{
1007      "type":"structure",
1008      "members":{
1009        "CertificateAuthorities":{"shape":"CertificateAuthorities"},
1010        "NextToken":{"shape":"NextToken"}
1011      }
1012    },
1013    "ListPermissionsRequest":{
1014      "type":"structure",
1015      "required":["CertificateAuthorityArn"],
1016      "members":{
1017        "CertificateAuthorityArn":{"shape":"Arn"},
1018        "NextToken":{"shape":"NextToken"},
1019        "MaxResults":{"shape":"MaxResults"}
1020      }
1021    },
1022    "ListPermissionsResponse":{
1023      "type":"structure",
1024      "members":{
1025        "Permissions":{"shape":"PermissionList"},
1026        "NextToken":{"shape":"NextToken"}
1027      }
1028    },
1029    "ListTagsRequest":{
1030      "type":"structure",
1031      "required":["CertificateAuthorityArn"],
1032      "members":{
1033        "CertificateAuthorityArn":{"shape":"Arn"},
1034        "NextToken":{"shape":"NextToken"},
1035        "MaxResults":{"shape":"MaxResults"}
1036      }
1037    },
1038    "ListTagsResponse":{
1039      "type":"structure",
1040      "members":{
1041        "Tags":{"shape":"TagList"},
1042        "NextToken":{"shape":"NextToken"}
1043      }
1044    },
1045    "LockoutPreventedException":{
1046      "type":"structure",
1047      "members":{
1048        "message":{"shape":"String"}
1049      },
1050      "exception":true
1051    },
1052    "MalformedCSRException":{
1053      "type":"structure",
1054      "members":{
1055        "message":{"shape":"String"}
1056      },
1057      "exception":true
1058    },
1059    "MalformedCertificateException":{
1060      "type":"structure",
1061      "members":{
1062        "message":{"shape":"String"}
1063      },
1064      "exception":true
1065    },
1066    "MaxResults":{
1067      "type":"integer",
1068      "max":1000,
1069      "min":1
1070    },
1071    "NextToken":{
1072      "type":"string",
1073      "max":500,
1074      "min":1
1075    },
1076    "OtherName":{
1077      "type":"structure",
1078      "required":[
1079        "TypeId",
1080        "Value"
1081      ],
1082      "members":{
1083        "TypeId":{"shape":"CustomObjectIdentifier"},
1084        "Value":{"shape":"String256"}
1085      }
1086    },
1087    "PermanentDeletionTimeInDays":{
1088      "type":"integer",
1089      "max":30,
1090      "min":7
1091    },
1092    "Permission":{
1093      "type":"structure",
1094      "members":{
1095        "CertificateAuthorityArn":{"shape":"Arn"},
1096        "CreatedAt":{"shape":"TStamp"},
1097        "Principal":{"shape":"Principal"},
1098        "SourceAccount":{"shape":"AccountId"},
1099        "Actions":{"shape":"ActionList"},
1100        "Policy":{"shape":"AWSPolicy"}
1101      }
1102    },
1103    "PermissionAlreadyExistsException":{
1104      "type":"structure",
1105      "members":{
1106        "message":{"shape":"String"}
1107      },
1108      "exception":true
1109    },
1110    "PermissionList":{
1111      "type":"list",
1112      "member":{"shape":"Permission"},
1113      "min":0
1114    },
1115    "PolicyInformation":{
1116      "type":"structure",
1117      "required":["CertPolicyId"],
1118      "members":{
1119        "CertPolicyId":{"shape":"CustomObjectIdentifier"},
1120        "PolicyQualifiers":{"shape":"PolicyQualifierInfoList"}
1121      }
1122    },
1123    "PolicyQualifierId":{
1124      "type":"string",
1125      "enum":["CPS"]
1126    },
1127    "PolicyQualifierInfo":{
1128      "type":"structure",
1129      "required":[
1130        "PolicyQualifierId",
1131        "Qualifier"
1132      ],
1133      "members":{
1134        "PolicyQualifierId":{"shape":"PolicyQualifierId"},
1135        "Qualifier":{"shape":"Qualifier"}
1136      }
1137    },
1138    "PolicyQualifierInfoList":{
1139      "type":"list",
1140      "member":{"shape":"PolicyQualifierInfo"},
1141      "max":20,
1142      "min":1
1143    },
1144    "PositiveLong":{
1145      "type":"long",
1146      "min":1
1147    },
1148    "Principal":{
1149      "type":"string",
1150      "max":128,
1151      "min":0,
1152      "pattern":"^[^*]+$"
1153    },
1154    "PutPolicyRequest":{
1155      "type":"structure",
1156      "required":[
1157        "ResourceArn",
1158        "Policy"
1159      ],
1160      "members":{
1161        "ResourceArn":{"shape":"Arn"},
1162        "Policy":{"shape":"AWSPolicy"}
1163      }
1164    },
1165    "Qualifier":{
1166      "type":"structure",
1167      "required":["CpsUri"],
1168      "members":{
1169        "CpsUri":{"shape":"String256"}
1170      }
1171    },
1172    "RequestAlreadyProcessedException":{
1173      "type":"structure",
1174      "members":{
1175        "message":{"shape":"String"}
1176      },
1177      "exception":true
1178    },
1179    "RequestFailedException":{
1180      "type":"structure",
1181      "members":{
1182        "message":{"shape":"String"}
1183      },
1184      "exception":true
1185    },
1186    "RequestInProgressException":{
1187      "type":"structure",
1188      "members":{
1189        "message":{"shape":"String"}
1190      },
1191      "exception":true
1192    },
1193    "ResourceNotFoundException":{
1194      "type":"structure",
1195      "members":{
1196        "message":{"shape":"String"}
1197      },
1198      "exception":true
1199    },
1200    "ResourceOwner":{
1201      "type":"string",
1202      "enum":[
1203        "SELF",
1204        "OTHER_ACCOUNTS"
1205      ]
1206    },
1207    "RestoreCertificateAuthorityRequest":{
1208      "type":"structure",
1209      "required":["CertificateAuthorityArn"],
1210      "members":{
1211        "CertificateAuthorityArn":{"shape":"Arn"}
1212      }
1213    },
1214    "RevocationConfiguration":{
1215      "type":"structure",
1216      "members":{
1217        "CrlConfiguration":{"shape":"CrlConfiguration"}
1218      }
1219    },
1220    "RevocationReason":{
1221      "type":"string",
1222      "enum":[
1223        "UNSPECIFIED",
1224        "KEY_COMPROMISE",
1225        "CERTIFICATE_AUTHORITY_COMPROMISE",
1226        "AFFILIATION_CHANGED",
1227        "SUPERSEDED",
1228        "CESSATION_OF_OPERATION",
1229        "PRIVILEGE_WITHDRAWN",
1230        "A_A_COMPROMISE"
1231      ]
1232    },
1233    "RevokeCertificateRequest":{
1234      "type":"structure",
1235      "required":[
1236        "CertificateAuthorityArn",
1237        "CertificateSerial",
1238        "RevocationReason"
1239      ],
1240      "members":{
1241        "CertificateAuthorityArn":{"shape":"Arn"},
1242        "CertificateSerial":{"shape":"String128"},
1243        "RevocationReason":{"shape":"RevocationReason"}
1244      }
1245    },
1246    "S3BucketName":{
1247      "type":"string",
1248      "max":63,
1249      "min":3
1250    },
1251    "S3Key":{
1252      "type":"string",
1253      "max":1024
1254    },
1255    "S3ObjectAcl":{
1256      "type":"string",
1257      "enum":[
1258        "PUBLIC_READ",
1259        "BUCKET_OWNER_FULL_CONTROL"
1260      ]
1261    },
1262    "SigningAlgorithm":{
1263      "type":"string",
1264      "enum":[
1265        "SHA256WITHECDSA",
1266        "SHA384WITHECDSA",
1267        "SHA512WITHECDSA",
1268        "SHA256WITHRSA",
1269        "SHA384WITHRSA",
1270        "SHA512WITHRSA"
1271      ]
1272    },
1273    "String":{"type":"string"},
1274    "String128":{
1275      "type":"string",
1276      "max":128,
1277      "min":0
1278    },
1279    "String16":{
1280      "type":"string",
1281      "max":16,
1282      "min":0
1283    },
1284    "String253":{
1285      "type":"string",
1286      "max":253,
1287      "min":0
1288    },
1289    "String256":{
1290      "type":"string",
1291      "max":256,
1292      "min":0
1293    },
1294    "String3":{
1295      "type":"string",
1296      "max":3,
1297      "min":0
1298    },
1299    "String39":{
1300      "type":"string",
1301      "max":39,
1302      "min":0
1303    },
1304    "String3To255":{
1305      "type":"string",
1306      "max":255,
1307      "min":3
1308    },
1309    "String40":{
1310      "type":"string",
1311      "max":40,
1312      "min":0
1313    },
1314    "String5":{
1315      "type":"string",
1316      "max":5,
1317      "min":0
1318    },
1319    "String64":{
1320      "type":"string",
1321      "max":64,
1322      "min":0
1323    },
1324    "TStamp":{"type":"timestamp"},
1325    "Tag":{
1326      "type":"structure",
1327      "required":["Key"],
1328      "members":{
1329        "Key":{"shape":"TagKey"},
1330        "Value":{"shape":"TagValue"}
1331      }
1332    },
1333    "TagCertificateAuthorityRequest":{
1334      "type":"structure",
1335      "required":[
1336        "CertificateAuthorityArn",
1337        "Tags"
1338      ],
1339      "members":{
1340        "CertificateAuthorityArn":{"shape":"Arn"},
1341        "Tags":{"shape":"TagList"}
1342      }
1343    },
1344    "TagKey":{
1345      "type":"string",
1346      "max":128,
1347      "min":1,
1348      "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"
1349    },
1350    "TagList":{
1351      "type":"list",
1352      "member":{"shape":"Tag"},
1353      "max":50,
1354      "min":1
1355    },
1356    "TagValue":{
1357      "type":"string",
1358      "max":256,
1359      "min":0,
1360      "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"
1361    },
1362    "TooManyTagsException":{
1363      "type":"structure",
1364      "members":{
1365        "message":{"shape":"String"}
1366      },
1367      "exception":true
1368    },
1369    "UntagCertificateAuthorityRequest":{
1370      "type":"structure",
1371      "required":[
1372        "CertificateAuthorityArn",
1373        "Tags"
1374      ],
1375      "members":{
1376        "CertificateAuthorityArn":{"shape":"Arn"},
1377        "Tags":{"shape":"TagList"}
1378      }
1379    },
1380    "UpdateCertificateAuthorityRequest":{
1381      "type":"structure",
1382      "required":["CertificateAuthorityArn"],
1383      "members":{
1384        "CertificateAuthorityArn":{"shape":"Arn"},
1385        "RevocationConfiguration":{"shape":"RevocationConfiguration"},
1386        "Status":{"shape":"CertificateAuthorityStatus"}
1387      }
1388    },
1389    "Validity":{
1390      "type":"structure",
1391      "required":[
1392        "Value",
1393        "Type"
1394      ],
1395      "members":{
1396        "Value":{
1397          "shape":"PositiveLong",
1398          "box":true
1399        },
1400        "Type":{"shape":"ValidityPeriodType"}
1401      }
1402    },
1403    "ValidityPeriodType":{
1404      "type":"string",
1405      "enum":[
1406        "END_DATE",
1407        "ABSOLUTE",
1408        "DAYS",
1409        "MONTHS",
1410        "YEARS"
1411      ]
1412    }
1413  }
1414}
1415