EnglishAPI ReferenceIndex

Public API Reference

Base URL: https://ai.numintek.com/api

All public endpoints are prefixed with /v1/public/. Internal endpoints (/v1/admin/*, /v1/internal/*) are not exposed to tenants.

Authentication

Every request must include an API key created at Settings → API Keys:

curl https://ai.numintek.com/api/v1/public/conversations \
  -H "Authorization: Bearer dnm_live_XXXXXXXXXXXX"

Key format:

  • dnm_live_... — production key
  • dnm_test_... — test key (no billing, isolated data)

Idempotency

Every mutation (POST, PUT, PATCH, DELETE) accepts an Idempotency-Key header. Same key within 24h returns the cached response:

curl -X POST https://ai.numintek.com/api/v1/public/conversations \
  -H "Authorization: Bearer dnm_live_..." \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"channelId": "...", "message": "..."}'

Pagination

Cursor-based. Response includes nextCursor when more pages exist:

{
  "data": [...],
  "nextCursor": "cnv_abc123"
}

Pass it as ?cursor=cnv_abc123 for the next page.

Errors

RFC 7807 problem+json:

{
  "type": "https://ai.numintek.com/errors/validation",
  "title": "Validation failed",
  "status": 422,
  "detail": "Field 'channelId' is required",
  "instance": "/v1/public/conversations"
}

Common statuses:

  • 401 — missing or invalid API key
  • 403 — key exists but lacks the required scope (see scopes)
  • 409 — conflict (usually an existing resource with the same key)
  • 422 — request body validation failed
  • 429 — rate limit (per-key, default 60 rpm; upgrade in Settings)

Scopes

Each key carries a scope list. Least-privilege recommended:

  • read:conversations — GET /conversations and /messages
  • write:conversations — POST /conversations and /messages
  • read:customers — GET /customers
  • write:customers — POST /customers and PATCH /customers/id
  • read:agents — GET /agents
  • write:agents — POST and PATCH /agents (draft only)
  • read:knowledge — GET /knowledge-bases
  • write:knowledge — POST /knowledge-bases and upload documents
  • read:webhooks — GET /webhooks
  • write:webhooks — POST, PATCH, DELETE /webhooks
  • read:usage — GET /usage

OpenAPI

Full Swagger schema at ai.numintek.com/api-docs.

SDKs

  • Node/TypeScript: @danum-ai/sdk-node
  • Others: coming soon; the API is REST + JSON so any HTTP client works.