Private BetaWe're currently in closed beta.Join the waitlist
SDK

One REST endpoint, any language

Track any AI agent action today with a single authenticated POST to the Empress REST API — full xAPI support, no SDK required. Type-safe SDKs for Python, Node.js, and Go are on the roadmap.

On the roadmap — not yet released

The typed SDKs below are planned, not published. Until they ship, integrate with the REST API further down this page — it's live today.

🐍

Python

Planned
pip install empress # coming soon
  • Python 3.8+
  • Async support
  • Type hints
  • Auto-retry
Not yet published

Node.js

Planned
npm install @empress-eco/client # coming soon
  • Node 18+
  • TypeScript
  • ESM & CJS
  • Edge runtime
Not yet published
🔵

Go

Planned
go get github.com/empress/sdk-go # coming soon
  • Go 1.21+
  • Context support
  • Struct tags
  • Zero deps
Not yet published

The planned SDK surface

When the SDKs ship, one function will track any action — handling batching, retries, and automatic context capture, recording in xAPI format. This is the intended shape; today the same is done with a direct REST call (below).

track()

Record an agent action with full context. Required fields: actor, verb, object.

actorstringAgent identifier
verbstringAction taken
objectstringTarget of action
resultobjectOutcome data (optional)
contextobjectAdditional context (optional)

query()

Search and filter actions programmatically. Supports all the same filters as the dashboard.

export()

Export actions in JSON or CSV format. Stream large datasets efficiently.

Planned SDK — preview, not yet available
from empress import Empress

empress = Empress(api_key="...")

# Track a complex action
empress.track(
    actor="finance-agent-v2.3",
    verb="approved",
    object="loan-application-8921",
    result={
        "success": True,
        "decision": "approved",
        "amount": 50000,
        "interest_rate": 0.075,
        "confidence": 0.92,
        "processing_time_ms": 847
    },
    context={
        "customer_id": "cust-12847",
        "credit_score": 720,
        "revenue_trend": "+15%",
        "debt_ratio": 0.3,
        "model_version": "v2.3.1",
        "reasoning": [
            "Strong credit score",
            "Positive revenue growth",
            "Low debt ratio"
        ]
    }
)

# Query recent actions
actions = empress.query(
    actor="finance-agent-*",
    verb="approved",
    since="24h"
)

# Export for compliance
empress.export(
    format="json",
    since="2026-01-01",
    until="2026-02-01",
    output="audit-q1.json"
)
REST API

Works with any language

No SDK yet? Use the REST API directly — it's the same interface the SDKs will wrap. Simple authenticated POST requests with JSON xAPI payloads, from any language.

View API Reference →
cURL
curl -X POST https://empress-api.jdnyzio.workers.dev/statements \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "actor": { "account": { "name": "support-agent", "homePage": "https://empress.eco" } },
    "verb": { "id": "https://empress.eco/verbs/resolved" },
    "object": { "id": "https://example.com/tickets/892" },
    "result": { "success": true }
  }'
Private Beta

Ready to get started?

Join the waitlist to get early access. Beta users get direct founder support.