# API reference

Base URL: `https://api.prix.dev`. OpenAPI document: https://getrush.ai/openapi.json

## Sessions

Start, list, read and steer sessions. A session is one agent run in its own sandbox.

- [Search the org's sessions, or resolve one by selector](https://getrush.ai/docs/api/list-or-resolve-sessions.md): `GET /o/{org}/sessions`
- [List sessions in one Project](https://getrush.ai/docs/api/list-sessions.md): `GET /o/{org}/p/{project}/sessions`
- [Start a session](https://getrush.ai/docs/api/create-session.md): `POST /o/{org}/p/{project}/sessions`
- [Get one session](https://getrush.ai/docs/api/get-session.md): `GET /o/{org}/p/{project}/sessions/{session}`
- [Cancel, pause, resume, or stop the current turn](https://getrush.ai/docs/api/update-session-status.md): `PATCH /o/{org}/p/{project}/sessions/{session}`

## Events

Follow a session live over server-sent events, or read its log.

- [Follow a session live](https://getrush.ai/docs/api/stream-session.md): `GET /o/{org}/p/{project}/sessions/{session}/events`
- [Read the session's runtime log](https://getrush.ai/docs/api/get-session-logs.md): `GET /o/{org}/p/{project}/sessions/{session}/logs`

## Messages

Read a session's transcript and tool calls, and send it follow-ups.

- [Read a session's transcript](https://getrush.ai/docs/api/get-session-messages.md): `GET /o/{org}/p/{project}/sessions/{session}/messages`
- [Send a follow-up](https://getrush.ai/docs/api/post-session-message.md): `POST /o/{org}/p/{project}/sessions/{session}/messages`
- [List a session's tool calls](https://getrush.ai/docs/api/get-session-tool-calls.md): `GET /o/{org}/p/{project}/sessions/{session}/tool-calls`

## Results & artifacts

The answer, changed files, captured transcript and files a session produced.

- [Download the captured transcript, or its metadata](https://getrush.ai/docs/api/get-session-trajectory.md): `GET /o/{org}/p/{project}/sessions/{session}/trajectory`
- [List the files the session's pull request changed](https://getrush.ai/docs/api/get-session-changes.md): `GET /o/{org}/p/{project}/sessions/{session}/changes`
- [Get the session's answer](https://getrush.ai/docs/api/get-session-result.md): `GET /o/{org}/p/{project}/sessions/{session}/result`
- [List the files a session produced](https://getrush.ai/docs/api/list-session-artifacts.md): `GET /o/{org}/p/{project}/sessions/{session}/artifacts`
- [Download one artifact](https://getrush.ai/docs/api/get-session-artifact.md): `GET /o/{org}/p/{project}/sessions/{session}/artifacts/{name}`

## API keys

Org API keys for server-to-server calls, and the webhook each key delivers to.

- [List the org's API keys](https://getrush.ai/docs/api/list-api-keys.md): `GET /o/{org}/api-keys`
- [Create an API key](https://getrush.ai/docs/api/create-api-key.md): `POST /o/{org}/api-keys`
- [Set, change or remove the key's webhook](https://getrush.ai/docs/api/update-api-key-webhook.md): `PATCH /o/{org}/api-keys/{key}`
- [Revoke an API key](https://getrush.ai/docs/api/revoke-api-key.md): `DELETE /o/{org}/api-keys/{key}`
- [Rotate an API key's secret](https://getrush.ai/docs/api/rotate-api-key.md): `POST /o/{org}/api-keys/{key}/rotate`

## Agents & models

The harnesses, models, MCP servers and plugin marketplaces an org can run.

- [List the harnesses, models and connectors the org can run](https://getrush.ai/docs/api/get-agents-available.md): `GET /o/{org}/agents/available`

## Webhooks

Requests Rush Cloud sends to your server.

- [A run started with an API key finished a turn](https://getrush.ai/docs/api/run-finished.md): `webhook`
