Core Knowledge
Getting started

Client libraries


GraphQL references
RESTful API references


Vector Index (ANN) Plugins

More resources

Client libraries & CLI

Weaviate on Stackoverflow badge Weaviate issues on Github badge Weaviate v1.15.2 version badge Weaviate v1.15.2 version badge Weaviate total Docker pulls badge

Weaviate now has four client libraries available, for Python, JavaScript, Java and Go. Additionally, you can interact with Weaviate via a command line interface (CLI).

Client libraries

To interact with Weaviate’s APIs from Python, JavaScript, Java or Go codes, you can use client libraries. With these clients you can perform all RESTful and GraphQL requests. This means you can use any endpoint, and perform all GraphQL queries directly from your Python, JS, Java or Go scripts!

How to use these clients for RESTful API requests and GraphQL queries, code snippets are included in the code blocks on the dedicated Restful API and GraphQL reference pages. The methods of the clients are designed to reflect the API functions 1-1, but are designed (structured and named) in the way native to the language.

Additional to complete reflection of the RESTful and GraphQL API, the clients have some client-specific functions. These functions are documented on the client pages (Python, JavaScript, Java and Go). An overview of features of the clients:

FeaturePython clientJavaScript clientJava clientGo client
RESTful API endpointsVVVV
GraphQL AggregateVVVV
GraphQL ExploreVVVV
Uploading a full JSON schemaVXXX
Deleting a full JSON schemaVXXX
Check schemaVXXX

Command Line Interface (CLI)

You can interact with Weaviate via a command line interface. Information about how to install and use can be found here.

Edit on Github

Table of Contents