Class CloneApiKeyRequest

java.lang.Object
co.elastic.clients.elasticsearch._types.RequestBase
co.elastic.clients.elasticsearch.security.CloneApiKeyRequest
All Implemented Interfaces:
JsonpSerializable

@JsonpDeserializable public class CloneApiKeyRequest extends RequestBase implements JsonpSerializable
Clone an API key.

Create a copy of an existing API key with a new ID. The cloned key inherits the role descriptors of the source key. This is intended for applications (such as Kibana) that need to create API keys on behalf of a user using an existing API key credential, since derived API keys (API keys created by API keys) are not otherwise supported.

See Also:
  • Field Details

  • Method Details

    • of

    • apiKey

      public final String apiKey()
      Required - The credentials of the API key to clone. This is the secret value returned when the key was originally created.

      API name: api_key

    • expiration

      @Nullable public final Time expiration()
      The expiration time for the cloned API key. By default, API keys never expire. Set to null to explicitly create a key with no expiration.

      API name: expiration

    • metadata

      public final Map<String,JsonData> metadata()
      Arbitrary metadata to associate with the cloned API key. It supports nested data structure. Within the metadata object, keys beginning with _ are reserved for system usage.

      API name: metadata

    • name

      @Nullable public final String name()
      A name for the cloned API key. If not provided, the name of the source key is used.

      API name: name

    • refresh

      @Nullable public final Refresh refresh()
      If true (the default) then refresh the affected shards to make this operation visible to search, if wait_for then wait for a refresh to make this operation visible to search, if false then do nothing with refreshes.

      API name: refresh

    • serialize

      public void serialize(jakarta.json.stream.JsonGenerator generator, JsonpMapper mapper)
      Serialize this object to JSON.
      Specified by:
      serialize in interface JsonpSerializable
    • serializeInternal

      protected void serializeInternal(jakarta.json.stream.JsonGenerator generator, JsonpMapper mapper)
    • rebuild

      public CloneApiKeyRequest.Builder rebuild()
      Returns:
      New CloneApiKeyRequest.Builder initialized with field values of this instance
    • setupCloneApiKeyRequestDeserializer

      protected static void setupCloneApiKeyRequestDeserializer(ObjectDeserializer<CloneApiKeyRequest.Builder> op)