Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Weaviate schema API

The schema API from Weaviate — 12 operation(s) for schema.

Weaviate schema API is one of 22 APIs that Weaviate publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include schema. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and a getting-started guide.

This API exposes 22 operations across 12 paths, and defines 23 schemas. It is described by OpenAPI 3.0.3, at version 1.38.0-dev.

Requests are made against a single base URL, http://localhost:8080.

22 operations 12 paths 23 schemas 5 DELETE7 GET1 HEAD5 POST4 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
1.38.0-dev
Server
http://localhost:8080
Authentication
API Key, HTTP Bearer
Resource Areas
1

Authentication & Security 2

Weaviate schema API declares 2 security schemes for authenticating requests. An API key is passed in the header as Authorization (ApiKeyAuth). It accepts HTTP bearer tokens (JWT) (BearerAuth). By default, every request must be authenticated.

  • ApiKeyAuth — API key authentication
  • BearerAuth — OIDC/JWT bearer authentication

Paths & Operations 22

Across 12 paths, the API surfaces 22 operations — 5 DELETE, 7 GET, 1 HEAD, 5 POST, 4 PUT. Each is listed below with its method, path, parameters, and response codes.

schema 22
GET
/schema
Weaviate Get All Collection Definitions
schema.dump 1 param → 200401403500
POST
/schema
Weaviate Create A New Collection
schema.objects.create body → 200401403422500
GET
/schema/{className}
Weaviate Get A Single Collection
schema.objects.get 2 params → 200401403404500
DELETE
/schema/{className}
Weaviate Delete A Collection (And All Associated Data)
schema.objects.delete 1 param → 200400401403500
PUT
/schema/{className}
Weaviate Update Collection Definition
schema.objects.update 1 param body → 200401403404422500
POST
/schema/{className}/properties
Weaviate Add A Property To A Collection
schema.objects.properties.add 1 param body → 200401403422500
DELETE
/schema/{className}/properties/{propertyName}/index/{indexName}
Weaviate Delete A Property'S Inverted Index
schema.objects.properties.delete 3 params → 200401403422500
POST
/schema/{className}/properties/{propertyName}/tokenize
Weaviate Tokenize Text Using A Property'S Configuration
schema.objects.properties.tokenize 2 params body → 200400401403404422500
DELETE
/schema/{className}/vectors/{vectorIndexName}/index
Weaviate Delete A Collection'S Vector Index.
schema.objects.vectors.delete 2 params → 200401403422500
GET
/schema/{className}/shards
Weaviate Get The Shards Status Of A Collection
schema.objects.shards.get 2 params → 200401403404500
PUT
/schema/{className}/shards/{shardName}
Weaviate Update A Shard Status
schema.objects.shards.update 2 params body → 200422401403404500
POST
/schema/{className}/tenants
Weaviate Create A New Tenant
tenants.create 1 param body → 200401403422500
PUT
/schema/{className}/tenants
Weaviate Update A Tenant
tenants.update 1 param body → 200401403422500
DELETE
/schema/{className}/tenants
Weaviate Delete Tenants
tenants.delete 1 param body → 200401403422500
GET
/schema/{className}/tenants
Weaviate Get The List Of Tenants
tenants.get 2 params → 200401403422500
HEAD
/schema/{className}/tenants/{tenantName}
Weaviate Check If A Tenant Exists
tenant.exists 3 params → 200401403404422500
GET
/schema/{className}/tenants/{tenantName}
Weaviate Get A Specific Tenant
tenants.get.one 3 params → 200401403404422500
GET
/aliases
Weaviate List Aliases
aliases.get 1 param → 200401403422500
POST
/aliases
Weaviate Create A New Alias
aliases.create body → 200401403422500
GET
/aliases/{aliasName}
Weaviate Get An Alias
aliases.get.alias 1 param → 200401403404422500
PUT
/aliases/{aliasName}
Weaviate Update An Alias
aliases.update 1 param body → 200401403404422500
DELETE
/aliases/{aliasName}
Weaviate Delete An Alias
aliases.delete 1 param → 204401403404422500

Schemas 23

The contract defines 23 schemas that model the data the API accepts and returns. The most detailed are ReplicationAsyncConfig (14 properties), Class (13 properties), Property (12 properties), NestedProperty (9 properties). Each schema is shown below with its type and property counts.

NestedProperty
object
9 properties
Alias
object
Represents the mapping between an alias name and a collection. An alias provides an alternative name for accessing a collection.
2 properties
TextAnalyzerConfig
object
Text analysis options for a property. These settings are immutable after the property is created. Applies only to text and text[] data types that use an invert…
3 properties
ReplicationAsyncConfig
object
Configuration for asynchronous replication.
14 properties
PropertyTokenizeRequest
object
Request body for the property-specific tokenize endpoint.
1 property 1 required
Class
object
13 properties
ReplicationConfig
object
Configure how replication is executed in a cluster
4 properties
BM25Config
object
Tuning parameters for the BM25 algorithm.
2 properties
ErrorResponse
object
An error response returned by Weaviate endpoints.
1 property
InvertedIndexConfig
object
Configure the inverted index built into Weaviate. See [Reference: Inverted index](https://docs.weaviate.io/weaviate/config-refs/indexing/inverted-indexinverted…
9 properties
Schema
object
Definitions of semantic schemas (also see: https://github.com/weaviate/weaviate-semantic-schemas).
3 properties
AliasResponse
object
Response object containing a list of alias mappings.
1 property
ObjectTtlConfig
object
Configuration of objects' time-to-live
4 properties
Property
object
12 properties
ShardStatusGetResponse
object
Response body of shard status get request
3 properties
ShardStatusList
array
The status of all the shards of a Class
TokenizeResponse
object
Response from the tokenize endpoints. Returns indexed text and text used at query time
2 properties
VectorConfig
object
3 properties
StopwordConfig
object
Fine-grained control over stopword list usage.
3 properties
ShardStatus
object
The status of a single shard
1 property
Tenant
object
Attributes representing a single tenant within Weaviate.
2 properties
MultiTenancyConfig
object
Configuration related to multi-tenancy within a collection (class)
3 properties
TokenizerUserDictConfig
object
A list of pairs of strings that should be replaced with another string during tokenization.
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

weaviate-schema-api-openapi.yml Raw ↑

Other APIs Weaviate publishes across the network.

Weaviate authz API
Weaviate backups API
Weaviate batch API
Weaviate classifications API
Weaviate cluster API
Weaviate discovery API
Weaviate distributedTasks API
Weaviate export API
Weaviate graphql API
Weaviate mcp API
Weaviate meta API
Weaviate namespaces API