Vulgate API — overview
A bird's-eye view of the Ingest, Search, and Chat APIs and where to find each one.
May 21, 2026
The Vulgate platform exposes everything the web app does over a REST + JSON API. Whether you're building an internal tool, a research pipeline, or a customer-facing product, the API is your hook into ingestion, search, and AI chat.
The three APIs
| API | What it does | Reference |
|---|---|---|
| Ingest | Upload files, start ingest jobs, monitor progress, manage documents. | /docs/ingest/overview |
| Search | Run neural or keyword search across your Library. Return passages or document IDs. | /docs/search/overview |
| Chat | OpenAI-compatible Chat Completions endpoint grounded in your Library. | /docs/chat/overview |
The Chat API uses the OpenAI Chat Completions shape, so most existing SDKs (Python openai, Vercel ai, LangChain, etc.) work by just pointing them at https://vulgate.ai/api with your Vulgate API key.
Base URL
https://vulgate.ai/api
All endpoints are HTTPS only.
Authentication
Every request needs a Bearer token in the Authorization header:
Authorization: Bearer <your-api-key>
See Creating an API key for how to generate one.
Quick example
Run a search against your Library:
curl -G "https://vulgate.ai/api/search" \
-H "Authorization: Bearer $VULGATE_API_KEY" \
--data-urlencode "search=eucharistic theology" \
--data-urlencode "mode=neural" \
--data-urlencode "per_page=5"
The response is a JSON object with a list of result passages, each with the document ID, an index, the rendered content, and the source document's metadata. See the Search API reference for every field.
Streaming
The Chat API supports streaming responses in the OpenAI Chat Completions format. Set stream: true in the request body. See the Chat API overview.
Rate limits
The Chat API enforces a sliding-window rate limit of 10 requests per 10 seconds per team, with a per-request execution timeout of 120 seconds. The Search API has a per-request execution timeout of 40 seconds. When you exceed a limit, the API returns HTTP 429.
SDKs
Vulgate doesn't currently ship a first-party SDK, but the Chat API is intentionally compatible with the OpenAI client. Point the OpenAI SDK at https://vulgate.ai/api and pass your Vulgate API key:
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.VULGATE_API_KEY,
baseURL: "https://vulgate.ai/api",
});
For the Ingest and Search APIs, any HTTP client (fetch, axios, requests) works.
Where to go next
- Creating an API key
- Ingest API quickstart
- Search API quickstart
- Chat API quickstart
- Full API reference at /docs
Search help