---
title: "Overlap Availabilities"
method: POST
path: "/api/availabilities/overlap"
tags: ["availability-legacy"]
---

# Overlap Availabilities

`POST /api/availabilities/overlap`

## Request body

- AvailabilityOverlapRequest — Body for `/availabilities/overlap`.
  - `operator_id` string, nullable — Operator UUID
  - `slot_datetime` string, date-time, nullable — Slot start datetime
  - `duration_minutes` integer, nullable — Slot duration in minutes
  - `start` string, date-time, nullable — Start datetime
  - `end` string, date-time, nullable — End datetime
  - `include_start` boolean — Use >= start when true
  - `include_end` boolean — Use <= end when true
  - `inclusive_end` boolean — Use <= end when true
  - `exclude_appointment_id` string, nullable — Exclude a specific appointment UUID

## Response `200`

Successful Response

- AvailabilityResponse[]
  - `id` string, uuid, required — Availability UUID
  - `created_at` string, date-time, nullable — Creation timestamp
  - `last_time_updated` string, date-time, nullable — Last update timestamp
  - `slot_datetime` string, date-time, nullable — Slot datetime
  - `operator_id` string, uuid, nullable — Operator UUID
  - `appointment_id` string, uuid, nullable — Appointment UUID
  - `duration_minutes` integer, nullable — Slot duration in minutes
  - `patient_in_booking_id` string, uuid, nullable — Patient booking UUID
  - `blocked_until` string, date-time, nullable — Lock expiration datetime
  - `status` string, nullable — Availability status
  - `is_blocked` boolean, nullable — Whether slot is blocked
  - `location_type` string, nullable — Location type
  - `expert_in_person` boolean, nullable — Whether the expert must be physically in person
  - `clinic_location_id` string, uuid, nullable — Clinic location UUID
  - `room_availability_id` string, uuid, nullable — Room availability UUID
  - `operator` AvailabilityOperatorResponse
    - `id` string, uuid, required
    - `user` AvailabilityUserResponse
      - `id` string, uuid, required
      - `first_name` string, nullable
      - `last_name` string, nullable
  - `appointments` AvailabilityAppointmentResponse[] — Appointments linked to this availability
    - `id` string, uuid, required
    - `appointment_type_code` string, nullable — Appointment type code
    - `patient` AvailabilityPatientResponse
      - `id` string, uuid, required
      - `user` AvailabilityUserResponse
        - `id` string, uuid, required
        - `first_name` string, nullable
        - `last_name` string, nullable
  - `operator_alert_sync` AvailabilityOperatorAlertSyncResponse
    - `action` string, nullable — Alert sync action: closed, created, or promoted
    - `alert_id` string, nullable — Operator alert UUID affected by the availability change
    - `alert_type` string, nullable — Operator alert type affected by the availability change
    - `closed` boolean — True when the availability change closed the alert
    - `invalidate_all` boolean — True when the frontend must invalidate all local route data
    - `site_restricted` boolean — True when the frontend must switch to restricted site mode
    - `message` string, nullable — Human-readable alert sync outcome

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/corabea/apis/corabea-api.md) · [All operations](https://skmtc.dev/corabea/apis/corabea-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/corabea/corabea-api/revisions/13c1bce1bdc4/schema)
