{
  "metadata": {
    "apiVersion": "2010-12-01",
    "endpointPrefix": "elasticbeanstalk",
    "serviceAbbreviation": "Elastic Beanstalk",
    "serviceFullName": "AWS Elastic Beanstalk",
    "signatureVersion": "v4",
    "xmlNamespace": "http://elasticbeanstalk.amazonaws.com/docs/2010-12-01/",
    "protocol": "query"
  },
  "operations": {
    "CheckDNSAvailability": {
      "input": {
        "type": "structure",
        "required": [
          "CNAMEPrefix"
        ],
        "members": {
          "CNAMEPrefix": {}
        }
      },
      "output": {
        "resultWrapper": "CheckDNSAvailabilityResult",
        "type": "structure",
        "members": {
          "Available": {
            "type": "boolean"
          },
          "FullyQualifiedCNAME": {}
        }
      }
    },
    "CreateApplication": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName"
        ],
        "members": {
          "ApplicationName": {},
          "Description": {}
        }
      },
      "output": {
        "shape": "S9",
        "resultWrapper": "CreateApplicationResult"
      }
    },
    "CreateApplicationVersion": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "VersionLabel"
        ],
        "members": {
          "ApplicationName": {},
          "VersionLabel": {},
          "Description": {},
          "SourceBundle": {
            "shape": "Si"
          },
          "AutoCreateApplication": {
            "type": "boolean"
          }
        }
      },
      "output": {
        "shape": "Sm",
        "resultWrapper": "CreateApplicationVersionResult"
      }
    },
    "CreateConfigurationTemplate": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "TemplateName"
        ],
        "members": {
          "ApplicationName": {},
          "TemplateName": {},
          "SolutionStackName": {},
          "SourceConfiguration": {
            "type": "structure",
            "members": {
              "ApplicationName": {},
              "TemplateName": {}
            }
          },
          "EnvironmentId": {},
          "Description": {},
          "OptionSettings": {
            "shape": "Ss"
          }
        }
      },
      "output": {
        "shape": "Sx",
        "resultWrapper": "CreateConfigurationTemplateResult"
      }
    },
    "CreateEnvironment": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "EnvironmentName"
        ],
        "members": {
          "ApplicationName": {},
          "EnvironmentName": {},
          "Description": {},
          "CNAMEPrefix": {},
          "Tier": {
            "shape": "S11"
          },
          "Tags": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Key": {},
                "Value": {}
              }
            }
          },
          "VersionLabel": {},
          "TemplateName": {},
          "SolutionStackName": {},
          "OptionSettings": {
            "shape": "Ss"
          },
          "OptionsToRemove": {
            "shape": "S17"
          }
        }
      },
      "output": {
        "shape": "S19",
        "resultWrapper": "CreateEnvironmentResult"
      }
    },
    "CreateStorageLocation": {
      "output": {
        "resultWrapper": "CreateStorageLocationResult",
        "type": "structure",
        "members": {
          "S3Bucket": {}
        }
      }
    },
    "DeleteApplication": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName"
        ],
        "members": {
          "ApplicationName": {},
          "TerminateEnvByForce": {
            "type": "boolean"
          }
        }
      }
    },
    "DeleteApplicationVersion": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "VersionLabel"
        ],
        "members": {
          "ApplicationName": {},
          "VersionLabel": {},
          "DeleteSourceBundle": {
            "type": "boolean"
          }
        }
      }
    },
    "DeleteConfigurationTemplate": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "TemplateName"
        ],
        "members": {
          "ApplicationName": {},
          "TemplateName": {}
        }
      }
    },
    "DeleteEnvironmentConfiguration": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "EnvironmentName"
        ],
        "members": {
          "ApplicationName": {},
          "EnvironmentName": {}
        }
      }
    },
    "DescribeApplicationVersions": {
      "input": {
        "type": "structure",
        "members": {
          "ApplicationName": {},
          "VersionLabels": {
            "shape": "Sd"
          }
        }
      },
      "output": {
        "resultWrapper": "DescribeApplicationVersionsResult",
        "type": "structure",
        "members": {
          "ApplicationVersions": {
            "type": "list",
            "member": {
              "shape": "Sn"
            }
          }
        }
      }
    },
    "DescribeApplications": {
      "input": {
        "type": "structure",
        "members": {
          "ApplicationNames": {
            "type": "list",
            "member": {}
          }
        }
      },
      "output": {
        "resultWrapper": "DescribeApplicationsResult",
        "type": "structure",
        "members": {
          "Applications": {
            "type": "list",
            "member": {
              "shape": "Sa"
            }
          }
        }
      }
    },
    "DescribeConfigurationOptions": {
      "input": {
        "type": "structure",
        "members": {
          "ApplicationName": {},
          "TemplateName": {},
          "EnvironmentName": {},
          "SolutionStackName": {},
          "Options": {
            "shape": "S17"
          }
        }
      },
      "output": {
        "resultWrapper": "DescribeConfigurationOptionsResult",
        "type": "structure",
        "members": {
          "SolutionStackName": {},
          "Options": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Namespace": {},
                "Name": {},
                "DefaultValue": {},
                "ChangeSeverity": {},
                "UserDefined": {
                  "type": "boolean"
                },
                "ValueType": {},
                "ValueOptions": {
                  "type": "list",
                  "member": {}
                },
                "MinValue": {
                  "type": "integer"
                },
                "MaxValue": {
                  "type": "integer"
                },
                "MaxLength": {
                  "type": "integer"
                },
                "Regex": {
                  "type": "structure",
                  "members": {
                    "Pattern": {},
                    "Label": {}
                  }
                }
              }
            }
          }
        }
      }
    },
    "DescribeConfigurationSettings": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName"
        ],
        "members": {
          "ApplicationName": {},
          "TemplateName": {},
          "EnvironmentName": {}
        }
      },
      "output": {
        "resultWrapper": "DescribeConfigurationSettingsResult",
        "type": "structure",
        "members": {
          "ConfigurationSettings": {
            "type": "list",
            "member": {
              "shape": "Sx"
            }
          }
        }
      }
    },
    "DescribeEnvironmentResources": {
      "input": {
        "type": "structure",
        "members": {
          "EnvironmentId": {},
          "EnvironmentName": {}
        }
      },
      "output": {
        "resultWrapper": "DescribeEnvironmentResourcesResult",
        "type": "structure",
        "members": {
          "EnvironmentResources": {
            "type": "structure",
            "members": {
              "EnvironmentName": {},
              "AutoScalingGroups": {
                "type": "list",
                "member": {
                  "type": "structure",
                  "members": {
                    "Name": {}
                  }
                }
              },
              "Instances": {
                "type": "list",
                "member": {
                  "type": "structure",
                  "members": {
                    "Id": {}
                  }
                }
              },
              "LaunchConfigurations": {
                "type": "list",
                "member": {
                  "type": "structure",
                  "members": {
                    "Name": {}
                  }
                }
              },
              "LoadBalancers": {
                "type": "list",
                "member": {
                  "type": "structure",
                  "members": {
                    "Name": {}
                  }
                }
              },
              "Triggers": {
                "type": "list",
                "member": {
                  "type": "structure",
                  "members": {
                    "Name": {}
                  }
                }
              },
              "Queues": {
                "type": "list",
                "member": {
                  "type": "structure",
                  "members": {
                    "Name": {},
                    "URL": {}
                  }
                }
              }
            }
          }
        }
      }
    },
    "DescribeEnvironments": {
      "input": {
        "type": "structure",
        "members": {
          "ApplicationName": {},
          "VersionLabel": {},
          "EnvironmentIds": {
            "type": "list",
            "member": {}
          },
          "EnvironmentNames": {
            "type": "list",
            "member": {}
          },
          "IncludeDeleted": {
            "type": "boolean"
          },
          "IncludedDeletedBackTo": {
            "type": "timestamp"
          }
        }
      },
      "output": {
        "resultWrapper": "DescribeEnvironmentsResult",
        "type": "structure",
        "members": {
          "Environments": {
            "type": "list",
            "member": {
              "shape": "S19"
            }
          }
        }
      }
    },
    "DescribeEvents": {
      "input": {
        "type": "structure",
        "members": {
          "ApplicationName": {},
          "VersionLabel": {},
          "TemplateName": {},
          "EnvironmentId": {},
          "EnvironmentName": {},
          "RequestId": {},
          "Severity": {},
          "StartTime": {
            "type": "timestamp"
          },
          "EndTime": {
            "type": "timestamp"
          },
          "MaxRecords": {
            "type": "integer"
          },
          "NextToken": {}
        }
      },
      "output": {
        "resultWrapper": "DescribeEventsResult",
        "type": "structure",
        "members": {
          "Events": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "EventDate": {
                  "type": "timestamp"
                },
                "Message": {},
                "ApplicationName": {},
                "VersionLabel": {},
                "TemplateName": {},
                "EnvironmentName": {},
                "RequestId": {},
                "Severity": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListAvailableSolutionStacks": {
      "output": {
        "resultWrapper": "ListAvailableSolutionStacksResult",
        "type": "structure",
        "members": {
          "SolutionStacks": {
            "type": "list",
            "member": {}
          },
          "SolutionStackDetails": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "SolutionStackName": {},
                "PermittedFileTypes": {
                  "type": "list",
                  "member": {}
                }
              }
            }
          }
        }
      }
    },
    "RebuildEnvironment": {
      "input": {
        "type": "structure",
        "members": {
          "EnvironmentId": {},
          "EnvironmentName": {}
        }
      }
    },
    "RequestEnvironmentInfo": {
      "input": {
        "type": "structure",
        "required": [
          "InfoType"
        ],
        "members": {
          "EnvironmentId": {},
          "EnvironmentName": {},
          "InfoType": {}
        }
      }
    },
    "RestartAppServer": {
      "input": {
        "type": "structure",
        "members": {
          "EnvironmentId": {},
          "EnvironmentName": {}
        }
      }
    },
    "RetrieveEnvironmentInfo": {
      "input": {
        "type": "structure",
        "required": [
          "InfoType"
        ],
        "members": {
          "EnvironmentId": {},
          "EnvironmentName": {},
          "InfoType": {}
        }
      },
      "output": {
        "resultWrapper": "RetrieveEnvironmentInfoResult",
        "type": "structure",
        "members": {
          "EnvironmentInfo": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "InfoType": {},
                "Ec2InstanceId": {},
                "SampleTimestamp": {
                  "type": "timestamp"
                },
                "Message": {}
              }
            }
          }
        }
      }
    },
    "SwapEnvironmentCNAMEs": {
      "input": {
        "type": "structure",
        "members": {
          "SourceEnvironmentId": {},
          "SourceEnvironmentName": {},
          "DestinationEnvironmentId": {},
          "DestinationEnvironmentName": {}
        }
      }
    },
    "TerminateEnvironment": {
      "input": {
        "type": "structure",
        "members": {
          "EnvironmentId": {},
          "EnvironmentName": {},
          "TerminateResources": {
            "type": "boolean"
          }
        }
      },
      "output": {
        "shape": "S19",
        "resultWrapper": "TerminateEnvironmentResult"
      }
    },
    "UpdateApplication": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName"
        ],
        "members": {
          "ApplicationName": {},
          "Description": {}
        }
      },
      "output": {
        "shape": "S9",
        "resultWrapper": "UpdateApplicationResult"
      }
    },
    "UpdateApplicationVersion": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "VersionLabel"
        ],
        "members": {
          "ApplicationName": {},
          "VersionLabel": {},
          "Description": {}
        }
      },
      "output": {
        "shape": "Sm",
        "resultWrapper": "UpdateApplicationVersionResult"
      }
    },
    "UpdateConfigurationTemplate": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "TemplateName"
        ],
        "members": {
          "ApplicationName": {},
          "TemplateName": {},
          "Description": {},
          "OptionSettings": {
            "shape": "Ss"
          },
          "OptionsToRemove": {
            "shape": "S17"
          }
        }
      },
      "output": {
        "shape": "Sx",
        "resultWrapper": "UpdateConfigurationTemplateResult"
      }
    },
    "UpdateEnvironment": {
      "input": {
        "type": "structure",
        "members": {
          "EnvironmentId": {},
          "EnvironmentName": {},
          "Description": {},
          "Tier": {
            "shape": "S11"
          },
          "VersionLabel": {},
          "TemplateName": {},
          "OptionSettings": {
            "shape": "Ss"
          },
          "OptionsToRemove": {
            "shape": "S17"
          }
        }
      },
      "output": {
        "shape": "S19",
        "resultWrapper": "UpdateEnvironmentResult"
      }
    },
    "ValidateConfigurationSettings": {
      "input": {
        "type": "structure",
        "required": [
          "ApplicationName",
          "OptionSettings"
        ],
        "members": {
          "ApplicationName": {},
          "TemplateName": {},
          "EnvironmentName": {},
          "OptionSettings": {
            "shape": "Ss"
          }
        }
      },
      "output": {
        "resultWrapper": "ValidateConfigurationSettingsResult",
        "type": "structure",
        "members": {
          "Messages": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Message": {},
                "Severity": {},
                "Namespace": {},
                "OptionName": {}
              }
            }
          }
        }
      }
    }
  },
  "shapes": {
    "S9": {
      "type": "structure",
      "members": {
        "Application": {
          "shape": "Sa"
        }
      }
    },
    "Sa": {
      "type": "structure",
      "members": {
        "ApplicationName": {},
        "Description": {},
        "DateCreated": {
          "type": "timestamp"
        },
        "DateUpdated": {
          "type": "timestamp"
        },
        "Versions": {
          "shape": "Sd"
        },
        "ConfigurationTemplates": {
          "type": "list",
          "member": {}
        }
      }
    },
    "Sd": {
      "type": "list",
      "member": {}
    },
    "Si": {
      "type": "structure",
      "members": {
        "S3Bucket": {},
        "S3Key": {}
      }
    },
    "Sm": {
      "type": "structure",
      "members": {
        "ApplicationVersion": {
          "shape": "Sn"
        }
      }
    },
    "Sn": {
      "type": "structure",
      "members": {
        "ApplicationName": {},
        "Description": {},
        "VersionLabel": {},
        "SourceBundle": {
          "shape": "Si"
        },
        "DateCreated": {
          "type": "timestamp"
        },
        "DateUpdated": {
          "type": "timestamp"
        }
      }
    },
    "Ss": {
      "type": "list",
      "member": {
        "type": "structure",
        "members": {
          "Namespace": {},
          "OptionName": {},
          "Value": {}
        }
      }
    },
    "Sx": {
      "type": "structure",
      "members": {
        "SolutionStackName": {},
        "ApplicationName": {},
        "TemplateName": {},
        "Description": {},
        "EnvironmentName": {},
        "DeploymentStatus": {},
        "DateCreated": {
          "type": "timestamp"
        },
        "DateUpdated": {
          "type": "timestamp"
        },
        "OptionSettings": {
          "shape": "Ss"
        }
      }
    },
    "S11": {
      "type": "structure",
      "members": {
        "Name": {},
        "Type": {},
        "Version": {}
      }
    },
    "S17": {
      "type": "list",
      "member": {
        "type": "structure",
        "members": {
          "Namespace": {},
          "OptionName": {}
        }
      }
    },
    "S19": {
      "type": "structure",
      "members": {
        "EnvironmentName": {},
        "EnvironmentId": {},
        "ApplicationName": {},
        "VersionLabel": {},
        "SolutionStackName": {},
        "TemplateName": {},
        "Description": {},
        "EndpointURL": {},
        "CNAME": {},
        "DateCreated": {
          "type": "timestamp"
        },
        "DateUpdated": {
          "type": "timestamp"
        },
        "Status": {},
        "Health": {},
        "Resources": {
          "type": "structure",
          "members": {
            "LoadBalancer": {
              "type": "structure",
              "members": {
                "LoadBalancerName": {},
                "Domain": {},
                "Listeners": {
                  "type": "list",
                  "member": {
                    "type": "structure",
                    "members": {
                      "Protocol": {},
                      "Port": {
                        "type": "integer"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "Tier": {
          "shape": "S11"
        }
      }
    }
  }
}