Overview
A REST API for running bookings for businesses, with orders, availability, catalog, gift vouchers and webhooks.
The Shyni API is a REST API for running bookings for businesses. A business is anything that takes bookings: a dog salon, a detailing garage, a clinic. You can read orders, bookable start times and the service catalog, create and manage bookings, issue and manage gift vouchers, and change a business's availability, settings and catalog. Webhooks push order and voucher changes to your server so you do not have to poll.
You work as an organization. You sign up in the portal at
dashboard.shyni.io, and the organization owns
the businesses you create through the API. An organization key can act on every
business of the organization, and the Shyni-Business header picks the one a
request is for. A business that also has a Shyni admin for its own staff is
called a studio; the pages here mention studios only where they differ.
curl https://api.shyni.io/api/v1/services \
-H "Authorization: Bearer shyni_sk_test_..." \
-H "Shyni-Business: $SHYNI_BUSINESS"Every request carries an API key as a bearer token. A key never sees data of another organization. Public reads (services, availability) always show what is published, never a draft.
Two kinds of key
| Key | Prefix | Runs in | Can do |
|---|---|---|---|
| Secret | shyni_sk_ | Your server only | Whatever its scopes grant, reads and writes |
| Publishable | shyni_pk_ | A browser on the business's own site | Read services, availability and the business, price and create orders, buy gift vouchers |
A secret key in a browser is refused with 403 SECRET_KEY_IN_BROWSER. Details
are in Keys and auth.
Where to go next
Start with the Quickstart: sign up, a test key, one read, one booking.
Then pick what you build:
- A booking form on a business's website: Booking on your site
- Your own backend reading orders: Server integration
- Selling vouchers from your shop: Gift vouchers
- Changing the catalog, availability or the business page: Writing through the API
- Getting told when an order changes: Webhooks
The API reference lists every endpoint, parameter and response. The concepts pages cover what applies everywhere: errors, idempotency, rate limits and quota, pagination and versioning.