Class LookupDef.Builder
- Enclosing class:
LookupDef
-
Method Summary
Modifier and TypeMethodDescriptionadditionalProperties(Map<String, Object> additionalProperties) additionalProperty(String key, Object value) allowOverflow(Boolean allowOverflow) allowOverflow(Optional<Boolean> allowOverflow) Each schema has a fixed budget of fast exact-match lookup indexes.build()Name of the payload field to index.fieldNames(List<String> fieldNames) fieldNames(Optional<List<String>> fieldNames) Names of the payload fields to index together as a single lookup, so you can match on all of them at once (statusANDarea).rangeEnabled(Boolean rangeEnabled) rangeEnabled(Optional<Boolean> rangeEnabled) If true, this field also supports ordered range and prefix lookups (from/to/prefix) in addition to exact-match lookups.For an exact-match lookup, the index sort key:createdAt(the default),lastUpdated, or a declared field on this schema.If true, enforces that this field's value is unique within your account.
-
Method Details
-
from
-
fieldName
Name of the payload field to index. Supply either this or
fieldNames, never both. -
fieldName
-
fieldNames
Names of the payload fields to index together as a single lookup, so you can match on all of them at once (
statusANDarea). Supply this instead offieldName; between 2 and 3 fields.The order is significant, and re-declaring the same fields in a different order creates a SEPARATE lookup rather than reordering this one — it is indexed independently, costs its own index, and matches only records written after you declare it. Choose the order deliberately: you can match on the first field alone, the first two together, and so on — any leading run of the list — but never on a later field by itself. Declare a separate lookup for that.
Query it by passing the field names joined with commas as
field(field=status,area), plus one value per field you are matching. Supplying fewer values than the lookup declares returns the records grouped by the fields you left unspecified;sortBythen orders records within each group, not across them.A lookup over several fields cannot set
unique. -
fieldNames
-
unique
If true, enforces that this field's value is unique within your account. Not available on a lookup over several fields.
-
unique
-
rangeEnabled
If true, this field also supports ordered range and prefix lookups (
from/to/prefix) in addition to exact-match lookups. Range-enabled fields are billed at the range-index rate. Cannot be set on a sensitive field, because a blind index is not orderable. Not available on a lookup over several fields, which is an exact-match index over its fields — declare the range lookup separately. This setting is locked once the field is created. -
rangeEnabled
-
sortBy
For an exact-match lookup, the index sort key:
createdAt(the default),lastUpdated, or a declared field on this schema. This setting is locked once the field is created. -
sortBy
-
allowOverflow
Each schema has a fixed budget of fast exact-match lookup indexes. An exact-match lookup beyond that budget is rejected unless you set this flag, which opts the field into a higher-cost secondary index (more storage and transactional writes). Range-enabled lookups do not count against the budget. This flag has no effect on a field that fits within the budget.
-
allowOverflow
-
build
-
additionalProperty
-
additionalProperties
-