Skip to main content
Version: 2.0

Vectara APIs Overview

Everything in Vectara is driven by APIs. This section serves as a roadmap to understanding and using our gRPC APIs and REST APIs for indexing, querying, and administrative tasks such as managing user access and corpora. Before getting into more details, we recommend that you have a basic understanding of API concepts.

caution

Review the REST API 1.0 to 2.0 migration guide which highlights important differences between the Vectara REST API v1 and REST API v2.

🌟 Ready to Dive In? Check Out Our API Reference! 🌟

If you're ready to dive into our APIs, make your way to our API Reference! This interactive environment allows you to experiment with Vectara's REST 2.0 APIs directly from your browser! Tailored for developers, the API Reference offers a hands-on experience to understand and demonstrate our capabilities.

Fundamental API Concepts

Familiarize yourself with the fundamentals of Application Programming Interfaces (APIs) including what APIs are, how they work, common use cases, and other key concepts:

  • gRPC APIs: Understand the basics of gRPC (Remote Procedure Call) such as the advantages with performance, code generation, and how it uses Protocol Buffers (.proto files) for schema defnitions. You can download the .proto files directly from Github. For example, serving.proto provides the message definitions for running queries.
  • RESTful APIs: Understand the principles of Representational State Transfer (REST) and why it's commonly used in web services. Make sure to also understand how it differs from gRPC. For example, review the Java example for our Standard Indexing API.
  • HTTP Methods: Become familar with HTTP methods like GET, POST, PATCH, and DELETE.
  • gRPC Methods: Become familar with gRPC methods like server streaming, client streaming, and bidirectional streaming.
  • Authentication: Become aware of common authentication methods that can be implemented in both gRPC and REST APIs including API Keys and OAuth 2.0 and JWT tokens.

Choosing gRPC or REST APIs

Almost every API has both a gRPC and a REST endpoint. The only exception for the REST 1.0 APIs at this time is the File Upload API, which is only available via REST.

gRPC has several advantages over REST:

  • It's lower latency than REST
  • You can get strong typing out of gRPC: essentially "client libraries" for "free"

However, we include REST APIs as there's a lot of developer tooling around REST APIs and some organizations still struggle with using HTTP/2.0 due to firewalls.

REST API

If you'd like more details about how to use our REST APIs, including details on our OpenAPI specification and services, a good place to start is the REST APIs page.

gRPC API

If you'd like more details about how to use our gRPC APIs, including details on how to generate strongly typed clients, see our gRPC APIs page.