{
    "smithy": "1.0",
    "metadata": {
        "suppressions": [
            {
                "id": "HttpMethodSemantics",
                "namespace": "*"
            },
            {
                "id": "HttpResponseCodeSemantics",
                "namespace": "*"
            },
            {
                "id": "PaginatedTrait",
                "namespace": "*"
            },
            {
                "id": "HttpHeaderTrait",
                "namespace": "*"
            },
            {
                "id": "HttpUriConflict",
                "namespace": "*"
            },
            {
                "id": "Service",
                "namespace": "*"
            }
        ]
    },
    "shapes": {
        "com.amazonaws.elasticbeanstalk#ARN": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#AWSElasticBeanstalkService": {
            "type": "service",
            "version": "2010-12-01",
            "operations": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#AbortEnvironmentUpdate"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ApplyEnvironmentManagedAction"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#AssociateEnvironmentOperationsRole"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#CheckDNSAvailability"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ComposeEnvironments"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#CreateApplication"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#CreateApplicationVersion"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#CreateConfigurationTemplate"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#CreateEnvironment"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#CreatePlatformVersion"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#CreateStorageLocation"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DeleteApplication"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DeleteApplicationVersion"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DeleteConfigurationTemplate"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DeleteEnvironmentConfiguration"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DeletePlatformVersion"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeAccountAttributes"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeApplications"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeApplicationVersions"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeConfigurationOptions"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeConfigurationSettings"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentHealth"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionHistory"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActions"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentResources"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironments"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeEvents"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribeInstancesHealth"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DescribePlatformVersion"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#DisassociateEnvironmentOperationsRole"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ListAvailableSolutionStacks"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ListPlatformBranches"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ListPlatformVersions"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ListTagsForResource"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#RebuildEnvironment"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#RequestEnvironmentInfo"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#RestartAppServer"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#RetrieveEnvironmentInfo"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#SwapEnvironmentCNAMEs"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TerminateEnvironment"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateApplication"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateApplicationResourceLifecycle"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateApplicationVersion"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateConfigurationTemplate"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateEnvironment"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateTagsForResource"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ValidateConfigurationSettings"
                }
            ],
            "traits": {
                "aws.api#service": {
                    "sdkId": "Elastic Beanstalk",
                    "arnNamespace": "elasticbeanstalk",
                    "cloudFormationName": "ElasticBeanstalk",
                    "cloudTrailEventSource": "elasticbeanstalk.amazonaws.com",
                    "endpointPrefix": "elasticbeanstalk"
                },
                "aws.auth#sigv4": {
                    "name": "elasticbeanstalk"
                },
                "aws.protocols#awsQuery": {},
                "smithy.api#documentation": "<fullname>AWS Elastic Beanstalk</fullname>\n      \n    \n         <p>AWS Elastic Beanstalk makes it easy for you to create, deploy, and manage scalable,\n      fault-tolerant applications running on the Amazon Web Services cloud.</p>\n         <p>For more information about this product, go to the <a href=\"http://aws.amazon.com/elasticbeanstalk/\">AWS Elastic Beanstalk</a> details page. The location of the\n      latest AWS Elastic Beanstalk WSDL is <a href=\"https://elasticbeanstalk.s3.amazonaws.com/doc/2010-12-01/AWSElasticBeanstalk.wsdl\">https://elasticbeanstalk.s3.amazonaws.com/doc/2010-12-01/AWSElasticBeanstalk.wsdl</a>.\n      To install the Software Development Kits (SDKs), Integrated Development Environment (IDE)\n      Toolkits, and command line tools that enable you to access the API, go to <a href=\"http://aws.amazon.com/tools/\">Tools for Amazon Web Services</a>.</p>\n         <p>\n            <b>Endpoints</b>\n         </p>\n         <p>For a list of region-specific endpoints that AWS Elastic Beanstalk supports, go to\n        <a href=\"https://docs.aws.amazon.com/general/latest/gr/rande.html#elasticbeanstalk_region\">Regions and Endpoints</a> in the <i>Amazon Web Services\n      Glossary</i>.</p>",
                "smithy.api#title": "AWS Elastic Beanstalk",
                "smithy.api#xmlNamespace": {
                    "uri": "http://elasticbeanstalk.amazonaws.com/docs/2010-12-01/"
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#AbortEnvironmentUpdate": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#AbortEnvironmentUpdateMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Cancels in-progress environment configuration update or application version\n      deployment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#AbortEnvironmentUpdateMessage": {
            "type": "structure",
            "members": {
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>This specifies the ID of the environment with the in-progress update that you want to\n      cancel.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>This specifies the name of the environment with the in-progress update that you want to\n      cancel.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p></p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#AbortableOperationInProgress": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#ActionHistoryStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Completed",
                        "name": "Completed"
                    },
                    {
                        "value": "Failed",
                        "name": "Failed"
                    },
                    {
                        "value": "Unknown",
                        "name": "Unknown"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#ActionStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Scheduled",
                        "name": "Scheduled"
                    },
                    {
                        "value": "Pending",
                        "name": "Pending"
                    },
                    {
                        "value": "Running",
                        "name": "Running"
                    },
                    {
                        "value": "Unknown",
                        "name": "Unknown"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#ActionType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "InstanceRefresh",
                        "name": "InstanceRefresh"
                    },
                    {
                        "value": "PlatformUpdate",
                        "name": "PlatformUpdate"
                    },
                    {
                        "value": "Unknown",
                        "name": "Unknown"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationArn": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ApplicationDescription": {
            "type": "structure",
            "members": {
                "ApplicationArn": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the application.</p>"
                    }
                },
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>User-defined description of the application.</p>"
                    }
                },
                "DateCreated": {
                    "target": "com.amazonaws.elasticbeanstalk#CreationDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The date when the application was created.</p>"
                    }
                },
                "DateUpdated": {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The date when the application was last modified.</p>"
                    }
                },
                "Versions": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabelsList",
                    "traits": {
                        "smithy.api#documentation": "<p>The names of the versions for this application.</p>"
                    }
                },
                "ConfigurationTemplates": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateNamesList",
                    "traits": {
                        "smithy.api#documentation": "<p>The names of the configuration templates associated with this application.</p>"
                    }
                },
                "ResourceLifecycleConfig": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationResourceLifecycleConfig",
                    "traits": {
                        "smithy.api#documentation": "<p>The lifecycle settings for the application.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the properties of an application.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationDescriptionList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationDescription"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationDescriptionMessage": {
            "type": "structure",
            "members": {
                "Application": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationDescription",
                    "traits": {
                        "smithy.api#documentation": "<p> The <a>ApplicationDescription</a> of the application. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message containing a single description of an application.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationDescriptionsMessage": {
            "type": "structure",
            "members": {
                "Applications": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationDescriptionList",
                    "traits": {
                        "smithy.api#documentation": "<p>This parameter contains a list of <a>ApplicationDescription</a>.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message containing a list of application descriptions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationMetrics": {
            "type": "structure",
            "members": {
                "Duration": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>The amount of time that the metrics cover (usually 10 seconds). For example, you might\n      have 5 requests (<code>request_count</code>) within the most recent time slice of 10 seconds\n        (<code>duration</code>).</p>"
                    }
                },
                "RequestCount": {
                    "target": "com.amazonaws.elasticbeanstalk#RequestCount",
                    "traits": {
                        "smithy.api#documentation": "<p>Average number of requests handled by the web server per second over the last 10\n      seconds.</p>"
                    }
                },
                "StatusCodes": {
                    "target": "com.amazonaws.elasticbeanstalk#StatusCodes",
                    "traits": {
                        "smithy.api#documentation": "<p>Represents the percentage of requests over the last 10 seconds that resulted in each\n      type of status code response.</p>"
                    }
                },
                "Latency": {
                    "target": "com.amazonaws.elasticbeanstalk#Latency",
                    "traits": {
                        "smithy.api#documentation": "<p>Represents the average latency for the slowest X percent of requests over the last 10\n      seconds. Latencies are in seconds with one millisecond resolution.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Application request metrics for an AWS Elastic Beanstalk environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationNamesList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationName"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationResourceLifecycleConfig": {
            "type": "structure",
            "members": {
                "ServiceRole": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of an IAM service role that Elastic Beanstalk has permission to\n      assume.</p>\n         <p>The <code>ServiceRole</code> property is required the first time that you provide a\n        <code>VersionLifecycleConfig</code> for the application in one of the supporting calls\n        (<code>CreateApplication</code> or <code>UpdateApplicationResourceLifecycle</code>). After\n      you provide it once, in either one of the calls, Elastic Beanstalk persists the Service Role with the\n      application, and you don't need to specify it again in subsequent\n        <code>UpdateApplicationResourceLifecycle</code> calls. You can, however, specify it in\n      subsequent calls to change the Service Role to another value.</p>"
                    }
                },
                "VersionLifecycleConfig": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionLifecycleConfig",
                    "traits": {
                        "smithy.api#documentation": "<p>Defines lifecycle settings for application versions.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The resource lifecycle configuration for an application. Defines lifecycle settings for\n      resources that belong to the application, and the service role that AWS Elastic Beanstalk assumes\n      in order to apply lifecycle settings. The version lifecycle configuration defines lifecycle\n      settings for application versions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationResourceLifecycleDescriptionMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application.</p>"
                    }
                },
                "ResourceLifecycleConfig": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationResourceLifecycleConfig",
                    "traits": {
                        "smithy.api#documentation": "<p>The lifecycle configuration.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationVersionArn": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ApplicationVersionDescription": {
            "type": "structure",
            "members": {
                "ApplicationVersionArn": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the application version.</p>"
                    }
                },
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application to which the application version belongs.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the application version.</p>"
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique identifier for the application version.</p>"
                    }
                },
                "SourceBuildInformation": {
                    "target": "com.amazonaws.elasticbeanstalk#SourceBuildInformation",
                    "traits": {
                        "smithy.api#documentation": "<p>If the version's source code was retrieved from AWS CodeCommit, the location of the\n      source code for the application version.</p>"
                    }
                },
                "BuildArn": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>Reference to the artifact from the AWS CodeBuild build.</p>"
                    }
                },
                "SourceBundle": {
                    "target": "com.amazonaws.elasticbeanstalk#S3Location",
                    "traits": {
                        "smithy.api#documentation": "<p>The storage location of the application version's source bundle in Amazon S3.</p>"
                    }
                },
                "DateCreated": {
                    "target": "com.amazonaws.elasticbeanstalk#CreationDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The creation date of the application version.</p>"
                    }
                },
                "DateUpdated": {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The last modified date of the application version.</p>"
                    }
                },
                "Status": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The processing status of the application version. Reflects the state of the application\n      version during its creation. Many of the values are only applicable if you specified\n        <code>True</code> for the <code>Process</code> parameter of the\n        <code>CreateApplicationVersion</code> action. The following list describes the possible\n      values.</p>\n         <ul>\n            <li>\n               <p>\n                  <code>Unprocessed</code> – Application version wasn't pre-processed or validated.\n          Elastic Beanstalk will validate configuration files during deployment of the application version to an\n        environment.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Processing</code> – Elastic Beanstalk is currently processing the application version.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Building</code> – Application version is currently undergoing an AWS CodeBuild build.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Processed</code> – Elastic Beanstalk was successfully pre-processed and validated.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Failed</code> – Either the AWS CodeBuild build failed or configuration files didn't\n          pass validation. This application version isn't usable.</p>\n            </li>\n         </ul>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the properties of an application version.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationVersionDescriptionList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionDescription"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationVersionDescriptionMessage": {
            "type": "structure",
            "members": {
                "ApplicationVersion": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionDescription",
                    "traits": {
                        "smithy.api#documentation": "<p> The <a>ApplicationVersionDescription</a> of the application version.\n    </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message wrapping a single description of an application version.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationVersionDescriptionsMessage": {
            "type": "structure",
            "members": {
                "ApplicationVersions": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionDescriptionList",
                    "traits": {
                        "smithy.api#documentation": "<p>List of <code>ApplicationVersionDescription</code> objects sorted in order of\n      creation.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>In a paginated request, the token that you can pass in a subsequent request to get the\n      next response page.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message wrapping a list of application version descriptions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationVersionLifecycleConfig": {
            "type": "structure",
            "members": {
                "MaxCountRule": {
                    "target": "com.amazonaws.elasticbeanstalk#MaxCountRule",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify a max count rule to restrict the number of application versions that are\n      retained for an application.</p>"
                    }
                },
                "MaxAgeRule": {
                    "target": "com.amazonaws.elasticbeanstalk#MaxAgeRule",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify a max age rule to restrict the length of time that application versions are\n      retained for an application.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The application version lifecycle settings for an application. Defines the rules that\n      Elastic Beanstalk applies to an application's versions in order to avoid hitting the\n      per-region limit for application versions.</p>\n         <p>When Elastic Beanstalk deletes an application version from its database, you can no\n      longer deploy that version to an environment. The source bundle remains in S3 unless you\n      configure the rule to delete it.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationVersionProccess": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplicationVersionStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Processed",
                        "name": "Processed"
                    },
                    {
                        "value": "Unprocessed",
                        "name": "Unprocessed"
                    },
                    {
                        "value": "Failed",
                        "name": "Failed"
                    },
                    {
                        "value": "Processing",
                        "name": "Processing"
                    },
                    {
                        "value": "Building",
                        "name": "Building"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplyEnvironmentManagedAction": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#ApplyEnvironmentManagedActionRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ApplyEnvironmentManagedActionResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ManagedActionInvalidStateException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Applies a scheduled managed action immediately. A managed action can be applied only if\n      its status is <code>Scheduled</code>. Get the status and action ID of a managed action with\n        <a>DescribeEnvironmentManagedActions</a>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplyEnvironmentManagedActionRequest": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the target environment.</p>"
                    }
                },
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The environment ID of the target environment.</p>"
                    }
                },
                "ActionId": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The action ID of the scheduled managed action to execute.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to execute a scheduled managed action immediately.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ApplyEnvironmentManagedActionResult": {
            "type": "structure",
            "members": {
                "ActionId": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The action ID of the managed action.</p>"
                    }
                },
                "ActionDescription": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>A description of the managed action.</p>"
                    }
                },
                "ActionType": {
                    "target": "com.amazonaws.elasticbeanstalk#ActionType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of managed action.</p>"
                    }
                },
                "Status": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of the managed action.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The result message containing information about the managed action.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#AssociateEnvironmentOperationsRole": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#AssociateEnvironmentOperationsRoleMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Add or change the operations role used by an environment. After this call is made, Elastic Beanstalk\n      uses the associated operations role for permissions to downstream services during subsequent\n      calls acting on this environment. For more information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html\">Operations roles</a> in the\n        <i>AWS Elastic Beanstalk Developer Guide</i>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#AssociateEnvironmentOperationsRoleMessage": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to which to set the operations role.</p>",
                        "smithy.api#required": {}
                    }
                },
                "OperationsRole": {
                    "target": "com.amazonaws.elasticbeanstalk#OperationsRole",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of an existing IAM role to be used as the environment's\n      operations role.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to add or change the operations role used by an environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#AutoCreateApplication": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#AutoScalingGroup": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceId",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the <code>AutoScalingGroup</code> . </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes an Auto Scaling launch configuration.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#AutoScalingGroupList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#AutoScalingGroup"
            }
        },
        "com.amazonaws.elasticbeanstalk#AvailableSolutionStackDetailsList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#SolutionStackDescription"
            }
        },
        "com.amazonaws.elasticbeanstalk#AvailableSolutionStackNamesList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#SolutionStackName"
            }
        },
        "com.amazonaws.elasticbeanstalk#BoxedBoolean": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#BoxedInt": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#BranchName": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#BranchOrder": {
            "type": "integer"
        },
        "com.amazonaws.elasticbeanstalk#BuildConfiguration": {
            "type": "structure",
            "members": {
                "ArtifactName": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the artifact of the CodeBuild build.\n    If provided, Elastic Beanstalk stores the build artifact in the S3 location \n    <i>S3-bucket</i>/resources/<i>application-name</i>/codebuild/codebuild-<i>version-label</i>-<i>artifact-name</i>.zip.\n    If not provided, Elastic Beanstalk stores the build artifact in the S3 location \n    <i>S3-bucket</i>/resources/<i>application-name</i>/codebuild/codebuild-<i>version-label</i>.zip.\n    </p>"
                    }
                },
                "CodeBuildServiceRole": {
                    "target": "com.amazonaws.elasticbeanstalk#NonEmptyString",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that enables AWS CodeBuild to interact with dependent AWS services on behalf of the AWS account.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ComputeType": {
                    "target": "com.amazonaws.elasticbeanstalk#ComputeType",
                    "traits": {
                        "smithy.api#documentation": "<p>Information about the compute resources the build project will use.</p>\n         <ul>\n            <li>\n               <p>\n                  <code>BUILD_GENERAL1_SMALL: Use up to 3 GB memory and 2 vCPUs for builds</code>\n               </p>\n            </li>\n            <li>\n\t              <p>\n                  <code>BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for builds</code>\n               </p>\n            </li>\n            <li>\n\t              <p>\n                  <code>BUILD_GENERAL1_LARGE: Use up to 15 GB memory and 8 vCPUs for builds</code>\n               </p>\n            </li>\n         </ul>"
                    }
                },
                "Image": {
                    "target": "com.amazonaws.elasticbeanstalk#NonEmptyString",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the Docker image to use for this build project.</p>",
                        "smithy.api#required": {}
                    }
                },
                "TimeoutInMinutes": {
                    "target": "com.amazonaws.elasticbeanstalk#BoxedInt",
                    "traits": {
                        "smithy.api#documentation": "<p>How long in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to wait until timing out any related build that does not get marked as completed. The default is 60 minutes.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Settings for an AWS CodeBuild build.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#Builder": {
            "type": "structure",
            "members": {
                "ARN": {
                    "target": "com.amazonaws.elasticbeanstalk#ARN",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the builder.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The builder used to build the custom platform.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CPUUtilization": {
            "type": "structure",
            "members": {
                "User": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>Percentage of time that the CPU has spent in the <code>User</code> state over the last\n      10 seconds.</p>"
                    }
                },
                "Nice": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>Available on Linux environments only.</p>\n         <p>Percentage of time that the CPU has spent in the <code>Nice</code> state over the last\n      10 seconds.</p>"
                    }
                },
                "System": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>Available on Linux environments only.</p>\n         <p>Percentage of time that the CPU has spent in the <code>System</code> state over the\n      last 10 seconds.</p>"
                    }
                },
                "Idle": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>Percentage of time that the CPU has spent in the <code>Idle</code> state over the last\n      10 seconds.</p>"
                    }
                },
                "IOWait": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>Available on Linux environments only.</p>\n         <p>Percentage of time that the CPU has spent in the <code>I/O Wait</code> state over the\n      last 10 seconds.</p>"
                    }
                },
                "IRQ": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>Available on Linux environments only.</p>\n         <p>Percentage of time that the CPU has spent in the <code>IRQ</code> state over the last\n      10 seconds.</p>"
                    }
                },
                "SoftIRQ": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>Available on Linux environments only.</p>\n         <p>Percentage of time that the CPU has spent in the <code>SoftIRQ</code> state over the\n      last 10 seconds.</p>"
                    }
                },
                "Privileged": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>Available on Windows environments only.</p>\n         <p>Percentage of time that the CPU has spent in the <code>Privileged</code> state over the\n      last 10 seconds.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>CPU utilization metrics for an instance.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#Cause": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 255
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#Causes": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#Cause"
            }
        },
        "com.amazonaws.elasticbeanstalk#CheckDNSAvailability": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#CheckDNSAvailabilityMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#CheckDNSAvailabilityResultMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Checks if the specified CNAME is available.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CheckDNSAvailabilityMessage": {
            "type": "structure",
            "members": {
                "CNAMEPrefix": {
                    "target": "com.amazonaws.elasticbeanstalk#DNSCnamePrefix",
                    "traits": {
                        "smithy.api#documentation": "<p>The prefix used when this CNAME is reserved.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Results message indicating whether a CNAME is available.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CheckDNSAvailabilityResultMessage": {
            "type": "structure",
            "members": {
                "Available": {
                    "target": "com.amazonaws.elasticbeanstalk#CnameAvailability",
                    "traits": {
                        "smithy.api#documentation": "<p>Indicates if the specified CNAME is available:</p>\n         <ul>\n            <li>\n               <p>\n                  <code>true</code> : The CNAME is available.</p>\n            </li>\n            <li>\n               <p>\n                  <code>false</code> : The CNAME is not available.</p>\n            </li>\n         </ul>"
                    }
                },
                "FullyQualifiedCNAME": {
                    "target": "com.amazonaws.elasticbeanstalk#DNSCname",
                    "traits": {
                        "smithy.api#documentation": "<p>The fully qualified CNAME to reserve when <a>CreateEnvironment</a> is called\n      with the provided prefix.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Indicates if the specified CNAME is available.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CnameAvailability": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#CodeBuildNotInServiceRegionException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "CodeBuildNotInServiceRegionException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>AWS CodeBuild is not available in the specified region.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#ComposeEnvironments": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#ComposeEnvironmentsMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentDescriptionsMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyEnvironmentsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Create or update a group of environments that each run a separate component of a single\n      application. Takes a list of version labels that specify application source bundles for each\n      of the environments to create or update. The name of each environment and other required\n      information must be included in the source bundles in an environment manifest named\n      <code>env.yaml</code>. See <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-mgmt-compose.html\">Compose Environments</a>\n      for details.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ComposeEnvironmentsMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application to which the specified source bundles belong.</p>"
                    }
                },
                "GroupName": {
                    "target": "com.amazonaws.elasticbeanstalk#GroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the group to which the target environments belong. Specify a group name\n      only if the environment name defined in each target environment's manifest ends with a +\n      (plus) character. See <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html\">Environment Manifest\n        (env.yaml)</a> for details.</p>"
                    }
                },
                "VersionLabels": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabels",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of version labels, specifying one or more application source bundles that belong\n      to the target application. Each source bundle must include an environment manifest that\n      specifies the name of the environment and the name of the solution stack to use, and\n      optionally can specify environment links to create.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to create or update a group of environments.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ComputeType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "BUILD_GENERAL1_SMALL",
                        "name": "BUILD_GENERAL1_SMALL"
                    },
                    {
                        "value": "BUILD_GENERAL1_MEDIUM",
                        "name": "BUILD_GENERAL1_MEDIUM"
                    },
                    {
                        "value": "BUILD_GENERAL1_LARGE",
                        "name": "BUILD_GENERAL1_LARGE"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationDeploymentStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "deployed",
                        "name": "deployed"
                    },
                    {
                        "value": "pending",
                        "name": "pending"
                    },
                    {
                        "value": "failed",
                        "name": "failed"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionDefaultValue": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionDescription": {
            "type": "structure",
            "members": {
                "Namespace": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionNamespace",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique namespace identifying the option's associated AWS resource.</p>"
                    }
                },
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration option.</p>"
                    }
                },
                "DefaultValue": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionDefaultValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The default value for this configuration option.</p>"
                    }
                },
                "ChangeSeverity": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSeverity",
                    "traits": {
                        "smithy.api#documentation": "<p>An indication of which action is required if the value for this configuration option\n      changes:</p>\n         <ul>\n            <li>\n               <p>\n                  <code>NoInterruption</code> : There is no interruption to the environment or application\n          availability.</p>\n            </li>\n            <li>\n               <p>\n                  <code>RestartEnvironment</code> : The environment is entirely restarted, all AWS resources\n          are deleted and recreated, and the environment is unavailable during the\n          process.</p>\n            </li>\n            <li>\n               <p>\n                  <code>RestartApplicationServer</code> : The environment is available the entire time.\n          However, a short application outage occurs when the application servers on the running\n          Amazon EC2 instances are restarted.</p>\n            </li>\n         </ul>"
                    }
                },
                "UserDefined": {
                    "target": "com.amazonaws.elasticbeanstalk#UserDefinedOption",
                    "traits": {
                        "smithy.api#documentation": "<p>An indication of whether the user defined this configuration option:</p>\n         <ul>\n            <li>\n               <p>\n                  <code>true</code> : This configuration option was defined by the user. It is a valid\n          choice for specifying if this as an <code>Option to Remove</code> when updating\n          configuration settings. </p>\n            </li>\n            <li>\n               <p>\n                  <code>false</code> : This configuration was not defined by the user.</p>\n            </li>\n         </ul>\n         <p> Constraint: You can remove only <code>UserDefined</code> options from a configuration. </p>\n         <p> Valid Values: <code>true</code> | <code>false</code>\n         </p>"
                    }
                },
                "ValueType": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionValueType",
                    "traits": {
                        "smithy.api#documentation": "<p>An indication of which type of values this option has and whether it is allowable to\n      select one or more than one of the possible values:</p>\n         <ul>\n            <li>\n               <p>\n                  <code>Scalar</code> : Values for this option are a single selection from the possible\n          values, or an unformatted string, or numeric value governed by the\n          <code>MIN/MAX/Regex</code> constraints.</p>\n            </li>\n            <li>\n               <p>\n                  <code>List</code> : Values for this option are multiple selections from the possible\n          values.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Boolean</code> : Values for this option are either <code>true</code> or\n          <code>false</code> .</p>\n            </li>\n            <li>\n               <p>\n                  <code>Json</code> : Values for this option are a JSON representation of a\n          <code>ConfigDocument</code>.</p>\n            </li>\n         </ul>"
                    }
                },
                "ValueOptions": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionPossibleValues",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, values for the configuration option are selected from this\n      list.</p>"
                    }
                },
                "MinValue": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionRestrictionMinValue",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, the configuration option must be a numeric value greater than this\n      value.</p>"
                    }
                },
                "MaxValue": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionRestrictionMaxValue",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, the configuration option must be a numeric value less than this\n      value.</p>"
                    }
                },
                "MaxLength": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionRestrictionMaxLength",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, the configuration option must be a string value no longer than this\n      value.</p>"
                    }
                },
                "Regex": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionRestrictionRegex",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, the configuration option must be a string value that satisfies this\n      regular expression.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the possible values for a configuration option.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionDescriptionsList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionDescription"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionName": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionPossibleValue": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionPossibleValues": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionPossibleValue"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionSetting": {
            "type": "structure",
            "members": {
                "ResourceName": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceName",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique resource name for the option setting. Use it for a time–based scaling configuration option.</p>"
                    }
                },
                "Namespace": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionNamespace",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique namespace that identifies the option's associated AWS resource.</p>"
                    }
                },
                "OptionName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration option.</p>"
                    }
                },
                "Value": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The current value for the configuration option.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A specification identifying an individual configuration option along with its current\n      value. For a list of possible namespaces and option values, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html\">Option Values</a> in the\n      <i>AWS Elastic Beanstalk Developer Guide</i>. </p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionSettingsList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSetting"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionSeverity": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionValue": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionValueType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Scalar",
                        "name": "Scalar"
                    },
                    {
                        "value": "List",
                        "name": "List"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationOptionsDescription": {
            "type": "structure",
            "members": {
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the solution stack these configuration options belong to.</p>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the platform version.</p>"
                    }
                },
                "Options": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionDescriptionsList",
                    "traits": {
                        "smithy.api#documentation": "<p> A list of <a>ConfigurationOptionDescription</a>. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the settings for a specified configuration set.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationSettingsDescription": {
            "type": "structure",
            "members": {
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the solution stack this configuration set uses.</p>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the platform version.</p>"
                    }
                },
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application associated with this configuration set.</p>"
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p> If not <code>null</code>, the name of the configuration template for this\n      configuration set. </p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>Describes this configuration set.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p> If not <code>null</code>, the name of the environment for this configuration set.\n    </p>"
                    }
                },
                "DeploymentStatus": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationDeploymentStatus",
                    "traits": {
                        "smithy.api#documentation": "<p> If this configuration set is associated with an environment, the\n        <code>DeploymentStatus</code> parameter indicates the deployment status of this\n      configuration set: </p>\n         <ul>\n            <li>\n               <p>\n                  <code>null</code>: This configuration is not associated with a running\n          environment.</p>\n            </li>\n            <li>\n               <p>\n                  <code>pending</code>: This is a draft configuration that is not deployed to the associated\n          environment but is in the process of deploying.</p>\n            </li>\n            <li>\n               <p>\n                  <code>deployed</code>: This is the configuration that is currently deployed to the\n          associated running environment.</p>\n            </li>\n            <li>\n               <p>\n                  <code>failed</code>: This is a draft configuration that failed to successfully\n          deploy.</p>\n            </li>\n         </ul>"
                    }
                },
                "DateCreated": {
                    "target": "com.amazonaws.elasticbeanstalk#CreationDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The date (in UTC time) when this configuration set was created.</p>"
                    }
                },
                "DateUpdated": {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The date (in UTC time) when this configuration set was last modified.</p>"
                    }
                },
                "OptionSettings": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSettingsList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of the configuration options and their values in this configuration\n      set.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the settings for a configuration set.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationSettingsDescriptionList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationSettingsDescription"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationSettingsDescriptions": {
            "type": "structure",
            "members": {
                "ConfigurationSettings": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationSettingsDescriptionList",
                    "traits": {
                        "smithy.api#documentation": "<p> A list of <a>ConfigurationSettingsDescription</a>. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The results from a request to change the configuration settings of an\n      environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationSettingsValidationMessages": {
            "type": "structure",
            "members": {
                "Messages": {
                    "target": "com.amazonaws.elasticbeanstalk#ValidationMessagesList",
                    "traits": {
                        "smithy.api#documentation": "<p> A list of <a>ValidationMessage</a>. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Provides a list of validation messages.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ConfigurationTemplateNamesList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateApplication": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#CreateApplicationMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationDescriptionMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyApplicationsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates an application that has one configuration template named <code>default</code>\n      and no application versions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateApplicationMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application. Must be unique within your account.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>Your description of the application.</p>"
                    }
                },
                "ResourceLifecycleConfig": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationResourceLifecycleConfig",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies an application resource lifecycle configuration to prevent your application\n      from accumulating too many versions.</p>"
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.elasticbeanstalk#Tags",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies the tags applied to the application.</p>\n         <p>Elastic Beanstalk applies these tags only to the application. Environments that you create in the\n      application don't inherit the tags.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to create an application.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateApplicationVersion": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#CreateApplicationVersionMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionDescriptionMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#CodeBuildNotInServiceRegionException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#S3LocationNotInServiceRegionException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyApplicationsException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyApplicationVersionsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates an application version for the specified application. You can create an\n      application version from a source bundle in Amazon S3, a commit in AWS CodeCommit, or the\n      output of an AWS CodeBuild build as follows:</p>\n         <p>Specify a commit in an AWS CodeCommit repository with\n        <code>SourceBuildInformation</code>.</p>\n         <p>Specify a build in an AWS CodeBuild with <code>SourceBuildInformation</code> and\n        <code>BuildConfiguration</code>.</p>\n         <p>Specify a source bundle in S3 with <code>SourceBundle</code>\n         </p>\n         <p>Omit both <code>SourceBuildInformation</code> and <code>SourceBundle</code> to use the\n      default sample application.</p>\n         <note>\n            <p>After you create an application version with a specified Amazon S3 bucket and key\n        location, you can't change that Amazon S3 location. If you change the Amazon S3 location,\n        you receive an exception when you attempt to launch an environment from the application\n        version.</p>\n         </note>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateApplicationVersionMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p> The name of the application. If no application is found with this name, and\n        <code>AutoCreateApplication</code> is <code>false</code>, returns an\n        <code>InvalidParameterValue</code> error. </p>",
                        "smithy.api#required": {}
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>A label identifying this version.</p>\n         <p>Constraint: Must be unique per application. If an application version already exists\n      with this label for the specified application, AWS Elastic Beanstalk returns an\n        <code>InvalidParameterValue</code> error. </p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>A description of this application version.</p>"
                    }
                },
                "SourceBuildInformation": {
                    "target": "com.amazonaws.elasticbeanstalk#SourceBuildInformation",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify a commit in an AWS CodeCommit Git repository to use as the source code for the\n      application version.</p>"
                    }
                },
                "SourceBundle": {
                    "target": "com.amazonaws.elasticbeanstalk#S3Location",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon S3 bucket and key that identify the location of the source bundle for this\n      version.</p>\n         <note>\n            <p>The Amazon S3 bucket must be in the same region as the\n      environment.</p>\n         </note>\n         <p>Specify a source bundle in S3 or a commit in an AWS CodeCommit repository (with\n        <code>SourceBuildInformation</code>), but not both. If neither <code>SourceBundle</code> nor\n        <code>SourceBuildInformation</code> are provided, Elastic Beanstalk uses a sample\n      application.</p>"
                    }
                },
                "BuildConfiguration": {
                    "target": "com.amazonaws.elasticbeanstalk#BuildConfiguration",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings for an AWS CodeBuild build.</p>"
                    }
                },
                "AutoCreateApplication": {
                    "target": "com.amazonaws.elasticbeanstalk#AutoCreateApplication",
                    "traits": {
                        "smithy.api#documentation": "<p>Set to <code>true</code> to create an application with the specified name if it doesn't\n      already exist.</p>"
                    }
                },
                "Process": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionProccess",
                    "traits": {
                        "smithy.api#documentation": "<p>Pre-processes and validates the environment manifest (<code>env.yaml</code>) and\n      configuration files (<code>*.config</code> files in the <code>.ebextensions</code> folder) in\n      the source bundle. Validating configuration files can identify issues prior to deploying the\n      application version to an environment.</p>\n         <p>You must turn processing on for application versions that you create using AWS\n      CodeBuild or AWS CodeCommit. For application versions built from a source bundle in Amazon S3,\n      processing is optional.</p>\n         <note>\n            <p>The <code>Process</code> option validates Elastic Beanstalk configuration files. It\n      doesn't validate your application's configuration files, like proxy server or Docker\n      configuration.</p>\n         </note>"
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.elasticbeanstalk#Tags",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies the tags applied to the application version.</p>\n         <p>Elastic Beanstalk applies these tags only to the application version. Environments that use the\n      application version don't inherit the tags.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p></p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateConfigurationTemplate": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#CreateConfigurationTemplateMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationSettingsDescription"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyBucketsException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyConfigurationTemplatesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates an AWS Elastic Beanstalk configuration template, associated with a specific Elastic Beanstalk\n      application. You define application configuration settings in a configuration template. You\n      can then use the configuration template to deploy different versions of the application with\n      the same configuration settings.</p>\n         <p>Templates aren't associated with any environment. The <code>EnvironmentName</code>\n      response element is always <code>null</code>.</p>\n         <p>Related Topics</p>\n         <ul>\n            <li>\n               <p>\n                  <a>DescribeConfigurationOptions</a>\n               </p>\n            </li>\n            <li>\n               <p>\n                  <a>DescribeConfigurationSettings</a>\n               </p>\n            </li>\n            <li>\n               <p>\n                  <a>ListAvailableSolutionStacks</a>\n               </p>\n            </li>\n         </ul>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateConfigurationTemplateMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the Elastic Beanstalk application to associate with this configuration\n      template.</p>",
                        "smithy.api#required": {}
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration template.</p>\n         <p>Constraint: This name must be unique per application.</p>",
                        "smithy.api#required": {}
                    }
                },
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of an Elastic Beanstalk solution stack (platform version) that this configuration uses. For\n      example, <code>64bit Amazon Linux 2013.09 running Tomcat 7 Java 7</code>. A solution stack\n      specifies the operating system, runtime, and application server for a configuration template.\n      It also determines the set of configuration options as well as the possible and default\n      values. For more information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.platforms.html\">Supported Platforms</a> in the\n        <i>AWS Elastic Beanstalk Developer Guide</i>.</p>\n         <p>You must specify <code>SolutionStackName</code> if you don't specify\n        <code>PlatformArn</code>, <code>EnvironmentId</code>, or\n      <code>SourceConfiguration</code>.</p>\n         <p>Use the <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_ListAvailableSolutionStacks.html\">\n               <code>ListAvailableSolutionStacks</code>\n            </a> API to obtain a list of available\n      solution stacks.</p>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the custom platform. For more information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/custom-platforms.html\"> Custom\n        Platforms</a> in the <i>AWS Elastic Beanstalk Developer Guide</i>.</p>\n         <note>\n      \n            <p>If you specify <code>PlatformArn</code>, then don't specify\n          <code>SolutionStackName</code>.</p>\n         </note>"
                    }
                },
                "SourceConfiguration": {
                    "target": "com.amazonaws.elasticbeanstalk#SourceConfiguration",
                    "traits": {
                        "smithy.api#documentation": "<p>An Elastic Beanstalk configuration template to base this one on. If specified, Elastic Beanstalk uses the configuration values from the specified\n      configuration template to create a new configuration.</p>\n         <p>Values specified in <code>OptionSettings</code> override any values obtained from the\n        <code>SourceConfiguration</code>.</p>\n         <p>You must specify <code>SourceConfiguration</code> if you don't specify\n        <code>PlatformArn</code>, <code>EnvironmentId</code>, or\n      <code>SolutionStackName</code>.</p>\n         <p>Constraint: If both solution stack name and source configuration are specified, the\n      solution stack of the source configuration template must match the specified solution stack\n      name.</p>"
                    }
                },
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of an environment whose settings you want to use to create the configuration\n      template. You must specify <code>EnvironmentId</code> if you don't specify\n        <code>PlatformArn</code>, <code>SolutionStackName</code>, or\n        <code>SourceConfiguration</code>.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional description for this configuration.</p>"
                    }
                },
                "OptionSettings": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSettingsList",
                    "traits": {
                        "smithy.api#documentation": "<p>Option values for the Elastic Beanstalk configuration, such as the instance type. If specified, these\n      values override the values obtained from the solution stack or the source configuration\n      template. For a complete list of Elastic Beanstalk configuration options, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html\">Option Values</a> in the\n        <i>AWS Elastic Beanstalk Developer Guide</i>.</p>"
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.elasticbeanstalk#Tags",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies the tags applied to the configuration template.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to create a configuration template.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateEnvironment": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#CreateEnvironmentMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentDescription"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyEnvironmentsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Launches an AWS Elastic Beanstalk environment for the specified application using the specified\n      configuration.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateEnvironmentMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application that is associated with this environment.</p>",
                        "smithy.api#required": {}
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique name for the environment.</p>\n         <p>Constraint: Must be from 4 to 40 characters in length. The name can contain only\n      letters, numbers, and hyphens. It can't start or end with a hyphen. This name must be unique\n      within a region in your account. If the specified name already exists in the region, Elastic Beanstalk returns an\n        <code>InvalidParameterValue</code> error. </p>\n         <p>If you don't specify the <code>CNAMEPrefix</code> parameter, the environment name becomes part of\n      the CNAME, and therefore part of the visible URL for your application.</p>"
                    }
                },
                "GroupName": {
                    "target": "com.amazonaws.elasticbeanstalk#GroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the group to which the target environment belongs. Specify a group name\n      only if the environment's name is specified in an environment manifest and not with the\n      environment name parameter. See <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html\">Environment Manifest\n        (env.yaml)</a> for details.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>Your description for this environment.</p>"
                    }
                },
                "CNAMEPrefix": {
                    "target": "com.amazonaws.elasticbeanstalk#DNSCnamePrefix",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, the environment attempts to use this value as the prefix for the CNAME in\n      your Elastic Beanstalk environment URL. If not specified, the CNAME is generated automatically by\n      appending a random alphanumeric string to the environment name.</p>"
                    }
                },
                "Tier": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentTier",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies the tier to use in creating this environment. The environment tier that you\n      choose determines whether Elastic Beanstalk provisions resources to support a web application that handles\n      HTTP(S) requests or a web application that handles background-processing tasks.</p>"
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.elasticbeanstalk#Tags",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies the tags applied to resources in the environment.</p>"
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application version to deploy.</p>\n         <p>Default: If not specified, Elastic Beanstalk attempts to deploy the sample application.</p>"
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the Elastic Beanstalk configuration template to use with the environment.</p>\n         <note>\n            <p>If you specify <code>TemplateName</code>, then don't specify \n          <code>SolutionStackName</code>.</p>\n         </note>"
                    }
                },
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of an Elastic Beanstalk solution stack (platform version) to use with the environment. If\n      specified, Elastic Beanstalk sets the configuration values to the default values associated with the\n      specified solution stack. For a list of current solution stacks, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html\">Elastic Beanstalk Supported Platforms</a> in the <i>AWS Elastic Beanstalk\n        Platforms</i> guide.</p>\n         <note>\n            <p>If you specify <code>SolutionStackName</code>, don't specify <code>PlatformArn</code> or\n          <code>TemplateName</code>.</p>\n         </note>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the custom platform to use with the environment. For\n      more information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/custom-platforms.html\">Custom Platforms</a> in the\n        <i>AWS Elastic Beanstalk Developer Guide</i>.</p>\n         <note>\n      \n            <p>If you specify <code>PlatformArn</code>, don't specify\n        <code>SolutionStackName</code>.</p>\n         </note>"
                    }
                },
                "OptionSettings": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSettingsList",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk sets the specified configuration options to the\n      requested value in the configuration set for the new environment. These override the values\n      obtained from the solution stack or the configuration template.</p>"
                    }
                },
                "OptionsToRemove": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionsSpecifierList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of custom user-defined configuration options to remove from the configuration\n      set for this new environment.</p>"
                    }
                },
                "OperationsRole": {
                    "target": "com.amazonaws.elasticbeanstalk#OperationsRole",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of an existing IAM role to be used as the environment's\n      operations role. If specified, Elastic Beanstalk uses the operations role for permissions to downstream\n      services during this call and during subsequent calls acting on this environment. To specify\n      an operations role, you must have the <code>iam:PassRole</code> permission for the role. For\n      more information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html\">Operations roles</a> in the\n        <i>AWS Elastic Beanstalk Developer Guide</i>.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p></p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreatePlatformVersion": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#CreatePlatformVersionRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#CreatePlatformVersionResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyPlatformsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Create a new version of your custom platform.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreatePlatformVersionRequest": {
            "type": "structure",
            "members": {
                "PlatformName": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of your custom platform.</p>",
                        "smithy.api#required": {}
                    }
                },
                "PlatformVersion": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The number, such as 1.0.2, for the new platform version.</p>",
                        "smithy.api#required": {}
                    }
                },
                "PlatformDefinitionBundle": {
                    "target": "com.amazonaws.elasticbeanstalk#S3Location",
                    "traits": {
                        "smithy.api#documentation": "<p>The location of the platform definition archive in Amazon S3.</p>",
                        "smithy.api#required": {}
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the builder environment.</p>"
                    }
                },
                "OptionSettings": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSettingsList",
                    "traits": {
                        "smithy.api#documentation": "<p>The configuration option settings to apply to the builder environment.</p>"
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.elasticbeanstalk#Tags",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies the tags applied to the new platform version.</p>\n         <p>Elastic Beanstalk applies these tags only to the platform version. Environments that you create using\n      the platform version don't inherit the tags.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to create a new platform version.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreatePlatformVersionResult": {
            "type": "structure",
            "members": {
                "PlatformSummary": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformSummary",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about the new version of the custom platform.</p>"
                    }
                },
                "Builder": {
                    "target": "com.amazonaws.elasticbeanstalk#Builder",
                    "traits": {
                        "smithy.api#documentation": "<p>The builder used to create the custom platform.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateStorageLocation": {
            "type": "operation",
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#CreateStorageLocationResultMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#S3SubscriptionRequiredException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyBucketsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a bucket in Amazon S3 to store application versions, logs, and other files used\n      by Elastic Beanstalk environments. The Elastic Beanstalk console and EB CLI call this API the\n      first time you create an environment in a region. If the storage location already exists,\n        <code>CreateStorageLocation</code> still returns the bucket name but does not create a new\n      bucket.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreateStorageLocationResultMessage": {
            "type": "structure",
            "members": {
                "S3Bucket": {
                    "target": "com.amazonaws.elasticbeanstalk#S3Bucket",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the Amazon S3 bucket created.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Results of a <a>CreateStorageLocationResult</a> call.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CreationDate": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#CustomAmi": {
            "type": "structure",
            "members": {
                "VirtualizationType": {
                    "target": "com.amazonaws.elasticbeanstalk#VirtualizationType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of virtualization used to create the custom AMI.</p>"
                    }
                },
                "ImageId": {
                    "target": "com.amazonaws.elasticbeanstalk#ImageId",
                    "traits": {
                        "smithy.api#documentation": "<p>THe ID of the image used to create the custom AMI.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A custom AMI available to platforms.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#CustomAmiList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#CustomAmi"
            }
        },
        "com.amazonaws.elasticbeanstalk#DNSCname": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 255
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DNSCnamePrefix": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 4,
                    "max": 63
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteApplication": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DeleteApplicationMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#OperationInProgressException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes the specified application along with all associated versions and\n      configurations. The application versions will not be deleted from your Amazon S3\n      bucket.</p>\n         <note>\n            <p>You cannot delete an application that has a running environment.</p>\n         </note>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteApplicationMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application to delete.</p>",
                        "smithy.api#required": {}
                    }
                },
                "TerminateEnvByForce": {
                    "target": "com.amazonaws.elasticbeanstalk#TerminateEnvForce",
                    "traits": {
                        "smithy.api#documentation": "<p>When set to true, running environments will be terminated before deleting the\n      application.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to delete an application.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteApplicationVersion": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DeleteApplicationVersionMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#OperationInProgressException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#S3LocationNotInServiceRegionException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#SourceBundleDeletionException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes the specified version from the specified application.</p>\n         <note>\n            <p>You cannot delete an application version that is associated with a running\n        environment.</p>\n         </note>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteApplicationVersionMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application to which the version belongs.</p>",
                        "smithy.api#required": {}
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>The label of the version to delete.</p>",
                        "smithy.api#required": {}
                    }
                },
                "DeleteSourceBundle": {
                    "target": "com.amazonaws.elasticbeanstalk#DeleteSourceBundle",
                    "traits": {
                        "smithy.api#documentation": "<p>Set to <code>true</code> to delete the source bundle from your storage bucket.\n      Otherwise, the application version is deleted only from Elastic Beanstalk and the source\n      bundle remains in Amazon S3.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to delete an application version.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteConfigurationTemplate": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DeleteConfigurationTemplateMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#OperationInProgressException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes the specified configuration template.</p>\n         <note>\n            <p>When you launch an environment using a configuration template, the environment gets a\n        copy of the template. You can delete or modify the environment's copy of the template\n        without affecting the running environment.</p>\n         </note>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteConfigurationTemplateMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application to delete the configuration template from.</p>",
                        "smithy.api#required": {}
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration template to delete.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to delete a configuration template.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteEnvironmentConfiguration": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DeleteEnvironmentConfigurationMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Deletes the draft configuration associated with the running environment.</p>\n         <p>Updating a running environment with any configuration changes creates a draft\n      configuration set. You can get the draft configuration using <a>DescribeConfigurationSettings</a> while the update is in progress or if the update\n      fails. The <code>DeploymentStatus</code> for the draft configuration indicates whether the\n      deployment is in process or has failed. The draft configuration remains in existence until it\n      is deleted with this action.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteEnvironmentConfigurationMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application the environment is associated with.</p>",
                        "smithy.api#required": {}
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to delete the draft configuration from.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to delete a draft environment configuration.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeletePlatformVersion": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DeletePlatformVersionRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#DeletePlatformVersionResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#OperationInProgressException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformVersionStillReferencedException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes the specified version of a custom platform.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeletePlatformVersionRequest": {
            "type": "structure",
            "members": {
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the version of the custom platform.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DeletePlatformVersionResult": {
            "type": "structure",
            "members": {
                "PlatformSummary": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformSummary",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about the version of the custom platform.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DeleteSourceBundle": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#Deployment": {
            "type": "structure",
            "members": {
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The version label of the application version in the deployment.</p>"
                    }
                },
                "DeploymentId": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableLong",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the deployment. This number increases by one each time that you deploy source\n      code or change instance configuration settings.</p>"
                    }
                },
                "Status": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of the deployment:</p>\n         <ul>\n            <li>\n               <p>\n                  <code>In Progress</code> : The deployment is in progress.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Deployed</code> : The deployment succeeded.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Failed</code> : The deployment failed.</p>\n            </li>\n         </ul>"
                    }
                },
                "DeploymentTime": {
                    "target": "com.amazonaws.elasticbeanstalk#DeploymentTimestamp",
                    "traits": {
                        "smithy.api#documentation": "<p>For in-progress deployments, the time that the deployment started.</p>\n         <p>For completed deployments, the time that the deployment ended.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Information about an application version deployment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DeploymentTimestamp": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#DescribeAccountAttributes": {
            "type": "operation",
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeAccountAttributesResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Returns attributes related to AWS Elastic Beanstalk that are associated with the calling AWS\n      account.</p>\n         <p>The result currently has one set of attributes—resource quotas.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeAccountAttributesResult": {
            "type": "structure",
            "members": {
                "ResourceQuotas": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceQuotas",
                    "traits": {
                        "smithy.api#documentation": "<p>The Elastic Beanstalk resource quotas associated with the calling AWS account.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeApplicationVersions": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeApplicationVersionsMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionDescriptionsMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Retrieve a list of application versions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeApplicationVersionsMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify an application name to show only application versions for that\n      application.</p>"
                    }
                },
                "VersionLabels": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabelsList",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify a version label to show a specific application version.</p>"
                    }
                },
                "MaxRecords": {
                    "target": "com.amazonaws.elasticbeanstalk#MaxRecords",
                    "traits": {
                        "smithy.api#documentation": "<p>For a paginated request. Specify a maximum number of application versions to include in\n      each response.</p>\n         <p>If no <code>MaxRecords</code> is specified, all available application versions are\n      retrieved in a single response.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>For a paginated request. Specify a token from a previous response page to retrieve the next response page. All other\n      parameter values must be identical to the ones specified in the initial request.</p>\n         <p>If no <code>NextToken</code> is specified, the first page is retrieved.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to describe application versions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeApplications": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeApplicationsMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationDescriptionsMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Returns the descriptions of existing applications.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeApplicationsMessage": {
            "type": "structure",
            "members": {
                "ApplicationNames": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationNamesList",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to only include\n      those with the specified names.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to describe one or more applications.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeConfigurationOptions": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeConfigurationOptionsMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionsDescription"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyBucketsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Describes the configuration options that are used in a particular configuration\n      template or environment, or that a specified solution stack defines. The description includes\n      the values the options, their default values, and an indication of the required action on a\n      running environment if an option value is changed.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeConfigurationOptionsMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application associated with the configuration template or environment.\n      Only needed if you want to describe the configuration options associated with either the\n      configuration template or environment.</p>"
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration template whose configuration options you want to\n      describe.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment whose configuration options you want to describe.</p>"
                    }
                },
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the solution stack whose configuration options you want to\n      describe.</p>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the custom platform.</p>"
                    }
                },
                "Options": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionsSpecifierList",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, restricts the descriptions to only the specified options.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message containing a list of application version descriptions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeConfigurationSettings": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeConfigurationSettingsMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationSettingsDescriptions"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyBucketsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Returns a description of the settings for the specified configuration set, that is,\n      either a configuration template or the configuration set associated with a running\n      environment.</p>\n         <p>When describing the settings for the configuration set associated with a running\n      environment, it is possible to receive two sets of setting descriptions. One is the deployed\n      configuration set, and the other is a draft configuration of an environment that is either in\n      the process of deployment or that failed to deploy.</p>\n         <p>Related Topics</p>\n         <ul>\n            <li>\n               <p>\n                  <a>DeleteEnvironmentConfiguration</a>\n               </p>\n            </li>\n         </ul>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeConfigurationSettingsMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The application for the environment or configuration template.</p>",
                        "smithy.api#required": {}
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration template to describe.</p>\n         <p> Conditional: You must specify either this parameter or an EnvironmentName, but not\n      both. If you specify both, AWS Elastic Beanstalk returns an\n        <code>InvalidParameterCombination</code> error. If you do not specify either, AWS Elastic\n      Beanstalk returns a <code>MissingRequiredParameter</code> error. </p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to describe.</p>\n         <p> Condition: You must specify either this or a TemplateName, but not both. If you\n      specify both, AWS Elastic Beanstalk returns an <code>InvalidParameterCombination</code> error.\n      If you do not specify either, AWS Elastic Beanstalk returns\n        <code>MissingRequiredParameter</code> error. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message containing all of the configuration settings for a specified solution\n      stack or configuration template.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentHealth": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentHealthRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentHealthResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#InvalidRequestException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Returns information about the overall health of the specified environment. The\n        <b>DescribeEnvironmentHealth</b> operation is only available with\n      AWS Elastic Beanstalk Enhanced Health.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentHealthRequest": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify the environment by name.</p>\n         <p>You must specify either this or an EnvironmentName, or both.</p>"
                    }
                },
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify the environment by ID.</p>\n         <p>You must specify either this or an EnvironmentName, or both.</p>"
                    }
                },
                "AttributeNames": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentHealthAttributes",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify the response elements to return. To retrieve all attributes, set to\n        <code>All</code>. If no attribute names are specified, returns the name of the\n      environment.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>See the example below to learn how to create a request body.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentHealthResult": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The environment's name.</p>"
                    }
                },
                "HealthStatus": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html\">health status</a> of the\n      environment. For example, <code>Ok</code>.</p>"
                    }
                },
                "Status": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentHealth",
                    "traits": {
                        "smithy.api#documentation": "<p>The environment's operational status. <code>Ready</code>, <code>Launching</code>,\n        <code>Updating</code>, <code>Terminating</code>, or <code>Terminated</code>.</p>"
                    }
                },
                "Color": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html\">health color</a> of the\n      environment.</p>"
                    }
                },
                "Causes": {
                    "target": "com.amazonaws.elasticbeanstalk#Causes",
                    "traits": {
                        "smithy.api#documentation": "<p>Descriptions of the data that contributed to the environment's current health\n      status.</p>"
                    }
                },
                "ApplicationMetrics": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationMetrics",
                    "traits": {
                        "smithy.api#documentation": "<p>Application request metrics for the environment.</p>"
                    }
                },
                "InstancesHealth": {
                    "target": "com.amazonaws.elasticbeanstalk#InstanceHealthSummary",
                    "traits": {
                        "smithy.api#documentation": "<p>Summary health information for the instances in the environment.</p>"
                    }
                },
                "RefreshedAt": {
                    "target": "com.amazonaws.elasticbeanstalk#RefreshedAt",
                    "traits": {
                        "smithy.api#documentation": "<p>The date and time that the health information was retrieved.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Health details for an AWS Elastic Beanstalk environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionHistory": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionHistoryRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionHistoryResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Lists an environment's completed and failed managed actions.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "items": "ManagedActionHistoryItems",
                    "pageSize": "MaxItems"
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionHistoryRequest": {
            "type": "structure",
            "members": {
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The environment ID of the target environment.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the target environment.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The pagination token returned by a previous request.</p>"
                    }
                },
                "MaxItems": {
                    "target": "com.amazonaws.elasticbeanstalk#ManagedActionHistoryMaxItems",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of items to return for a single request.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to list completed and failed managed actions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionHistoryResult": {
            "type": "structure",
            "members": {
                "ManagedActionHistoryItems": {
                    "target": "com.amazonaws.elasticbeanstalk#ManagedActionHistoryItems",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of completed and failed managed actions.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>A pagination token that you pass to <a>DescribeEnvironmentManagedActionHistory</a> to get the next page of\n      results.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A result message containing a list of completed and failed managed actions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActions": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionsRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionsResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Lists an environment's upcoming and in-progress managed actions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionsRequest": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the target environment.</p>"
                    }
                },
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The environment ID of the target environment.</p>"
                    }
                },
                "Status": {
                    "target": "com.amazonaws.elasticbeanstalk#ActionStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>To show only actions with a particular status, specify a status.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to list an environment's upcoming and in-progress managed actions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentManagedActionsResult": {
            "type": "structure",
            "members": {
                "ManagedActions": {
                    "target": "com.amazonaws.elasticbeanstalk#ManagedActions",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of upcoming and in-progress managed actions.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The result message containing a list of managed actions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentResources": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentResourcesMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentResourceDescriptionsMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Returns AWS resources for this environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentResourcesMessage": {
            "type": "structure",
            "members": {
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the environment to retrieve AWS resource usage data.</p>\n         <p> Condition: You must specify either this or an EnvironmentName, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to retrieve AWS resource usage data.</p>\n         <p> Condition: You must specify either this or an EnvironmentId, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to describe the resources in an environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironments": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEnvironmentsMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentDescriptionsMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Returns descriptions for existing environments.</p>",
                "smithy.waiters#waitable": {
                    "EnvironmentExists": {
                        "acceptors": [
                            {
                                "state": "success",
                                "matcher": {
                                    "output": {
                                        "path": "Environments[].Status",
                                        "expected": "Ready",
                                        "comparator": "allStringEquals"
                                    }
                                }
                            },
                            {
                                "state": "retry",
                                "matcher": {
                                    "output": {
                                        "path": "Environments[].Status",
                                        "expected": "Launching",
                                        "comparator": "allStringEquals"
                                    }
                                }
                            }
                        ],
                        "minDelay": 20
                    },
                    "EnvironmentTerminated": {
                        "acceptors": [
                            {
                                "state": "success",
                                "matcher": {
                                    "output": {
                                        "path": "Environments[].Status",
                                        "expected": "Terminated",
                                        "comparator": "allStringEquals"
                                    }
                                }
                            },
                            {
                                "state": "retry",
                                "matcher": {
                                    "output": {
                                        "path": "Environments[].Status",
                                        "expected": "Terminating",
                                        "comparator": "allStringEquals"
                                    }
                                }
                            }
                        ],
                        "minDelay": 20
                    },
                    "EnvironmentUpdated": {
                        "acceptors": [
                            {
                                "state": "success",
                                "matcher": {
                                    "output": {
                                        "path": "Environments[].Status",
                                        "expected": "Ready",
                                        "comparator": "allStringEquals"
                                    }
                                }
                            },
                            {
                                "state": "retry",
                                "matcher": {
                                    "output": {
                                        "path": "Environments[].Status",
                                        "expected": "Updating",
                                        "comparator": "allStringEquals"
                                    }
                                }
                            }
                        ],
                        "minDelay": 20
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEnvironmentsMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only\n      those that are associated with this application.</p>"
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only\n      those that are associated with this application version.</p>"
                    }
                },
                "EnvironmentIds": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentIdList",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only\n      those that have the specified IDs.</p>"
                    }
                },
                "EnvironmentNames": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentNamesList",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only\n      those that have the specified names.</p>"
                    }
                },
                "IncludeDeleted": {
                    "target": "com.amazonaws.elasticbeanstalk#IncludeDeleted",
                    "traits": {
                        "smithy.api#documentation": "<p>Indicates whether to include deleted environments:</p>\n         <p>\n            <code>true</code>: Environments that have been deleted after\n      <code>IncludedDeletedBackTo</code> are displayed.</p>\n         <p>\n            <code>false</code>: Do not include deleted environments.</p>"
                    }
                },
                "IncludedDeletedBackTo": {
                    "target": "com.amazonaws.elasticbeanstalk#IncludeDeletedBackTo",
                    "traits": {
                        "smithy.api#documentation": "<p> If specified when <code>IncludeDeleted</code> is set to <code>true</code>, then\n      environments deleted after this date are displayed. </p>"
                    }
                },
                "MaxRecords": {
                    "target": "com.amazonaws.elasticbeanstalk#MaxRecords",
                    "traits": {
                        "smithy.api#documentation": "<p>For a paginated request. Specify a maximum number of environments to include in\n      each response.</p>\n         <p>If no <code>MaxRecords</code> is specified, all available environments are\n      retrieved in a single response.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>For a paginated request. Specify a token from a previous response page to retrieve the next response page. All other\n      parameter values must be identical to the ones specified in the initial request.</p>\n         <p>If no <code>NextToken</code> is specified, the first page is retrieved.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to describe one or more environments.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEvents": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeEventsMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#EventDescriptionsMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Returns list of event descriptions matching criteria up to the last 6 weeks.</p>\n         <note>\n            <p>This action returns the most recent 1,000 events from the specified\n          <code>NextToken</code>.</p>\n         </note>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "items": "Events",
                    "pageSize": "MaxRecords"
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeEventsMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only\n      those associated with this application.</p>"
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to those\n      associated with this application version.</p>"
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to those that\n      are associated with this environment configuration.</p>"
                    }
                },
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to those\n      associated with this environment.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to those\n      associated with this environment.</p>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a custom platform version. If specified, AWS Elastic Beanstalk restricts the\n      returned descriptions to those associated with this custom platform version.</p>"
                    }
                },
                "RequestId": {
                    "target": "com.amazonaws.elasticbeanstalk#RequestId",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the described events to include only\n      those associated with this request ID.</p>"
                    }
                },
                "Severity": {
                    "target": "com.amazonaws.elasticbeanstalk#EventSeverity",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, limits the events returned from this call to include only those with the\n      specified severity or higher.</p>"
                    }
                },
                "StartTime": {
                    "target": "com.amazonaws.elasticbeanstalk#TimeFilterStart",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk restricts the returned descriptions to those that\n      occur on or after this time.</p>"
                    }
                },
                "EndTime": {
                    "target": "com.amazonaws.elasticbeanstalk#TimeFilterEnd",
                    "traits": {
                        "smithy.api#documentation": "<p> If specified, AWS Elastic Beanstalk restricts the returned descriptions to those that\n      occur up to, but not including, the <code>EndTime</code>. </p>"
                    }
                },
                "MaxRecords": {
                    "target": "com.amazonaws.elasticbeanstalk#MaxRecords",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies the maximum number of events that can be returned, beginning with the most\n      recent event.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>Pagination token. If specified, the events return the next batch of results.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to retrieve a list of events for an environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeInstancesHealth": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeInstancesHealthRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#DescribeInstancesHealthResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#InvalidRequestException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Retrieves detailed information about the health of instances in your AWS Elastic\n      Beanstalk. This operation requires <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced.html\">enhanced health\n      reporting</a>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeInstancesHealthRequest": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify the AWS Elastic Beanstalk environment by name.</p>"
                    }
                },
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify the AWS Elastic Beanstalk environment by ID.</p>"
                    }
                },
                "AttributeNames": {
                    "target": "com.amazonaws.elasticbeanstalk#InstancesHealthAttributes",
                    "traits": {
                        "smithy.api#documentation": "<p>Specifies the response elements you wish to receive. To retrieve all attributes, set to\n        <code>All</code>. If no attribute names are specified, returns a list of\n      instances.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify the pagination token returned by a previous call.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Parameters for a call to <code>DescribeInstancesHealth</code>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribeInstancesHealthResult": {
            "type": "structure",
            "members": {
                "InstanceHealthList": {
                    "target": "com.amazonaws.elasticbeanstalk#InstanceHealthList",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed health information about each instance.</p>\n         <p>The output differs slightly between Linux and Windows environments. There is a difference\n      in the members that are supported under the <code><CPUUtilization></code> type.</p>"
                    }
                },
                "RefreshedAt": {
                    "target": "com.amazonaws.elasticbeanstalk#RefreshedAt",
                    "traits": {
                        "smithy.api#documentation": "<p>The date and time that the health information was retrieved.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>Pagination token for the next page of results, if available.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Detailed health information about the Amazon EC2 instances in an AWS Elastic Beanstalk\n      environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribePlatformVersion": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DescribePlatformVersionRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#DescribePlatformVersionResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Describes a platform version. Provides full details. Compare to <a>ListPlatformVersions</a>, which provides summary information about a list of\n      platform versions.</p>\n         <p>For definitions of platform version and other platform-related terms, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/platforms-glossary.html\">AWS Elastic Beanstalk\n        Platforms Glossary</a>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribePlatformVersionRequest": {
            "type": "structure",
            "members": {
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the platform version.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DescribePlatformVersionResult": {
            "type": "structure",
            "members": {
                "PlatformDescription": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about the platform version.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#Description": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 200
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#DisassociateEnvironmentOperationsRole": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#DisassociateEnvironmentOperationsRoleMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Disassociate the operations role from an environment. After this call is made, Elastic Beanstalk uses\n      the caller's permissions for permissions to downstream services during subsequent calls acting\n      on this environment. For more information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html\">Operations roles</a> in the\n        <i>AWS Elastic Beanstalk Developer Guide</i>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#DisassociateEnvironmentOperationsRoleMessage": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment from which to disassociate the operations role.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to disassociate the operations role from an environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#Ec2InstanceId": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A generic service exception has occurred.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.elasticbeanstalk#EndpointURL": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentArn": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentDescription": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of this environment.</p>"
                    }
                },
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of this environment.</p>"
                    }
                },
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application associated with this environment.</p>"
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>The application version deployed in this environment.</p>"
                    }
                },
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p> The name of the <code>SolutionStack</code> deployed with this environment. </p>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the platform version.</p>"
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration template used to originally launch this\n      environment.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>Describes this environment.</p>"
                    }
                },
                "EndpointURL": {
                    "target": "com.amazonaws.elasticbeanstalk#EndpointURL",
                    "traits": {
                        "smithy.api#documentation": "<p>For load-balanced, autoscaling environments, the URL to the LoadBalancer. For\n      single-instance environments, the IP address of the instance.</p>"
                    }
                },
                "CNAME": {
                    "target": "com.amazonaws.elasticbeanstalk#DNSCname",
                    "traits": {
                        "smithy.api#documentation": "<p>The URL to the CNAME for this environment.</p>"
                    }
                },
                "DateCreated": {
                    "target": "com.amazonaws.elasticbeanstalk#CreationDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The creation date for this environment.</p>"
                    }
                },
                "DateUpdated": {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The last modified date for this environment.</p>"
                    }
                },
                "Status": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The current operational status of the environment:</p>\n\n         <ul>\n            <li>\n               <p>\n                  <code>Launching</code>: Environment is in the process of initial deployment.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Updating</code>: Environment is in the process of updating its configuration\n          settings or application version.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Ready</code>: Environment is available to have an action performed on it, such as\n          update or terminate.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Terminating</code>: Environment is in the shut-down process.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Terminated</code>: Environment is not running.</p>\n            </li>\n         </ul>"
                    }
                },
                "AbortableOperationInProgress": {
                    "target": "com.amazonaws.elasticbeanstalk#AbortableOperationInProgress",
                    "traits": {
                        "smithy.api#documentation": "<p>Indicates if there is an in-progress environment configuration update or application\n      version deployment that you can cancel.</p>\n         <p>\n            <code>true:</code> There is an update in progress. </p>\n         <p>\n            <code>false:</code> There are no updates currently in progress. </p>"
                    }
                },
                "Health": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentHealth",
                    "traits": {
                        "smithy.api#documentation": "<p>Describes the health status of the environment. AWS Elastic Beanstalk indicates the\n      failure levels for a running environment:</p>\n         <ul>\n            <li>\n               <p>\n                  <code>Red</code>: Indicates the environment is not responsive. Occurs when three or more\n          consecutive failures occur for an environment.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Yellow</code>: Indicates that something is wrong. Occurs when two consecutive\n          failures occur for an environment.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Green</code>: Indicates the environment is healthy and fully functional.</p>\n            </li>\n            <li>\n               <p>\n                  <code>Grey</code>: Default health for a new environment. The environment is not fully\n          launched and health checks have not started or health checks are suspended during an\n            <code>UpdateEnvironment</code> or <code>RestartEnvironment</code> request.</p>\n            </li>\n         </ul>\n         <p> Default: <code>Grey</code>\n         </p>"
                    }
                },
                "HealthStatus": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentHealthStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>Returns the health status of the application running in your environment. For more\n      information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html\">Health Colors and\n        Statuses</a>.</p>"
                    }
                },
                "Resources": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentResourcesDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the AWS resources used by this environment.</p>"
                    }
                },
                "Tier": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentTier",
                    "traits": {
                        "smithy.api#documentation": "<p>Describes the current tier of this environment.</p>"
                    }
                },
                "EnvironmentLinks": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentLinks",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of links to other environments in the same group.</p>"
                    }
                },
                "EnvironmentArn": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The environment's Amazon Resource Name (ARN), which can be used in other API requests that require an ARN.</p>"
                    }
                },
                "OperationsRole": {
                    "target": "com.amazonaws.elasticbeanstalk#OperationsRole",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the environment's operations role. For more information,\n      see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html\">Operations roles</a> in the <i>AWS Elastic Beanstalk Developer Guide</i>.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the properties of an environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentDescriptionsList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentDescription"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentDescriptionsMessage": {
            "type": "structure",
            "members": {
                "Environments": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentDescriptionsList",
                    "traits": {
                        "smithy.api#documentation": "<p> Returns an <a>EnvironmentDescription</a> list. </p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>In a paginated request, the token that you can pass in a subsequent request to get the\n      next response page.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message containing a list of environment descriptions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentHealth": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Green",
                        "name": "Green"
                    },
                    {
                        "value": "Yellow",
                        "name": "Yellow"
                    },
                    {
                        "value": "Red",
                        "name": "Red"
                    },
                    {
                        "value": "Grey",
                        "name": "Grey"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentHealthAttribute": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Status",
                        "name": "Status"
                    },
                    {
                        "value": "Color",
                        "name": "Color"
                    },
                    {
                        "value": "Causes",
                        "name": "Causes"
                    },
                    {
                        "value": "ApplicationMetrics",
                        "name": "ApplicationMetrics"
                    },
                    {
                        "value": "InstancesHealth",
                        "name": "InstancesHealth"
                    },
                    {
                        "value": "All",
                        "name": "All"
                    },
                    {
                        "value": "HealthStatus",
                        "name": "HealthStatus"
                    },
                    {
                        "value": "RefreshedAt",
                        "name": "RefreshedAt"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentHealthAttributes": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentHealthAttribute"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentHealthStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "NoData",
                        "name": "NoData"
                    },
                    {
                        "value": "Unknown",
                        "name": "Unknown"
                    },
                    {
                        "value": "Pending",
                        "name": "Pending"
                    },
                    {
                        "value": "Ok",
                        "name": "Ok"
                    },
                    {
                        "value": "Info",
                        "name": "Info"
                    },
                    {
                        "value": "Warning",
                        "name": "Warning"
                    },
                    {
                        "value": "Degraded",
                        "name": "Degraded"
                    },
                    {
                        "value": "Severe",
                        "name": "Severe"
                    },
                    {
                        "value": "Suspended",
                        "name": "Suspended"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentId": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentIdList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentId"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentInfoDescription": {
            "type": "structure",
            "members": {
                "InfoType": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentInfoType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of information retrieved.</p>"
                    }
                },
                "Ec2InstanceId": {
                    "target": "com.amazonaws.elasticbeanstalk#Ec2InstanceId",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon EC2 Instance ID for this information.</p>"
                    }
                },
                "SampleTimestamp": {
                    "target": "com.amazonaws.elasticbeanstalk#SampleTimestamp",
                    "traits": {
                        "smithy.api#documentation": "<p>The time stamp when this information was retrieved.</p>"
                    }
                },
                "Message": {
                    "target": "com.amazonaws.elasticbeanstalk#Message",
                    "traits": {
                        "smithy.api#documentation": "<p>The retrieved information. Currently contains a presigned Amazon S3 URL. The files are\n      deleted after 15 minutes.</p>\n         <p>Anyone in possession of this URL can access the files before they are deleted. Make the\n      URL available only to trusted parties.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The information retrieved from the Amazon EC2 instances.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentInfoDescriptionList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentInfoDescription"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentInfoType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "tail",
                        "name": "tail"
                    },
                    {
                        "value": "bundle",
                        "name": "bundle"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentLink": {
            "type": "structure",
            "members": {
                "LinkName": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the link.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the linked environment (the dependency).</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A link to another environment, defined in the environment's manifest. Links provide\n      connection information in system properties that can be used to connect to another environment\n      in the same group. See <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html\">Environment Manifest\n        (env.yaml)</a> for details.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentLinks": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentLink"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 4,
                    "max": 40
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentNamesList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentName"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentResourceDescription": {
            "type": "structure",
            "members": {
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment.</p>"
                    }
                },
                "AutoScalingGroups": {
                    "target": "com.amazonaws.elasticbeanstalk#AutoScalingGroupList",
                    "traits": {
                        "smithy.api#documentation": "<p> The <code>AutoScalingGroups</code> used by this environment. </p>"
                    }
                },
                "Instances": {
                    "target": "com.amazonaws.elasticbeanstalk#InstanceList",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon EC2 instances used by this environment.</p>"
                    }
                },
                "LaunchConfigurations": {
                    "target": "com.amazonaws.elasticbeanstalk#LaunchConfigurationList",
                    "traits": {
                        "smithy.api#documentation": "<p>The Auto Scaling launch configurations in use by this environment.</p>"
                    }
                },
                "LaunchTemplates": {
                    "target": "com.amazonaws.elasticbeanstalk#LaunchTemplateList",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon EC2 launch templates in use by this environment.</p>"
                    }
                },
                "LoadBalancers": {
                    "target": "com.amazonaws.elasticbeanstalk#LoadBalancerList",
                    "traits": {
                        "smithy.api#documentation": "<p>The LoadBalancers in use by this environment.</p>"
                    }
                },
                "Triggers": {
                    "target": "com.amazonaws.elasticbeanstalk#TriggerList",
                    "traits": {
                        "smithy.api#documentation": "<p>The <code>AutoScaling</code> triggers in use by this environment. </p>"
                    }
                },
                "Queues": {
                    "target": "com.amazonaws.elasticbeanstalk#QueueList",
                    "traits": {
                        "smithy.api#documentation": "<p>The queues used by this environment.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the AWS resources in use by this environment. This data is live.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentResourceDescriptionsMessage": {
            "type": "structure",
            "members": {
                "EnvironmentResources": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentResourceDescription",
                    "traits": {
                        "smithy.api#documentation": "<p> A list of <a>EnvironmentResourceDescription</a>. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message containing a list of environment resource descriptions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentResourcesDescription": {
            "type": "structure",
            "members": {
                "LoadBalancer": {
                    "target": "com.amazonaws.elasticbeanstalk#LoadBalancerDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>Describes the LoadBalancer.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the AWS resources in use by this environment. This data is not live\n      data.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Aborting",
                        "name": "Aborting"
                    },
                    {
                        "value": "Launching",
                        "name": "Launching"
                    },
                    {
                        "value": "Updating",
                        "name": "Updating"
                    },
                    {
                        "value": "LinkingFrom",
                        "name": "LinkingFrom"
                    },
                    {
                        "value": "LinkingTo",
                        "name": "LinkingTo"
                    },
                    {
                        "value": "Ready",
                        "name": "Ready"
                    },
                    {
                        "value": "Terminating",
                        "name": "Terminating"
                    },
                    {
                        "value": "Terminated",
                        "name": "Terminated"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#EnvironmentTier": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of this environment tier.</p>\n         <p>Valid values:</p>\n         <ul>\n            <li>\n               <p>For <i>Web server tier</i> – <code>WebServer</code>\n               </p>\n            </li>\n            <li>\n               <p>For <i>Worker tier</i> – <code>Worker</code>\n               </p>\n            </li>\n         </ul>"
                    }
                },
                "Type": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of this environment tier.</p>\n         <p>Valid values:</p>\n         <ul>\n            <li>\n               <p>For <i>Web server tier</i> – <code>Standard</code>\n               </p>\n            </li>\n            <li>\n               <p>For <i>Worker tier</i> – <code>SQS/HTTP</code>\n               </p>\n            </li>\n         </ul>"
                    }
                },
                "Version": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The version of this environment tier. When you don't set a value to it, Elastic Beanstalk uses the\n      latest compatible worker tier version.</p>\n         <note>\n            <p>This member is deprecated. Any specific version that you set may become out of date.\n        We recommend leaving it unspecified.</p>\n         </note>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the properties of an environment tier</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EventDate": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#EventDescription": {
            "type": "structure",
            "members": {
                "EventDate": {
                    "target": "com.amazonaws.elasticbeanstalk#EventDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The date when the event occurred.</p>"
                    }
                },
                "Message": {
                    "target": "com.amazonaws.elasticbeanstalk#EventMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The event message.</p>"
                    }
                },
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The application associated with the event.</p>"
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>The release label for the application version associated with this event.</p>"
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration associated with this event.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment associated with this event.</p>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the platform version.</p>"
                    }
                },
                "RequestId": {
                    "target": "com.amazonaws.elasticbeanstalk#RequestId",
                    "traits": {
                        "smithy.api#documentation": "<p>The web service request ID for the activity of this event.</p>"
                    }
                },
                "Severity": {
                    "target": "com.amazonaws.elasticbeanstalk#EventSeverity",
                    "traits": {
                        "smithy.api#documentation": "<p>The severity level of this event.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes an event.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EventDescriptionList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#EventDescription"
            }
        },
        "com.amazonaws.elasticbeanstalk#EventDescriptionsMessage": {
            "type": "structure",
            "members": {
                "Events": {
                    "target": "com.amazonaws.elasticbeanstalk#EventDescriptionList",
                    "traits": {
                        "smithy.api#documentation": "<p> A list of <a>EventDescription</a>. </p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p> If returned, this indicates that there are more results to obtain. Use this token in\n      the next <a>DescribeEvents</a> call to get the next batch of events. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message wrapping a list of event descriptions.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#EventMessage": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#EventSeverity": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "TRACE",
                        "name": "TRACE"
                    },
                    {
                        "value": "DEBUG",
                        "name": "DEBUG"
                    },
                    {
                        "value": "INFO",
                        "name": "INFO"
                    },
                    {
                        "value": "WARN",
                        "name": "WARN"
                    },
                    {
                        "value": "ERROR",
                        "name": "ERROR"
                    },
                    {
                        "value": "FATAL",
                        "name": "FATAL"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#ExceptionMessage": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#FailureType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "UpdateCancelled",
                        "name": "UpdateCancelled"
                    },
                    {
                        "value": "CancellationFailed",
                        "name": "CancellationFailed"
                    },
                    {
                        "value": "RollbackFailed",
                        "name": "RollbackFailed"
                    },
                    {
                        "value": "RollbackSuccessful",
                        "name": "RollbackSuccessful"
                    },
                    {
                        "value": "InternalFailure",
                        "name": "InternalFailure"
                    },
                    {
                        "value": "InvalidEnvironmentState",
                        "name": "InvalidEnvironmentState"
                    },
                    {
                        "value": "PermissionsError",
                        "name": "PermissionsError"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#FileTypeExtension": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ForceTerminate": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#GroupName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 19
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ImageId": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#IncludeDeleted": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#IncludeDeletedBackTo": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#Instance": {
            "type": "structure",
            "members": {
                "Id": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the Amazon EC2 instance.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The description of an Amazon EC2 instance.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#InstanceHealthList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#SingleInstanceHealth"
            }
        },
        "com.amazonaws.elasticbeanstalk#InstanceHealthSummary": {
            "type": "structure",
            "members": {
                "NoData": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <b>Grey.</b> AWS Elastic Beanstalk and the health agent are\n      reporting no data on an instance.</p>"
                    }
                },
                "Unknown": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <b>Grey.</b> AWS Elastic Beanstalk and the health agent are\n      reporting an insufficient amount of data on an instance.</p>"
                    }
                },
                "Pending": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <b>Grey.</b> An operation is in progress on an instance within the\n      command timeout.</p>"
                    }
                },
                "Ok": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <b>Green.</b> An instance is passing health checks and the health\n      agent is not reporting any problems.</p>"
                    }
                },
                "Info": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <b>Green.</b> An operation is in progress on an instance.</p>"
                    }
                },
                "Warning": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <b>Yellow.</b> The health agent is reporting a moderate number of\n      request failures or other issues for an instance or environment.</p>"
                    }
                },
                "Degraded": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <b>Red.</b> The health agent is reporting a high number of request\n      failures or other issues for an instance or environment.</p>"
                    }
                },
                "Severe": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <b>Red.</b> The health agent is reporting a very high number of\n      request failures or other issues for an instance or environment.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Represents summary information about the health of an instance. For more information,\n      see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html\">Health Colors and Statuses</a>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#InstanceId": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 255
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#InstanceList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#Instance"
            }
        },
        "com.amazonaws.elasticbeanstalk#InstancesHealthAttribute": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "HealthStatus",
                        "name": "HealthStatus"
                    },
                    {
                        "value": "Color",
                        "name": "Color"
                    },
                    {
                        "value": "Causes",
                        "name": "Causes"
                    },
                    {
                        "value": "ApplicationMetrics",
                        "name": "ApplicationMetrics"
                    },
                    {
                        "value": "RefreshedAt",
                        "name": "RefreshedAt"
                    },
                    {
                        "value": "LaunchedAt",
                        "name": "LaunchedAt"
                    },
                    {
                        "value": "System",
                        "name": "System"
                    },
                    {
                        "value": "Deployment",
                        "name": "Deployment"
                    },
                    {
                        "value": "AvailabilityZone",
                        "name": "AvailabilityZone"
                    },
                    {
                        "value": "InstanceType",
                        "name": "InstanceType"
                    },
                    {
                        "value": "All",
                        "name": "All"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#InstancesHealthAttributes": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#InstancesHealthAttribute"
            }
        },
        "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "InsufficientPrivilegesException",
                    "httpResponseCode": 403
                },
                "smithy.api#documentation": "<p>The specified account does not have sufficient privileges for one or more AWS\n      services.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 403
            }
        },
        "com.amazonaws.elasticbeanstalk#Integer": {
            "type": "integer"
        },
        "com.amazonaws.elasticbeanstalk#InvalidRequestException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "InvalidRequestException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>One or more input parameters is not valid. Please correct the input parameters and try\n      the operation again.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#Latency": {
            "type": "structure",
            "members": {
                "P999": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>The average latency for the slowest 0.1 percent of requests over the last 10\n      seconds.</p>"
                    }
                },
                "P99": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>The average latency for the slowest 1 percent of requests over the last 10\n      seconds.</p>"
                    }
                },
                "P95": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>The average latency for the slowest 5 percent of requests over the last 10\n      seconds.</p>"
                    }
                },
                "P90": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>The average latency for the slowest 10 percent of requests over the last 10\n      seconds.</p>"
                    }
                },
                "P85": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>The average latency for the slowest 15 percent of requests over the last 10\n      seconds.</p>"
                    }
                },
                "P75": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>The average latency for the slowest 25 percent of requests over the last 10\n      seconds.</p>"
                    }
                },
                "P50": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>The average latency for the slowest 50 percent of requests over the last 10\n      seconds.</p>"
                    }
                },
                "P10": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableDouble",
                    "traits": {
                        "smithy.api#documentation": "<p>The average latency for the slowest 90 percent of requests over the last 10\n      seconds.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Represents the average latency for the slowest X percent of requests over the last 10\n      seconds.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#LaunchConfiguration": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceId",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the launch configuration.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes an Auto Scaling launch configuration.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#LaunchConfigurationList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#LaunchConfiguration"
            }
        },
        "com.amazonaws.elasticbeanstalk#LaunchTemplate": {
            "type": "structure",
            "members": {
                "Id": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the launch template.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes an Amazon EC2 launch template.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#LaunchTemplateList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#LaunchTemplate"
            }
        },
        "com.amazonaws.elasticbeanstalk#LaunchedAt": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#ListAvailableSolutionStacks": {
            "type": "operation",
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ListAvailableSolutionStacksResultMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Returns a list of the available solution stack names, with the public version first and\n      then in reverse chronological order.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ListAvailableSolutionStacksResultMessage": {
            "type": "structure",
            "members": {
                "SolutionStacks": {
                    "target": "com.amazonaws.elasticbeanstalk#AvailableSolutionStackNamesList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of available solution stacks.</p>"
                    }
                },
                "SolutionStackDetails": {
                    "target": "com.amazonaws.elasticbeanstalk#AvailableSolutionStackDetailsList",
                    "traits": {
                        "smithy.api#documentation": "<p> A list of available solution stacks and their <a>SolutionStackDescription</a>. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A list of available AWS Elastic Beanstalk solution stacks.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ListPlatformBranches": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#ListPlatformBranchesRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ListPlatformBranchesResult"
            },
            "traits": {
                "smithy.api#documentation": "<p>Lists the platform branches available for your account in an AWS Region. Provides\n      summary information about each platform branch.</p>\n         <p>For definitions of platform branch and other platform-related terms, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/platforms-glossary.html\">AWS Elastic Beanstalk\n        Platforms Glossary</a>.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxRecords"
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ListPlatformBranchesRequest": {
            "type": "structure",
            "members": {
                "Filters": {
                    "target": "com.amazonaws.elasticbeanstalk#SearchFilters",
                    "traits": {
                        "smithy.api#documentation": "<p>Criteria for restricting the resulting list of platform branches. The filter is evaluated\n      as a logical conjunction (AND) of the separate <code>SearchFilter</code> terms.</p>\n         <p>The following list shows valid attribute values for each of the <code>SearchFilter</code>\n      terms. Most operators take a single value. The <code>in</code> and <code>not_in</code>\n      operators can take multiple values.</p>\n         <ul>\n            <li>\n               <p>\n                  <code>Attribute = BranchName</code>:</p>\n               <ul>\n                  <li>\n                     <p>\n                        <code>Operator</code>: <code>=</code> | <code>!=</code> | <code>begins_with</code>\n              | <code>ends_with</code> | <code>contains</code> | <code>in</code> |\n                <code>not_in</code>\n                     </p>\n                  </li>\n               </ul>\n            </li>\n            <li>\n               <p>\n                  <code>Attribute = LifecycleState</code>:</p>\n               <ul>\n                  <li>\n                     <p>\n                        <code>Operator</code>: <code>=</code> | <code>!=</code> | <code>in</code> |\n                <code>not_in</code>\n                     </p>\n                  </li>\n                  <li>\n                     <p>\n                        <code>Values</code>: <code>beta</code> | <code>supported</code> |\n                <code>deprecated</code> | <code>retired</code>\n                     </p>\n                  </li>\n               </ul>\n            </li>\n            <li>\n               <p>\n                  <code>Attribute = PlatformName</code>:</p>\n               <ul>\n                  <li>\n                     <p>\n                        <code>Operator</code>: <code>=</code> | <code>!=</code> | <code>begins_with</code>\n              | <code>ends_with</code> | <code>contains</code> | <code>in</code> |\n              <code>not_in</code>\n                     </p>\n                  </li>\n               </ul>\n            </li>\n            <li>\n               <p>\n                  <code>Attribute = TierType</code>:</p>\n               <ul>\n                  <li>\n                     <p>\n                        <code>Operator</code>: <code>=</code> | <code>!=</code>\n                     </p>\n                  </li>\n                  <li>\n                     <p>\n                        <code>Values</code>: <code>WebServer/Standard</code> | <code>Worker/SQS/HTTP</code>\n                     </p>\n                  </li>\n               </ul>\n            </li>\n         </ul>\n         <p>Array size: limited to 10 <code>SearchFilter</code> objects.</p>\n         <p>Within each <code>SearchFilter</code> item, the <code>Values</code> array is limited to 10\n      items.</p>"
                    }
                },
                "MaxRecords": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformBranchMaxRecords",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of platform branch values returned in one call.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>For a paginated request. Specify a token from a previous response page to retrieve the\n      next response page. All other parameter values must be identical to the ones specified in the\n      initial request.</p>\n         <p>If no <code>NextToken</code> is specified, the first page is retrieved.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ListPlatformBranchesResult": {
            "type": "structure",
            "members": {
                "PlatformBranchSummaryList": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformBranchSummaryList",
                    "traits": {
                        "smithy.api#documentation": "<p>Summary information about the platform branches.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>In a paginated request, if this value isn't <code>null</code>, it's the token that you can\n      pass in a subsequent request to get the next response page.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ListPlatformVersions": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#ListPlatformVersionsRequest"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ListPlatformVersionsResult"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Lists the platform versions available for your account in an AWS Region. Provides\n      summary information about each platform version. Compare to <a>DescribePlatformVersion</a>, which provides full details about a single platform\n      version.</p>\n         <p>For definitions of platform version and other platform-related terms, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/platforms-glossary.html\">AWS Elastic Beanstalk\n        Platforms Glossary</a>.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "items": "PlatformSummaryList",
                    "pageSize": "MaxRecords"
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ListPlatformVersionsRequest": {
            "type": "structure",
            "members": {
                "Filters": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformFilters",
                    "traits": {
                        "smithy.api#documentation": "<p>Criteria for restricting the resulting list of platform versions. The filter is\n      interpreted as a logical conjunction (AND) of the separate <code>PlatformFilter</code>\n      terms.</p>"
                    }
                },
                "MaxRecords": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformMaxRecords",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of platform version values returned in one call.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>For a paginated request. Specify a token from a previous response page to retrieve the\n      next response page. All other parameter values must be identical to the ones specified in the\n      initial request.</p>\n         <p>If no <code>NextToken</code> is specified, the first page is retrieved.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ListPlatformVersionsResult": {
            "type": "structure",
            "members": {
                "PlatformSummaryList": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformSummaryList",
                    "traits": {
                        "smithy.api#documentation": "<p>Summary information about the platform versions.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.elasticbeanstalk#Token",
                    "traits": {
                        "smithy.api#documentation": "<p>In a paginated request, if this value isn't <code>null</code>, it's the token that you can\n      pass in a subsequent request to get the next response page.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ListTagsForResource": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#ListTagsForResourceMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ResourceTagsDescriptionMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceNotFoundException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceTypeNotSupportedException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Return the tags applied to an AWS Elastic Beanstalk resource. The response contains a list of tag key-value pairs.</p>\n         <p>Elastic Beanstalk supports tagging of all of its resources. For details about resource tagging, see\n        <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/applications-tagging-resources.html\">Tagging Application\n        Resources</a>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ListTagsForResourceMessage": {
            "type": "structure",
            "members": {
                "ResourceArn": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the resouce for which a tag list is requested.</p>\n         <p>Must be the ARN of an Elastic Beanstalk resource.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#Listener": {
            "type": "structure",
            "members": {
                "Protocol": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The protocol that is used by the Listener.</p>"
                    }
                },
                "Port": {
                    "target": "com.amazonaws.elasticbeanstalk#Integer",
                    "traits": {
                        "smithy.api#documentation": "<p>The port that is used by the Listener.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the properties of a Listener for the LoadBalancer.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#LoadAverage": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#LoadAverageValue"
            }
        },
        "com.amazonaws.elasticbeanstalk#LoadAverageValue": {
            "type": "double"
        },
        "com.amazonaws.elasticbeanstalk#LoadBalancer": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceId",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the LoadBalancer.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes a LoadBalancer.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#LoadBalancerDescription": {
            "type": "structure",
            "members": {
                "LoadBalancerName": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the LoadBalancer.</p>"
                    }
                },
                "Domain": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The domain name of the LoadBalancer.</p>"
                    }
                },
                "Listeners": {
                    "target": "com.amazonaws.elasticbeanstalk#LoadBalancerListenersDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of Listeners used by the LoadBalancer.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the details of a LoadBalancer.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#LoadBalancerList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#LoadBalancer"
            }
        },
        "com.amazonaws.elasticbeanstalk#LoadBalancerListenersDescription": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#Listener"
            }
        },
        "com.amazonaws.elasticbeanstalk#Maintainer": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ManagedAction": {
            "type": "structure",
            "members": {
                "ActionId": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique identifier for the managed action.</p>"
                    }
                },
                "ActionDescription": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>A description of the managed action.</p>"
                    }
                },
                "ActionType": {
                    "target": "com.amazonaws.elasticbeanstalk#ActionType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of managed action.</p>"
                    }
                },
                "Status": {
                    "target": "com.amazonaws.elasticbeanstalk#ActionStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of the managed action. If the action is <code>Scheduled</code>, you can\n      apply it immediately with <a>ApplyEnvironmentManagedAction</a>.</p>"
                    }
                },
                "WindowStartTime": {
                    "target": "com.amazonaws.elasticbeanstalk#Timestamp",
                    "traits": {
                        "smithy.api#documentation": "<p>The start time of the maintenance window in which the managed action will\n      execute.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The record of an upcoming or in-progress managed action.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ManagedActionHistoryItem": {
            "type": "structure",
            "members": {
                "ActionId": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique identifier for the managed action.</p>"
                    }
                },
                "ActionType": {
                    "target": "com.amazonaws.elasticbeanstalk#ActionType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of the managed action.</p>"
                    }
                },
                "ActionDescription": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>A description of the managed action.</p>"
                    }
                },
                "FailureType": {
                    "target": "com.amazonaws.elasticbeanstalk#FailureType",
                    "traits": {
                        "smithy.api#documentation": "<p>If the action failed, the type of failure.</p>"
                    }
                },
                "Status": {
                    "target": "com.amazonaws.elasticbeanstalk#ActionHistoryStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of the action.</p>"
                    }
                },
                "FailureDescription": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>If the action failed, a description of the failure.</p>"
                    }
                },
                "ExecutedTime": {
                    "target": "com.amazonaws.elasticbeanstalk#Timestamp",
                    "traits": {
                        "smithy.api#documentation": "<p>The date and time that the action started executing.</p>"
                    }
                },
                "FinishedTime": {
                    "target": "com.amazonaws.elasticbeanstalk#Timestamp",
                    "traits": {
                        "smithy.api#documentation": "<p>The date and time that the action finished executing.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The record of a completed or failed managed action.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ManagedActionHistoryItems": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ManagedActionHistoryItem"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ManagedActionHistoryMaxItems": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {},
                "smithy.api#range": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ManagedActionInvalidStateException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "ManagedActionInvalidStateException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>Cannot modify the managed action in its current state.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#ManagedActions": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ManagedAction"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#MaxAgeRule": {
            "type": "structure",
            "members": {
                "Enabled": {
                    "target": "com.amazonaws.elasticbeanstalk#BoxedBoolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify <code>true</code> to apply the rule, or <code>false</code> to disable\n      it.</p>",
                        "smithy.api#required": {}
                    }
                },
                "MaxAgeInDays": {
                    "target": "com.amazonaws.elasticbeanstalk#BoxedInt",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify the number of days to retain an application versions.</p>"
                    }
                },
                "DeleteSourceFromS3": {
                    "target": "com.amazonaws.elasticbeanstalk#BoxedBoolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Set to <code>true</code> to delete a version's source bundle from Amazon S3 when\n      Elastic Beanstalk deletes the application version.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A lifecycle rule that deletes application versions after the specified number of\n      days.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#MaxCountRule": {
            "type": "structure",
            "members": {
                "Enabled": {
                    "target": "com.amazonaws.elasticbeanstalk#BoxedBoolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify <code>true</code> to apply the rule, or <code>false</code> to disable\n      it.</p>",
                        "smithy.api#required": {}
                    }
                },
                "MaxCount": {
                    "target": "com.amazonaws.elasticbeanstalk#BoxedInt",
                    "traits": {
                        "smithy.api#documentation": "<p>Specify the maximum number of application versions to retain.</p>"
                    }
                },
                "DeleteSourceFromS3": {
                    "target": "com.amazonaws.elasticbeanstalk#BoxedBoolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Set to <code>true</code> to delete a version's source bundle from Amazon S3 when\n      Elastic Beanstalk deletes the application version.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A lifecycle rule that deletes the oldest application version when the maximum count is\n      exceeded.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#MaxRecords": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {},
                "smithy.api#range": {
                    "min": 1,
                    "max": 1000
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#Message": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#NextToken": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#NonEmptyString": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "\\S"
            }
        },
        "com.amazonaws.elasticbeanstalk#NullableDouble": {
            "type": "double",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#NullableInteger": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#NullableLong": {
            "type": "long",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#OperatingSystemName": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#OperatingSystemVersion": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#OperationInProgressException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "OperationInProgressFailure",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>Unable to perform the specified operation because another operation that effects an\n      element in this activity is already in progress.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#OperationsRole": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 256
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#OptionNamespace": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#OptionRestrictionMaxLength": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#OptionRestrictionMaxValue": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#OptionRestrictionMinValue": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#OptionRestrictionRegex": {
            "type": "structure",
            "members": {
                "Pattern": {
                    "target": "com.amazonaws.elasticbeanstalk#RegexPattern",
                    "traits": {
                        "smithy.api#documentation": "<p>The regular expression pattern that a string configuration option value with this\n      restriction must match.</p>"
                    }
                },
                "Label": {
                    "target": "com.amazonaws.elasticbeanstalk#RegexLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique name representing this regular expression.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A regular expression representing a restriction on a string configuration option\n      value.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#OptionSpecification": {
            "type": "structure",
            "members": {
                "ResourceName": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceName",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique resource name for a time-based scaling configuration option.</p>"
                    }
                },
                "Namespace": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionNamespace",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique namespace identifying the option's associated AWS resource.</p>"
                    }
                },
                "OptionName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration option.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A specification identifying an individual configuration option.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#OptionsSpecifierList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#OptionSpecification"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformArn": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformBranchLifecycleState": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformBranchMaxRecords": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {},
                "smithy.api#range": {
                    "min": 1
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformBranchSummary": {
            "type": "structure",
            "members": {
                "PlatformName": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the platform to which this platform branch belongs.</p>"
                    }
                },
                "BranchName": {
                    "target": "com.amazonaws.elasticbeanstalk#BranchName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the platform branch.</p>"
                    }
                },
                "LifecycleState": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformBranchLifecycleState",
                    "traits": {
                        "smithy.api#documentation": "<p>The support life cycle state of the platform branch.</p>\n         <p>Possible values: <code>beta</code> | <code>supported</code> | <code>deprecated</code> | \n      <code>retired</code>\n         </p>"
                    }
                },
                "BranchOrder": {
                    "target": "com.amazonaws.elasticbeanstalk#BranchOrder",
                    "traits": {
                        "smithy.api#documentation": "<p>An ordinal number that designates the order in which platform branches have been added to\n      a platform. This can be helpful, for example, if your code calls the\n        <code>ListPlatformBranches</code> action and then displays a list of platform\n      branches.</p>\n         <p>A larger <code>BranchOrder</code> value designates a newer platform branch within the\n      platform.</p>"
                    }
                },
                "SupportedTierList": {
                    "target": "com.amazonaws.elasticbeanstalk#SupportedTierList",
                    "traits": {
                        "smithy.api#documentation": "<p>The environment tiers that platform versions in this branch support.</p>\n         <p>Possible values: <code>WebServer/Standard</code> | <code>Worker/SQS/HTTP</code>\n         </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Summary information about a platform branch.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformBranchSummaryList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#PlatformBranchSummary"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformCategory": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformDescription": {
            "type": "structure",
            "members": {
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the platform version.</p>"
                    }
                },
                "PlatformOwner": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformOwner",
                    "traits": {
                        "smithy.api#documentation": "<p>The AWS account ID of the person who created the platform version.</p>"
                    }
                },
                "PlatformName": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the platform version.</p>"
                    }
                },
                "PlatformVersion": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The version of the platform version.</p>"
                    }
                },
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the solution stack used by the platform version.</p>"
                    }
                },
                "PlatformStatus": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of the platform version.</p>"
                    }
                },
                "DateCreated": {
                    "target": "com.amazonaws.elasticbeanstalk#CreationDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The date when the platform version was created.</p>"
                    }
                },
                "DateUpdated": {
                    "target": "com.amazonaws.elasticbeanstalk#UpdateDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The date when the platform version was last updated.</p>"
                    }
                },
                "PlatformCategory": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformCategory",
                    "traits": {
                        "smithy.api#documentation": "<p>The category of the platform version.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the platform version.</p>"
                    }
                },
                "Maintainer": {
                    "target": "com.amazonaws.elasticbeanstalk#Maintainer",
                    "traits": {
                        "smithy.api#documentation": "<p>Information about the maintainer of the platform version.</p>"
                    }
                },
                "OperatingSystemName": {
                    "target": "com.amazonaws.elasticbeanstalk#OperatingSystemName",
                    "traits": {
                        "smithy.api#documentation": "<p>The operating system used by the platform version.</p>"
                    }
                },
                "OperatingSystemVersion": {
                    "target": "com.amazonaws.elasticbeanstalk#OperatingSystemVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The version of the operating system used by the platform version.</p>"
                    }
                },
                "ProgrammingLanguages": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformProgrammingLanguages",
                    "traits": {
                        "smithy.api#documentation": "<p>The programming languages supported by the platform version.</p>"
                    }
                },
                "Frameworks": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformFrameworks",
                    "traits": {
                        "smithy.api#documentation": "<p>The frameworks supported by the platform version.</p>"
                    }
                },
                "CustomAmiList": {
                    "target": "com.amazonaws.elasticbeanstalk#CustomAmiList",
                    "traits": {
                        "smithy.api#documentation": "<p>The custom AMIs supported by the platform version.</p>"
                    }
                },
                "SupportedTierList": {
                    "target": "com.amazonaws.elasticbeanstalk#SupportedTierList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tiers supported by the platform version.</p>"
                    }
                },
                "SupportedAddonList": {
                    "target": "com.amazonaws.elasticbeanstalk#SupportedAddonList",
                    "traits": {
                        "smithy.api#documentation": "<p>The additions supported by the platform version.</p>"
                    }
                },
                "PlatformLifecycleState": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformLifecycleState",
                    "traits": {
                        "smithy.api#documentation": "<p>The state of the platform version in its lifecycle.</p>\n         <p>Possible values: <code>Recommended</code> | <code>null</code>\n         </p>\n         <p>If a null value is returned, the platform version isn't the recommended one for its\n      branch. Each platform branch has a single recommended platform version, typically the most\n      recent one.</p>"
                    }
                },
                "PlatformBranchName": {
                    "target": "com.amazonaws.elasticbeanstalk#BranchName",
                    "traits": {
                        "smithy.api#documentation": "<p>The platform branch to which the platform version belongs.</p>"
                    }
                },
                "PlatformBranchLifecycleState": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformBranchLifecycleState",
                    "traits": {
                        "smithy.api#documentation": "<p>The state of the platform version's branch in its lifecycle.</p>\n         <p>Possible values: <code>Beta</code> | <code>Supported</code> | <code>Deprecated</code> |\n      <code>Retired</code>\n         </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Detailed information about a platform version.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformFilter": {
            "type": "structure",
            "members": {
                "Type": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformFilterType",
                    "traits": {
                        "smithy.api#documentation": "<p>The platform version attribute to which the filter values are applied.</p>\n         <p>Valid values: <code>PlatformName</code> | <code>PlatformVersion</code> |\n        <code>PlatformStatus</code> | <code>PlatformBranchName</code> |\n        <code>PlatformLifecycleState</code> | <code>PlatformOwner</code> |\n        <code>SupportedTier</code> | <code>SupportedAddon</code> |\n        <code>ProgrammingLanguageName</code> | <code>OperatingSystemName</code>\n         </p>"
                    }
                },
                "Operator": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformFilterOperator",
                    "traits": {
                        "smithy.api#documentation": "<p>The operator to apply to the <code>Type</code> with each of the\n      <code>Values</code>.</p>\n         <p>Valid values: <code>=</code> | <code>!=</code> |\n        <code><</code> | <code><=</code> |\n        <code>></code> | <code>>=</code> |\n        <code>contains</code> | <code>begins_with</code> | <code>ends_with</code>\n         </p>"
                    }
                },
                "Values": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformFilterValueList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of values applied to the filtering platform version attribute. Only one value is supported\n      for all current operators.</p>\n         <p>The following list shows valid filter values for some filter attributes.</p>\n         <ul>\n            <li>\n               <p>\n                  <code>PlatformStatus</code>: <code>Creating</code> | <code>Failed</code> |\n            <code>Ready</code> | <code>Deleting</code> | <code>Deleted</code>\n               </p>\n            </li>\n            <li>\n               <p>\n                  <code>PlatformLifecycleState</code>: <code>recommended</code>\n               </p>\n            </li>\n            <li>\n               <p>\n                  <code>SupportedTier</code>: <code>WebServer/Standard</code> |\n            <code>Worker/SQS/HTTP</code>\n               </p>\n            </li>\n            <li>\n               <p>\n                  <code>SupportedAddon</code>: <code>Log/S3</code> | <code>Monitoring/Healthd</code> |\n            <code>WorkerDaemon/SQSD</code>\n               </p>\n            </li>\n         </ul>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes criteria to restrict the results when listing platform versions.</p>\n         <p>The filter is evaluated as follows: <code>Type Operator Values[1]</code>\n         </p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformFilterOperator": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformFilterType": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformFilterValue": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformFilterValueList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#PlatformFilterValue"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformFilters": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#PlatformFilter"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformFramework": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the framework.</p>"
                    }
                },
                "Version": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The version of the framework.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A framework supported by the platform.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformFrameworks": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#PlatformFramework"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformLifecycleState": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformMaxRecords": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {},
                "smithy.api#range": {
                    "min": 1
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformName": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformOwner": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformProgrammingLanguage": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the programming language.</p>"
                    }
                },
                "Version": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The version of the programming language.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A programming language supported by the platform.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformProgrammingLanguages": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#PlatformProgrammingLanguage"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Creating",
                        "name": "Creating"
                    },
                    {
                        "value": "Failed",
                        "name": "Failed"
                    },
                    {
                        "value": "Ready",
                        "name": "Ready"
                    },
                    {
                        "value": "Deleting",
                        "name": "Deleting"
                    },
                    {
                        "value": "Deleted",
                        "name": "Deleted"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformSummary": {
            "type": "structure",
            "members": {
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the platform version.</p>"
                    }
                },
                "PlatformOwner": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformOwner",
                    "traits": {
                        "smithy.api#documentation": "<p>The AWS account ID of the person who created the platform version.</p>"
                    }
                },
                "PlatformStatus": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of the platform version. You can create an environment from the platform\n      version once it is ready.</p>"
                    }
                },
                "PlatformCategory": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformCategory",
                    "traits": {
                        "smithy.api#documentation": "<p>The category of platform version.</p>"
                    }
                },
                "OperatingSystemName": {
                    "target": "com.amazonaws.elasticbeanstalk#OperatingSystemName",
                    "traits": {
                        "smithy.api#documentation": "<p>The operating system used by the platform version.</p>"
                    }
                },
                "OperatingSystemVersion": {
                    "target": "com.amazonaws.elasticbeanstalk#OperatingSystemVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The version of the operating system used by the platform version.</p>"
                    }
                },
                "SupportedTierList": {
                    "target": "com.amazonaws.elasticbeanstalk#SupportedTierList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tiers in which the platform version runs.</p>"
                    }
                },
                "SupportedAddonList": {
                    "target": "com.amazonaws.elasticbeanstalk#SupportedAddonList",
                    "traits": {
                        "smithy.api#documentation": "<p>The additions associated with the platform version.</p>"
                    }
                },
                "PlatformLifecycleState": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformLifecycleState",
                    "traits": {
                        "smithy.api#documentation": "<p>The state of the platform version in its lifecycle.</p>\n         <p>Possible values: <code>recommended</code> | empty</p>\n         <p>If an empty value is returned, the platform version is supported but isn't the recommended\n    one for its branch.</p>"
                    }
                },
                "PlatformVersion": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The version string of the platform version.</p>"
                    }
                },
                "PlatformBranchName": {
                    "target": "com.amazonaws.elasticbeanstalk#BranchName",
                    "traits": {
                        "smithy.api#documentation": "<p>The platform branch to which the platform version belongs.</p>"
                    }
                },
                "PlatformBranchLifecycleState": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformBranchLifecycleState",
                    "traits": {
                        "smithy.api#documentation": "<p>The state of the platform version's branch in its lifecycle.</p>\n         <p>Possible values: <code>beta</code> | <code>supported</code> | <code>deprecated</code> |\n        <code>retired</code>\n         </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Summary information about a platform version.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformSummaryList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#PlatformSummary"
            }
        },
        "com.amazonaws.elasticbeanstalk#PlatformVersion": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#PlatformVersionStillReferencedException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "PlatformVersionStillReferencedException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>You cannot delete the platform version because there are still environments running on it.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#Queue": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the queue.</p>"
                    }
                },
                "URL": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The URL of the queue.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes a queue.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#QueueList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#Queue"
            }
        },
        "com.amazonaws.elasticbeanstalk#RebuildEnvironment": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#RebuildEnvironmentMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes and recreates all of the AWS resources (for example: the Auto Scaling group,\n      load balancer, etc.) for a specified environment and forces a restart.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#RebuildEnvironmentMessage": {
            "type": "structure",
            "members": {
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the environment to rebuild.</p>\n         <p> Condition: You must specify either this or an EnvironmentName, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to rebuild.</p>\n         <p> Condition: You must specify either this or an EnvironmentId, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p></p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#RefreshedAt": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#RegexLabel": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#RegexPattern": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#RequestCount": {
            "type": "integer"
        },
        "com.amazonaws.elasticbeanstalk#RequestEnvironmentInfo": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#RequestEnvironmentInfoMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Initiates a request to compile the specified type of information of the deployed\n      environment.</p>\n         <p> Setting the <code>InfoType</code> to <code>tail</code> compiles the last lines from\n      the application server log files of every Amazon EC2 instance in your environment. </p>\n         <p> Setting the <code>InfoType</code> to <code>bundle</code> compresses the application\n      server log files for every Amazon EC2 instance into a <code>.zip</code> file. Legacy and .NET\n      containers do not support bundle logs. </p>\n         <p> Use <a>RetrieveEnvironmentInfo</a> to obtain the set of logs. </p>\n         <p>Related Topics</p>\n         <ul>\n            <li>\n               <p>\n                  <a>RetrieveEnvironmentInfo</a>\n               </p>\n            </li>\n         </ul>"
            }
        },
        "com.amazonaws.elasticbeanstalk#RequestEnvironmentInfoMessage": {
            "type": "structure",
            "members": {
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the environment of the requested data.</p>\n         <p>If no such environment is found, <code>RequestEnvironmentInfo</code> returns an\n      <code>InvalidParameterValue</code> error. </p>\n         <p>Condition: You must specify either this or an EnvironmentName, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment of the requested data.</p>\n         <p>If no such environment is found, <code>RequestEnvironmentInfo</code> returns an\n      <code>InvalidParameterValue</code> error. </p>\n         <p>Condition: You must specify either this or an EnvironmentId, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "InfoType": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentInfoType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of information to request.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to retrieve logs from an environment and store them in your Elastic Beanstalk\n      storage bucket.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#RequestId": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ResourceArn": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ResourceId": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ResourceName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 256
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ResourceNotFoundException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "ResourceNotFoundException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>A resource doesn't exist for the specified Amazon Resource Name (ARN).</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#ResourceQuota": {
            "type": "structure",
            "members": {
                "Maximum": {
                    "target": "com.amazonaws.elasticbeanstalk#BoxedInt",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of instances of this Elastic Beanstalk resource type that an AWS account can\n      use.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The AWS Elastic Beanstalk quota information for a single resource type in an AWS account. It\n      reflects the resource's limits for this account.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ResourceQuotas": {
            "type": "structure",
            "members": {
                "ApplicationQuota": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceQuota",
                    "traits": {
                        "smithy.api#documentation": "<p>The quota for applications in the AWS account.</p>"
                    }
                },
                "ApplicationVersionQuota": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceQuota",
                    "traits": {
                        "smithy.api#documentation": "<p>The quota for application versions in the AWS account.</p>"
                    }
                },
                "EnvironmentQuota": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceQuota",
                    "traits": {
                        "smithy.api#documentation": "<p>The quota for environments in the AWS account.</p>"
                    }
                },
                "ConfigurationTemplateQuota": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceQuota",
                    "traits": {
                        "smithy.api#documentation": "<p>The quota for configuration templates in the AWS account.</p>"
                    }
                },
                "CustomPlatformQuota": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceQuota",
                    "traits": {
                        "smithy.api#documentation": "<p>The quota for custom platforms in the AWS account.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A set of per-resource AWS Elastic Beanstalk quotas associated with an AWS account. They reflect\n      Elastic Beanstalk resource limits for this account.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ResourceTagsDescriptionMessage": {
            "type": "structure",
            "members": {
                "ResourceArn": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the resource for which a tag list was requested.</p>"
                    }
                },
                "ResourceTags": {
                    "target": "com.amazonaws.elasticbeanstalk#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of tag key-value pairs.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#ResourceTypeNotSupportedException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "ResourceTypeNotSupportedException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>The type of the specified Amazon Resource Name (ARN) isn't supported for this operation.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#RestartAppServer": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#RestartAppServerMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Causes the environment to restart the application container server running on each\n      Amazon EC2 instance.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#RestartAppServerMessage": {
            "type": "structure",
            "members": {
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the environment to restart the server for.</p>\n         <p> Condition: You must specify either this or an EnvironmentName, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to restart the server for.</p>\n         <p> Condition: You must specify either this or an EnvironmentId, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p></p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#RetrieveEnvironmentInfo": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#RetrieveEnvironmentInfoMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#RetrieveEnvironmentInfoResultMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Retrieves the compiled information from a <a>RequestEnvironmentInfo</a>\n      request.</p>\n         <p>Related Topics</p>\n         <ul>\n            <li>\n               <p>\n                  <a>RequestEnvironmentInfo</a>\n               </p>\n            </li>\n         </ul>"
            }
        },
        "com.amazonaws.elasticbeanstalk#RetrieveEnvironmentInfoMessage": {
            "type": "structure",
            "members": {
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the data's environment.</p>\n         <p>If no such environment is found, returns an <code>InvalidParameterValue</code>\n      error.</p>\n         <p>Condition: You must specify either this or an EnvironmentName, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code>\n      error.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the data's environment.</p>\n         <p> If no such environment is found, returns an <code>InvalidParameterValue</code> error. </p>\n         <p> Condition: You must specify either this or an EnvironmentId, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "InfoType": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentInfoType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of information to retrieve.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to download logs retrieved with <a>RequestEnvironmentInfo</a>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#RetrieveEnvironmentInfoResultMessage": {
            "type": "structure",
            "members": {
                "EnvironmentInfo": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentInfoDescriptionList",
                    "traits": {
                        "smithy.api#documentation": "<p> The <a>EnvironmentInfoDescription</a> of the environment. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Result message containing a description of the requested environment info.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#S3Bucket": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 255
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#S3Key": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 1024
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#S3Location": {
            "type": "structure",
            "members": {
                "S3Bucket": {
                    "target": "com.amazonaws.elasticbeanstalk#S3Bucket",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon S3 bucket where the data is located.</p>"
                    }
                },
                "S3Key": {
                    "target": "com.amazonaws.elasticbeanstalk#S3Key",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon S3 key where the data is located.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The bucket and key of an item stored in Amazon S3.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#S3LocationNotInServiceRegionException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "S3LocationNotInServiceRegionException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>The specified S3 bucket does not belong to the S3 region in which the service is\n      running. The following regions are supported:</p>\n         <ul>\n            <li>\n\t              <p>IAD/us-east-1</p>\n\t           </li>\n            <li>\n\t              <p>PDX/us-west-2</p>\n\t           </li>\n            <li>\n\t              <p>DUB/eu-west-1</p>\n\t           </li>\n         </ul>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#S3SubscriptionRequiredException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "S3SubscriptionRequiredException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>The specified account does not have a subscription to Amazon S3.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#SampleTimestamp": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#SearchFilter": {
            "type": "structure",
            "members": {
                "Attribute": {
                    "target": "com.amazonaws.elasticbeanstalk#SearchFilterAttribute",
                    "traits": {
                        "smithy.api#documentation": "<p>The result attribute to which the filter values are applied. Valid values vary by API\n      action.</p>"
                    }
                },
                "Operator": {
                    "target": "com.amazonaws.elasticbeanstalk#SearchFilterOperator",
                    "traits": {
                        "smithy.api#documentation": "<p>The operator to apply to the <code>Attribute</code> with each of the <code>Values</code>.\n      Valid values vary by <code>Attribute</code>.</p>"
                    }
                },
                "Values": {
                    "target": "com.amazonaws.elasticbeanstalk#SearchFilterValues",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of values applied to the <code>Attribute</code> and <code>Operator</code>\n      attributes. Number of values and valid values vary by <code>Attribute</code>.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes criteria to restrict a list of results.</p>\n         <p>For operators that apply a single value to the attribute, the filter is evaluated as\n      follows: <code>Attribute Operator Values[1]</code>\n         </p>\n         <p>Some operators, e.g. <code>in</code>, can apply multiple values. In this case, the filter\n      is evaluated as a logical union (OR) of applications of the operator to the attribute with\n      each one of the values: <code>(Attribute Operator Values[1]) OR (Attribute Operator Values[2])\n        OR ...</code>\n         </p>\n         <p>The valid values for attributes of <code>SearchFilter</code> depend on the API action. For\n      valid values, see the reference page for the API action you're calling that takes a\n        <code>SearchFilter</code> parameter.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#SearchFilterAttribute": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#SearchFilterOperator": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#SearchFilterValue": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#SearchFilterValues": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#SearchFilterValue"
            }
        },
        "com.amazonaws.elasticbeanstalk#SearchFilters": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#SearchFilter"
            }
        },
        "com.amazonaws.elasticbeanstalk#SingleInstanceHealth": {
            "type": "structure",
            "members": {
                "InstanceId": {
                    "target": "com.amazonaws.elasticbeanstalk#InstanceId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the Amazon EC2 instance.</p>"
                    }
                },
                "HealthStatus": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>Returns the health status of the specified instance. For more information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html\">Health\n        Colors and Statuses</a>.</p>"
                    }
                },
                "Color": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>Represents the color indicator that gives you information about the health of the EC2\n      instance. For more information, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html\">Health Colors and\n        Statuses</a>.</p>"
                    }
                },
                "Causes": {
                    "target": "com.amazonaws.elasticbeanstalk#Causes",
                    "traits": {
                        "smithy.api#documentation": "<p>Represents the causes, which provide more information about the current health\n      status.</p>"
                    }
                },
                "LaunchedAt": {
                    "target": "com.amazonaws.elasticbeanstalk#LaunchedAt",
                    "traits": {
                        "smithy.api#documentation": "<p>The time at which the EC2 instance was launched.</p>"
                    }
                },
                "ApplicationMetrics": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationMetrics",
                    "traits": {
                        "smithy.api#documentation": "<p>Request metrics from your application.</p>"
                    }
                },
                "System": {
                    "target": "com.amazonaws.elasticbeanstalk#SystemStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>Operating system metrics from the instance.</p>"
                    }
                },
                "Deployment": {
                    "target": "com.amazonaws.elasticbeanstalk#Deployment",
                    "traits": {
                        "smithy.api#documentation": "<p>Information about the most recent deployment to an instance.</p>"
                    }
                },
                "AvailabilityZone": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The availability zone in which the instance runs.</p>"
                    }
                },
                "InstanceType": {
                    "target": "com.amazonaws.elasticbeanstalk#String",
                    "traits": {
                        "smithy.api#documentation": "<p>The instance's type.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Detailed health information about an Amazon EC2 instance in your Elastic Beanstalk\n      environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#SolutionStackDescription": {
            "type": "structure",
            "members": {
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the solution stack.</p>"
                    }
                },
                "PermittedFileTypes": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackFileTypeList",
                    "traits": {
                        "smithy.api#documentation": "<p>The permitted file types allowed for a solution stack.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes the solution stack.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#SolutionStackFileTypeList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#FileTypeExtension"
            }
        },
        "com.amazonaws.elasticbeanstalk#SolutionStackName": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#SourceBuildInformation": {
            "type": "structure",
            "members": {
                "SourceType": {
                    "target": "com.amazonaws.elasticbeanstalk#SourceType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of repository.</p>\n         <ul>\n            <li>\n\t              <p>\n                  <code>Git</code>\n               </p>\n            </li>\n            <li>\n\t              <p>\n                  <code>Zip</code>\n               </p>\n            </li>\n         </ul>",
                        "smithy.api#required": {}
                    }
                },
                "SourceRepository": {
                    "target": "com.amazonaws.elasticbeanstalk#SourceRepository",
                    "traits": {
                        "smithy.api#documentation": "<p>Location where the repository is stored.</p>\n         <ul>\n            <li>\n\t              <p>\n                  <code>CodeCommit</code>\n               </p>\n            </li>\n            <li>\n\t              <p>\n                  <code>S3</code>\n               </p>\n            </li>\n         </ul>",
                        "smithy.api#required": {}
                    }
                },
                "SourceLocation": {
                    "target": "com.amazonaws.elasticbeanstalk#SourceLocation",
                    "traits": {
                        "smithy.api#documentation": "<p>The location of the source code, as a formatted string, depending on the value of <code>SourceRepository</code>\n         </p>\n        <ul>\n            <li>\n\t              <p>For <code>CodeCommit</code>,\n\tthe format is the repository name and commit ID, separated by a forward slash.\n\tFor example,\n\t<code>my-git-repo/265cfa0cf6af46153527f55d6503ec030551f57a</code>.</p>\n            </li>\n            <li>\n\t              <p>For <code>S3</code>,\n\tthe format is the S3 bucket name and object key, separated by a forward slash.\n\tFor example,\n\t<code>my-s3-bucket/Folders/my-source-file</code>.</p>\n            </li>\n         </ul>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Location of the source code for an application version.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#SourceBundleDeletionException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "SourceBundleDeletionFailure",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>Unable to delete the Amazon S3 source bundle associated with the application version.\n      The application version was deleted successfully.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#SourceConfiguration": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application associated with the configuration.</p>"
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration template.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A specification for an environment configuration.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#SourceLocation": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 3,
                    "max": 255
                },
                "smithy.api#pattern": "^.+/.+$"
            }
        },
        "com.amazonaws.elasticbeanstalk#SourceRepository": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "CodeCommit",
                        "name": "CodeCommit"
                    },
                    {
                        "value": "S3",
                        "name": "S3"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#SourceType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "Git",
                        "name": "Git"
                    },
                    {
                        "value": "Zip",
                        "name": "Zip"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#StatusCodes": {
            "type": "structure",
            "members": {
                "Status2xx": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>The percentage of requests over the last 10 seconds that resulted in a 2xx (200, 201,\n      etc.) status code.</p>"
                    }
                },
                "Status3xx": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>The percentage of requests over the last 10 seconds that resulted in a 3xx (300, 301,\n      etc.) status code.</p>"
                    }
                },
                "Status4xx": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>The percentage of requests over the last 10 seconds that resulted in a 4xx (400, 401,\n      etc.) status code.</p>"
                    }
                },
                "Status5xx": {
                    "target": "com.amazonaws.elasticbeanstalk#NullableInteger",
                    "traits": {
                        "smithy.api#documentation": "<p>The percentage of requests over the last 10 seconds that resulted in a 5xx (500, 501,\n      etc.) status code.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Represents the percentage of requests over the last 10 seconds that resulted in each\n      type of status code response. For more information, see <a href=\"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html\">Status Code\n      Definitions</a>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#String": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#SupportedAddon": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#SupportedAddonList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#SupportedAddon"
            }
        },
        "com.amazonaws.elasticbeanstalk#SupportedTier": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#SupportedTierList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#SupportedTier"
            }
        },
        "com.amazonaws.elasticbeanstalk#SwapEnvironmentCNAMEs": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#SwapEnvironmentCNAMEsMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Swaps the CNAMEs of two environments.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#SwapEnvironmentCNAMEsMessage": {
            "type": "structure",
            "members": {
                "SourceEnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the source environment.</p>\n         <p> Condition: You must specify at least the <code>SourceEnvironmentID</code> or the\n      <code>SourceEnvironmentName</code>. You may also specify both. If you specify the\n      <code>SourceEnvironmentId</code>, you must specify the\n      <code>DestinationEnvironmentId</code>. </p>"
                    }
                },
                "SourceEnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the source environment.</p>\n         <p> Condition: You must specify at least the <code>SourceEnvironmentID</code> or the\n      <code>SourceEnvironmentName</code>. You may also specify both. If you specify the\n      <code>SourceEnvironmentName</code>, you must specify the\n      <code>DestinationEnvironmentName</code>. </p>"
                    }
                },
                "DestinationEnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the destination environment.</p>\n         <p> Condition: You must specify at least the <code>DestinationEnvironmentID</code> or the\n      <code>DestinationEnvironmentName</code>. You may also specify both. You must specify the\n      <code>SourceEnvironmentId</code> with the <code>DestinationEnvironmentId</code>. </p>"
                    }
                },
                "DestinationEnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the destination environment.</p>\n         <p> Condition: You must specify at least the <code>DestinationEnvironmentID</code> or the\n      <code>DestinationEnvironmentName</code>. You may also specify both. You must specify the\n      <code>SourceEnvironmentName</code> with the <code>DestinationEnvironmentName</code>.\n    </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Swaps the CNAMEs of two environments.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#SystemStatus": {
            "type": "structure",
            "members": {
                "CPUUtilization": {
                    "target": "com.amazonaws.elasticbeanstalk#CPUUtilization",
                    "traits": {
                        "smithy.api#documentation": "<p>CPU utilization metrics for the instance.</p>"
                    }
                },
                "LoadAverage": {
                    "target": "com.amazonaws.elasticbeanstalk#LoadAverage",
                    "traits": {
                        "smithy.api#documentation": "<p>Load average in the last 1-minute, 5-minute, and 15-minute periods. \n      For more information, see\n        <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-metrics.html#health-enhanced-metrics-os\">Operating System Metrics</a>.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>CPU utilization and load average metrics for an Amazon EC2 instance.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#Tag": {
            "type": "structure",
            "members": {
                "Key": {
                    "target": "com.amazonaws.elasticbeanstalk#TagKey",
                    "traits": {
                        "smithy.api#documentation": "<p>The key of the tag.</p>"
                    }
                },
                "Value": {
                    "target": "com.amazonaws.elasticbeanstalk#TagValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The value of the tag.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes a tag applied to a resource in an environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#TagKey": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 128
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#TagKeyList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#TagKey"
            }
        },
        "com.amazonaws.elasticbeanstalk#TagList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#Tag"
            }
        },
        "com.amazonaws.elasticbeanstalk#TagValue": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 256
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#Tags": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#Tag"
            }
        },
        "com.amazonaws.elasticbeanstalk#TerminateEnvForce": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#TerminateEnvironment": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#TerminateEnvironmentMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentDescription"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Terminates the specified environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#TerminateEnvironmentMessage": {
            "type": "structure",
            "members": {
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the environment to terminate.</p>\n         <p> Condition: You must specify either this or an EnvironmentName, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to terminate.</p>\n         <p> Condition: You must specify either this or an EnvironmentId, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "TerminateResources": {
                    "target": "com.amazonaws.elasticbeanstalk#TerminateEnvironmentResources",
                    "traits": {
                        "smithy.api#documentation": "<p>Indicates whether the associated AWS resources should shut down when the environment is\n      terminated:</p>\n         <ul>\n            <li>\n               <p>\n                  <code>true</code>: The specified environment as well as the associated AWS resources, such\n          as Auto Scaling group and LoadBalancer, are terminated.</p>\n            </li>\n            <li>\n               <p>\n                  <code>false</code>: AWS Elastic Beanstalk resource management is removed from the\n          environment, but the AWS resources continue to operate.</p>\n            </li>\n         </ul>\n         <p> For more information, see the <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/ug/\"> AWS Elastic Beanstalk User Guide. </a>\n         </p>\n         <p> Default: <code>true</code>\n         </p>\n         <p> Valid Values: <code>true</code> | <code>false</code>\n         </p>"
                    }
                },
                "ForceTerminate": {
                    "target": "com.amazonaws.elasticbeanstalk#ForceTerminate",
                    "traits": {
                        "smithy.api#documentation": "<p>Terminates the target environment even if another environment in the same group is\n      dependent on it.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to terminate an environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#TerminateEnvironmentResources": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#TimeFilterEnd": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#TimeFilterStart": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#Timestamp": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#Token": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#TooManyApplicationVersionsException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The specified account has reached its limit of application versions.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.elasticbeanstalk#TooManyApplicationsException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "TooManyApplicationsException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>The specified account has reached its limit of applications.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#TooManyBucketsException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "TooManyBucketsException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>The specified account has reached its limit of Amazon S3 buckets.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#TooManyConfigurationTemplatesException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "TooManyConfigurationTemplatesException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>The specified account has reached its limit of configuration templates.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#TooManyEnvironmentsException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "TooManyEnvironmentsException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>The specified account has reached its limit of environments.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#TooManyPlatformsException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "TooManyPlatformsException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>You have exceeded the maximum number of allowed platforms associated with the account.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#TooManyTagsException": {
            "type": "structure",
            "members": {
                "message": {
                    "target": "com.amazonaws.elasticbeanstalk#ExceptionMessage",
                    "traits": {
                        "smithy.api#documentation": "<p>The exception error message.</p>"
                    }
                }
            },
            "traits": {
                "aws.protocols#awsQueryError": {
                    "code": "TooManyTagsException",
                    "httpResponseCode": 400
                },
                "smithy.api#documentation": "<p>The number of tags in the resource would exceed the number of tags that each resource\n      can have.</p>\n         <p>To calculate this, the operation considers both the number of tags the resource already has\n      and the tags this operation would add if it succeeded.</p>",
                "smithy.api#error": "client",
                "smithy.api#httpError": 400
            }
        },
        "com.amazonaws.elasticbeanstalk#Trigger": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceId",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the trigger.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Describes a trigger.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#TriggerList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#Trigger"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateApplication": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#UpdateApplicationMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationDescriptionMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Updates the specified application to have the specified properties.</p>\n         <note>\n            <p>If a property (for example, <code>description</code>) is not provided, the value\n        remains unchanged. To clear these properties, specify an empty string.</p>\n         </note>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateApplicationMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application to update. If no such application is found,\n        <code>UpdateApplication</code> returns an <code>InvalidParameterValue</code> error.\n    </p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>A new description for the application.</p>\n         <p>Default: If not specified, AWS Elastic Beanstalk does not update the\n      description.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to update an application.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateApplicationResourceLifecycle": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#UpdateApplicationResourceLifecycleMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationResourceLifecycleDescriptionMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Modifies lifecycle settings for an application.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateApplicationResourceLifecycleMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ResourceLifecycleConfig": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationResourceLifecycleConfig",
                    "traits": {
                        "smithy.api#documentation": "<p>The lifecycle configuration.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateApplicationVersion": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#UpdateApplicationVersionMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ApplicationVersionDescriptionMessage"
            },
            "traits": {
                "smithy.api#documentation": "<p>Updates the specified application version to have the specified properties.</p>\n         <note>\n            <p>If a property (for example, <code>description</code>) is not provided, the value\n        remains unchanged. To clear properties, specify an empty string.</p>\n         </note>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateApplicationVersionMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application associated with this version.</p>\n         <p> If no application is found with this name, <code>UpdateApplication</code> returns an\n        <code>InvalidParameterValue</code> error.</p>",
                        "smithy.api#required": {}
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the version to update.</p>\n         <p>If no application version is found with this label, <code>UpdateApplication</code>\n      returns an <code>InvalidParameterValue</code> error. </p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>A new description for this version.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p></p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateConfigurationTemplate": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#UpdateConfigurationTemplateMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationSettingsDescription"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyBucketsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates the specified configuration template to have the specified properties or\n      configuration option values.</p>\n         <note>\n            <p>If a property (for example, <code>ApplicationName</code>) is not provided, its value\n        remains unchanged. To clear such properties, specify an empty string.</p>\n         </note>\n         <p>Related Topics</p>\n         <ul>\n            <li>\n               <p>\n                  <a>DescribeConfigurationOptions</a>\n               </p>\n            </li>\n         </ul>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateConfigurationTemplateMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application associated with the configuration template to\n      update.</p>\n         <p> If no application is found with this name, <code>UpdateConfigurationTemplate</code>\n      returns an <code>InvalidParameterValue</code> error. </p>",
                        "smithy.api#required": {}
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration template to update.</p>\n         <p> If no configuration template is found with this name,\n        <code>UpdateConfigurationTemplate</code> returns an <code>InvalidParameterValue</code>\n      error. </p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>A new description for the configuration.</p>"
                    }
                },
                "OptionSettings": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSettingsList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of configuration option settings to update with the new specified option\n      value.</p>"
                    }
                },
                "OptionsToRemove": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionsSpecifierList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of configuration options to remove from the configuration set.</p>\n         <p> Constraint: You can remove only <code>UserDefined</code> configuration options.\n    </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The result message containing the options for the specified solution stack.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateDate": {
            "type": "timestamp"
        },
        "com.amazonaws.elasticbeanstalk#UpdateEnvironment": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#UpdateEnvironmentMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#EnvironmentDescription"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyBucketsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates the environment description, deploys a new application version, updates the\n      configuration settings to an entirely new configuration template, or updates select\n      configuration option values in the running environment.</p>\n         <p> Attempting to update both the release and configuration is not allowed and AWS Elastic\n      Beanstalk returns an <code>InvalidParameterCombination</code> error. </p>\n         <p> When updating the configuration settings to a new template or individual settings, a\n      draft configuration is created and <a>DescribeConfigurationSettings</a> for this\n      environment returns two setting descriptions with different <code>DeploymentStatus</code>\n      values. </p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateEnvironmentMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application with which the environment is associated.</p>"
                    }
                },
                "EnvironmentId": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the environment to update.</p>\n         <p>If no environment with this ID exists, AWS Elastic Beanstalk returns an\n        <code>InvalidParameterValue</code> error.</p>\n         <p>Condition: You must specify either this or an EnvironmentName, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to update. If no environment with this name exists, AWS\n      Elastic Beanstalk returns an <code>InvalidParameterValue</code> error. </p>\n         <p>Condition: You must specify either this or an EnvironmentId, or both. If you do not\n      specify either, AWS Elastic Beanstalk returns <code>MissingRequiredParameter</code> error.\n    </p>"
                    }
                },
                "GroupName": {
                    "target": "com.amazonaws.elasticbeanstalk#GroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the group to which the target environment belongs. Specify a group name\n      only if the environment's name is specified in an environment manifest and not with the\n      environment name or environment ID parameters. See <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html\">Environment Manifest\n        (env.yaml)</a> for details.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.elasticbeanstalk#Description",
                    "traits": {
                        "smithy.api#documentation": "<p>If this parameter is specified, AWS Elastic Beanstalk updates the description of this\n      environment.</p>"
                    }
                },
                "Tier": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentTier",
                    "traits": {
                        "smithy.api#documentation": "<p>This specifies the tier to use to update the environment.</p>\n         <p>Condition: At this time, if you change the tier version, name, or type, AWS Elastic\n      Beanstalk returns <code>InvalidParameterValue</code> error. </p>"
                    }
                },
                "VersionLabel": {
                    "target": "com.amazonaws.elasticbeanstalk#VersionLabel",
                    "traits": {
                        "smithy.api#documentation": "<p>If this parameter is specified, AWS Elastic Beanstalk deploys the named application\n      version to the environment. If no such application version is found, returns an\n        <code>InvalidParameterValue</code> error. </p>"
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>If this parameter is specified, AWS Elastic Beanstalk deploys this configuration\n      template to the environment. If no such configuration template is found, AWS Elastic Beanstalk\n      returns an <code>InvalidParameterValue</code> error. </p>"
                    }
                },
                "SolutionStackName": {
                    "target": "com.amazonaws.elasticbeanstalk#SolutionStackName",
                    "traits": {
                        "smithy.api#documentation": "<p>This specifies the platform version that the environment will run after the environment\n      is updated.</p>"
                    }
                },
                "PlatformArn": {
                    "target": "com.amazonaws.elasticbeanstalk#PlatformArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the platform, if used.</p>"
                    }
                },
                "OptionSettings": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSettingsList",
                    "traits": {
                        "smithy.api#documentation": "<p>If specified, AWS Elastic Beanstalk updates the configuration set associated with the\n      running environment and sets the specified configuration options to the requested\n      value.</p>"
                    }
                },
                "OptionsToRemove": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionsSpecifierList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of custom user-defined configuration options to remove from the configuration\n      set for this environment.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Request to update an environment.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateTagsForResource": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#UpdateTagsForResourceMessage"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#OperationInProgressException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceNotFoundException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceTypeNotSupportedException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyTagsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Update the list of tags applied to an AWS Elastic Beanstalk resource. Two lists can be passed: <code>TagsToAdd</code>\n      for tags to add or update, and <code>TagsToRemove</code>.</p>\n         <p>Elastic Beanstalk supports tagging of all of its resources. For details about resource tagging, see\n      <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/applications-tagging-resources.html\">Tagging Application\n        Resources</a>.</p>\n         <p>If you create a custom IAM user policy to control permission to this operation, specify\n      one of the following two virtual actions (or both) instead of the API operation name:</p>\n         <dl>\n            <dt>elasticbeanstalk:AddTags</dt>\n            <dd>\n               <p>Controls permission to call <code>UpdateTagsForResource</code> and pass a list of tags to add in the <code>TagsToAdd</code>\n          parameter.</p>\n            </dd>\n            <dt>elasticbeanstalk:RemoveTags</dt>\n            <dd>\n               <p>Controls permission to call <code>UpdateTagsForResource</code> and pass a list of tag keys to remove in the <code>TagsToRemove</code>\n          parameter.</p>\n            </dd>\n         </dl>\n         <p>For details about creating a custom user policy, see <a href=\"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.iam.managed-policies.html#AWSHowTo.iam.policies\">Creating a Custom User Policy</a>.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#UpdateTagsForResourceMessage": {
            "type": "structure",
            "members": {
                "ResourceArn": {
                    "target": "com.amazonaws.elasticbeanstalk#ResourceArn",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the resouce to be updated.</p>\n         <p>Must be the ARN of an Elastic Beanstalk resource.</p>",
                        "smithy.api#required": {}
                    }
                },
                "TagsToAdd": {
                    "target": "com.amazonaws.elasticbeanstalk#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of tags to add or update. If a key of an existing tag is added, the tag's value is\n      updated.</p>\n         <p>Specify at least one of these parameters: <code>TagsToAdd</code>,\n        <code>TagsToRemove</code>.</p>"
                    }
                },
                "TagsToRemove": {
                    "target": "com.amazonaws.elasticbeanstalk#TagKeyList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of tag keys to remove. If a tag key doesn't exist, it is silently ignored.</p>\n         <p>Specify at least one of these parameters: <code>TagsToAdd</code>,\n      <code>TagsToRemove</code>.</p>"
                    }
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#UserDefinedOption": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.elasticbeanstalk#ValidateConfigurationSettings": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.elasticbeanstalk#ValidateConfigurationSettingsMessage"
            },
            "output": {
                "target": "com.amazonaws.elasticbeanstalk#ConfigurationSettingsValidationMessages"
            },
            "errors": [
                {
                    "target": "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException"
                },
                {
                    "target": "com.amazonaws.elasticbeanstalk#TooManyBucketsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Takes a set of configuration settings and either a configuration template or\n      environment, and determines whether those values are valid.</p>\n         <p>This action returns a list of messages indicating any errors or warnings associated\n      with the selection of option values.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ValidateConfigurationSettingsMessage": {
            "type": "structure",
            "members": {
                "ApplicationName": {
                    "target": "com.amazonaws.elasticbeanstalk#ApplicationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the application that the configuration template or environment belongs\n      to.</p>",
                        "smithy.api#required": {}
                    }
                },
                "TemplateName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationTemplateName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the configuration template to validate the settings against.</p>\n         <p>Condition: You cannot specify both this and an environment name.</p>"
                    }
                },
                "EnvironmentName": {
                    "target": "com.amazonaws.elasticbeanstalk#EnvironmentName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the environment to validate the settings against.</p>\n         <p>Condition: You cannot specify both this and a configuration template name.</p>"
                    }
                },
                "OptionSettings": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionSettingsList",
                    "traits": {
                        "smithy.api#documentation": "<p>A list of the options and desired values to evaluate.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A list of validation messages for a specified configuration template.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ValidationMessage": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.elasticbeanstalk#ValidationMessageString",
                    "traits": {
                        "smithy.api#documentation": "<p>A message describing the error or warning.</p>"
                    }
                },
                "Severity": {
                    "target": "com.amazonaws.elasticbeanstalk#ValidationSeverity",
                    "traits": {
                        "smithy.api#documentation": "<p>An indication of the severity of this message:</p>\n         <ul>\n            <li>\n               <p>\n                  <code>error</code>: This message indicates that this is not a valid setting for an\n          option.</p>\n            </li>\n            <li>\n               <p>\n                  <code>warning</code>: This message is providing information you should take into\n          account.</p>\n            </li>\n         </ul>"
                    }
                },
                "Namespace": {
                    "target": "com.amazonaws.elasticbeanstalk#OptionNamespace",
                    "traits": {
                        "smithy.api#documentation": "<p>The namespace to which the option belongs.</p>"
                    }
                },
                "OptionName": {
                    "target": "com.amazonaws.elasticbeanstalk#ConfigurationOptionName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the option.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>An error or warning for a desired configuration option value.</p>"
            }
        },
        "com.amazonaws.elasticbeanstalk#ValidationMessageString": {
            "type": "string"
        },
        "com.amazonaws.elasticbeanstalk#ValidationMessagesList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#ValidationMessage"
            }
        },
        "com.amazonaws.elasticbeanstalk#ValidationSeverity": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "error",
                        "name": "error"
                    },
                    {
                        "value": "warning",
                        "name": "warning"
                    }
                ]
            }
        },
        "com.amazonaws.elasticbeanstalk#VersionLabel": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.elasticbeanstalk#VersionLabels": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#VersionLabel"
            }
        },
        "com.amazonaws.elasticbeanstalk#VersionLabelsList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.elasticbeanstalk#VersionLabel"
            }
        },
        "com.amazonaws.elasticbeanstalk#VirtualizationType": {
            "type": "string"
        }
    }
}
