{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-opensearch/refs/heads/main/json-schema/openapi-create-elasticsearch-domain-request-schema.json",
"title": "CreateElasticsearchDomainRequest",
"description": "CreateElasticsearchDomainRequest schema from Amazon OpenSearch Service API",
"type": "object",
"properties": {
"DomainName": {
"allOf": [
{
"$ref": "#/components/schemas/DomainName"
},
{
"description": "The name of the Elasticsearch domain that you are creating. Domain names are unique across the domains owned by an account within an AWS region. Domain names must start with a lowercase letter and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen)."
}
]
},
"ElasticsearchVersion": {
"allOf": [
{
"$ref": "#/components/schemas/ElasticsearchVersionString"
},
{
"description": "String of format X.Y to specify version for the Elasticsearch domain eg. \"1.5\" or \"2.3\". For more information, see Creating Elasticsearch Domains in the Amazon Elasticsearch Service Developer Guide."
}
]
},
"ElasticsearchClusterConfig": {
"allOf": [
{
"$ref": "#/components/schemas/ElasticsearchClusterConfig"
},
{
"description": "Configuration options for an Elasticsearch domain. Specifies the instance type and number of instances in the domain cluster. "
}
]
},
"EBSOptions": {
"allOf": [
{
"$ref": "#/components/schemas/EBSOptions"
},
{
"description": "Options to enable, disable and specify the type and size of EBS storage volumes. "
}
]
},
"AccessPolicies": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyDocument"
},
{
"description": " IAM access policy as a JSON-formatted string."
}
]
},
"SnapshotOptions": {
"allOf": [
{
"$ref": "#/components/schemas/SnapshotOptions"
},
{
"description": "Option to set time, in UTC format, of the daily automated snapshot. Default value is 0 hours. "
}
]
},
"VPCOptions": {
"allOf": [
{
"$ref": "#/components/schemas/VPCOptions"
},
{
"description": "Options to specify the subnets and security groups for VPC endpoint. For more information, see Creating a VPC in VPC Endpoints for Amazon Elasticsearch Service Domains"
}
]
},
"CognitoOptions": {
"allOf": [
{
"$ref": "#/components/schemas/CognitoOptions"
},
{
"description": "Options to specify the Cognito user and identity pools for Kibana authentication. For more information, see Amazon Cognito Authentication for Kibana."
}
]
},
"EncryptionAtRestOptions": {
"allOf": [
{
"$ref": "#/components/schemas/EncryptionAtRestOptions"
},
{
"description": "Specifies the Encryption At Rest Options."
}
]
},
"NodeToNodeEncryptionOptions": {
"allOf": [
{
"$ref": "#/components/schemas/NodeToNodeEncryptionOptions"
},
{
"description": "Specifies the NodeToNodeEncryptionOptions."
}
]
},
"AdvancedOptions": {
"allOf": [
{
"$ref": "#/components/schemas/AdvancedOptions"
},
{
"description": " Option to allow references to indices in an HTTP request body. Must be false when configuring access to individual sub-resources. By default, the value is true. See Configuration Advanced Options for more information."
}
]
},
"LogPublishingOptions": {
"allOf": [
{
"$ref": "#/components/schemas/LogPublishingOptions"
},
{
"description": "Map of LogType and LogPublishingOption, each containing options to publish a given type of Elasticsearch log."
}
]
},
"DomainEndpointOptions": {
"allOf": [
{
"$ref": "#/components/schemas/DomainEndpointOptions"
},
{
"description": "Options to specify configuration that will be applied to the domain endpoint."
}
]
},
"AdvancedSecurityOptions": {
"allOf": [
{
"$ref": "#/components/schemas/AdvancedSecurityOptionsInput"
},
{
"description": "Specifies advanced security options."
}
]
},
"AutoTuneOptions": {
"allOf": [
{
"$ref": "#/components/schemas/AutoTuneOptionsInput"
},
{
"description": "Specifies Auto-Tune options."
}
]
},
"TagList": {
"allOf": [
{
"$ref": "#/components/schemas/TagList"
},
{
"description": "A list of Tag added during domain creation."
}
]
}
},
"required": [
"DomainName"
]
}