Scheduling infrastructure

Add booking to your product. Keep your product.

bkinAPI is a multi-tenant, API-first scheduling platform: availability, panels, proposals, calendars, hosted pages, and signed webhooks. Your app stays the system of record for customers, workflows, and identity.

Three surfaces, one booking core

REST API & webhooks

Versioned JSON at /v1. Bearer workspace keys, required idempotency on writes, and HMAC-signed lifecycle events.

Hosted booking pages

Standalone pages at /book/{workspace}/{event}. Invitees pick a slot without ever seeing your API key.

Embed widget

Drop bkin-widget.js into your product. The iframe confirms through the public booking API and emits bkin:booked.

Ownership

bkinAPI does not become your product.

Customers, workflows, permissions, and private identity stay in your app. bkinAPI stores opaque external references and, when you ask, a display label.

Your product owns
Customers, records, workflows, permissions, retention, and audit.
bkinAPI owns
Availability, hosts and panels, proposals, bookings, calendar sync, reminders, scheduling events.

A booking call looks like this

POST https://bkin-api-5ihekgqk.on-forge.com/v1/bookings
Authorization: Bearer bkin_…
Idempotency-Key: acme:meeting:123:confirm:v1

{
  "event_type_id": "…",
  "starts_at": "2026-09-03T13:00:00Z",
  "timezone": "America/New_York",
  "external_ref": "acme:meeting:123",
  "invitee": {
    "privacy_mode": "client_managed",
    "external_ref": "acme:contact:C-9",
    "timezone": "America/New_York",
    "locale": "en"
  }
}

Keys never reach the invitee browser. Your backend is the only caller.