Skip to main content

GetIndexes

Lists index definitions. Each class/property has at most one definition per kind.

Any authenticated user can call this command; no additional CRUD permission is required. No input or output blobs are used.

Parameters​

Parameter

Type / required

Default and behavior

target

string / optional

Omitted: both entity and connection indexes. Otherwise entity or connection.

class

string / optional

Omitted or empty: all classes. Otherwise filter by entity or connection class.

property

string / optional

Omitted or empty: all properties. Otherwise a valid property for the target/class.

kind

string / optional

Omitted: all kinds. Allowed: ordered, trigram, similarity, fulltext, type, array.

Response​

The response contains status, indexes, and returned (the number of definitions). indexes groups definitions by target (entity or connection), then class, then property; each property maps to a list of its definitions. Each definition contains kind and normalized params describing the index:

{
"indexes": {
"entity": {
"Person": {
"name": [
{"kind": "ordered", "params": {"text": "case_sensitive"}},
{"kind": "trigram", "params": {"text": "dual_case"}}
]
}
}
},
"returned": 2
}

An empty result has indexes: {} and returned: 0. Array definitions report params: {"positions": []} for membership-only indexing, or a sorted, deduplicated list of the configured element positions, or "all" when every position is indexed. type_postings: false is included when explicitly disabled; the default enabled setting is omitted from normalized parameters. Full-text definitions report params: {"analyzer": "unicode_v1"}.

Selector validation​

Class and property lookup is case insensitive. Invalid selector types and unknown kinds fail validation. No matches is a successful empty result. See Responses for error envelopes.

Examples​

[{
"GetIndexes": {
"target": "entity",
"class": "Person"
}
}]