Ask questions, get answers from your files

Search your Storage containers and Database tables in natural language, with results limited to the sources that the searching user can open. Context indexes each source once you turn indexing on for it.

Make your Storage files and Database rows searchable by AI

Context parses the documents in a Storage container or the rows in a Database table and stores their embeddings in an index that Conjoin hosts. Context then answers each plain-language question from your application with the passages that match it.

How Context indexes and searches your data

Container indexing

After you enable indexing on a Storage container, Context indexes its PDFs, documents, and text files, including scanned pages, whose text it extracts with OCR. You can limit the index to one folder path or to a set of file extensions.

Database indexing

Index a whole Database table or only the columns that you select. When your users ask a question about that data in plain language, Context finds the rows that match it.

Automatic sync

Context updates the index whenever a file in the container or a row in the table changes, so a query returns passages from the current version of each source.

Permission-aware retrieval

Context compares every result with the Storage and Database permissions of the user who asks, so the response includes passages only from sources that this user can access.

Natural language queries

Context matches a plain-language question by meaning, by exact keywords, or by both. In agentic mode, Context splits a harder question into several searches and merges their results.

Source attribution

Context returns every result with the path of its source document or record, so your application can link each answer back to the original content.

0
ETL pipelines

Context indexes your data inside Storage and Database

< 30s
Index time

Before a query can return newly added content

100%
Permission sync

Share of results that Context checks against the user's permissions

Build faster with solutions designed for real-world needs

Index a Storage container for retrieval with two SDK calls

Create an index over a Storage container or a Database table and call syncIndex to fill it. Conjoin parses every document or row in the source during that first sync.

Impact

The sample indexes the PDF and DOCX vendor agreements under contracts/2026/ for Lambeth Legal, with OCR capped at 200 pages for each document.

Prompt for a coding agent: Index the vendor agreements under contracts/2026/, with OCR capped at 200 pages per document.

Conjoin IDE

Select a file to view its contents

Scope every query to the documents that one user can open

Pass the ID of the signed-in user with every query. Conjoin applies the same Storage and Database permissions that your application already enforces, so Context draws every result from a source that this user has access to.

Impact

For the parental-leave question in the sample, Context returns up to six passages, each from a document within this employee's permissions that matches the public tag and the EU region filter.

Prompt for a coding agent: Answer the parental-leave question using only documents that this employee can open.

Conjoin IDE

Select a file to view its contents

Keep an index current as your documents change

Context re-embeds each file or record after it changes. To force a refresh, list your indexes and start a sync on any index whose status is stale.

Impact

The sample resyncs every stale index for Onyx Reach Media, then throws an error if the style guide index contains no documents after the resync.

Prompt for a coding agent: Resync every stale index, and fail the run when the style guide index stays empty.

Conjoin IDE

Select a file to view its contents

Ask your Database tables questions in plain language

Context translates each plain-language question into a query against an indexed Database table. It returns the rows on which it bases the answer.

Impact

For a one-sentence question about which Verdent Tax customers had refunds above 10,000 USD last quarter, the sample receives up to 12 rows and maps each one to a customer, the evidence text, and a relevance score.

Prompt for a coding agent: Ask the customer table which customers had refunds above 10,000 USD last quarter.

Conjoin IDE

Select a file to view its contents

Build your next app on Conjoin

Conjoin will open with a free Build tier, while the pricing page already lists the launch prices for Pro and Business. If you tell us what you're building, we'll talk you through early access.