OpenAPI: [/openapi.json](/openapi.json) and [/.well-known/openapi.json](/.well-known/openapi.json). For agents: [/llms.txt](/llms.txt) and [/llms-full.txt](/llms-full.txt).

# Developer Documentation

Build secure AI agents with Cyphrex. Cryptographically verified identity. Real-time enforcement. Verifiable audit trails.

SDK, API, MCP, concepts, and guides are separate pages so a fetch of this URL stays small: [SDK](/docs/sdk), [API](/docs/api), [MCP](/docs/mcp), [concepts](/docs/concepts), [guides](/docs/guides). To connect Cursor, Claude, or ChatGPT, use [Use Cyphrex with your AI](/docs/ai).

## Create an account {#create-an-account}

There is no open sign-up. Pay from the Estimated Bill on [/plans](/plans), or start a free 2-week trial with the form on that page. The form emails a login link. The 14 days start when you open the link. The trial ends with a day-14 risk report. A card is not required for the trial. Existing users log in at [/login](/login) with the method they already use: password, Google, or GitHub. After the account is ready you complete a short company profile, then land in the dashboard.

## Quick Start {#quick-start}

### Installation

Install the Cyphrex SDK for JavaScript/TypeScript or Python:

```bash
# JavaScript / TypeScript
npm install cyphrex

# Python
pip install cyphrex
```

### Get your API key

An API key is created when the account is ready: after payment, or when you open the trial login link. It is shown once in a dialog. Copy it before you dismiss the dialog. After that the dashboard shows only the last 4 characters.

If you dismiss the dialog, rotate the key: sign in at the [dashboard](/dashboard) (logged-out visits go to `/login?next=` and return you here), go to **API Keys**, and click **Rotate API key**. Rotation is owner-only (account admin). The new key is shown once. Members cannot rotate. There is no generate button.

### Register your first agent

In the dashboard, go to **Agents** → **New Agent**. Give it a name and optional behavior profile. Copy the **Agent ID**.

### Make your first check() call

Before your agent performs an action (for example an HTTP request or LLM call), call the SDK. The SDK `actionType` argument is sent on the wire as `action.type`. Do not POST a top-level `actionType` field. The API rejects that body.

```javascript
// JavaScript
const { Cyphrex } = require('cyphrex');
const cyphrex = new Cyphrex({
  apiKey: process.env.CYPHREX_API_KEY,
  agentId: 'your-agent-uuid'
});

const result = await cyphrex.check({
  actionType: 'http_call',
  url: 'https://api.example.com/data',
  payload: { method: 'GET' }
});

if (!result.allowed) {
  console.error('Blocked:', result.reason, result.severity);
  return;
}
// Proceed with the action
```

### View results in the audit log

Go to **Audit Log** in the dashboard to see every check: allowed or blocked, action type, spend, and timestamps.

### See a blocked action

A new agent starts with an empty allowlist. An empty allowlist does not block URLs, so the quick-start call above is allowed. To see a block, set **Allowed APIs** to one host and call `check()` with a different URL, or send a payload that contains a known prompt-injection phrase such as "ignore previous instructions". The response is `allowed: false` with a `reason`. Filter the audit log to **Blocked**.

### Signed receipt

A signed, verifiable receipt is a compliance evidence package. On the free trial, one package is sealed automatically when the trial ends: the day-14 risk report. It appears on **Reports**. Paid and design-partner accounts generate packages from **Reports** → **Generate Signed Report** (JSON). Check the package at [/verify](/verify) or with the verification steps on the [API](/docs/api) page.

### Team Access {#team-access}

Invite teammates to your Cyphrex account from **Settings → Team**. Invited members share the same agents, reports, and audit log.

**Roles:**

- **Admin** — full access including billing, settings, and team management
- **Member** — can view and generate reports and manage agents
- **Viewer** — read only

Invites are sent by email and expire in 48 hours. The link opens login. The person needs an account already, from paid checkout or the free trial, then accepts and completes their own profile on your company account.
