---
type: api
title: Security
description: The security APIs enable you to perform security activities, and add, update, retrieve, and remove application privileges, role mappings, and roles. You can also create and update API keys and create and invalidate bearer tokens.
url: https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/group/endpoint-security
resource: https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/group/endpoint-security
products:
  - Elasticsearch
---

# Security

`security`

The security APIs enable you to perform security activities, and add, update, retrieve, and remove application privileges, role mappings, and roles. You can also create and update API keys and create and invalidate bearer tokens.

[Learn more about security.](https://www.elastic.co/docs/deploy-manage/security)

- [Reset the project encryption key](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-encryption-reset): `POST` `/_encryption/_reset`
- [Activate a user profile](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-activate-user-profile): `POST` `/_security/profile/_activate`
- [Authenticate a user](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-authenticate): `GET` `/_security/_authenticate`
- [Bulk create or update roles](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-bulk-put-role): `POST` `/_security/role`
- [Bulk delete roles](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-bulk-delete-role): `DELETE` `/_security/role`
- [Bulk update API keys](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-bulk-update-api-keys): `POST` `/_security/api_key/_bulk_update`
- [Change passwords
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-change-password): `POST` (also `PUT`) `/_security/user/{username}/_password`, `POST` (also `PUT`) `/_security/user/_password`
- [Clear the API key cache](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-clear-api-key-cache): `POST` `/_security/api_key/{ids}/_clear_cache`
- [Clear the privileges cache](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-clear-cached-privileges): `POST` `/_security/privilege/{application}/_clear_cache`
- [Clear the user cache](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-clear-cached-realms): `POST` `/_security/realm/{realms}/_clear_cache`
- [Clear the roles cache](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-clear-cached-roles): `POST` `/_security/role/{name}/_clear_cache`
- [Clear service account token caches](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-clear-cached-service-tokens): `POST` `/_security/service/{namespace}/{service}/credential/token/{name}/_clear_cache`
- [Clone an API key
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-clone-api-key): `POST` (also `PUT`) `/_security/api_key/clone`
- [Get API key information](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-api-key): `GET` `/_security/api_key`
- [Create an API key
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-create-api-key): `POST` (also `PUT`) `/_security/api_key`
- [Invalidate API keys](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-invalidate-api-key): `DELETE` `/_security/api_key`
- [Create a cross-cluster API key](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-create-cross-cluster-api-key): `POST` `/_security/cross_cluster/api_key`
- [Create a service account token
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-create-service-token): `POST` (also `PUT`) `/_security/service/{namespace}/{service}/credential/token/{name}`, `POST` `/_security/service/{namespace}/{service}/credential/token`
- [Delete service account tokens](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-delete-service-token): `DELETE` `/_security/service/{namespace}/{service}/credential/token/{name}`
- [Delegate PKI authentication](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-delegate-pki): `POST` `/_security/delegate_pki`
- [Get application privileges
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-privileges): `GET` `/_security/privilege/{application}/{name}`, `GET` `/_security/privilege/{application}`, `GET` `/_security/privilege`
- [Delete application privileges](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-delete-privileges): `DELETE` `/_security/privilege/{application}/{name}`
- [Get roles
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-role): `GET` `/_security/role/{name}`, `GET` `/_security/role`
- [Create or update roles
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-put-role): `POST` (also `PUT`) `/_security/role/{name}`
- [Delete roles](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-delete-role): `DELETE` `/_security/role/{name}`
- [Get role mappings
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-role-mapping): `GET` `/_security/role_mapping/{name}`, `GET` `/_security/role_mapping`
- [Create or update role mappings
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-put-role-mapping): `POST` (also `PUT`) `/_security/role_mapping/{name}`
- [Delete role mappings](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-delete-role-mapping): `DELETE` `/_security/role_mapping/{name}`
- [Get users
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-user): `GET` `/_security/user/{username}`, `GET` `/_security/user`
- [Create or update users
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-put-user): `POST` (also `PUT`) `/_security/user/{username}`
- [Delete users](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-delete-user): `DELETE` `/_security/user/{username}`
- [Get service accounts
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-service-accounts): `GET` `/_security/service/{namespace}/{service}`, `GET` `/_security/service/{namespace}`, `GET` `/_security/service`
- [Create user-managed service accounts](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-put-user-managed-service-account): `PUT` `/_security/service/{namespace}/{service}`
- [Delete user-managed service accounts](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-delete-user-managed-service-account): `DELETE` `/_security/service/{namespace}/{service}`
- [Disable users
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-disable-user): `POST` (also `PUT`) `/_security/user/{username}/_disable`
- [Disable a user profile
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-disable-user-profile): `POST` (also `PUT`) `/_security/profile/{uid}/_disable`
- [Enable users
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-enable-user): `POST` (also `PUT`) `/_security/user/{username}/_enable`
- [Enable a user profile
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-enable-user-profile): `POST` (also `PUT`) `/_security/profile/{uid}/_enable`
- [Enroll Kibana](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-enroll-kibana): `GET` `/_security/enroll/kibana`
- [Enroll a node](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-enroll-node): `GET` `/_security/enroll/node`
- [Get builtin privileges](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-builtin-privileges): `GET` `/_security/privilege/_builtin`
- [Get service account credentials](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-service-credentials): `GET` `/_security/service/{namespace}/{service}/credential`
- [Get security index settings](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-settings): `GET` `/_security/settings`
- [Update security index settings](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-update-settings): `PUT` `/_security/settings`
- [Get security stats](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-stats): `GET` `/_security/stats`
- [Get a token](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-token): `POST` `/_security/oauth2/token`
- [Invalidate a token](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-invalidate-token): `DELETE` `/_security/oauth2/token`
- [Get user privileges](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-user-privileges): `GET` `/_security/user/_privileges`
- [Get a user profile](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-get-user-profile): `GET` `/_security/profile/{uid}`
- [Grant an API key](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-grant-api-key): `POST` `/_security/api_key/grant`
- [Check user privileges
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-has-privileges): `POST` (also `GET`) `/_security/user/{user}/_has_privileges`, `POST` (also `GET`) `/_security/user/_has_privileges`
- [Check user profile privileges
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-has-privileges-user-profile): `POST` (also `GET`) `/_security/profile/_has_privileges`
- [Authenticate OpenID Connect](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-oidc-authenticate): `POST` `/_security/oidc/authenticate`
- [Logout of OpenID Connect](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-oidc-logout): `POST` `/_security/oidc/logout`
- [Prepare OpenID connect authentication](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-oidc-prepare-authentication): `POST` `/_security/oidc/prepare`
- [Create or update application privileges
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-put-privileges): `POST` (also `PUT`) `/_security/privilege`
- [Find API keys with a query
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-query-api-keys): `POST` (also `GET`) `/_security/_query/api_key`
- [Find roles with a query
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-query-role): `POST` (also `GET`) `/_security/_query/role`
- [Find users with a query
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-query-user): `POST` (also `GET`) `/_security/_query/user`
- [Authenticate SAML](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-saml-authenticate): `POST` `/_security/saml/authenticate`
- [Logout of SAML completely](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-saml-complete-logout): `POST` `/_security/saml/complete_logout`
- [Invalidate SAML](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-saml-invalidate): `POST` `/_security/saml/invalidate`
- [Logout of SAML](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-saml-logout): `POST` `/_security/saml/logout`
- [Prepare SAML authentication](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-saml-prepare-authentication): `POST` `/_security/saml/prepare`
- [Create SAML service provider metadata](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-saml-service-provider-metadata): `GET` `/_security/saml/metadata/{realm_name}`
- [Suggest a user profile
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-suggest-user-profiles): `POST` (also `GET`) `/_security/profile/_suggest`
- [Update an API key](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-update-api-key): `PUT` `/_security/api_key/{id}`
- [Update a cross-cluster API key](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-update-cross-cluster-api-key): `PUT` `/_security/cross_cluster/api_key/{id}`
- [Update user profile data
](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-security-update-user-profile-data): `POST` (also `PUT`) `/_security/profile/{uid}/_data`
- [Get SSL certificates](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/elasticsearch/operation/operation-ssl-certificates): `GET` `/_ssl/certificates`
