Weaviate Clients

Weaviate on Stackoverflow badge Weaviate issues on Github badge Weaviate total Docker pulls badge

💡 You are looking at older or release candidate documentation. The current Weaviate version is v1.15.2

An overview of the Weaviate Client development


Contributor guidelines

There are currently three clients developed for Weaviate’s API: Python, Go and JavaScript. These clients, and all future clients are and will be developed according to the following guidelines:

  1. Every client must reflect all features of the RESTful API one-to-one.
  2. Every client must reflect all functions of GraphQL API (1-1 where possible).
  3. Clients can have client-specific, extra or unique features:
    1. These features on top of the 1-1 RESTful and GraphQL functionalities must be defined through a user story, which will also be reflected in the documentation.
    2. These features can be solved in a client’s native way (follow the current design of the client for consistency)
    3. Preferably the functionalities are consistent across clients.
  4. Keep the design (nomenclature and builder structures) as consistent as possible, with the nomenclature of the RESTful and GraphQL API functions as base, then adopting names from similar functions in a client in another language.

Overview of current clients and features

FeaturePython clientJavaScript clientGo client
RESTful API endpointsVXX
GraphQL GetVVV
GraphQL AggregateVVV
GraphQL ExploreVVV
AuthenticationVVV
Uploading a full JSON schemaVXX
Deleting a full JSON schemaVXX
Check schemaVXX