Class FolderRequest.Builder

java.lang.Object
ai.vectros.types.FolderRequest.Builder
All Implemented Interfaces:
FolderRequest._FinalStage, FolderRequest.NameStage
Enclosing class:
FolderRequest

public static final class FolderRequest.Builder extends Object implements FolderRequest.NameStage, FolderRequest._FinalStage
  • Method Details

    • from

      public FolderRequest.Builder from(FolderRequest other)
      Specified by:
      from in interface FolderRequest.NameStage
    • name

      public FolderRequest._FinalStage name(@NotNull @NotNull String name)

      Human-readable display name of the folder. Required.

      Human-readable display name of the folder. Required.

      Specified by:
      name in interface FolderRequest.NameStage
      Returns:
      Reference to this so that method calls can be chained together.
    • expectedVersion

      public FolderRequest._FinalStage expectedVersion(Long expectedVersion)

      Optimistic-concurrency token for updates. Pass the version you last read to make the update conditional — it is rejected with a 409 version conflict (and the stored folder is left untouched) if the folder changed since. Omit for last-write-wins (the default). Ignored on create.

      Specified by:
      expectedVersion in interface FolderRequest._FinalStage
      Returns:
      Reference to this so that method calls can be chained together.
    • expectedVersion

      public FolderRequest._FinalStage expectedVersion(Optional<Long> expectedVersion)

      Optimistic-concurrency token for updates. Pass the version you last read to make the update conditional — it is rejected with a 409 version conflict (and the stored folder is left untouched) if the folder changed since. Omit for last-write-wins (the default). Ignored on create.

      Specified by:
      expectedVersion in interface FolderRequest._FinalStage
    • clientId

      public FolderRequest._FinalStage clientId(String clientId)

      Optional ID of the client to associate with this folder — the Vectros-assigned UUID of a client in your account. With an API key, this sets the client directly. With a scoped token, it must match the token's identity claim (if one is set) or fall within the token's data scope.

      Specified by:
      clientId in interface FolderRequest._FinalStage
      Returns:
      Reference to this so that method calls can be chained together.
    • clientId

      public FolderRequest._FinalStage clientId(Optional<String> clientId)

      Optional ID of the client to associate with this folder — the Vectros-assigned UUID of a client in your account. With an API key, this sets the client directly. With a scoped token, it must match the token's identity claim (if one is set) or fall within the token's data scope.

      Specified by:
      clientId in interface FolderRequest._FinalStage
    • orgId

      public FolderRequest._FinalStage orgId(String orgId)

      Optional ID of the organization that should own this folder — the Vectros-assigned UUID of an organization in your account. With an API key, this sets the owning organization directly. With a scoped token, it must match the token's identity claim (if one is set) or fall within the token's data scope.

      Specified by:
      orgId in interface FolderRequest._FinalStage
      Returns:
      Reference to this so that method calls can be chained together.
    • orgId

      public FolderRequest._FinalStage orgId(Optional<String> orgId)

      Optional ID of the organization that should own this folder — the Vectros-assigned UUID of an organization in your account. With an API key, this sets the owning organization directly. With a scoped token, it must match the token's identity claim (if one is set) or fall within the token's data scope.

      Specified by:
      orgId in interface FolderRequest._FinalStage
    • userId

      public FolderRequest._FinalStage userId(String userId)

      Optional ID of the user that should own this folder — the Vectros-assigned UUID of a user in your account. With an API key, this sets the folder's owner directly. With a scoped token, it must match the token's identity claim (if one is set) or fall within the token's data scope.

      Specified by:
      userId in interface FolderRequest._FinalStage
      Returns:
      Reference to this so that method calls can be chained together.
    • userId

      public FolderRequest._FinalStage userId(Optional<String> userId)

      Optional ID of the user that should own this folder — the Vectros-assigned UUID of a user in your account. With an API key, this sets the folder's owner directly. With a scoped token, it must match the token's identity claim (if one is set) or fall within the token's data scope.

      Specified by:
      userId in interface FolderRequest._FinalStage
    • slug

      public FolderRequest._FinalStage slug(String slug)

      Optional stable slug for the folder, unique among its siblings under the same parent. Useful as an idempotency key so re-creating the same folder returns the existing one rather than a duplicate. Derived from the name when omitted. Must be lowercase letters, digits, and hyphens. Immutable once the folder is created.

      Specified by:
      slug in interface FolderRequest._FinalStage
      Returns:
      Reference to this so that method calls can be chained together.
    • slug

      Optional stable slug for the folder, unique among its siblings under the same parent. Useful as an idempotency key so re-creating the same folder returns the existing one rather than a duplicate. Derived from the name when omitted. Must be lowercase letters, digits, and hyphens. Immutable once the folder is created.

      Specified by:
      slug in interface FolderRequest._FinalStage
    • parentFolderId

      public FolderRequest._FinalStage parentFolderId(String parentFolderId)

      ID of the parent folder to create this folder under, applied at creation only. Omit to create the folder under your context's default root folder. Ignored on update: a folder cannot currently be moved via the API.

      Specified by:
      parentFolderId in interface FolderRequest._FinalStage
      Returns:
      Reference to this so that method calls can be chained together.
    • parentFolderId

      public FolderRequest._FinalStage parentFolderId(Optional<String> parentFolderId)

      ID of the parent folder to create this folder under, applied at creation only. Omit to create the folder under your context's default root folder. Ignored on update: a folder cannot currently be moved via the API.

      Specified by:
      parentFolderId in interface FolderRequest._FinalStage
    • description

      public FolderRequest._FinalStage description(String description)

      Optional description of the folder's contents or purpose.

      Specified by:
      description in interface FolderRequest._FinalStage
      Returns:
      Reference to this so that method calls can be chained together.
    • description

      public FolderRequest._FinalStage description(Optional<String> description)

      Optional description of the folder's contents or purpose.

      Specified by:
      description in interface FolderRequest._FinalStage
    • build

      public FolderRequest build()
      Specified by:
      build in interface FolderRequest._FinalStage
    • additionalProperty

      public FolderRequest.Builder additionalProperty(String key, Object value)
      Specified by:
      additionalProperty in interface FolderRequest._FinalStage
    • additionalProperties

      public FolderRequest.Builder additionalProperties(Map<String,Object> additionalProperties)
      Specified by:
      additionalProperties in interface FolderRequest._FinalStage