Skip to main content

Quick Start

Install the plugin:
pnpm install @corsair-dev/exa
Add the Exa plugin to your Corsair instance:
corsair.ts
import { createCorsair } from "corsair";
import { exa } from "@corsair-dev/exa";

export const corsair = createCorsair({
    plugins: [exa()],
    database: db,
    kek: process.env.CORSAIR_KEK!,
});

Authentication

Supported Auth Types

  • api_key (default) - Exa API key

API Key Setup

pnpm corsair setup --exa api_key=your-api-key
See Get Credentials for step-by-step instructions.

Options

OptionTypeDescription
authType'api_key'Authentication method
keystringAPI key (optional, uses database if not provided)
webhookSecretstringWebhook signing secret (optional)
hooksobjectEndpoint hooks for custom logic
webhookHooksobjectWebhook hooks for event handling
errorHandlersobjectCustom error handlers

Usage

// Neural search
const results = await corsair.exa.api.search.search({
    query: "latest AI research 2025",
    numResults: 10,
});

// Get page contents
const contents = await corsair.exa.api.contents.get({
    ids: ["https://example.com/article"],
});

// Ask a question with web grounding
const answer = await corsair.exa.api.answer.answer({
    query: "What is the latest Claude model?",
});

// Create a webset for monitoring
const webset = await corsair.exa.api.websets.create({
    search: { query: "AI startups", count: 20 },
});

Query cached data

const results = await corsair.exa.db.searches.search({
    data: {},
    limit: 50,
});

Multi-Tenancy

const tenant = corsair.withTenant("user-123");

const results = await tenant.exa.api.search.search({
    query: "machine learning news",
});