Skip to main content
The Polyvia REST API lets you upload documents, organise them into groups, ask natural-language questions across your workspace, and monitor usage. This page covers authentication, the base URL, and workspace scoping; the pages that follow document each endpoint.
The Python SDK (pip install polyvia) wraps every endpoint with a typed client and adds first-class support for the MCP server and agent frameworks.

Authentication

All API requests require authentication using an API key. Include your key in the Authorization header:

How to get an API key

Create, use, and manage your key — and how workspace binding works.

Workspace Scoping

Each API key is bound to one workspace at the moment you create it — either your personal workspace or a specific organization. Every request made with that key reads and writes only that workspace’s data; the key cannot reach across workspaces.
  • Mint a key while you’re in your personal workspace → it sees personal documents, groups, and chats only.
  • Mint a key while you’re in an organization → it sees that org’s shared documents and groups. Any teammate’s API key minted in the same org reads the same data.
To work across multiple workspaces from the same script, switch workspace and create a separate key for each (on the API page). Use the appropriate key per request.
Switching your active workspace in the UI later does not change what an existing key can access. The binding is permanent — revoke and re-mint to change scope.

Base URL

All endpoints are prefixed with /api/v1.

Quick Start

Here’s a complete example: ingest a document and query for insights.

Support

Need help? Reach out to our team: