Developers

Build with the Acurel API

Every AI tool is accessible via a first-class typed API. Ship integrations, agents and internal tools in hours, not days.

Developer API

The Acurel API is a REST interface for running any tool on the platform. All endpoints return JSON and accept application/json bodies.

curlbash
curl https://api.acurel.app/v1/tools \
  -H "Authorization: Bearer $ACUREL_API_KEY"

Authentication

Authenticate with a bearer token. Generate keys in your dashboard. Keys are scoped to a workspace and can be rotated at any time.

requesthttp
GET /v1/tools HTTP/1.1
Host: api.acurel.app
Authorization: Bearer sk_live_xxx

REST API

Run any tool by POSTing to /v1/tools/{slug}/runs. The response includes a run ID you can poll or subscribe to via webhooks.

run.tsts
const res = await fetch("https://api.acurel.app/v1/tools/ai-code-review/runs", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.ACUREL_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    input: { diff: "@@ ..." },
  }),
});
const run = await res.json();

SDK

Official SDKs for TypeScript, Python and Go. Fully typed, streaming-ready.

sdk.tsts
import { Acurel } from "@acurel/sdk";

const acurel = new Acurel({ apiKey: process.env.ACUREL_API_KEY });

const run = await acurel.tools.run("ai-debugger", {
  input: { trace: err.stack },
});
console.log(run.output);

CLI

The Acurel CLI wraps the API for local workflows and CI/CD.

terminalbash
# Install
brew install acurel/tap/acurel

# Login
acurel login

# Run a tool
acurel run ai-code-review --diff HEAD~1..HEAD

Code Examples

Common patterns to get you productive fast.

review.pypython
from acurel import Acurel

acurel = Acurel()
run = acurel.tools.run(
    "security-audit",
    input={"repo": "github.com/acme/api"},
)
for finding in run.output["findings"]:
    print(finding["severity"], finding["message"])

Rate Limits

Rate limits are enforced per API key. Standard plans allow 60 requests/minute and 5 concurrent runs. Contact sales for higher limits.

headerstext
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1737049200

Webhooks

Subscribe to run.completed, run.failed and workspace.updated events. Payloads are signed with HMAC-SHA256.

payloadjson
{
  "event": "run.completed",
  "data": {
    "id": "run_01H...",
    "tool": "ai-code-review",
    "credits": 10,
    "output": { "comments": [] }
  }
}

Ready to integrate?

Get an API key in minutes and start automating your workflow.