Build on Ordina: the developer overview

What you can build with Ordina's API, how authentication works, the base URL, conventions, and a five-minute quick start.

Ordina runs the booking pages and AI Secretaries of independent businesses. The API lets your code, or your whole platform, work with one of those businesses: read its data, hear about what happens, and give its Secretary new knowledge and live answers from your own system.

  1. Get a keyThe business creates an API key.
  2. Read and listenREST endpoints and webhooks.
  3. Teach the SecretaryPush knowledge text.
  4. Give it live dataRegister connected actions.

What you can build

You want to Use Guide
Read a business's appointments and orders REST API API reference
Be told the moment a booking, order, payment, lead or review happens Webhooks Webhook events
Make the Secretary answer from your FAQs, policies or summaries Pushed knowledge Push knowledge
Make the Secretary answer from your live data while it chats Connected actions Connected actions
Let an AI assistant book, order or run the business MCP servers Technical note: MCP
Connect without code Zapier Zapier

If you run a platform and want Ordina's Secretary on it, answering from your data, start with Integrate your platform with Ordina. It walks through every piece in order.

Who holds the key

Everything is scoped to one business. The business owner creates an API key in their dashboard and gives it to you; every request made with it acts on that business only. To work with several businesses, hold one key per business. A key never reaches another business's data.

The API is part of the Pro and Business plans. If the business's plan lapses, requests return 403 and webhooks and actions stop until the plan is active again.

Base URL and format

https://www.useordina.com/api/v1
  • Requests and responses are JSON, UTF-8. Send Content-Type: application/json with a body.
  • Every request carries the key: Authorization: Bearer ord_live_.... See API keys and authentication.
  • Lists come back as { "data": [ ... ] }, newest first.
  • Errors come back as { "error": "A sentence saying what went wrong." } with a matching HTTP status. See Errors, limits and troubleshooting.
  • Times are ISO 8601 in UTC (2026-10-01T10:00:00.000Z), except an appointment's date (YYYY-MM-DD) and time (HH:MM), which are in the business's own time zone.
  • Amounts are numbers in the business's own currency. GET /me tells you which.

Quick start

  1. Ask the business owner to open Integration, then API keys, and create a key named after your app. They copy it once and send it to you securely.
  2. Check it works:
curl https://www.useordina.com/api/v1/me \
  -H "Authorization: Bearer ord_live_YOUR_KEY"
{ "id": "6f1c...", "handle": "brightsalon", "name": "Bright Salon", "currency": "NGN", "country": "NG" }
  1. Read the five latest confirmed appointments:
curl "https://www.useordina.com/api/v1/appointments?status=confirmed&limit=5" \
  -H "Authorization: Bearer ord_live_YOUR_KEY"
  1. Subscribe to new bookings, so you never have to poll:
curl -X POST https://www.useordina.com/api/v1/webhooks \
  -H "Authorization: Bearer ord_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/ordina/events","events":["booking.created"]}'

Store the secret in the response. It signs every delivery and is shown once.

What the API cannot do

The API never creates, changes or cancels bookings, orders, payments or settings. Those go through Ordina's own checks: the booking page, the Secretary, the business's dashboard. Connected actions only look things up. This is deliberate: a leaked key can read data, but it cannot move money or change what customers were promised.

Did this answer it?If not, write to help@useordina.com with your handle, or contact us. A person replies.
Contact us