Docs

API overview

The Kushi public API is a small, focused REST API (not GraphQL) that lets your website, landing pages, and other systems talk to your workspace. Everything lives under /public/v1.

Base URL

https://crm.api.kushicorp.com

The three surfaces

Kushi's public API has three distinct surfaces — pick the one that matches what you're doing.

1. Integrator API — the Orders board (API key)

Create and manage commerce orders (the ones on your Orders board), and read your catalog and stock. This is what you want for connecting another tool, a custom checkout, or an automation to your fulfilment workflow.

Method Path Purpose
POST /public/v1/orders Create an order on the Orders board
GET /public/v1/orders List recent orders (filter by status)
PATCH /public/v1/orders/{id} Update an order's status / payment
GET /public/v1/products List products (look up IDs, prices, stock)
GET /public/v1/stock Live stock per product (office + agents)

2. Storefront — customer checkout (no key, per-store)

Your public store page and its pay-on-delivery checkout. Addressed by your store slug, not an API key — safe to call from a customer's browser.

Method Path Purpose
GET /public/v1/store/{slug} Store details + active products
POST /public/v1/store/{slug}/orders Place a pay-on-delivery order
GET /public/v1/orders/{id} Public order tracking (the id is the token)

Storefront orders land on your Orders board just like Integrator API orders.

Conventions

  • Requests and responses are JSON. Send Content-Type: application/json.
  • API-key endpoints need a key — see Authentication. Storefront endpoints use your store slug, no key.
  • Money is in naira; timestamps are ISO-8601 (UTC). IDs are UUIDs.
  • Orders created (Integrator API + storefront) count toward your plan's monthly order limit.

Errors

Errors return { "error": "message" } with a standard status: 400 malformed body, 401 missing/invalid key, 404 not found (or not in your workspace), 500 server error.

See Endpoints for full request/response details and Examples for copy-paste snippets.