KaryaFlow
All docs
Reference6 min read

API reference

REST and webhook reference for KaryaFlow. Authentication, rate limits, the contact/deal/agent endpoints, and webhook signing with HMAC-SHA256.

The KaryaFlow API is a REST API over HTTPS. Every request must be authenticated with a workspace API key passed in the Authorization: Bearer <key> header. All responses are JSON. Timestamps are ISO 8601 in UTC.

Base URL

https://api.karyaflow.com/v1

Authentication

Create workspace API keys from Settings → Developers. Keys are scoped to a single workspace and inherit the role of the user who created them. Rotate keys from the same screen; revoke at any time.

Rate limits

  • 600 requests per minute per workspace on the Starter tier.
  • 2,000 requests per minute per workspace on Growth.
  • Custom limits on Enterprise (typically 10,000+ req/min).

Rate-limited responses return HTTP 429 with a Retry-After header in seconds and the X-RateLimit-Remaining header on every response.

Endpoints

Contacts

  • GET /v1/contacts — list with cursor pagination.
  • POST /v1/contacts — create a contact.
  • GET /v1/contacts/{id} — fetch by id.
  • PATCH /v1/contacts/{id} — partial update.
  • DELETE /v1/contacts/{id} — soft-delete.

Deals

  • GET /v1/deals — list with stage, owner, and close_date filters.
  • POST /v1/deals — create a deal on a pipeline.
  • PATCH /v1/deals/{id} — update stage, amount, or close-date.

Agents

  • POST /v1/agents/{id}/run — invoke an agent with a JSON payload. Returns the run id.
  • GET /v1/agents/{id}/runs/{run_id} — fetch run status, logs, and output.

Webhooks

Webhooks fire on record events (contact.created, deal.updated, ticket.resolved) and on agent lifecycle events (agent.run.started, agent.run.completed, agent.run.failed). The full event list is published with the Enterprise GA.

Every webhook payload is signed with HMAC-SHA256. Verify the KaryaFlow-Signature header against the signature field in the request body using the secret from your webhook endpoint settings. Reject any payload whose timestamp is more than 5 minutes off to prevent replay.

SDKs

First-party TypeScript and Python SDKs are published on npm (@karyaflow/sdk) and PyPI (karyaflow). Both wrap the REST API and expose typed resources for contacts, deals, tickets, and agent runs.