The KztOne API
Everything the web app can do, your own software can do too. Scoped API keys, a versioned REST API, inbound webhooks for forms and signed outgoing webhooks for the events that matter.
Authentication
Create an API key in your workspace under Settings → API keys, choosing which permissions it has. Send it as a bearer token. Keys are shown once and can be revoked at any time. Requests count towards your plan’s daily API allowance.
curl https://kztone.com/api/v1/me \ -H "Authorization: Bearer kzt_live_…"
Resources
| Endpoint | Methods | What it is for |
|---|---|---|
| /api/v1/me | GET | The workspace and permissions behind the key |
| /api/v1/contacts | GET, POST | Contacts and companies; matched by email or phone so you never create duplicates |
| /api/v1/leads | POST | Create a lead (website forms, landing pages) |
| /api/v1/products | GET, POST | Products, variants and prices |
| /api/v1/inventory-balances | GET | Stock on hand, reserved and available per location |
| /api/v1/orders | GET, POST | Orders with line items and delivery stages |
| /api/v1/invoices | GET, POST | Invoices and quotations, with hosted payment links |
| /api/v1/payments | GET, POST | Record verified payments and refunds |
| /api/v1/activities | GET, POST | Notes, calls, meetings on any record |
| /api/v1/webhook-subscriptions | GET, POST | Subscribe your own URL to KztOne events |
All list endpoints accept limit, offset and q. Errors come back as JSON with a stable error.code you can branch on; a 402 means the plan does not allow something and includes an upgrade link.
Inbound webhooks for forms
Point Forminator, WPForms, Contact Form 7 or any form tool at your workspace’s form webhook URL and every submission becomes a lead with its source recorded. The URL and secret are shown on the Connections page when you add the “Website forms” connector.
Outgoing webhooks
Subscribe a URL to events. Each delivery is signed with HMAC-SHA256 using your subscription secret, retried with increasing delays, and logged so you can replay it. Delivery is at least once; use the event id to ignore duplicates.
- contact.created
- contact.updated
- lead.created
- order.created
- order.status_changed
- inventory.stock_changed
- invoice.sent
- invoice.paid
- payment.confirmed
- whatsapp.message_received
Zapier and Make
Use the REST API with an API key as a “Webhooks by Zapier” or Make HTTP module, and outgoing webhooks as triggers. A native Zapier app is in beta; ask us for access.
Build on KztOne
Create a workspace, generate an API key and make your first request in minutes.