1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"2016-10-06",
5    "endpointPrefix":"codebuild",
6    "jsonVersion":"1.1",
7    "protocol":"json",
8    "serviceFullName":"AWS CodeBuild",
9    "serviceId":"CodeBuild",
10    "signatureVersion":"v4",
11    "targetPrefix":"CodeBuild_20161006",
12    "uid":"codebuild-2016-10-06"
13  },
14  "operations":{
15    "BatchDeleteBuilds":{
16      "name":"BatchDeleteBuilds",
17      "http":{
18        "method":"POST",
19        "requestUri":"/"
20      },
21      "input":{"shape":"BatchDeleteBuildsInput"},
22      "output":{"shape":"BatchDeleteBuildsOutput"},
23      "errors":[
24        {"shape":"InvalidInputException"}
25      ]
26    },
27    "BatchGetBuilds":{
28      "name":"BatchGetBuilds",
29      "http":{
30        "method":"POST",
31        "requestUri":"/"
32      },
33      "input":{"shape":"BatchGetBuildsInput"},
34      "output":{"shape":"BatchGetBuildsOutput"},
35      "errors":[
36        {"shape":"InvalidInputException"}
37      ]
38    },
39    "BatchGetProjects":{
40      "name":"BatchGetProjects",
41      "http":{
42        "method":"POST",
43        "requestUri":"/"
44      },
45      "input":{"shape":"BatchGetProjectsInput"},
46      "output":{"shape":"BatchGetProjectsOutput"},
47      "errors":[
48        {"shape":"InvalidInputException"}
49      ]
50    },
51    "CreateProject":{
52      "name":"CreateProject",
53      "http":{
54        "method":"POST",
55        "requestUri":"/"
56      },
57      "input":{"shape":"CreateProjectInput"},
58      "output":{"shape":"CreateProjectOutput"},
59      "errors":[
60        {"shape":"InvalidInputException"},
61        {"shape":"ResourceAlreadyExistsException"},
62        {"shape":"AccountLimitExceededException"}
63      ]
64    },
65    "CreateWebhook":{
66      "name":"CreateWebhook",
67      "http":{
68        "method":"POST",
69        "requestUri":"/"
70      },
71      "input":{"shape":"CreateWebhookInput"},
72      "output":{"shape":"CreateWebhookOutput"},
73      "errors":[
74        {"shape":"InvalidInputException"},
75        {"shape":"OAuthProviderException"},
76        {"shape":"ResourceAlreadyExistsException"},
77        {"shape":"ResourceNotFoundException"}
78      ]
79    },
80    "DeleteProject":{
81      "name":"DeleteProject",
82      "http":{
83        "method":"POST",
84        "requestUri":"/"
85      },
86      "input":{"shape":"DeleteProjectInput"},
87      "output":{"shape":"DeleteProjectOutput"},
88      "errors":[
89        {"shape":"InvalidInputException"}
90      ]
91    },
92    "DeleteSourceCredentials":{
93      "name":"DeleteSourceCredentials",
94      "http":{
95        "method":"POST",
96        "requestUri":"/"
97      },
98      "input":{"shape":"DeleteSourceCredentialsInput"},
99      "output":{"shape":"DeleteSourceCredentialsOutput"},
100      "errors":[
101        {"shape":"InvalidInputException"},
102        {"shape":"ResourceNotFoundException"}
103      ]
104    },
105    "DeleteWebhook":{
106      "name":"DeleteWebhook",
107      "http":{
108        "method":"POST",
109        "requestUri":"/"
110      },
111      "input":{"shape":"DeleteWebhookInput"},
112      "output":{"shape":"DeleteWebhookOutput"},
113      "errors":[
114        {"shape":"InvalidInputException"},
115        {"shape":"ResourceNotFoundException"},
116        {"shape":"OAuthProviderException"}
117      ]
118    },
119    "ImportSourceCredentials":{
120      "name":"ImportSourceCredentials",
121      "http":{
122        "method":"POST",
123        "requestUri":"/"
124      },
125      "input":{"shape":"ImportSourceCredentialsInput"},
126      "output":{"shape":"ImportSourceCredentialsOutput"},
127      "errors":[
128        {"shape":"InvalidInputException"},
129        {"shape":"AccountLimitExceededException"}
130      ]
131    },
132    "InvalidateProjectCache":{
133      "name":"InvalidateProjectCache",
134      "http":{
135        "method":"POST",
136        "requestUri":"/"
137      },
138      "input":{"shape":"InvalidateProjectCacheInput"},
139      "output":{"shape":"InvalidateProjectCacheOutput"},
140      "errors":[
141        {"shape":"InvalidInputException"},
142        {"shape":"ResourceNotFoundException"}
143      ]
144    },
145    "ListBuilds":{
146      "name":"ListBuilds",
147      "http":{
148        "method":"POST",
149        "requestUri":"/"
150      },
151      "input":{"shape":"ListBuildsInput"},
152      "output":{"shape":"ListBuildsOutput"},
153      "errors":[
154        {"shape":"InvalidInputException"}
155      ]
156    },
157    "ListBuildsForProject":{
158      "name":"ListBuildsForProject",
159      "http":{
160        "method":"POST",
161        "requestUri":"/"
162      },
163      "input":{"shape":"ListBuildsForProjectInput"},
164      "output":{"shape":"ListBuildsForProjectOutput"},
165      "errors":[
166        {"shape":"InvalidInputException"},
167        {"shape":"ResourceNotFoundException"}
168      ]
169    },
170    "ListCuratedEnvironmentImages":{
171      "name":"ListCuratedEnvironmentImages",
172      "http":{
173        "method":"POST",
174        "requestUri":"/"
175      },
176      "input":{"shape":"ListCuratedEnvironmentImagesInput"},
177      "output":{"shape":"ListCuratedEnvironmentImagesOutput"}
178    },
179    "ListProjects":{
180      "name":"ListProjects",
181      "http":{
182        "method":"POST",
183        "requestUri":"/"
184      },
185      "input":{"shape":"ListProjectsInput"},
186      "output":{"shape":"ListProjectsOutput"},
187      "errors":[
188        {"shape":"InvalidInputException"}
189      ]
190    },
191    "ListSourceCredentials":{
192      "name":"ListSourceCredentials",
193      "http":{
194        "method":"POST",
195        "requestUri":"/"
196      },
197      "input":{"shape":"ListSourceCredentialsInput"},
198      "output":{"shape":"ListSourceCredentialsOutput"}
199    },
200    "StartBuild":{
201      "name":"StartBuild",
202      "http":{
203        "method":"POST",
204        "requestUri":"/"
205      },
206      "input":{"shape":"StartBuildInput"},
207      "output":{"shape":"StartBuildOutput"},
208      "errors":[
209        {"shape":"InvalidInputException"},
210        {"shape":"ResourceNotFoundException"},
211        {"shape":"AccountLimitExceededException"}
212      ]
213    },
214    "StopBuild":{
215      "name":"StopBuild",
216      "http":{
217        "method":"POST",
218        "requestUri":"/"
219      },
220      "input":{"shape":"StopBuildInput"},
221      "output":{"shape":"StopBuildOutput"},
222      "errors":[
223        {"shape":"InvalidInputException"},
224        {"shape":"ResourceNotFoundException"}
225      ]
226    },
227    "UpdateProject":{
228      "name":"UpdateProject",
229      "http":{
230        "method":"POST",
231        "requestUri":"/"
232      },
233      "input":{"shape":"UpdateProjectInput"},
234      "output":{"shape":"UpdateProjectOutput"},
235      "errors":[
236        {"shape":"InvalidInputException"},
237        {"shape":"ResourceNotFoundException"}
238      ]
239    },
240    "UpdateWebhook":{
241      "name":"UpdateWebhook",
242      "http":{
243        "method":"POST",
244        "requestUri":"/"
245      },
246      "input":{"shape":"UpdateWebhookInput"},
247      "output":{"shape":"UpdateWebhookOutput"},
248      "errors":[
249        {"shape":"InvalidInputException"},
250        {"shape":"ResourceNotFoundException"},
251        {"shape":"OAuthProviderException"}
252      ]
253    }
254  },
255  "shapes":{
256    "AccountLimitExceededException":{
257      "type":"structure",
258      "members":{
259      },
260      "exception":true
261    },
262    "ArtifactNamespace":{
263      "type":"string",
264      "enum":[
265        "NONE",
266        "BUILD_ID"
267      ]
268    },
269    "ArtifactPackaging":{
270      "type":"string",
271      "enum":[
272        "NONE",
273        "ZIP"
274      ]
275    },
276    "ArtifactsType":{
277      "type":"string",
278      "enum":[
279        "CODEPIPELINE",
280        "S3",
281        "NO_ARTIFACTS"
282      ]
283    },
284    "AuthType":{
285      "type":"string",
286      "enum":[
287        "OAUTH",
288        "BASIC_AUTH",
289        "PERSONAL_ACCESS_TOKEN"
290      ]
291    },
292    "BatchDeleteBuildsInput":{
293      "type":"structure",
294      "required":["ids"],
295      "members":{
296        "ids":{"shape":"BuildIds"}
297      }
298    },
299    "BatchDeleteBuildsOutput":{
300      "type":"structure",
301      "members":{
302        "buildsDeleted":{"shape":"BuildIds"},
303        "buildsNotDeleted":{"shape":"BuildsNotDeleted"}
304      }
305    },
306    "BatchGetBuildsInput":{
307      "type":"structure",
308      "required":["ids"],
309      "members":{
310        "ids":{"shape":"BuildIds"}
311      }
312    },
313    "BatchGetBuildsOutput":{
314      "type":"structure",
315      "members":{
316        "builds":{"shape":"Builds"},
317        "buildsNotFound":{"shape":"BuildIds"}
318      }
319    },
320    "BatchGetProjectsInput":{
321      "type":"structure",
322      "required":["names"],
323      "members":{
324        "names":{"shape":"ProjectNames"}
325      }
326    },
327    "BatchGetProjectsOutput":{
328      "type":"structure",
329      "members":{
330        "projects":{"shape":"Projects"},
331        "projectsNotFound":{"shape":"ProjectNames"}
332      }
333    },
334    "Boolean":{"type":"boolean"},
335    "Build":{
336      "type":"structure",
337      "members":{
338        "id":{"shape":"NonEmptyString"},
339        "arn":{"shape":"NonEmptyString"},
340        "startTime":{"shape":"Timestamp"},
341        "endTime":{"shape":"Timestamp"},
342        "currentPhase":{"shape":"String"},
343        "buildStatus":{"shape":"StatusType"},
344        "sourceVersion":{"shape":"NonEmptyString"},
345        "resolvedSourceVersion":{"shape":"NonEmptyString"},
346        "projectName":{"shape":"NonEmptyString"},
347        "phases":{"shape":"BuildPhases"},
348        "source":{"shape":"ProjectSource"},
349        "secondarySources":{"shape":"ProjectSources"},
350        "secondarySourceVersions":{"shape":"ProjectSecondarySourceVersions"},
351        "artifacts":{"shape":"BuildArtifacts"},
352        "secondaryArtifacts":{"shape":"BuildArtifactsList"},
353        "cache":{"shape":"ProjectCache"},
354        "environment":{"shape":"ProjectEnvironment"},
355        "serviceRole":{"shape":"NonEmptyString"},
356        "logs":{"shape":"LogsLocation"},
357        "timeoutInMinutes":{"shape":"WrapperInt"},
358        "queuedTimeoutInMinutes":{"shape":"WrapperInt"},
359        "buildComplete":{"shape":"Boolean"},
360        "initiator":{"shape":"String"},
361        "vpcConfig":{"shape":"VpcConfig"},
362        "networkInterface":{"shape":"NetworkInterface"},
363        "encryptionKey":{"shape":"NonEmptyString"}
364      }
365    },
366    "BuildArtifacts":{
367      "type":"structure",
368      "members":{
369        "location":{"shape":"String"},
370        "sha256sum":{"shape":"String"},
371        "md5sum":{"shape":"String"},
372        "overrideArtifactName":{"shape":"WrapperBoolean"},
373        "encryptionDisabled":{"shape":"WrapperBoolean"},
374        "artifactIdentifier":{"shape":"String"}
375      }
376    },
377    "BuildArtifactsList":{
378      "type":"list",
379      "member":{"shape":"BuildArtifacts"},
380      "max":12,
381      "min":0
382    },
383    "BuildIds":{
384      "type":"list",
385      "member":{"shape":"NonEmptyString"},
386      "max":100,
387      "min":1
388    },
389    "BuildNotDeleted":{
390      "type":"structure",
391      "members":{
392        "id":{"shape":"NonEmptyString"},
393        "statusCode":{"shape":"String"}
394      }
395    },
396    "BuildPhase":{
397      "type":"structure",
398      "members":{
399        "phaseType":{"shape":"BuildPhaseType"},
400        "phaseStatus":{"shape":"StatusType"},
401        "startTime":{"shape":"Timestamp"},
402        "endTime":{"shape":"Timestamp"},
403        "durationInSeconds":{"shape":"WrapperLong"},
404        "contexts":{"shape":"PhaseContexts"}
405      }
406    },
407    "BuildPhaseType":{
408      "type":"string",
409      "enum":[
410        "SUBMITTED",
411        "QUEUED",
412        "PROVISIONING",
413        "DOWNLOAD_SOURCE",
414        "INSTALL",
415        "PRE_BUILD",
416        "BUILD",
417        "POST_BUILD",
418        "UPLOAD_ARTIFACTS",
419        "FINALIZING",
420        "COMPLETED"
421      ]
422    },
423    "BuildPhases":{
424      "type":"list",
425      "member":{"shape":"BuildPhase"}
426    },
427    "Builds":{
428      "type":"list",
429      "member":{"shape":"Build"}
430    },
431    "BuildsNotDeleted":{
432      "type":"list",
433      "member":{"shape":"BuildNotDeleted"}
434    },
435    "CacheMode":{
436      "type":"string",
437      "enum":[
438        "LOCAL_DOCKER_LAYER_CACHE",
439        "LOCAL_SOURCE_CACHE",
440        "LOCAL_CUSTOM_CACHE"
441      ]
442    },
443    "CacheType":{
444      "type":"string",
445      "enum":[
446        "NO_CACHE",
447        "S3",
448        "LOCAL"
449      ]
450    },
451    "CloudWatchLogsConfig":{
452      "type":"structure",
453      "required":["status"],
454      "members":{
455        "status":{"shape":"LogsConfigStatusType"},
456        "groupName":{"shape":"String"},
457        "streamName":{"shape":"String"}
458      }
459    },
460    "ComputeType":{
461      "type":"string",
462      "enum":[
463        "BUILD_GENERAL1_SMALL",
464        "BUILD_GENERAL1_MEDIUM",
465        "BUILD_GENERAL1_LARGE"
466      ]
467    },
468    "CreateProjectInput":{
469      "type":"structure",
470      "required":[
471        "name",
472        "source",
473        "artifacts",
474        "environment",
475        "serviceRole"
476      ],
477      "members":{
478        "name":{"shape":"ProjectName"},
479        "description":{"shape":"ProjectDescription"},
480        "source":{"shape":"ProjectSource"},
481        "secondarySources":{"shape":"ProjectSources"},
482        "sourceVersion":{"shape":"String"},
483        "secondarySourceVersions":{"shape":"ProjectSecondarySourceVersions"},
484        "artifacts":{"shape":"ProjectArtifacts"},
485        "secondaryArtifacts":{"shape":"ProjectArtifactsList"},
486        "cache":{"shape":"ProjectCache"},
487        "environment":{"shape":"ProjectEnvironment"},
488        "serviceRole":{"shape":"NonEmptyString"},
489        "timeoutInMinutes":{"shape":"TimeOut"},
490        "queuedTimeoutInMinutes":{"shape":"TimeOut"},
491        "encryptionKey":{"shape":"NonEmptyString"},
492        "tags":{"shape":"TagList"},
493        "vpcConfig":{"shape":"VpcConfig"},
494        "badgeEnabled":{"shape":"WrapperBoolean"},
495        "logsConfig":{"shape":"LogsConfig"}
496      }
497    },
498    "CreateProjectOutput":{
499      "type":"structure",
500      "members":{
501        "project":{"shape":"Project"}
502      }
503    },
504    "CreateWebhookInput":{
505      "type":"structure",
506      "required":["projectName"],
507      "members":{
508        "projectName":{"shape":"ProjectName"},
509        "branchFilter":{"shape":"String"},
510        "filterGroups":{"shape":"FilterGroups"}
511      }
512    },
513    "CreateWebhookOutput":{
514      "type":"structure",
515      "members":{
516        "webhook":{"shape":"Webhook"}
517      }
518    },
519    "CredentialProviderType":{
520      "type":"string",
521      "enum":["SECRETS_MANAGER"]
522    },
523    "DeleteProjectInput":{
524      "type":"structure",
525      "required":["name"],
526      "members":{
527        "name":{"shape":"NonEmptyString"}
528      }
529    },
530    "DeleteProjectOutput":{
531      "type":"structure",
532      "members":{
533      }
534    },
535    "DeleteSourceCredentialsInput":{
536      "type":"structure",
537      "required":["arn"],
538      "members":{
539        "arn":{"shape":"NonEmptyString"}
540      }
541    },
542    "DeleteSourceCredentialsOutput":{
543      "type":"structure",
544      "members":{
545        "arn":{"shape":"NonEmptyString"}
546      }
547    },
548    "DeleteWebhookInput":{
549      "type":"structure",
550      "required":["projectName"],
551      "members":{
552        "projectName":{"shape":"ProjectName"}
553      }
554    },
555    "DeleteWebhookOutput":{
556      "type":"structure",
557      "members":{
558      }
559    },
560    "EnvironmentImage":{
561      "type":"structure",
562      "members":{
563        "name":{"shape":"String"},
564        "description":{"shape":"String"},
565        "versions":{"shape":"ImageVersions"}
566      }
567    },
568    "EnvironmentImages":{
569      "type":"list",
570      "member":{"shape":"EnvironmentImage"}
571    },
572    "EnvironmentLanguage":{
573      "type":"structure",
574      "members":{
575        "language":{"shape":"LanguageType"},
576        "images":{"shape":"EnvironmentImages"}
577      }
578    },
579    "EnvironmentLanguages":{
580      "type":"list",
581      "member":{"shape":"EnvironmentLanguage"}
582    },
583    "EnvironmentPlatform":{
584      "type":"structure",
585      "members":{
586        "platform":{"shape":"PlatformType"},
587        "languages":{"shape":"EnvironmentLanguages"}
588      }
589    },
590    "EnvironmentPlatforms":{
591      "type":"list",
592      "member":{"shape":"EnvironmentPlatform"}
593    },
594    "EnvironmentType":{
595      "type":"string",
596      "enum":[
597        "WINDOWS_CONTAINER",
598        "LINUX_CONTAINER"
599      ]
600    },
601    "EnvironmentVariable":{
602      "type":"structure",
603      "required":[
604        "name",
605        "value"
606      ],
607      "members":{
608        "name":{"shape":"NonEmptyString"},
609        "value":{"shape":"String"},
610        "type":{"shape":"EnvironmentVariableType"}
611      }
612    },
613    "EnvironmentVariableType":{
614      "type":"string",
615      "enum":[
616        "PLAINTEXT",
617        "PARAMETER_STORE"
618      ]
619    },
620    "EnvironmentVariables":{
621      "type":"list",
622      "member":{"shape":"EnvironmentVariable"}
623    },
624    "FilterGroup":{
625      "type":"list",
626      "member":{"shape":"WebhookFilter"}
627    },
628    "FilterGroups":{
629      "type":"list",
630      "member":{"shape":"FilterGroup"}
631    },
632    "GitCloneDepth":{
633      "type":"integer",
634      "min":0
635    },
636    "GitSubmodulesConfig":{
637      "type":"structure",
638      "required":["fetchSubmodules"],
639      "members":{
640        "fetchSubmodules":{"shape":"WrapperBoolean"}
641      }
642    },
643    "ImagePullCredentialsType":{
644      "type":"string",
645      "enum":[
646        "CODEBUILD",
647        "SERVICE_ROLE"
648      ]
649    },
650    "ImageVersions":{
651      "type":"list",
652      "member":{"shape":"String"}
653    },
654    "ImportSourceCredentialsInput":{
655      "type":"structure",
656      "required":[
657        "token",
658        "serverType",
659        "authType"
660      ],
661      "members":{
662        "username":{"shape":"NonEmptyString"},
663        "token":{"shape":"SensitiveNonEmptyString"},
664        "serverType":{"shape":"ServerType"},
665        "authType":{"shape":"AuthType"}
666      }
667    },
668    "ImportSourceCredentialsOutput":{
669      "type":"structure",
670      "members":{
671        "arn":{"shape":"NonEmptyString"}
672      }
673    },
674    "InvalidInputException":{
675      "type":"structure",
676      "members":{
677      },
678      "exception":true
679    },
680    "InvalidateProjectCacheInput":{
681      "type":"structure",
682      "required":["projectName"],
683      "members":{
684        "projectName":{"shape":"NonEmptyString"}
685      }
686    },
687    "InvalidateProjectCacheOutput":{
688      "type":"structure",
689      "members":{
690      }
691    },
692    "KeyInput":{
693      "type":"string",
694      "max":127,
695      "min":1,
696      "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=@+\\-]*)$"
697    },
698    "LanguageType":{
699      "type":"string",
700      "enum":[
701        "JAVA",
702        "PYTHON",
703        "NODE_JS",
704        "RUBY",
705        "GOLANG",
706        "DOCKER",
707        "ANDROID",
708        "DOTNET",
709        "BASE",
710        "PHP"
711      ]
712    },
713    "ListBuildsForProjectInput":{
714      "type":"structure",
715      "required":["projectName"],
716      "members":{
717        "projectName":{"shape":"NonEmptyString"},
718        "sortOrder":{"shape":"SortOrderType"},
719        "nextToken":{"shape":"String"}
720      }
721    },
722    "ListBuildsForProjectOutput":{
723      "type":"structure",
724      "members":{
725        "ids":{"shape":"BuildIds"},
726        "nextToken":{"shape":"String"}
727      }
728    },
729    "ListBuildsInput":{
730      "type":"structure",
731      "members":{
732        "sortOrder":{"shape":"SortOrderType"},
733        "nextToken":{"shape":"String"}
734      }
735    },
736    "ListBuildsOutput":{
737      "type":"structure",
738      "members":{
739        "ids":{"shape":"BuildIds"},
740        "nextToken":{"shape":"String"}
741      }
742    },
743    "ListCuratedEnvironmentImagesInput":{
744      "type":"structure",
745      "members":{
746      }
747    },
748    "ListCuratedEnvironmentImagesOutput":{
749      "type":"structure",
750      "members":{
751        "platforms":{"shape":"EnvironmentPlatforms"}
752      }
753    },
754    "ListProjectsInput":{
755      "type":"structure",
756      "members":{
757        "sortBy":{"shape":"ProjectSortByType"},
758        "sortOrder":{"shape":"SortOrderType"},
759        "nextToken":{"shape":"NonEmptyString"}
760      }
761    },
762    "ListProjectsOutput":{
763      "type":"structure",
764      "members":{
765        "nextToken":{"shape":"String"},
766        "projects":{"shape":"ProjectNames"}
767      }
768    },
769    "ListSourceCredentialsInput":{
770      "type":"structure",
771      "members":{
772      }
773    },
774    "ListSourceCredentialsOutput":{
775      "type":"structure",
776      "members":{
777        "sourceCredentialsInfos":{"shape":"SourceCredentialsInfos"}
778      }
779    },
780    "LogsConfig":{
781      "type":"structure",
782      "members":{
783        "cloudWatchLogs":{"shape":"CloudWatchLogsConfig"},
784        "s3Logs":{"shape":"S3LogsConfig"}
785      }
786    },
787    "LogsConfigStatusType":{
788      "type":"string",
789      "enum":[
790        "ENABLED",
791        "DISABLED"
792      ]
793    },
794    "LogsLocation":{
795      "type":"structure",
796      "members":{
797        "groupName":{"shape":"String"},
798        "streamName":{"shape":"String"},
799        "deepLink":{"shape":"String"},
800        "s3DeepLink":{"shape":"String"},
801        "cloudWatchLogs":{"shape":"CloudWatchLogsConfig"},
802        "s3Logs":{"shape":"S3LogsConfig"}
803      }
804    },
805    "NetworkInterface":{
806      "type":"structure",
807      "members":{
808        "subnetId":{"shape":"NonEmptyString"},
809        "networkInterfaceId":{"shape":"NonEmptyString"}
810      }
811    },
812    "NonEmptyString":{
813      "type":"string",
814      "min":1
815    },
816    "OAuthProviderException":{
817      "type":"structure",
818      "members":{
819      },
820      "exception":true
821    },
822    "PhaseContext":{
823      "type":"structure",
824      "members":{
825        "statusCode":{"shape":"String"},
826        "message":{"shape":"String"}
827      }
828    },
829    "PhaseContexts":{
830      "type":"list",
831      "member":{"shape":"PhaseContext"}
832    },
833    "PlatformType":{
834      "type":"string",
835      "enum":[
836        "DEBIAN",
837        "AMAZON_LINUX",
838        "UBUNTU",
839        "WINDOWS_SERVER"
840      ]
841    },
842    "Project":{
843      "type":"structure",
844      "members":{
845        "name":{"shape":"ProjectName"},
846        "arn":{"shape":"String"},
847        "description":{"shape":"ProjectDescription"},
848        "source":{"shape":"ProjectSource"},
849        "secondarySources":{"shape":"ProjectSources"},
850        "sourceVersion":{"shape":"String"},
851        "secondarySourceVersions":{"shape":"ProjectSecondarySourceVersions"},
852        "artifacts":{"shape":"ProjectArtifacts"},
853        "secondaryArtifacts":{"shape":"ProjectArtifactsList"},
854        "cache":{"shape":"ProjectCache"},
855        "environment":{"shape":"ProjectEnvironment"},
856        "serviceRole":{"shape":"NonEmptyString"},
857        "timeoutInMinutes":{"shape":"TimeOut"},
858        "queuedTimeoutInMinutes":{"shape":"TimeOut"},
859        "encryptionKey":{"shape":"NonEmptyString"},
860        "tags":{"shape":"TagList"},
861        "created":{"shape":"Timestamp"},
862        "lastModified":{"shape":"Timestamp"},
863        "webhook":{"shape":"Webhook"},
864        "vpcConfig":{"shape":"VpcConfig"},
865        "badge":{"shape":"ProjectBadge"},
866        "logsConfig":{"shape":"LogsConfig"}
867      }
868    },
869    "ProjectArtifacts":{
870      "type":"structure",
871      "required":["type"],
872      "members":{
873        "type":{"shape":"ArtifactsType"},
874        "location":{"shape":"String"},
875        "path":{"shape":"String"},
876        "namespaceType":{"shape":"ArtifactNamespace"},
877        "name":{"shape":"String"},
878        "packaging":{"shape":"ArtifactPackaging"},
879        "overrideArtifactName":{"shape":"WrapperBoolean"},
880        "encryptionDisabled":{"shape":"WrapperBoolean"},
881        "artifactIdentifier":{"shape":"String"}
882      }
883    },
884    "ProjectArtifactsList":{
885      "type":"list",
886      "member":{"shape":"ProjectArtifacts"},
887      "max":12,
888      "min":0
889    },
890    "ProjectBadge":{
891      "type":"structure",
892      "members":{
893        "badgeEnabled":{"shape":"Boolean"},
894        "badgeRequestUrl":{"shape":"String"}
895      }
896    },
897    "ProjectCache":{
898      "type":"structure",
899      "required":["type"],
900      "members":{
901        "type":{"shape":"CacheType"},
902        "location":{"shape":"String"},
903        "modes":{"shape":"ProjectCacheModes"}
904      }
905    },
906    "ProjectCacheModes":{
907      "type":"list",
908      "member":{"shape":"CacheMode"}
909    },
910    "ProjectDescription":{
911      "type":"string",
912      "max":255,
913      "min":0
914    },
915    "ProjectEnvironment":{
916      "type":"structure",
917      "required":[
918        "type",
919        "image",
920        "computeType"
921      ],
922      "members":{
923        "type":{"shape":"EnvironmentType"},
924        "image":{"shape":"NonEmptyString"},
925        "computeType":{"shape":"ComputeType"},
926        "environmentVariables":{"shape":"EnvironmentVariables"},
927        "privilegedMode":{"shape":"WrapperBoolean"},
928        "certificate":{"shape":"String"},
929        "registryCredential":{"shape":"RegistryCredential"},
930        "imagePullCredentialsType":{"shape":"ImagePullCredentialsType"}
931      }
932    },
933    "ProjectName":{
934      "type":"string",
935      "max":255,
936      "min":2,
937      "pattern":"[A-Za-z0-9][A-Za-z0-9\\-_]{1,254}"
938    },
939    "ProjectNames":{
940      "type":"list",
941      "member":{"shape":"NonEmptyString"},
942      "max":100,
943      "min":1
944    },
945    "ProjectSecondarySourceVersions":{
946      "type":"list",
947      "member":{"shape":"ProjectSourceVersion"},
948      "max":12,
949      "min":0
950    },
951    "ProjectSortByType":{
952      "type":"string",
953      "enum":[
954        "NAME",
955        "CREATED_TIME",
956        "LAST_MODIFIED_TIME"
957      ]
958    },
959    "ProjectSource":{
960      "type":"structure",
961      "required":["type"],
962      "members":{
963        "type":{"shape":"SourceType"},
964        "location":{"shape":"String"},
965        "gitCloneDepth":{"shape":"GitCloneDepth"},
966        "gitSubmodulesConfig":{"shape":"GitSubmodulesConfig"},
967        "buildspec":{"shape":"String"},
968        "auth":{"shape":"SourceAuth"},
969        "reportBuildStatus":{"shape":"WrapperBoolean"},
970        "insecureSsl":{"shape":"WrapperBoolean"},
971        "sourceIdentifier":{"shape":"String"}
972      }
973    },
974    "ProjectSourceVersion":{
975      "type":"structure",
976      "required":[
977        "sourceIdentifier",
978        "sourceVersion"
979      ],
980      "members":{
981        "sourceIdentifier":{"shape":"String"},
982        "sourceVersion":{"shape":"String"}
983      }
984    },
985    "ProjectSources":{
986      "type":"list",
987      "member":{"shape":"ProjectSource"},
988      "max":12,
989      "min":0
990    },
991    "Projects":{
992      "type":"list",
993      "member":{"shape":"Project"}
994    },
995    "RegistryCredential":{
996      "type":"structure",
997      "required":[
998        "credential",
999        "credentialProvider"
1000      ],
1001      "members":{
1002        "credential":{"shape":"NonEmptyString"},
1003        "credentialProvider":{"shape":"CredentialProviderType"}
1004      }
1005    },
1006    "ResourceAlreadyExistsException":{
1007      "type":"structure",
1008      "members":{
1009      },
1010      "exception":true
1011    },
1012    "ResourceNotFoundException":{
1013      "type":"structure",
1014      "members":{
1015      },
1016      "exception":true
1017    },
1018    "S3LogsConfig":{
1019      "type":"structure",
1020      "required":["status"],
1021      "members":{
1022        "status":{"shape":"LogsConfigStatusType"},
1023        "location":{"shape":"String"},
1024        "encryptionDisabled":{"shape":"WrapperBoolean"}
1025      }
1026    },
1027    "SecurityGroupIds":{
1028      "type":"list",
1029      "member":{"shape":"NonEmptyString"},
1030      "max":5
1031    },
1032    "SensitiveNonEmptyString":{
1033      "type":"string",
1034      "min":1,
1035      "sensitive":true
1036    },
1037    "ServerType":{
1038      "type":"string",
1039      "enum":[
1040        "GITHUB",
1041        "BITBUCKET",
1042        "GITHUB_ENTERPRISE"
1043      ]
1044    },
1045    "SortOrderType":{
1046      "type":"string",
1047      "enum":[
1048        "ASCENDING",
1049        "DESCENDING"
1050      ]
1051    },
1052    "SourceAuth":{
1053      "type":"structure",
1054      "required":["type"],
1055      "members":{
1056        "type":{"shape":"SourceAuthType"},
1057        "resource":{"shape":"String"}
1058      }
1059    },
1060    "SourceAuthType":{
1061      "type":"string",
1062      "enum":["OAUTH"]
1063    },
1064    "SourceCredentialsInfo":{
1065      "type":"structure",
1066      "members":{
1067        "arn":{"shape":"NonEmptyString"},
1068        "serverType":{"shape":"ServerType"},
1069        "authType":{"shape":"AuthType"}
1070      }
1071    },
1072    "SourceCredentialsInfos":{
1073      "type":"list",
1074      "member":{"shape":"SourceCredentialsInfo"}
1075    },
1076    "SourceType":{
1077      "type":"string",
1078      "enum":[
1079        "CODECOMMIT",
1080        "CODEPIPELINE",
1081        "GITHUB",
1082        "S3",
1083        "BITBUCKET",
1084        "GITHUB_ENTERPRISE",
1085        "NO_SOURCE"
1086      ]
1087    },
1088    "StartBuildInput":{
1089      "type":"structure",
1090      "required":["projectName"],
1091      "members":{
1092        "projectName":{"shape":"NonEmptyString"},
1093        "secondarySourcesOverride":{"shape":"ProjectSources"},
1094        "secondarySourcesVersionOverride":{"shape":"ProjectSecondarySourceVersions"},
1095        "sourceVersion":{"shape":"String"},
1096        "artifactsOverride":{"shape":"ProjectArtifacts"},
1097        "secondaryArtifactsOverride":{"shape":"ProjectArtifactsList"},
1098        "environmentVariablesOverride":{"shape":"EnvironmentVariables"},
1099        "sourceTypeOverride":{"shape":"SourceType"},
1100        "sourceLocationOverride":{"shape":"String"},
1101        "sourceAuthOverride":{"shape":"SourceAuth"},
1102        "gitCloneDepthOverride":{"shape":"GitCloneDepth"},
1103        "gitSubmodulesConfigOverride":{"shape":"GitSubmodulesConfig"},
1104        "buildspecOverride":{"shape":"String"},
1105        "insecureSslOverride":{"shape":"WrapperBoolean"},
1106        "reportBuildStatusOverride":{"shape":"WrapperBoolean"},
1107        "environmentTypeOverride":{"shape":"EnvironmentType"},
1108        "imageOverride":{"shape":"NonEmptyString"},
1109        "computeTypeOverride":{"shape":"ComputeType"},
1110        "certificateOverride":{"shape":"String"},
1111        "cacheOverride":{"shape":"ProjectCache"},
1112        "serviceRoleOverride":{"shape":"NonEmptyString"},
1113        "privilegedModeOverride":{"shape":"WrapperBoolean"},
1114        "timeoutInMinutesOverride":{"shape":"TimeOut"},
1115        "queuedTimeoutInMinutesOverride":{"shape":"TimeOut"},
1116        "idempotencyToken":{"shape":"String"},
1117        "logsConfigOverride":{"shape":"LogsConfig"},
1118        "registryCredentialOverride":{"shape":"RegistryCredential"},
1119        "imagePullCredentialsTypeOverride":{"shape":"ImagePullCredentialsType"}
1120      }
1121    },
1122    "StartBuildOutput":{
1123      "type":"structure",
1124      "members":{
1125        "build":{"shape":"Build"}
1126      }
1127    },
1128    "StatusType":{
1129      "type":"string",
1130      "enum":[
1131        "SUCCEEDED",
1132        "FAILED",
1133        "FAULT",
1134        "TIMED_OUT",
1135        "IN_PROGRESS",
1136        "STOPPED"
1137      ]
1138    },
1139    "StopBuildInput":{
1140      "type":"structure",
1141      "required":["id"],
1142      "members":{
1143        "id":{"shape":"NonEmptyString"}
1144      }
1145    },
1146    "StopBuildOutput":{
1147      "type":"structure",
1148      "members":{
1149        "build":{"shape":"Build"}
1150      }
1151    },
1152    "String":{"type":"string"},
1153    "Subnets":{
1154      "type":"list",
1155      "member":{"shape":"NonEmptyString"},
1156      "max":16
1157    },
1158    "Tag":{
1159      "type":"structure",
1160      "members":{
1161        "key":{"shape":"KeyInput"},
1162        "value":{"shape":"ValueInput"}
1163      }
1164    },
1165    "TagList":{
1166      "type":"list",
1167      "member":{"shape":"Tag"},
1168      "max":50,
1169      "min":0
1170    },
1171    "TimeOut":{
1172      "type":"integer",
1173      "max":480,
1174      "min":5
1175    },
1176    "Timestamp":{"type":"timestamp"},
1177    "UpdateProjectInput":{
1178      "type":"structure",
1179      "required":["name"],
1180      "members":{
1181        "name":{"shape":"NonEmptyString"},
1182        "description":{"shape":"ProjectDescription"},
1183        "source":{"shape":"ProjectSource"},
1184        "secondarySources":{"shape":"ProjectSources"},
1185        "sourceVersion":{"shape":"String"},
1186        "secondarySourceVersions":{"shape":"ProjectSecondarySourceVersions"},
1187        "artifacts":{"shape":"ProjectArtifacts"},
1188        "secondaryArtifacts":{"shape":"ProjectArtifactsList"},
1189        "cache":{"shape":"ProjectCache"},
1190        "environment":{"shape":"ProjectEnvironment"},
1191        "serviceRole":{"shape":"NonEmptyString"},
1192        "timeoutInMinutes":{"shape":"TimeOut"},
1193        "queuedTimeoutInMinutes":{"shape":"TimeOut"},
1194        "encryptionKey":{"shape":"NonEmptyString"},
1195        "tags":{"shape":"TagList"},
1196        "vpcConfig":{"shape":"VpcConfig"},
1197        "badgeEnabled":{"shape":"WrapperBoolean"},
1198        "logsConfig":{"shape":"LogsConfig"}
1199      }
1200    },
1201    "UpdateProjectOutput":{
1202      "type":"structure",
1203      "members":{
1204        "project":{"shape":"Project"}
1205      }
1206    },
1207    "UpdateWebhookInput":{
1208      "type":"structure",
1209      "required":["projectName"],
1210      "members":{
1211        "projectName":{"shape":"ProjectName"},
1212        "branchFilter":{"shape":"String"},
1213        "rotateSecret":{"shape":"Boolean"},
1214        "filterGroups":{"shape":"FilterGroups"}
1215      }
1216    },
1217    "UpdateWebhookOutput":{
1218      "type":"structure",
1219      "members":{
1220        "webhook":{"shape":"Webhook"}
1221      }
1222    },
1223    "ValueInput":{
1224      "type":"string",
1225      "max":255,
1226      "min":1,
1227      "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=@+\\-]*)$"
1228    },
1229    "VpcConfig":{
1230      "type":"structure",
1231      "members":{
1232        "vpcId":{"shape":"NonEmptyString"},
1233        "subnets":{"shape":"Subnets"},
1234        "securityGroupIds":{"shape":"SecurityGroupIds"}
1235      }
1236    },
1237    "Webhook":{
1238      "type":"structure",
1239      "members":{
1240        "url":{"shape":"NonEmptyString"},
1241        "payloadUrl":{"shape":"NonEmptyString"},
1242        "secret":{"shape":"NonEmptyString"},
1243        "branchFilter":{"shape":"String"},
1244        "filterGroups":{"shape":"FilterGroups"},
1245        "lastModifiedSecret":{"shape":"Timestamp"}
1246      }
1247    },
1248    "WebhookFilter":{
1249      "type":"structure",
1250      "required":[
1251        "type",
1252        "pattern"
1253      ],
1254      "members":{
1255        "type":{"shape":"WebhookFilterType"},
1256        "pattern":{"shape":"String"},
1257        "excludeMatchedPattern":{"shape":"WrapperBoolean"}
1258      }
1259    },
1260    "WebhookFilterType":{
1261      "type":"string",
1262      "enum":[
1263        "EVENT",
1264        "BASE_REF",
1265        "HEAD_REF",
1266        "ACTOR_ACCOUNT_ID",
1267        "FILE_PATH"
1268      ]
1269    },
1270    "WrapperBoolean":{"type":"boolean"},
1271    "WrapperInt":{"type":"integer"},
1272    "WrapperLong":{"type":"long"}
1273  }
1274}
1275