Kanorio Developer Portal
Use Kanorio as a full hosted website or as a headless content, commerce, membership, and digital-delivery backend for your own Next.js, Astro, or mobile storefront.
API & Component Surfaces
Model collections, publish posts and pages, manage products, deliverables, contacts, entitlements, and webhooks via REST or Model Context Protocol (MCP).
Read published pages, header/footer globals, redirects, SEO derivatives (/seo/*, /feed), collections, blog posts, products, and submit forms or analytics beacons at https://{site}/api/v1.
Passwordless customer sign-in, entitlement checks, signed unit playback/download URLs, and reading/course progress at https://{site}/api/v1/customer.
Real-time event notifications with publicVersion and cacheTags for Next.js / Astro ISR cache invalidation and external workflows.
Drop-in <kanorio-login>, <kanorio-unit>, <kanorio-curriculum>, <kanorio-media>, <kanorio-lightbox>, <kanorio-form>, and <kanorio-analytics> plus typed @kanorio/sdk.
See which of the 7 business primitives and 5 platform domains are available today, planned, or hosted-only when using an external storefront.
Three Credentials & Three Distinct Rights
Browser-safe reads at https://{site}/api/v1/*. Draft preview uses read-only X-Kanorio-Preview: knr_pv_... on your server.
Personal Access Tokens (knr_pat_) and OAuth 2.1 (knr_at_) evaluate operational RBAC (lib/permissions). Never expose in browser bundles.
Customer Bearer tokens (knr_cat_) identify a single (websiteId, contactId) and evaluate commercial Entitlements (separate from team RBAC and SaaS plan tiers).
7 Business Primitives at a Glance
Full 12-domain matrixCustom collections, blog system collections, pages, header/footer globals, redirects, draft & preview.
Unified Contact SSOT, dynamic segments, passwordless customer login, commercial entitlements.
Points, store credit, prepaid passes, FIFO expiration and append-only ledger.
Digital and physical products, variants (pricing tiers), categories, discount codes and automatic promotions.
Time slots, staff/equipment resources, holds, rescheduling and cancellation.
Commerce transactions (Order, checkout, refunds, receipts) and form data submissions (FormSubmission, anti-abuse).
Entitlement-protected digital content (courses, downloads), chapter/unit trees, signed playback and progress.
MCP Server Setup, Safety Model & When to Use MCP vs. API/CLI
https://app.kanorio.com/api/mcp) via OAuth 2.1 + PKCE or a Personal Access Token (knr_pat_).# 1. Claude Code (OAuth 2.1 browser prompt, or pass --header "Authorization: Bearer knr_pat_...")
claude mcp add --transport http kanorio https://app.kanorio.com/api/mcp
# 2. Cursor (.cursor/mcp.json) / Windsurf / VS Code
{
"mcpServers": {
"kanorio": {
"url": "https://app.kanorio.com/api/mcp",
"headers": { "Authorization": "Bearer knr_pat_..." }
}
}
}
# 3. Codex (~/.codex/config.toml)
[mcp_servers.kanorio]
url = "https://app.kanorio.com/api/mcp"
bearer_token_env_var = "KANORIO_TOKEN"- Role-scoped & site-scoped by default: Every MCP session or PAT inherits the granting team member's RBAC permissions (system
OWNER/ADMINor custom roles) and is scoped to a single selected website by default.tools/listdynamically filters out tools your token lacks scope for. - Sensitive scopes excluded from agents (`AGENT_EXCLUDED_SCOPES`): Bulk data exports (
site:export,commerce:export,customers:export,marketing:export,collections:export,analytics:export), refunds (commerce:refund), team, billing and payments (members:manage,members:view,billing:manage,billing:view,payments:manage,payments:view), sending campaigns and sender settings (marketing:send,messaging:settings), and site ownership transfer (site:transfer) can never be granted to PAT or OAuth tokens. Agents create and edit campaign drafts withmarketing:manage; sending stays in the dashboard.orders:fulfill,seo:viewandseo:manageare not offered yet because no capability uses them. - Draft-first page writes & optimistic concurrency: Page and theme mutations write to the site draft until
site.publishis called;pages.replace_sectionsandglobals.*enforceifUnmodifiedSinceoptimistic locking so concurrent human and agent edits never clobber each other. Collection item mutations default topublish: true(passpublish: falseto stage drafts). - Tamper-evident attribution & instant rollback: Every agent write is logged in the site's Activity Log (
/settingsactivity) with the specific token and client identity, backed by 30-day page/post revision snapshots. - When to use MCP vs. CLI / REST API: Use MCP for interactive modeling, content drafting, and exploratory site setup inside Cursor, Claude, ChatGPT, or Codex; use REST API / `@kanorio/sdk` / `@kanorio/cli` (
npx @kanorio/cli types,npx @kanorio/cli doctor) for deterministic CI/CD pipelines, build-time type generation, and automated scripts.