Saaya API

API-first. MCP-native.

Every UI action is a REST call. Connect any MCP-compatible AI client through the MCP endpoint. Bearer-auth, idempotent, cursor-paginated, shape-stable.

What it is

The whole platform, programmable.

The Saaya dashboard is a thin client over the Saaya API. Anything you can do in the UI, create an agent, upload to a knowledge base, launch a campaign, fetch a session, is a documented REST call. There are no console-only features. There are no UI-only features.

For AI-native work, an MCP endpoint exposes every Saaya resource as a tool that any MCP-compatible AI client can call directly, your agents, your KBs, your sessions, all addressable from another agent.

The shape contract is strict. Every endpoint is bearer-authenticated, idempotent on writes (with an idempotency key header), cursor-paginated on lists, and shape-stable across minor versions. Breaking changes ship as a new major version, with the old version supported for at least twelve months.

Capabilities

A platform you can script.

The bits that make a developer experience feel inevitable, instead of inflicted.

REST

CRUD on agents, KBs, campaigns, and sessions via REST.

MCP endpoint

Native Model Context Protocol server at /mcp. Connect any MCP-compatible AI client, every Saaya resource is a tool.

Cursor pagination

Every list endpoint is cursor-paginated, shape-stable, and idempotent. Bearer auth, idempotency keys, RFC-7807 error envelopes. The boring parts done right.

How it works

Three steps from key to production.

Most teams have a working integration before lunch.

  • 01

    Get a key

    Generate a scoped API key from the dashboard. Per-environment (sandbox, production), per-resource (agents:read, campaigns:write), with rate-limit and IP-allowlist policies.

  • 02

    Pick REST or MCP

    REST for one-offs and CI. MCP for any MCP-compatible AI client. Same auth, same shapes, same docs.

  • 03

    Ship

    Roll forward. Idempotency keys make retries safe; cursor pagination keeps backfills clean.

  • For developers

    The same operations, over REST.

    Create an agent, upload to a KB.

    REST API
    # 1. Create an agent
    curl -X POST https://api.saaya.ai/v1/agents \
      -H "Authorization: Bearer $SAAYA_API_KEY" \
      -H "Idempotency-Key: $(uuidgen)" \
      -H "Content-Type: application/json" \
      -d '{ "name": "maya-inbound", "identity": { "language": "en-US" } }'
    
    # 2. Upload a doc to a knowledge base
    curl -X POST https://api.saaya.ai/v1/knowledge-bases/kb_docs/uploads \
      -H "Authorization: Bearer $SAAYA_API_KEY" \
      -F "file=@./handbook.pdf" \
      -F "tags=public,handbook"
    Pricing

    On every tier, what you get.

    The API is the platform. Every plan ships with full REST access; the difference is MCP.

    Free

    Full REST access · sandbox environment.

    Growth

    MCP endpoint · production environment · idempotency keys · saved API-key scopes.

    Enterprise

    IP allowlists · BYO domain (api.yourco.com) · region-pinned endpoints · dedicated support channel.

    See it in context

    Pair this with the right Solution.

    FAQ

    Frequently Asked Questions.

    • Limits are per-endpoint-class. 429s include a Retry-After header and a token-bucket refill timestamp.

    Final step

    Build on the API.

    Generate a sandbox key in two clicks, paste a request into your terminal, and watch your first agent answer. Production access is the same call with a different key.

    Get started with the APITalk to founders

    Free plan · No credit card · 15-min setup