- Elastic Cloud Enterprise - Elastic Cloud on your Infrastructure: other versions:
- What is Elastic Cloud Enterprise?
- Getting started
- Planning your installation
- Preparing your environment
- Installing Elastic Cloud Enterprise
- Configuring your installation
- Securing your installation
- Monitoring your installation
- Administering your installation
- Getting started with deployments
- Administering deployments
- Change your deployment configuration
- Stop routing requests or pause nodes
- Stop a deployment
- Restart a deployment
- Delete a deployment
- Access the Elasticsearch API
- Work with snapshots
- Upgrade versions
- Editing your user settings
- Configure Beats and Logstash with Cloud ID
- Keep your clusters healthy
- Secure your clusters
- Reset the password for the
elastic
user - Manage users and roles in X-Pack
- Manage users and roles in Shield
- Configure the Java Transport client
- Filter IP traffic
- Secure your settings
- Secure your 7.x clusters with LDAP or Active Directory
- Secure your 5.x and 6.x clusters with LDAP or Active Directory
- Secure your clusters with SAML
- Reset the password for the
- Manage your Kibana instance
- Manage your APM Server
- Enable Monitoring (formerly Marvel)
- Enable Graph (versions before 5.0)
- Connect to your cluster
- Enable cross-cluster search
- Troubleshooting
- RESTful API
- Using the API
- API examples
- A first API call: What deployments are there?
- Create a first deployment: Just an Elasticsearch cluster
- Applying a new plan: Resize and add high availability
- Applying a new plan: Checking on progress
- Applying a new deployment configuration: Upgrade
- Enable more stack features: Add Kibana to a deployment
- Dipping a toe into platform automation: Generate a roles token
- Customize your deployment
- Remove unwanted deployment templates and instance configurations
- Secure your settings
- API reference
- Authentication
- Clusters - Apm - CRUD
- Clusters - Apm - CRUD - Configuration
- Clusters - Apm - Commands
- Search clusters
- Restart cluster
- Resynchronize cluster
- Shut down cluster
- Upgrade cluster
- Move instances (advanced)
- Start all instances
- Stop all instances
- Start maintenance mode all instances
- Stop maintenance mode all instances
- Move instances
- Start instances
- Stop instances
- Start maintenance mode
- Stop maintenance mode
- Clusters - Elasticsearch - CRUD
- Clusters - Elasticsearch - CRUD - Configuration
- Get cross-cluster search clusters
- Get remote clusters for cross-cluster search
- Set remote clusters for cross-cluster search
- Get cluster curation settings
- Update cluster curation settings
- Set settings overrides (all instances)
- Set settings overrides
- Get settings from this cluster’s keystore
- Add or remove settings from the cluster keystore
- Set cluster name
- Get cluster metadata
- Set cluster metadata
- Get cluster metadata settings
- Update cluster metadata settings
- Cancel monitoring
- Set monitoring
- Get plan
- Update plan
- Migrate plan
- Get plan activity
- Cancel pending plan
- Get pending plan
- Set legacy security settings
- Get cluster snapshot settings
- Update cluster snapshot settings
- Clusters - Elasticsearch - Commands
- Search clusters
- Restart cluster
- Resynchronize cluster
- Shut down cluster
- Take snapshot
- Move instances (advanced)
- Start all instances
- Stop all instances
- Start maintenance mode all instances
- Stop maintenance mode all instances
- Move instances
- Start instances
- Stop instances
- Start maintenance mode
- Stop maintenance mode
- Clusters - Elasticsearch - Proxy
- Clusters - Elasticsearch - Support
- Clusters - Kibana - CRUD
- Clusters - Kibana - CRUD - Configuration
- Clusters - Kibana - Commands
- Search clusters
- Restart cluster
- Resynchronize cluster
- Shut down cluster
- Upgrade cluster
- Move instances (advanced)
- Start all instances
- Stop all instances
- Start maintenance mode all instances
- Stop maintenance mode all instances
- Move instances
- Start instances
- Stop instances
- Start maintenance mode
- Stop maintenance mode
- Clusters - Kibana - Proxy
- Clusters - Search
- Deployments - IP Filtering - CRUD
- Deployments - Notes
- Platform
- Platform - Allocators
- Get allocators
- Search allocators
- Delete allocator
- Get allocator
- Resynchronize allocator
- Move clusters
- Move clusters by type
- Start maintenance mode
- Stop maintenance mode
- Get allocator metadata
- Set allocator metadata
- Delete allocator metadata item
- Set allocator metadata item
- Get allocator settings
- Update allocator settings
- Set allocator settings
- Platform - Configuration - Instances - CRUD
- Platform - Configuration - Security
- Platform - Configuration - Security Deployment
- Platform - Configuration - Security Realms
- Platform - Configuration - TLS
- Platform - Constructors
- Platform - License
- Platform - Repository - CRUD
- Platform - Runners
- Platform - configuration - Store
- Platform - proxies
- Stack - Instance Types - CRUD
- Stack - Versions - CRUD
- Templates - Deployments
- Definitions
AllocatedInstancePlansInfo
AllocatedInstanceStatus
AllocatorBuildInfo
AllocatorCapacity
AllocatorCapacityMemory
AllocatorHealthStatus
AllocatorInfo
AllocatorMoveRequest
AllocatorOverview
AllocatorSettings
AllocatorZoneInfo
ApmConfiguration
ApmCrudResponse
ApmInfo
ApmPlan
ApmPlanControlConfiguration
ApmPlanInfo
ApmPlansInfo
ApmSettings
ApmSubInfo
ApmSystemSettings
ApmTopologyElement
ApmsInfo
AvailableAuthenticationMethods
BasicFailedReply
BasicFailedReplyElement
BoolQuery
CapacityConstraintsResource
ChangeSourceInfo
ClusterCommandResponse
ClusterCredentials
ClusterCrudResponse
ClusterCurationSettings
ClusterCurationSpec
ClusterInfo
ClusterInstanceConfigurationInfo
ClusterInstanceDiskInfo
ClusterInstanceInfo
ClusterInstanceMemoryInfo
ClusterLicenseInfo
ClusterMetadataCpuResourcesSettings
ClusterMetadataInfo
ClusterMetadataPortInfo
ClusterMetadataResourcesSettings
ClusterMetadataSettings
ClusterPlanMigrationResponse
ClusterPlanStepInfo
ClusterPlanStepLogMessageInfo
ClusterSnapshotRepositoryDefault
ClusterSnapshotRepositoryInfo
ClusterSnapshotRepositoryReference
ClusterSnapshotRepositoryStatic
ClusterSnapshotRequest
ClusterSnapshotResponse
ClusterSnapshotRetention
ClusterSnapshotSettings
ClusterSystemAlert
ClusterTopologyInfo
ClusterUpgradeInfo
ClustersInfo
CompatibleNodeTypesResource
CompatibleVersionResource
ConfigStoreOption
ConfigStoreOptionData
ConfigStoreOptionList
ConstructorHealthStatus
ConstructorInfo
ConstructorOverview
CreateApmInCreateElasticsearchRequest
CreateApmRequest
CreateElasticsearchClusterRequest
CreateKibanaInCreateElasticsearchRequest
CreateKibanaRequest
CrossClusterSearchClusters
CrossClusterSearchInfo
CrossClusterSearchSettings
DeploymentTemplateInfo
DeploymentTemplateReference
DiscreteSizes
ElasticsearchClusterBlockingIssueElement
ElasticsearchClusterBlockingIssues
ElasticsearchClusterInfo
ElasticsearchClusterInstanceSettingsOverrides
ElasticsearchClusterPlan
ElasticsearchClusterPlanInfo
ElasticsearchClusterPlansInfo
ElasticsearchClusterRole
ElasticsearchClusterSecurityInfo
ElasticsearchClusterSettings
ElasticsearchClusterTopologyElement
ElasticsearchClusterUser
ElasticsearchClustersInfo
ElasticsearchConfiguration
ElasticsearchCuration
ElasticsearchInfo
ElasticsearchMasterElement
ElasticsearchMasterInfo
ElasticsearchMonitoringInfo
ElasticsearchNodeType
ElasticsearchPlanControlConfiguration
ElasticsearchReplicaElement
ElasticsearchScriptTypeSettings
ElasticsearchScriptingUserSettings
ElasticsearchShardElement
ElasticsearchShardsInfo
ElasticsearchSystemSettings
ElasticsearchUserBundle
ElasticsearchUserPlugin
ElevatePermissionsRequest
EmptyResponse
EnrollmentTokenRequest
ExistsQuery
ExternalHyperlink
FilterAssociation
GrowShrinkStrategyConfig
Hyperlink
IdResponse
InstanceConfiguration
InstanceMoveRequest
InstanceTypeResource
IpFilterRule
IpFilterRuleset
IpFilterRulesets
IpFilteringSettings
KeystoreContents
KeystoreSecret
KibanaClusterInfo
KibanaClusterPlan
KibanaClusterPlanInfo
KibanaClusterPlansInfo
KibanaClusterSettings
KibanaClusterTopologyElement
KibanaClustersInfo
KibanaConfiguration
KibanaPlanControlConfiguration
KibanaSubClusterInfo
KibanaSystemSettings
LdapGroupSearch
LdapSecurityRealmLoadBalance
LdapSecurityRealmRoleMappingRule
LdapSecurityRealmRoleMappingRules
LdapSettings
LdapUserSearch
LegacySecuritySettings
LicenseInfo
LicenseObject
ListEnrollmentTokenElement
ListEnrollmentTokenReply
LoginRequest
LoginState
ManagedMonitoringSettings
MatchAllQuery
MatchNoneQuery
MatchQuery
MetadataItem
MetadataItemValue
MetadataItems
MoveApmClusterConfiguration
MoveApmClusterDetails
MoveClustersCommandResponse
MoveClustersDetails
MoveClustersRequest
MoveElasticsearchClusterConfiguration
MoveElasticsearchClusterDetails
MoveKibanaClusterConfiguration
MoveKibanaClusterDetails
NestedQuery
NodeTypeResource
Note
Notes
PlanStrategy
PlatformInfo
PlatformServiceImageInfo
PlatformServiceInfo
PrefixQuery
ProxiesAllocationsInfo
ProxiesFilter
ProxiesFilteredGroup
ProxiesFilteredGroupHealth
ProxiesHealth
ProxiesHttpSettings
ProxiesSSOSettings
ProxiesSettings
ProxyAllocationCounts
ProxyAllocationInfo
ProxyInfo
ProxyOverview
QueryContainer
QueryStringQuery
RangeQuery
RemoteClusterInfo
RemoteClusterRef
RepositoryConfig
RepositoryConfigs
RequestEnrollmentTokenReply
RestoreSnapshotApiConfiguration
RestoreSnapshotConfiguration
RestoreSnapshotRepoConfiguration
RollingGrowShrinkStrategyConfig
RollingStrategyConfig
RuleSetResponse
RulesetAssociations
RunnerBuildInfo
RunnerContainerInfo
RunnerInfo
RunnerOverview
RunnerRoleInfo
RunnerRolesInfo
SamlAttributeSettings
SamlIdpSettings
SamlSecurityRealmRoleMappingRule
SamlSecurityRealmRoleMappingRules
SamlSettings
SamlSpSettings
SearchRequest
SecurityDeployment
SecurityDeploymentCreateRequest
SecurityDeploymentTopology
SecurityRealmInfo
SecurityRealmInfoList
SecurityRealmsReorderRequest
SnapshotRepositoryConfiguration
SnapshotStatusInfo
StackVersionApmConfig
StackVersionArchiveProcessingError
StackVersionArchiveProcessingResult
StackVersionConfig
StackVersionConfigPost
StackVersionConfigs
StackVersionElasticsearchConfig
StackVersionInstanceCapacityConstraint
StackVersionKibanaConfig
StackVersionMetadata
StackVersionNodeType
StackVersionTemplateFileHash
StackVersionTemplateInfo
TargetElasticsearchCluster
TermQuery
TiebreakerTopologyElement
TlsPublicCertChain
TokenResponse
TopologySize
TransientApmPlanConfiguration
TransientElasticsearchPlanConfiguration
TransientKibanaPlanConfiguration
UsageStats
- Script reference
- Release notes
- Elastic Cloud Enterprise 2.2.3
- Elastic Cloud Enterprise 2.2.2
- Elastic Cloud Enterprise 2.2.1
- Elastic Cloud Enterprise 2.2.0
- Elastic Cloud Enterprise 2.1.1
- Elastic Cloud Enterprise 2.1.0
- Elastic Cloud Enterprise 2.0.1
- Elastic Cloud Enterprise 2.0.0
- Elastic Cloud Enterprise 1.1.5
- Elastic Cloud Enterprise 1.1.4
- Elastic Cloud Enterprise 1.1.3
- Elastic Cloud Enterprise 1.1.2
- Elastic Cloud Enterprise 1.1.1
- Elastic Cloud Enterprise 1.1.0
- Elastic Cloud Enterprise 1.0.2
- Elastic Cloud Enterprise 1.0.1
- Elastic Cloud Enterprise 1.0.0
- Limitations and known problems
- What’s new with the Elastic Stack
- Elastic Stack 7.5.1 released
- Elastic Stack 7.5.0 released
- Elastic Stack 7.4.2 released
- Elastic Stack 7.4.1 released
- Elastic Stack 7.4.0 released
- Elastic Stack 7.3.2 released
- Elastic Stack 7.3.1 released
- Elastic Stack 7.3.0 released
- Elastic Stack 7.2.1 and 6.8.2 released
- Elastic Stack 7.2.0 released
- Elastic Stack 7.1.1 released
- Elastic Stack 7.1.0 released
- Elastic Stack 7.0.1 released
- Elastic Stack 7.0.0 released
- Elastic Stack 6.8.6 released
- Elastic Stack 6.8.5 released
- Elastic Stack 6.8.4 released
- Elastic Stack 6.8.3 released
- Elastic Stack 6.8.1 released
- Elastic Stack 6.8.0 released
- Elastic Stack 6.7.2 released
- Elastic Stack 6.7.1 released
- Elastic Stack 6.7.0 released
- Elastic Stack 6.6.2 released
- Elastic Stack 6.6.0 released
- Elastic Stack 6.5.4 released
- Elastic Stack 5.6.14 and 6.5.3 released
- Elastic Stack 6.5.2 released
- Elastic Stack 6.5.1 released
- Elastic Stack 6.5.0 released
- Elastic Stack 5.6.13 and 6.4.3 released
- Elastic Stack 5.6.11 and 6.4.0 released
- Elastic Stack 6.3.2 released
- Elastic Stack 6.3.1 released
- Known issue affecting 5.6.10 to 6.3.0 upgrades
- Elastic Stack 5.6.10 and 6.3.0 released
- About this product
It is time to say goodbye: This version of Elastic Cloud Enterprise has reached end-of-life (EOL) and is no longer supported.
The documentation for this version is no longer being maintained. If you are running this version, we strongly advise you to upgrade. For the latest information, see the current release documentation.
Using the API
editUsing the API
editIn Elastic Cloud Enterprise 2.2.3, you can use API endpoints to work with:
- Authentication
- Elasticsearch clusters
- Kibana instances
- Deployments
- Deployment templates
- ECE platform infrastructure
- Elastic Stack versions
Authentication
editWe currently support basic authentication with the same admin
user and password that you use to log into the Cloud UI. The credentials are provided when you install Elastic Cloud Enterprise on your first host and can also be retrieved separately.
For operations that only read information, but don’t create, update or delete, you can also use the readonly
user to authenticate.
API calls
editThe API base path is `/api/v1/`.
You communicate with our RESTful API through the HTTP and HTTPS protocols. We recommend that you use HTTPS on port 12443, because it is much more secure.
RESTful API calls are stateless: Every request that you make happens in isolation from other calls and must include all the information necessary for ECE to fulfill the request. API requests return JSON ouput, which is a format that is machine-readable and works well for automation.
Calls to API endpoints require different request methods, depending on what they do. Here are request methods you use when communicating with our RESTful API for ECE:
- To fetch information: GET
- To add new information: POST
- To update existing information: PUT or PATCH
- To delete information: DELETE
Our API Reference, specifies the request method you need to use for each endpoint, along with supported parameters and the possible responses that you get returned.
Each API endpoint is represented as an object that contains:
- A description of what the endpoint does
- The parameters that the endpoint accepts
- The format of the request body
- The response body and all of the possible returned status codes
- Authentication requirements
For example, the slightly abridged specification for shutting down an Elasticsearch cluster that is running on ECE is:
"/clusters/elasticsearch/{cluster_id}/_shutdown": { "post": { "tags": ["ClustersElasticsearch"], "summary": "Shut down cluster", "description": "Shuts down the active Elasticsearch cluster and removes all of the cluster nodes. The cluster plan is retained. WARNING: To avoid data loss, save the data outside of the cluster before you shut the cluster down.", "operationId": "shutdown-es-cluster", "parameters": [{ "name": "cluster_id", "in": "path", "description": "The Elasticsearch cluster identifier.", "required": true, "type": "string" }, { "name": "skip_snapshot", "in": "query", "description": "When `true`, skips the snapshot when the cluster is shut down.", "required": false, "type": "boolean", "default": false }, { "name": "hide", "in": "query", "description": "Hides the clusters during shutdown. NOTE: By default, hidden clusters are not listed.", "required": false, "type": "boolean", "default": false }], "responses": { "202": { "description": "The shutdown command was issued successfully, use the \"GET\" command on the /{cluster_id} resource to monitor progress", "schema": { "$ref": "#/definitions/ClusterCommandResponse" } }, "404": { "description": "The cluster specified by {cluster_id} cannot be found (code: 'clusters.cluster_not_found')", "schema": { "$ref": "#/definitions/BasicFailedReply" } }, "449": { "description": "elevated permissions are required. (code: '\"root.needs_elevated_permissions\"')", "schema": { "$ref": "#/definitions/BasicFailedReply" } } }, ... } } },
Access the API from the Command Line
editThe simplest way to interact with the full RESTful API for ECE is from the command line through the curl
command. Endpoint URLs look like this example:
curl -k -X GET -u USER:PASSWORD https://COORDINATOR_HOST:12443/api/v1/clusters/elasticsearch
The user must have sufficient privileges, such as the admin
user.
Using HTTPS requires that you have a TLS certificate already installed. For testing purposes only, you can specify the -k
option to turn off certificate verification, as shown in our examples, or use HTTP over port 12400 until you get your TLS certificate sorted out.
If this is your first time exploring the API, you can take a look at our API examples to learn more.
Generate your own client
editTo build API clients in the language of your choice or to use your favorite OpenAPI-enabled development tool, the ECE RESTful API specification is also available in OpenAPI 2.0 format.
Alternatively, you can obtain the RESTful API specification directly from ECE:
curl -k -X GET -u USER:PASSWORD https://COORDINATOR_HOST:12443/api/v1/api-docs/swagger.json
The user must have sufficient privileges, such as the admin
user.
We use the OpenAPI specification to generate our own API Reference, but you can also use it for automation and to develop your own software layer around Elastic Cloud Enterprise. For example, you can use the API specification in the Swagger Editor to read through our reference content and to generate a client in many different languages.
To learn more, see Generating an Elastic Cloud Enterprise Client