Calendar API

Use the Calendar API to manage calendars, define bookable slots, and retrieve events for scheduling and availability experiences in your product.

Base URL

All Calendar API endpoints are rooted under the developer base URL:

Base URL
https://api.meetandrock.com/v1/dev
Authentication

Send your secret API key as a Bearer token in the Authorization header:Authorization: Bearer YOUR_API_KEY

Calendar Management

Endpoints for listing, creating and deleting calendars in your workspace.

GET/calendar

List calendars

Retrieve all calendars for the current project, including creator details.

GEThttps://api.meetandrock.com/v1/dev/calendar
List calendars

Fetch all calendars for your project.

curl -X GET "https://api.meetandrock.com/v1/dev/calendar" \
-H "Authorization: Bearer YOUR_API_KEY"
POST/calendar

Create calendar

Create a new calendar with a display name and color.

POSThttps://api.meetandrock.com/v1/dev/calendar
Create calendar

Create a named calendar for grouping events.

curl -X POST "https://api.meetandrock.com/v1/dev/calendar" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "My Calendar",
"color": "#FF5733"
}'
DELETE/calendar/:calendarId

Delete calendar

Delete a calendar by ID. Calendars that still have events cannot be deleted.

DELETEhttps://api.meetandrock.com/v1/dev/calendar/:calendarId
Delete calendar

Delete a calendar that has no events.

curl -X DELETE "https://api.meetandrock.com/v1/dev/calendar/:calendarId" \
-H "Authorization: Bearer YOUR_API_KEY"

Calendar Slots

Define bookable time ranges that generate booking links.

POST/calendar/slots

Create calendar slot

Create a new bookable slot window with duration, date range and repetition options.

Repetition options: only today, every day, every working day, every weekend, every monday, every tuesday, every wednesday, every thursday, every friday, every saturday, every sunday.

Duration: Must be between 15 and 480 minutes (15 minutes to 8 hours).

POSThttps://api.meetandrock.com/v1/dev/calendar/slots
Create calendar slot

Create a recurring booking slot window and get a booking URL.

curl -X POST "https://api.meetandrock.com/v1/dev/calendar/slots" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "Consultation Slot",
"description": "30-minute consultation",
"duration": 30,
"start_date": "2024-01-15T09:00:00Z",
"end_date": "2024-01-15T17:00:00Z",
"repetition": "every working day",
"calendar_id": "uuid"
}'

Calendar Events

Retrieve events for a given view and date, optionally scoped to a single calendar.

GET/calendar/events

Get calendar events

Retrieve events using a calendar-style view (day, week, month) anchored to a specific date.

viewType (day | week | month, default: week)

date – ISO date string used as the anchor (default: current date)

calendarId – optional calendar ID to filter events

GEThttps://api.meetandrock.com/v1/dev/calendar/events?viewType=week&date=2024-01-15&calendarId=uuid
Get calendar events

Retrieve events for a calendar week starting from a given date.

curl -X GET "https://api.meetandrock.com/v1/dev/calendar/events?viewType=week&date=2024-01-15&calendarId=uuid" \
-H "Authorization: Bearer YOUR_API_KEY"

Error responses

Standard error responses for the Calendar API.

400 Bad Request

The request body or query parameters are invalid.

{
  "message": "Invalid request parameters"
}

401 Unauthorized

The API key is missing, expired, or invalid.

{
  "message": "Invalid or missing API key"
}

404 Not Found

The requested calendar or event could not be found.

{
  "message": "Calendar not found"
}

400 Bad Request (delete with events)

Attempting to delete a calendar that still has events.

{
  "success": false,
  "message": "Cannot delete calendar with existing events"
}

500 Internal Server Error

An unexpected error occurred while processing the request.

{
  "message": "Calendar create failed"
}

Contents