Class CreateApiKeyRequest

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

@JsonpDeserializable
public class CreateApiKeyRequest
extends RequestBase
implements JsonpSerializable
Creates an API key for access without requiring basic authentication.
See Also:
API specification
  • Field Details

  • Method Details

    • of

      public static CreateApiKeyRequest of​(java.util.function.Function<CreateApiKeyRequest.Builder,​ObjectBuilder<CreateApiKeyRequest>> fn)
    • expiration

      @Nullable public final Time expiration()
      Expiration time for the API key. By default, API keys never expire.

      API name: expiration

    • metadata

      public final java.util.Map<java.lang.String,​JsonData> metadata()
      Arbitrary metadata that you want to associate with the 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 java.lang.String name()
      Specifies the name for this API key.

      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

    • roleDescriptors

      public final java.util.Map<java.lang.String,​RoleDescriptor> roleDescriptors()
      An array of role descriptors for this API key. This parameter is optional. When it is not specified or is an empty array, then the API key will have a point in time snapshot of permissions of the authenticated user. If you supply role descriptors then the resultant permissions would be an intersection of API keys permissions and authenticated user’s permissions thereby limiting the access scope for API keys. The structure of role descriptor is the same as the request for create role API. For more details, see create or update roles API.

      API name: role_descriptors

    • 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)
    • setupCreateApiKeyRequestDeserializer

      protected static void setupCreateApiKeyRequestDeserializer​(ObjectDeserializer<CreateApiKeyRequest.Builder> op)