> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://conductorai.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://conductorai.ferndocs.com/_mcp/server.

# API integration

> Integrate the Conduit platform into your applications via the REST API.

The Conduit REST API provides programmatic access to all platform capabilities, including search, workflow orchestration, document management, and review.

## Authentication

All API requests require a Bearer token:

```bash
curl -H "Authorization: Bearer $CONDUIT_API_KEY" \
  https://api.conductorai.com/v1/health
```

API keys are scoped to an organization and can be restricted by permission level.

## Base URL

| Environment | Base URL                                 |
| ----------- | ---------------------------------------- |
| Production  | `https://api.conductorai.com/v1`         |
| Staging     | `https://api-staging.conductorai.com/v1` |

## Core endpoints

### Documents

```bash
# Upload a document
POST /v1/documents

# List documents in a collection
GET /v1/documents?collection=my-collection

# Get document metadata
GET /v1/documents/{document_id}

# Delete a document
DELETE /v1/documents/{document_id}
```

### Search

```bash
# Run a search query
POST /v1/search

# Get search results by ID
GET /v1/search/{search_id}
```

### Workflows

```bash
# List available workflows
GET /v1/workflows

# Run a workflow
POST /v1/workflows/run

# Get workflow run status
GET /v1/workflows/runs/{run_id}

# Cancel a workflow run
POST /v1/workflows/runs/{run_id}/cancel
```

## Rate limits

| Tier         | Requests/minute | Concurrent workflows |
| ------------ | --------------- | -------------------- |
| Standard     | 100             | 5                    |
| Professional | 500             | 25                   |
| Enterprise   | Custom          | Custom               |

## SDKs

#### Python

```python
from conductorai import ConduitClient

client = ConduitClient(api_key="your-api-key")

# Search documents
results = client.search(
    query="export control policy updates",
    mode="agentic"
)

for result in results:
    print(f"{result.document}: {result.content}")
```

#### TypeScript

```typescript
import { ConduitClient } from '@conductorai/sdk';

const client = new ConduitClient({ apiKey: 'your-api-key' });

const results = await client.search({
  query: 'export control policy updates',
  mode: 'agentic',
});

for (const result of results) {
  console.log(`${result.document}: ${result.content}`);
}
```