[[elasticsearch-service]] == Elasticsearch service `Elasticsearch service` provides `elasticsearch.client` program API to communicate with Elasticsearch server HTTP API. NOTE: The Elasticsearch service is only available server side. You can use the {kib-repo}blob/{branch}/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.md[Data plugin] APIs on the client side. `elasticsearch.client` interacts with Elasticsearch service on behalf of: - `kibana_system` user via `elasticsearch.client.asInternalUser.*` methods. - a current end-user via `elasticsearch.client.asCurrentUser.*` methods. In this case Elasticsearch client should be given the current user credentials. See <> and <>. {kib-repo}blob/{branch}/docs/development/core/server/kibana-plugin-core-server.elasticsearchservicestart.md[Elasticsearch service API docs] [source,typescript] ---- import { CoreStart, Plugin } from 'kibana/public'; export class MyPlugin implements Plugin { public start(core: CoreStart) { async function asyncTask() { const result = await core.elasticsearch.client.asInternalUser.ping(…); } asyncTask(); } } ---- For advanced use-cases, such as a search, use {kib-repo}blob/{branch}/docs/development/plugins/data/server/kibana-plugin-plugins-data-server.md[Data plugin]