Skip to content

Simple Schedule API

Welcome to the Simple Schedule API documentation. This API provides a robust, multi-tenant calendar booking system with configurable time slots, availability management, and closure handling.

Key Features

  • Organization Isolation - Each API key is scoped to your organization's data
  • Configurable Granularity - 15, 30, or 60-minute booking slots
  • Working Hours - Define operating hours per day of week
  • Availability Queries - Get available time slots
  • One-time Closures - Block specific time ranges
  • Recurring Closures - iCal RRULE format for recurring blocks (holidays, maintenance)
Section Description
Quick Start Get up and running in minutes
Authentication Learn about API key authentication
Timezone Guide How to handle timezones and cross-timezone bookings
API Reference Complete endpoint documentation
Data Models Request/response schemas

Base URL

https://api.simple-schedule.io

API Endpoints Overview

Resource Endpoints
Health GET /health
Calendars POST, GET, PATCH, DELETE /calendars
Bookings POST, GET, PATCH, DELETE /calendars/{id}/bookings, GET .../bookings/{id}/ics
Availability GET /calendars/{id}/availability/day, GET /calendars/{id}/availability/week
Closures POST, GET, DELETE /calendars/{id}/closures
Recurrence Rules POST, GET, DELETE /calendars/{id}/recurrence-rules

Response Format

All API responses follow a consistent JSON format:

{
  "id": "uuid",
  "created_at": "2024-01-15T10:30:00Z",
  ...
}

Error Handling

Errors are returned with appropriate HTTP status codes and a JSON body:

{
  "detail": "Error description"
}
Status Code Description
400 Bad Request - Invalid parameters
401 Unauthorized - Missing or invalid API key
404 Not Found - Resource doesn't exist
409 Conflict - Resource conflict (e.g., overlapping booking)
429 Too Many Requests - Rate limit exceeded
500 Internal Server Error