Acuity Scheduling — now owned by Squarespace — has an API that's more capable than many developers expect. Unlike Calendly, you can create appointments programmatically with a simple POST request.
But Acuity was designed for a specific use case: a single service provider (a photographer, nutritionist, personal trainer) managing their own booking calendar. The API reflects that. If you're building AI infrastructure that needs to route bookings across multiple independent professionals, you'll hit its limits quickly.
What Acuity's API Can Do
Acuity's v1 API is straightforward:
- Create appointments —
POST /appointmentswith datetime, appointment type, and customer details - Check availability — get open time slots by calendar and appointment type
- Manage clients — read and update client records
- List appointments — read upcoming and past bookings
- Webhooks — notifications on appointment scheduled, rescheduled, canceled
For a single-owner business, this is functional. You can automate your own booking calendar without much complexity.
The Core Limitation: One Calendar, One Owner
Acuity's entire API is built around a single account. Every API key belongs to one business owner. Every POST /appointments creates a booking on that owner's calendar.
There's no concept of:
- Multiple independent providers on one platform
- Routing a booking to Provider A vs Provider B based on availability
- Managing a network of professionals with a single API key
- Provider discovery or matching
For an AI agent that needs to say "book me with the first available therapist," Acuity has no answer. You'd need a separate Acuity account — and API key — for every professional in your network.
Additional Constraints
Squarespace acquisition effect
Acuity was acquired by Squarespace in 2019. Since then, developer tooling investment has been limited. The API is still on v1, the SDK is a PHP library from GitHub (not published to npm or PyPI), and documentation hasn't been updated significantly.
For a product that needs long-term API stability and investment in developer infrastructure, that's a risk.
No official SDK for modern stacks
Acuity's only official SDK is a PHP library. If you're building with Node.js or Python, you're making raw HTTP requests. No typed SDK, no helper abstractions, no AI agent utilities.
Basic auth in 2026
Acuity's API still supports HTTP Basic Auth with your user ID and API key. OAuth is available for third-party integrations. Neither was designed for the machine-to-machine patterns that AI agents use.
Acuity Scheduling API vs Orita: Side-by-Side
| | Acuity API | Orita API | |---|---|---| | Create bookings programmatically | ✅ | ✅ | | Multi-provider support | ❌ | ✅ | | Single API key for all providers | ❌ | ✅ | | Provider management API | ❌ | ✅ | | Official SDK (JS + Python) | ❌ | ✅ | | AI agent use case | ❌ | ✅ | | Active developer investment | Limited | ✅ | | Webhooks | Basic | Full | | Auth model | Basic auth / OAuth | API key |
When Acuity's API Makes Sense
Acuity is a good fit when:
- You're building an integration for your own Acuity account — syncing bookings to a CRM, sending custom notifications, automating confirmation workflows
- Your business is a single provider with appointment types (photographer, personal trainer, consultant)
- You already use Acuity and need to extend it with automation
For those use cases, Acuity's API is solid. The problem only appears when you try to scale it beyond one business.
When to Use Orita Instead
Orita was built for multi-provider scheduling infrastructure:
import { Orita } from "orita-sdk";
const orita = new Orita({ apiKey: process.env.ORITA_API_KEY });
// Access any provider in your network with one key
const slots = await orita.getSlots({
providerId, // any registered provider
date: "2026-08-05"
});
const booking = await orita.book({
providerId,
date: "2026-08-05",
time: slots[0].value,
customer: { name: "James Park", email: "james@email.com" }
});
// → { bookingId: "bk_18382", status: "confirmed" }
One API key. Any provider in your network. No per-provider auth overhead. Designed for the workflows AI agents actually run.
Getting Started with Orita
The free plan includes 250 bookings/month and full API access.
npm install orita-sdk
# or
pip install orita-sdk