Skip to content

API & integrations

Dezycro exposes its functionality two ways:

MCP server Public REST API
For AI clients (Claude Code, Cursor, custom MCP clients) Programmatic access from any HTTP client
Transport Streamable HTTP (MCP protocol) Standard JSON over HTTPS
Endpoint https://mcp.dezycro.ai https://api.dezycro.ai/api/v1/...
Auth Sign in with your Dezycro account (OAuth), or a PAT Authorization: Bearer dzy_... (PAT)
Best for Conversational tooling, agent workflows CI scripts, custom integrations, dashboards

Both surfaces are backed by the same services and the same permission model — your workspace roles apply equally whether you signed in or used a PAT.

Quick start

MCP

claude mcp add --transport http dezycro https://mcp.dezycro.ai

Then run /mcp → Authenticate inside Claude Code and sign in with your Dezycro account. No token needed — see the MCP server reference for other clients and for headless (PAT) use.

REST

curl -H "Authorization: Bearer dzy_..." \
  https://api.dezycro.ai/api/v1/workspaces

Browse the full REST surface in the Public API Reference or the interactive explorer — every endpoint with schemas, examples, and a built-in "try it" client (paste your PAT under Auth). The raw OpenAPI spec is available under the PUBLIC tag at https://api.dezycro.ai/v3/api-docs — import into Postman / Insomnia or feed to openapi-generator for any major language.

Auth

MCP clients can sign in with your Dezycro account (OAuth). The REST API, and any headless MCP use, takes a PAT: a bearer token prefixed with dzy_, created under Account settings → API Tokens in the web app and passed on every request:

Authorization: Bearer dzy_<your-token>

PATs inherit your workspace role on each call. Tenant-level operations (member management, billing) require Tenant Owner. Full details: Authentication & access.

Rate limits

Requests are rate-limited per user, by operation type:

Operation Limit / minute
Reads (GET) 100
Writes (POST / PUT / PATCH / DELETE) 30
Search 20

On top of the per-user limits, a tenant-wide aggregate cap of 1,000 requests / minute applies across all users in your organization.

429 responses include a Retry-After header. MCP returns rate-limit failures as MCP error responses with code: -32603.

Waiting on events

Long-running operations (verifier-binary builds, test generation) complete asynchronously. Instead of busy-polling, the Dezycro CLI long-polls Dezycro's event inbox and returns the moment a matching event lands:

dezycro await-event --event-types VERIFIER_STATUS_UPDATE --feature <featureId> --timeout 600

Exit codes: 0 — event received (printed as JSON on stdout), 5 — timeout, 2 — error. /<prefix>:dz-verify and /<prefix>:dz-publish-spec use this under the hood, so you rarely need to call it yourself.

For scripted REST usage, poll the relevant list_* endpoint (e.g. list_test_cases after triggering generation) with a backoff.

SDKs

No official SDKs yet. The MCP server's tool schemas auto-generate client signatures in MCP-compatible IDEs (Claude Code, Cursor). For REST, generate a client from the OpenAPI spec.