Class RecordRequest.Builder
- Enclosing class:
RecordRequest
-
Method Summary
Modifier and TypeMethodDescriptionadditionalProperties(Map<String, Object> additionalProperties) additionalProperty(String key, Object value) build()expectedVersion(Long expectedVersion) expectedVersion(Optional<Long> expectedVersion) Optimistic-concurrency token.Optional absolute expiry, as an ISO-8601 UTC timestamp.externalId(String externalId) externalId(Optional<String> externalId) Your own stable identifier for this record.Identifier of the folder to group this record with related documents.from(RecordRequest other) indexMode(RecordRequestIndexMode indexMode) indexMode(Optional<RecordRequestIndexMode> indexMode) Per-record override of the search-index mode.The record's data payload — a JSON object whose structure is validated against the referenced schema.Identifier of the schema to validate against.The record's scope ownership, asnamespace:valueentries (at most 2 namespaces) — for example["org:6ba7b810-9dad-11d1-80b4-00c04fd430c8", "group:eng-team"].status(RecordRequestStatus status) status(Optional<RecordRequestStatus> status) Record lifecycle status.The record type, matching a schema's record type.Identifier of the owning user — the Vectros-assigned UUID of a user in your account.
-
Method Details
-
from
-
typeName
The record type, matching a schema's record type. Provide
typeNameorschemaId(at least one is required); when onlyschemaIdis given, the type is resolved from the schema, and when both are given they must agree. Immutable after creation and ignored on update. -
typeName
-
schemaId
Identifier of the schema to validate against. Optional: omit it and the server resolves the schema from
typeName(record types are unique within your account and context); supply it (and omittypeName) to pin a schema and resolve the type from it. ProvidetypeNameorschemaId(at least one); when both are given the server checks that they agree. Immutable after creation and ignored on update. -
schemaId
-
payload
The record's data payload — a JSON object whose structure is validated against the referenced schema. Fields the schema marks as searchable contribute to full-text and semantic search. On update, the supplied object replaces the stored payload in full (it is not key-merged); omit it to leave the payload unchanged.
-
payload
-
status
Record lifecycle status.
ACTIVE(the default) keeps the record live and searchable;ARCHIVEDretracts it from search and recall (POST /v1/searchand RAG) while keeping it stored, retrievable by id, findable by structured-field lookup, and listed byGET /v1/records— set it back toACTIVEto re-index and restore. On update, omit to leave the current status unchanged. -
status
-
folderId
Identifier of the folder to group this record with related documents. On create, omit to leave the record ungrouped. On update, omit to leave it unchanged; once set, this field cannot be cleared.
-
folderId
-
userId
Identifier of the owning user — the Vectros-assigned UUID of a user in your account. Optional, and may be set automatically from the calling token's identity. Use
GET /v1/users?externalId=to resolve the UUID from your own identifier. -
userId
-
scopes
The record's scope ownership, as
namespace:valueentries (at most 2 namespaces) — for example["org:6ba7b810-9dad-11d1-80b4-00c04fd430c8", "group:eng-team"].organdclientare built-in namespaces; others are custom scopes you define (lowercase, 2-32 chars). Resolve a namespace's UUID from your own identifier withGET /v1/entities/{namespace}?externalId=. When supplied, this is the record's COMPLETE scope declaration: for a token that stamps identity, entries must match the token's identity values, and an empty array creates a record owned by the calling user alone (the private tier). Omit the field to inherit the token's full identity — the default. On update, omit to leave ownership unchanged, or supply the complete new selection ([]clears it). Filter lists by these values with?scope=. -
scopes
-
externalId
Your own stable identifier for this record. Optional, and immutable after create. Unique within your account, context, and record type: posting again with the same
externalIdreturns the existing record (idempotent create), and it is the key other records reference. Maximum 256 characters. -
externalId
-
indexMode
Per-record override of the search-index mode. HYBRID, SEMANTIC, and TEXT index this record for search; NONE is store-only (persisted, retrievable by id, and findable by structured-field lookup, but not searchable). Optional — omit it to inherit the schema's type-level default index mode (which itself defaults to NONE when the schema declares none). When both are set, this per-record value wins. Immutable after create.
-
indexMode
-
expiresAt
Optional absolute expiry, as an ISO-8601 UTC timestamp. When set, the record is automatically deleted at (or shortly after) this time — removed from search and storage, the same as an explicit delete. Requires the schema to opt in with
capabilities.ttlEligible: true(else the request is rejected). Must be at least 10 minutes in the future. Omit to leave the record's expiry unchanged; records have no expiry by default. -
expiresAt
-
expectedVersion
Optimistic-concurrency token. Pass the
versionyou last read (from a fetch or a prior write response) to make this update conditional — it is rejected with 409 VERSION_CONFLICT if the record was modified since, leaving the stored record untouched. Omit it for last-write-wins (the default). Ignored on create. -
expectedVersion
-
build
-
additionalProperty
-
additionalProperties
-