weaviate-client
Version:
JS/TS client for Weaviate
929 lines • 214 kB
TypeScript
/**
* This file was auto-generated by openapi-typescript.
* Do not make direct changes to the file.
*/
export interface paths {
'/': {
/** Get links to other endpoints to help discover the REST API */
get: operations['weaviate.root'];
};
'/.well-known/live': {
/** Determines whether the application is alive. Can be used for kubernetes liveness probe */
get: operations['weaviate.wellknown.liveness'];
};
'/.well-known/ready': {
/** Determines whether the application is ready to receive traffic. Can be used for kubernetes readiness probe. */
get: operations['weaviate.wellknown.readiness'];
};
'/.well-known/openid-configuration': {
/** OIDC Discovery page, redirects to the token issuer if one is configured */
get: {
responses: {
/** Successful response, inspect body */
200: {
schema: {
/** @description The Location to redirect to */
href?: string;
/** @description OAuth Client ID */
clientId?: string;
/** @description OAuth Scopes */
scopes?: string[];
};
};
/** Not found, no oidc provider present */
404: unknown;
/** An error has occurred while trying to fulfill the request. Most likely the ErrorResponse will contain more information about the error. */
500: {
schema: definitions['ErrorResponse'];
};
};
};
};
'/replication/replicate': {
/** Begins an asynchronous operation to move or copy a specific shard replica from its current node to a designated target node. The operation involves copying data, synchronizing, and potentially decommissioning the source replica. */
post: operations['replicate'];
delete: operations['deleteAllReplications'];
};
'/replication/replicate/force-delete': {
/** USE AT OWN RISK! Synchronously force delete operations from the FSM. This will not perform any checks on which state the operation is in so may lead to data corruption or loss. It is recommended to first scale the number of replication engine workers to 0 before calling this endpoint to ensure no operations are in-flight. */
post: operations['forceDeleteReplications'];
};
'/replication/replicate/{id}': {
/** Fetches the current status and detailed information for a specific replication operation, identified by its unique ID. Optionally includes historical data of the operation's progress if requested. */
get: operations['replicationDetails'];
/** Removes a specific replication operation. If the operation is currently active, it will be cancelled and its resources cleaned up before the operation is deleted. */
delete: operations['deleteReplication'];
};
'/replication/replicate/list': {
/** Retrieves a list of currently registered replication operations, optionally filtered by collection, shard, or node ID. */
get: operations['listReplication'];
};
'/replication/replicate/{id}/cancel': {
/** Requests the cancellation of an active replication operation identified by its ID. The operation will be stopped, but its record will remain in the 'CANCELLED' state (can't be resumed) and will not be automatically deleted. */
post: operations['cancelReplication'];
};
'/replication/sharding-state': {
/** Fetches the current sharding state, including replica locations and statuses, for all collections or a specified collection. If a shard name is provided along with a collection, the state for that specific shard is returned. */
get: operations['getCollectionShardingState'];
};
'/users/own-info': {
get: operations['getOwnInfo'];
};
'/users/db': {
get: operations['listAllUsers'];
};
'/users/db/{user_id}': {
get: operations['getUserInfo'];
post: operations['createUser'];
delete: operations['deleteUser'];
};
'/users/db/{user_id}/rotate-key': {
post: operations['rotateUserApiKey'];
};
'/users/db/{user_id}/activate': {
post: operations['activateUser'];
};
'/users/db/{user_id}/deactivate': {
post: operations['deactivateUser'];
};
'/authz/roles': {
get: operations['getRoles'];
post: operations['createRole'];
};
'/authz/roles/{id}/add-permissions': {
post: operations['addPermissions'];
};
'/authz/roles/{id}/remove-permissions': {
post: operations['removePermissions'];
};
'/authz/roles/{id}': {
get: operations['getRole'];
delete: operations['deleteRole'];
};
'/authz/roles/{id}/has-permission': {
post: operations['hasPermission'];
};
'/authz/roles/{id}/users': {
get: operations['getUsersForRoleDeprecated'];
};
'/authz/roles/{id}/user-assignments': {
get: operations['getUsersForRole'];
};
'/authz/users/{id}/roles': {
get: operations['getRolesForUserDeprecated'];
};
'/authz/users/{id}/roles/{userType}': {
get: operations['getRolesForUser'];
};
'/authz/users/{id}/assign': {
post: operations['assignRoleToUser'];
};
'/authz/users/{id}/revoke': {
post: operations['revokeRoleFromUser'];
};
'/authz/groups/{id}/assign': {
post: operations['assignRoleToGroup'];
};
'/authz/groups/{id}/revoke': {
post: operations['revokeRoleFromGroup'];
};
'/objects': {
/** Lists all Objects in reverse order of creation, owned by the user that belongs to the used token. */
get: operations['objects.list'];
/** Create a new object. <br/><br/>Meta-data and schema values are validated. <br/><br/>**Note: Use `/batch` for importing many objects**: <br/>If you plan on importing a large number of objects, it's much more efficient to use the `/batch` endpoint. Otherwise, sending multiple single requests sequentially would incur a large performance penalty. <br/><br/>**Note: idempotence of `/objects`**: <br/>POST /objects will fail if an id is provided which already exists in the class. To update an existing object with the objects endpoint, use the PUT or PATCH method. */
post: operations['objects.create'];
};
'/objects/{id}': {
/** Get a specific object based on its UUID. Also available as Websocket bus. <br/><br/>**Note**: This endpoint is deprecated and will be removed in a future version. Use the `/objects/{className}/{id}` endpoint instead. */
get: operations['objects.get'];
/** Updates an object based on its UUID. Given meta-data and schema values are validated. LastUpdateTime is set to the time this function is called. <br/><br/>**Note**: This endpoint is deprecated and will be removed in a future version. Use the `/objects/{className}/{id}` endpoint instead. */
put: operations['objects.update'];
/** Deletes an object from the database based on its UUID. <br/><br/>**Note**: This endpoint is deprecated and will be removed in a future version. Use the `/objects/{className}/{id}` endpoint instead. */
delete: operations['objects.delete'];
/** Checks if an object exists in the system based on its UUID. <br/><br/>**Note**: This endpoint is deprecated and will be removed in a future version. Use the `/objects/{className}/{id}` endpoint instead. */
head: operations['objects.head'];
/** Update an object based on its UUID (using patch semantics). This method supports json-merge style patch semantics (RFC 7396). Provided meta-data and schema values are validated. LastUpdateTime is set to the time this function is called. <br/><br/>**Note**: This endpoint is deprecated and will be removed in a future version. Use the `/objects/{className}/{id}` endpoint instead. */
patch: operations['objects.patch'];
};
'/objects/{className}/{id}': {
/** Get a data object based on its collection and UUID. */
get: operations['objects.class.get'];
/** Update an object based on its uuid and collection. This (`put`) method replaces the object with the provided object. */
put: operations['objects.class.put'];
/** Delete an object based on its collection and UUID. <br/><br/>Note: For backward compatibility, beacons also support an older, deprecated format without the collection name. As a result, when deleting a reference, the beacon specified has to match the beacon to be deleted exactly. In other words, if a beacon is present using the old format (without collection name) you also need to specify it the same way. <br/><br/>In the beacon format, you need to always use `localhost` as the host, rather than the actual hostname. `localhost` here refers to the fact that the beacon's target is on the same Weaviate instance, as opposed to a foreign instance. */
delete: operations['objects.class.delete'];
/** Checks if a data object exists based on its collection and uuid without retrieving it. <br/><br/>Internally it skips reading the object from disk other than checking if it is present. Thus it does not use resources on marshalling, parsing, etc., and is faster. Note the resulting HTTP request has no body; the existence of an object is indicated solely by the status code. */
head: operations['objects.class.head'];
/** Update an individual data object based on its class and uuid. This method supports json-merge style patch semantics (RFC 7396). Provided meta-data and schema values are validated. LastUpdateTime is set to the time this function is called. */
patch: operations['objects.class.patch'];
};
'/objects/{id}/references/{propertyName}': {
/** Replace all references in cross-reference property of an object. <br/><br/>**Note**: This endpoint is deprecated and will be removed in a future version. Use the `/objects/{className}/{id}/references/{propertyName}` endpoint instead. */
put: operations['objects.references.update'];
/** Add a cross-reference. <br/><br/>**Note**: This endpoint is deprecated and will be removed in a future version. Use the `/objects/{className}/{id}/references/{propertyName}` endpoint instead. */
post: operations['objects.references.create'];
/** Delete the single reference that is given in the body from the list of references that this property has. <br/><br/>**Note**: This endpoint is deprecated and will be removed in a future version. Use the `/objects/{className}/{id}/references/{propertyName}` endpoint instead. */
delete: operations['objects.references.delete'];
};
'/objects/{className}/{id}/references/{propertyName}': {
/** Replace **all** references in cross-reference property of an object. */
put: operations['objects.class.references.put'];
/** Add a single reference to an object. This adds a reference to the array of cross-references of the given property in the source object specified by its collection name and id */
post: operations['objects.class.references.create'];
/** Delete the single reference that is given in the body from the list of references that this property has. */
delete: operations['objects.class.references.delete'];
};
'/objects/validate': {
/** Validate an object's schema and meta-data without creating it. <br/><br/>If the schema of the object is valid, the request should return nothing with a plain RESTful request. Otherwise, an error object will be returned. */
post: operations['objects.validate'];
};
'/batch/objects': {
/** Create new objects in bulk. <br/><br/>Meta-data and schema values are validated. <br/><br/>**Note: idempotence of `/batch/objects`**: <br/>`POST /batch/objects` is idempotent, and will overwrite any existing object given the same id. */
post: operations['batch.objects.create'];
/** Batch delete objects that match a particular filter. <br/><br/>The request body takes a single `where` filter and will delete all objects matched. <br/><br/>Note that there is a limit to the number of objects to be deleted at once using this filter, in order to protect against unexpected memory surges and very-long-running requests. The default limit is 10,000 and may be configured by setting the `QUERY_MAXIMUM_RESULTS` environment variable. <br/><br/>Objects are deleted in the same order that they would be returned in an equivalent Get query. To delete more objects than the limit, run the same query multiple times. */
delete: operations['batch.objects.delete'];
};
'/batch/references': {
/** Batch create cross-references between collections items (objects or objects) in bulk. */
post: operations['batch.references.create'];
};
'/graphql': {
/** Get a response based on a GraphQL query */
post: operations['graphql.post'];
};
'/graphql/batch': {
/** Perform a batched GraphQL query */
post: operations['graphql.batch'];
};
'/meta': {
/** Returns meta information about the server. Can be used to provide information to another Weaviate instance that wants to interact with the current instance. */
get: operations['meta.get'];
};
'/schema': {
/** Fetch an array of all collection definitions from the schema. */
get: operations['schema.dump'];
/** Create a new data object collection. <br/><br/>If AutoSchema is enabled, Weaviate will attempt to infer the schema from the data at import time. However, manual schema definition is recommended for production environments. */
post: operations['schema.objects.create'];
};
'/schema/{className}': {
get: operations['schema.objects.get'];
/** Add a property to an existing collection. */
put: operations['schema.objects.update'];
/** Remove a collection from the schema. This will also delete all the objects in the collection. */
delete: operations['schema.objects.delete'];
};
'/schema/{className}/properties': {
post: operations['schema.objects.properties.add'];
};
'/schema/{className}/shards': {
/** Get the status of every shard in the cluster. */
get: operations['schema.objects.shards.get'];
};
'/schema/{className}/shards/{shardName}': {
/** Update a shard status for a collection. For example, a shard may have been marked as `READONLY` because its disk was full. After providing more disk space, use this endpoint to set the shard status to `READY` again. There is also a convenience function in each client to set the status of all shards of a collection. */
put: operations['schema.objects.shards.update'];
};
'/schema/{className}/tenants': {
/** get all tenants from a specific class */
get: operations['tenants.get'];
/** Update tenant of a specific class */
put: operations['tenants.update'];
/** Create a new tenant for a collection. Multi-tenancy must be enabled in the collection definition. */
post: operations['tenants.create'];
/** delete tenants from a specific class */
delete: operations['tenants.delete'];
};
'/schema/{className}/tenants/{tenantName}': {
/** get a specific tenant for the given class */
get: operations['tenants.get.one'];
/** Check if a tenant exists for a specific class */
head: operations['tenant.exists'];
};
'/aliases': {
/** Retrieve a list of all aliases in the system. Results can be filtered by specifying a collection (class) name to get aliases for a specific collection only. */
get: operations['aliases.get'];
/** Create a new alias mapping between an alias name and a collection (class). The alias acts as an alternative name for accessing the collection. */
post: operations['aliases.create'];
};
'/aliases/{aliasName}': {
/** Retrieve details about a specific alias by its name, including which collection (class) it points to. */
get: operations['aliases.get.alias'];
/** Update an existing alias to point to a different collection (class). This allows you to redirect an alias from one collection to another without changing the alias name. */
put: operations['aliases.update'];
/** Remove an existing alias from the system. This will delete the alias mapping but will not affect the underlying collection (class). */
delete: operations['aliases.delete'];
};
'/backups/{backend}': {
/** [Coming soon] List all backups in progress not implemented yet. */
get: operations['backups.list'];
/** Start creating a backup for a set of collections. <br/><br/>Notes: <br/>- Weaviate uses gzip compression by default. <br/>- Weaviate stays usable while a backup process is ongoing. */
post: operations['backups.create'];
};
'/backups/{backend}/{id}': {
/** Returns status of backup creation attempt for a set of collections. <br/><br/>All client implementations have a `wait for completion` option which will poll the backup status in the background and only return once the backup has completed (successfully or unsuccessfully). If you set the `wait for completion` option to false, you can also check the status yourself using this endpoint. */
get: operations['backups.create.status'];
/** Cancel created backup with specified ID */
delete: operations['backups.cancel'];
};
'/backups/{backend}/{id}/restore': {
/** Returns status of a backup restoration attempt for a set of classes. <br/><br/>All client implementations have a `wait for completion` option which will poll the backup status in the background and only return once the backup has completed (successfully or unsuccessfully). If you set the `wait for completion` option to false, you can also check the status yourself using the this endpoint. */
get: operations['backups.restore.status'];
/** Starts a process of restoring a backup for a set of collections. <br/><br/>Any backup can be restored to any machine, as long as the number of nodes between source and target are identical.<br/><br/>Requrements:<br/><br/>- None of the collections to be restored already exist on the target restoration node(s).<br/>- The node names of the backed-up collections' must match those of the target restoration node(s). */
post: operations['backups.restore'];
};
'/cluster/statistics': {
/** Returns Raft cluster statistics of Weaviate DB. */
get: operations['cluster.get.statistics'];
};
'/nodes': {
/** Returns node information for the entire database. */
get: operations['nodes.get'];
};
'/nodes/{className}': {
/** Returns node information for the nodes relevant to the collection. */
get: operations['nodes.get.class'];
};
'/tasks': {
get: operations['distributedTasks.get'];
};
'/classifications/': {
/** Trigger a classification based on the specified params. Classifications will run in the background, use GET /classifications/<id> to retrieve the status of your classification. */
post: operations['classifications.post'];
};
'/classifications/{id}': {
/** Get status, results and metadata of a previously created classification */
get: operations['classifications.get'];
};
}
export interface definitions {
/**
* @description the type of user
* @enum {string}
*/
UserTypeInput: 'db' | 'oidc';
/**
* @description the type of user
* @enum {string}
*/
UserTypeOutput: 'db_user' | 'db_env_user' | 'oidc';
UserOwnInfo: {
/** @description The groups associated to the user */
groups?: string[];
roles?: definitions['Role'][];
/** @description The username associated with the provided key */
username: string;
};
DBUserInfo: {
/** @description The role names associated to the user */
roles: string[];
/** @description The user id of the given user */
userId: string;
/**
* @description type of the returned user
* @enum {string}
*/
dbUserType: 'db_user' | 'db_env_user';
/** @description activity status of the returned user */
active: boolean;
/**
* Format: date-time
* @description Date and time in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ)
*/
createdAt?: unknown;
/** @description First 3 letters of the associated API-key */
apiKeyFirstLetters?: unknown;
/**
* Format: date-time
* @description Date and time in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ)
*/
lastUsedAt?: unknown;
};
UserApiKey: {
/** @description The apikey */
apikey: string;
};
Role: {
/** @description role name */
name: string;
permissions: definitions['Permission'][];
};
/** @description permissions attached to a role. */
Permission: {
/** @description resources applicable for backup actions */
backups?: {
/**
* @description string or regex. if a specific collection name, if left empty it will be ALL or *
* @default *
*/
collection?: string;
};
/** @description resources applicable for data actions */
data?: {
/**
* @description string or regex. if a specific collection name, if left empty it will be ALL or *
* @default *
*/
collection?: string;
/**
* @description string or regex. if a specific tenant name, if left empty it will be ALL or *
* @default *
*/
tenant?: string;
/**
* @description string or regex. if a specific object ID, if left empty it will be ALL or *
* @default *
*/
object?: string;
};
/** @description resources applicable for cluster actions */
nodes?: {
/**
* @description whether to allow (verbose) returning shards and stats data in the response
* @default minimal
* @enum {string}
*/
verbosity?: 'verbose' | 'minimal';
/**
* @description string or regex. if a specific collection name, if left empty it will be ALL or *
* @default *
*/
collection?: string;
};
/** @description resources applicable for user actions */
users?: {
/**
* @description string or regex. if a specific name, if left empty it will be ALL or *
* @default *
*/
users?: string;
};
/** @description resources applicable for tenant actions */
tenants?: {
/**
* @description string or regex. if a specific collection name, if left empty it will be ALL or *
* @default *
*/
collection?: string;
/**
* @description string or regex. if a specific tenant name, if left empty it will be ALL or *
* @default *
*/
tenant?: string;
};
/** @description resources applicable for role actions */
roles?: {
/**
* @description string or regex. if a specific role name, if left empty it will be ALL or *
* @default *
*/
role?: string;
/**
* @description set the scope for the manage role permission
* @default match
* @enum {string}
*/
scope?: 'all' | 'match';
};
/** @description resources applicable for collection and/or tenant actions */
collections?: {
/**
* @description string or regex. if a specific collection name, if left empty it will be ALL or *
* @default *
*/
collection?: string;
};
/** @description resources applicable for replicate actions */
replicate?: {
/**
* @description string or regex. if a specific collection name, if left empty it will be ALL or *
* @default *
*/
collection?: string;
/**
* @description string or regex. if a specific shard name, if left empty it will be ALL or *
* @default *
*/
shard?: string;
};
/** @description Resource definition for alias-related actions and permissions. Used to specify which aliases and collections can be accessed or modified. */
aliases?: {
/**
* @description A string that specifies which collections this permission applies to. Can be an exact collection name or a regex pattern. The default value `*` applies the permission to all collections.
* @default *
*/
collection?: string;
/**
* @description A string that specifies which aliases this permission applies to. Can be an exact alias name or a regex pattern. The default value `*` applies the permission to all aliases.
* @default *
*/
alias?: string;
};
/**
* @description allowed actions in weaviate.
* @enum {string}
*/
action: 'manage_backups' | 'read_cluster' | 'create_data' | 'read_data' | 'update_data' | 'delete_data' | 'read_nodes' | 'create_roles' | 'read_roles' | 'update_roles' | 'delete_roles' | 'create_collections' | 'read_collections' | 'update_collections' | 'delete_collections' | 'assign_and_revoke_users' | 'create_users' | 'read_users' | 'update_users' | 'delete_users' | 'create_tenants' | 'read_tenants' | 'update_tenants' | 'delete_tenants' | 'create_replicate' | 'read_replicate' | 'update_replicate' | 'delete_replicate' | 'create_aliases' | 'read_aliases' | 'update_aliases' | 'delete_aliases';
};
/** @description list of roles */
RolesListResponse: definitions['Role'][];
Link: {
/** @description target of the link */
href?: string;
/** @description relationship if both resources are related, e.g. 'next', 'previous', 'parent', etc. */
rel?: string;
/** @description human readable name of the resource group */
name?: string;
/** @description weaviate documentation about this resource group */
documentationHref?: string;
};
Principal: {
/** @description The username that was extracted either from the authentication information */
username?: string;
groups?: string[];
userType?: definitions['UserTypeInput'];
};
/** @description An array of available words and contexts. */
C11yWordsResponse: {
/** @description Weighted results for all words */
concatenatedWord?: {
concatenatedWord?: string;
singleWords?: unknown[];
concatenatedVector?: definitions['C11yVector'];
concatenatedNearestNeighbors?: definitions['C11yNearestNeighbors'];
};
/** @description Weighted results for per individual word */
individualWords?: {
word?: string;
present?: boolean;
info?: {
vector?: definitions['C11yVector'];
nearestNeighbors?: definitions['C11yNearestNeighbors'];
};
}[];
};
/** @description A resource describing an extension to the contextinoary, containing both the identifier and the definition of the extension */
C11yExtension: {
/**
* @description The new concept you want to extend. Must be an all-lowercase single word, or a space delimited compound word. Examples: 'foobarium', 'my custom concept'
* @example foobarium
*/
concept?: string;
/** @description A list of space-delimited words or a sentence describing what the custom concept is about. Avoid using the custom concept itself. An Example definition for the custom concept 'foobarium': would be 'a naturally occurring element which can only be seen by programmers' */
definition?: string;
/**
* Format: float
* @description Weight of the definition of the new concept where 1='override existing definition entirely' and 0='ignore custom definition'. Note that if the custom concept is not present in the contextionary yet, the weight cannot be less than 1.
*/
weight?: number;
};
/** @description C11y function to show the nearest neighbors to a word. */
C11yNearestNeighbors: {
word?: string;
/** Format: float */
distance?: number;
}[];
/** @description A vector representation of the object in the Contextionary. If provided at object creation, this wil take precedence over any vectorizer setting. */
C11yVector: number[];
/** @description A vector representation of the object. If provided at object creation, this wil take precedence over any vectorizer setting. */
Vector: {
[key: string]: unknown;
};
/** @description A map of named vectors for multi-vector representations. */
Vectors: {
[key: string]: definitions['Vector'];
};
/** @description Receive question based on array of classes, properties and values. */
C11yVectorBasedQuestion: {
/** @description Vectorized classname. */
classVectors?: number[];
/** @description Vectorized properties. */
classProps?: {
propsVectors?: number[];
/** @description String with valuename. */
value?: string;
}[];
}[];
Deprecation: {
/** @description The id that uniquely identifies this particular deprecations (mostly used internally) */
id?: string;
/** @description Whether the problematic API functionality is deprecated (planned to be removed) or already removed */
status?: string;
/** @description Describes which API is effected, usually one of: REST, GraphQL */
apiType?: string;
/** @description What this deprecation is about */
msg?: string;
/** @description User-required object to not be affected by the (planned) removal */
mitigation?: string;
/** @description The deprecation was introduced in this version */
sinceVersion?: string;
/** @description A best-effort guess of which upcoming version will remove the feature entirely */
plannedRemovalVersion?: string;
/** @description If the feature has already been removed, it was removed in this version */
removedIn?: string;
/**
* Format: date-time
* @description If the feature has already been removed, it was removed at this timestamp
*/
removedTime?: string;
/**
* Format: date-time
* @description The deprecation was introduced in this version
*/
sinceTime?: string;
/** @description The locations within the specified API affected by this deprecation */
locations?: string[];
};
/** @description An error response given by Weaviate end-points. */
ErrorResponse: {
error?: {
message?: string;
}[];
};
/** @description An error response caused by a GraphQL query. */
GraphQLError: {
locations?: {
/** Format: int64 */
column?: number;
/** Format: int64 */
line?: number;
}[];
message?: string;
path?: string[];
};
/** @description GraphQL query based on: http://facebook.github.io/graphql/. */
GraphQLQuery: {
/** @description The name of the operation if multiple exist in the query. */
operationName?: string;
/** @description Query based on GraphQL syntax. */
query?: string;
/** @description Additional variables for the query. */
variables?: {
[key: string]: unknown;
};
};
/** @description A list of GraphQL queries. */
GraphQLQueries: definitions['GraphQLQuery'][];
/** @description GraphQL based response: http://facebook.github.io/graphql/. */
GraphQLResponse: {
/** @description GraphQL data object. */
data?: {
[key: string]: definitions['JsonObject'];
};
/** @description Array with errors. */
errors?: definitions['GraphQLError'][];
};
/** @description A list of GraphQL responses. */
GraphQLResponses: definitions['GraphQLResponse'][];
/** @description Configure the inverted index built into Weaviate (default: 60). */
InvertedIndexConfig: {
/**
* Format: int
* @description Asynchronous index clean up happens every n seconds
*/
cleanupIntervalSeconds?: number;
bm25?: definitions['BM25Config'];
stopwords?: definitions['StopwordConfig'];
/** @description Index each object by its internal timestamps (default: 'false'). */
indexTimestamps?: boolean;
/** @description Index each object with the null state (default: 'false'). */
indexNullState?: boolean;
/** @description Index length of properties (default: 'false'). */
indexPropertyLength?: boolean;
/** @description Using BlockMax WAND for query execution (default: 'false', will be 'true' for new collections created after 1.30). */
usingBlockMaxWAND?: boolean;
};
/** @description Configure how replication is executed in a cluster */
ReplicationConfig: {
/** @description Number of times a class is replicated (default: 1). */
factor?: number;
/** @description Enable asynchronous replication (default: false). */
asyncEnabled?: boolean;
/**
* @description Conflict resolution strategy for deleted objects.
* @enum {string}
*/
deletionStrategy?: 'NoAutomatedResolution' | 'DeleteOnConflict' | 'TimeBasedResolution';
};
/** @description tuning parameters for the BM25 algorithm */
BM25Config: {
/**
* Format: float
* @description Calibrates term-weight scaling based on the term frequency within a document (default: 1.2).
*/
k1?: number;
/**
* Format: float
* @description Calibrates term-weight scaling based on the document length (default: 0.75).
*/
b?: number;
};
/** @description fine-grained control over stopword list usage */
StopwordConfig: {
/** @description Pre-existing list of common words by language (default: 'en'). Options: ['en', 'none']. */
preset?: string;
/** @description Stopwords to be considered additionally (default: []). Can be any array of custom strings. */
additions?: string[];
/** @description Stopwords to be removed from consideration (default: []). Can be any array of custom strings. */
removals?: string[];
};
/** @description Configuration related to multi-tenancy within a class */
MultiTenancyConfig: {
/** @description Whether or not multi-tenancy is enabled for this class (default: false). */
enabled?: boolean;
/** @description Nonexistent tenants should (not) be created implicitly (default: false). */
autoTenantCreation?: boolean;
/** @description Existing tenants should (not) be turned HOT implicitly when they are accessed and in another activity status (default: false). */
autoTenantActivation?: boolean;
};
/** @description JSON object value. */
JsonObject: {
[key: string]: unknown;
};
/** @description Contains meta information of the current Weaviate instance. */
Meta: {
/**
* Format: url
* @description The url of the host.
*/
hostname?: string;
/** @description The Weaviate server version. */
version?: string;
/** @description Module-specific meta information. */
modules?: {
[key: string]: unknown;
};
/** @description Max message size for GRPC connection in bytes. */
grpcMaxMessageSize?: number;
};
/** @description Multiple instances of references to other objects. */
MultipleRef: definitions['SingleRef'][];
/** @description Either a JSONPatch document as defined by RFC 6902 (from, op, path, value), or a merge document (RFC 7396). */
PatchDocumentObject: {
/** @description A string containing a JSON Pointer value. */
from?: string;
/**
* @description The operation to be performed.
* @enum {string}
*/
op: 'add' | 'remove' | 'replace' | 'move' | 'copy' | 'test';
/** @description A JSON-Pointer. */
path: string;
/** @description The value to be used within the operations. */
value?: {
[key: string]: unknown;
};
merge?: definitions['Object'];
};
/** @description Either a JSONPatch document as defined by RFC 6902 (from, op, path, value), or a merge document (RFC 7396). */
PatchDocumentAction: {
/** @description A string containing a JSON Pointer value. */
from?: string;
/**
* @description The operation to be performed.
* @enum {string}
*/
op: 'add' | 'remove' | 'replace' | 'move' | 'copy' | 'test';
/** @description A JSON-Pointer. */
path: string;
/** @description The value to be used within the operations. */
value?: {
[key: string]: unknown;
};
merge?: definitions['Object'];
};
/** @description Specifies the parameters required to initiate a shard replica movement operation between two nodes for a given collection and shard. This request defines the source and target node, the collection and type of transfer. */
ReplicationReplicateReplicaRequest: {
/** @description The name of the Weaviate node currently hosting the shard replica that needs to be moved or copied. */
sourceNode: string;
/** @description The name of the Weaviate node where the new shard replica will be created as part of the movement or copy operation. */
targetNode: string;
/** @description The name of the collection to which the target shard belongs. */
collection: string;
/** @description The name of the shard whose replica is to be moved or copied. */
shard: string;
/**
* @description Specifies the type of replication operation to perform. 'COPY' creates a new replica on the target node while keeping the source replica. 'MOVE' creates a new replica on the target node and then removes the source replica upon successful completion. Defaults to 'COPY' if omitted.
* @default COPY
* @enum {string}
*/
type?: 'COPY' | 'MOVE';
};
/** @description Contains the unique identifier for a successfully initiated asynchronous replica movement operation. This ID can be used to track the progress of the operation. */
ReplicationReplicateReplicaResponse: {
/**
* Format: uuid
* @description The unique identifier (ID) assigned to the registered replication operation.
*/
id: string;
};
/** @description Provides the detailed sharding state for one or more collections, including the distribution of shards and their replicas across the cluster nodes. */
ReplicationShardingStateResponse: {
shardingState?: definitions['ReplicationShardingState'];
};
/** @description Specifies the parameters required to mark a specific shard replica as inactive (soft-delete) on a particular node. This action typically prevents the replica from serving requests but does not immediately remove its data. */
ReplicationDisableReplicaRequest: {
/** @description The name of the Weaviate node hosting the shard replica that is to be disabled. */
node: string;
/** @description The name of the collection to which the shard replica belongs. */
collection: string;
/** @description The ID of the shard whose replica is to be disabled. */
shard: string;
};
/** @description Specifies the parameters required to permanently delete a specific shard replica from a particular node. This action will remove the replica's data from the node. */
ReplicationDeleteReplicaRequest: {
/** @description The name of the Weaviate node from which the shard replica will be deleted. */
node: string;
/** @description The name of the collection to which the shard replica belongs. */
collection: string;
/** @description The ID of the shard whose replica is to be deleted. */
shard: string;
};
/** @description Represents a shard and lists the nodes that currently host its replicas. */
ReplicationShardReplicas: {
shard?: string;
replicas?: string[];
};
/** @description Details the sharding layout for a specific collection, mapping each shard to its set of replicas across the cluster. */
ReplicationShardingState: {
/** @description The name of the collection. */
collection?: string;
/** @description An array detailing each shard within the collection and the nodes hosting its replicas. */
shards?: definitions['ReplicationShardReplicas'][];
};
/** @description Represents an error encountered during a replication operation, including its timestamp and a human-readable message. */
ReplicationReplicateDetailsReplicaStatusError: {
/**
* Format: int64
* @description The unix timestamp in ms when the error occurred. This is an approximate time and so should not be used for precise timing.
*/
whenErroredUnixMs?: number;
/** @description A human-readable message describing the error. */
message?: string;
};
/** @description Represents the current or historical status of a shard replica involved in a replication operation, including its operational state and any associated errors. */
ReplicationReplicateDetailsReplicaStatus: {
/**
* @description The current operational state of the replica during the replication process.
* @enum {string}
*/
state?: 'REGISTERED' | 'HYDRATING' | 'FINALIZING' | 'DEHYDRATING' | 'READY' | 'CANCELLED';
/**
* Format: int64
* @description The UNIX timestamp in ms when this state was first entered. This is an approximate time and so should not be used for precise timing.
*/
whenStartedUnixMs?: number;
/** @description A list of error messages encountered by this replica during the replication operation, if any. */
errors?: definitions['ReplicationReplicateDetailsReplicaStatusError'][];
};
/** @description Provides a comprehensive overview of a specific replication operation, detailing its unique ID, the involved collection, shard, source and target nodes, transfer type, current status, and optionally, its status history. */
ReplicationReplicateDetailsReplicaResponse: {
/**
* Format: uuid
* @description The unique identifier (ID) of this specific replication operation.
*/
id: string;
/** @description The name of the shard involved in this replication operation. */
shard: string;
/** @description The name of the collection to which the shard being replicated belongs. */
collection: string;
/** @description The identifier of the node from which the replica is being moved or copied (the source node). */
sourceNode: string;
/** @description The identifier of the node to which the replica is being moved or copied (the target node). */
targetNode: string;
/**
* @description Indicates whether the operation is a 'COPY' (source replica remains) or a 'MOVE' (source replica is removed after successful transfer).
* @enum {string}
*/
type: 'COPY' | 'MOVE';
/** @description Whether the replica operation is uncancelable. */
uncancelable?: boolean;
/** @description Whether the replica operation is scheduled for cancellation. */
scheduledForCancel?: boolean;
/** @description Whether the replica operation is scheduled for deletion. */
scheduledForDelete?: boolean;
/** @description An object detailing the current operational state of the replica movement and any errors encountered. */
status: definitions['ReplicationReplicateDetailsReplicaStatus'];
/** @description An array detailing the historical sequence of statuses the replication operation has transitioned through, if requested and available. */
statusHistory?: definitions['ReplicationReplicateDetailsReplicaStatus'][];
/**
* Format: int64
* @description The UNIX timestamp in ms when the replication operation was initiated. This is an approximate time and so should not be used for precise timing.
*/
whenStartedUnixMs?: number;
};
/** @description Specifies the parameters available when force deleting replication operations. */
ReplicationReplicateForceDeleteRequest: {
/**
* Format: uuid
* @description The unique identifier (ID) of the replication operation to be forcefully deleted.
*/
id?: string;
/** @description The name of the collection to which the shard being replicated belongs. */
collection?: string;
/** @description The identifier of the shard involved in the replication operations. */
shard?: string;
/** @description The name of the target node where the replication operations are registered. */
node?: string;
/**
* @description If true, the operation will not actually delete anything but will return the expected outcome of the deletion.
* @default false
*/
dryRun?: boolean;
};
/** @description Provides the UUIDs that were successfully force deleted as part of the replication operation. If dryRun is true, this will return the expected outcome without actually deleting anything. */
ReplicationReplicateForceDeleteResponse: {
/** @description The unique identifiers (IDs) of the replication operations that were forcefully deleted. */
deleted?: string[];
/** @description Indicates whether the operation was a dry run (true) or an actual deletion (false). */
dryRun?: boolean;
};
/** @description A single peer in the network. */
PeerUpdate: {
/**
* Format: uuid
* @description The session ID of the peer.
*/
id?: string;
/** @description Human readable name. */
name?: string;
/**
* Format: uri
* @description The location where the peer is exposed to the internet.
*/
uri?: string;
/** @description The latest known hash of the peer's schema. */
schemaHash?: string;
};
/** @description List of known peers. */
PeerUpdateList: definitions['PeerUpdate'][];
/** @description Allow custom overrides of vector weights as math expressions. E.g. "pancake": "7" will set the weight for the word pancake to 7 in the vectorization, whereas "w * 3" would triple the originally calculated word. This is an open object, with OpenAPI Specification 3.0 this will be more detailed. See Weaviate docs for more info. In the future this will become a key/value (string/string) object. */
VectorWeights: {
[key: string]: unknown;
};
/** @description Names and values of an individual property. A returned response may also contain additional metadata, such as from classification or feature projection. */
PropertySchema: {
[key: string]: unknown;
};
/** @description This is an open object, with OpenAPI Specification 3.0 this will be more detailed. See Weaviate docs for more info. In the future this will become a key/value OR a SingleRef definition. */
SchemaHistory: {
[key: string]: unknown;
};
/** @description Definitions of semantic schemas (also see: https://github.com/weaviate/weaviate-semantic-schemas). */
Schema: {
/** @description Semantic classes that are available. */
classes?: definitions['Class'][];
/**
* Format: email
* @description Email of the maintainer.
*/
maintainer?: string;
/** @description Name of the schema. */
name?: string;
};
/** @description Indicates the health of the schema in a cluster. */
SchemaClusterStatus: {
/** @description True if the cluster is in sync, false if there is an issue (see error). */
healthy?: boolean;
/** @description Contains the sync check error if one occurred */
error?: string;
/** @description Hostname of the coordinating node, i.e. the one that received the cluster. This can be useful information if the error message contains phrases such as 'other nodes agree, but loc