---
title: "Update Event"
method: PUT
path: "/calendar/update"
tags: ["provider", "calendar"]
---

# Update Event

`PUT /calendar/update`

## Headers

- `TENANT` string, required
- `API-KEY` string, required

## Request body

- EventUpdate
  - `id` string, required
  - `status` 'PENDING' | 'RESERVED' | 'CONFIRMED' | 'CANCELLED' | 'COMPLETED' | 'OVERRIDABLE' | 'NO_SHOW'
  - `title` string, nullable
  - `organizerId` string, nullable
  - `start` string, date-time, nullable
  - `end` string, date-time, nullable
  - `locationId` string, nullable
  - `type` 'APPOINTMENT' | 'SHIFT' | 'BLOCK'
  - `attendeeIds` string[], nullable
  - `serviceIds` string[], nullable
  - `eventServices` EventServiceCreate[], nullable
    - `serviceId` string, required
    - `providerId` string, nullable
    - `start` string, date-time, required
    - `end` string, date-time, required
    - `bookableIds` string[], nullable
  - `recurringEvent` RecurringEventRequest
    - `id` string, nullable
    - `rrule` string, required
    - `startDate` string, date-time, required
    - `durationMinutes` integer, required
    - `timezone` string, required
    - `serviceIds` string[], nullable
    - `capacity` integer, nullable
  - `recurrenceModificationMode` 'this' | 'future' | 'all' — Enum representing the different modes for handling recurring event modifications Used when modifying recurring events to specify which occurrences should be affected
  - `confirmationText` string, nullable
  - `tz` string, nullable
  - `capacity` integer, nullable

## Response `200`

Successful Response

- EventDetail[]
  - `id` string, required
  - `title` string, required
  - `start` string, date-time, required
  - `end` string, date-time, required
  - `type` 'APPOINTMENT' | 'SHIFT' | 'BLOCK', required
  - `location` LocationSummary
    - `id` string, required
    - `isVirtual` boolean, required
    - `name` string, required
    - `addressLineOne` string, nullable
    - `addressLineTwo` string, nullable
    - `city` string, nullable
    - `state` string, nullable
    - `zipCode` string, nullable
    - `country` string, nullable
    - `createdDate` string, date-time, nullable
    - `spakinectLocationId` string, nullable
  - `attendees` AttendeeDetailOutput[]
    - `user` UserTiny, required
      - `id` string, required — The unique identifier for the user.
      - `firstName` string, nullable — The user's first name.
      - `lastName` string, nullable — The user's last name.
      - `phoneNumber` string, nullable — The user's phone number.
      - `email` string, nullable — The user's email address.
      - `type` 'PROVIDER' | 'PATIENT' | 'ASSISTANT', required
      - `locationId` string, nullable — The location of the user.
    - `inviteStatus` 'PENDING' | 'ACCEPTED' | 'REJECTED', required
  - `status` 'PENDING' | 'RESERVED' | 'CONFIRMED' | 'CANCELLED' | 'COMPLETED' | 'OVERRIDABLE' | 'NO_SHOW', required
  - `recurringEventId` string, nullable
  - `recurringEvent` RecurringEventDetail
    - `id` string, required
    - `rrule` string, required
    - `startDate` string, date-time, required
    - `durationMinutes` integer, required
    - `timezone` string, required
    - `serviceIds` string[], nullable
    - `capacity` integer, nullable
    - `type` 'APPOINTMENT' | 'SHIFT' | 'BLOCK', required
    - `title` string, required
    - `attendeeIds` string[], nullable
    - `locationId` string, nullable
    - `organizerId` string, required
  - `eventServices` EventServiceDetail[]
    - `service` ServiceDetail, required
      - `id` string, required
      - `duration` integer, required
      - `name` string, required
      - `locationIds` string[], nullable
      - `color` string, required
      - `description` string, nullable
      - `price` integer, nullable
      - `displayPrice` integer, nullable
      - `costOfService` integer
      - `estimated` boolean, nullable
      - `bookingFee` integer, required
      - `bookingFeeText` string, nullable
      - `reminderDaysBefore` integer, nullable
      - `cancellationCost` integer, nullable
      - `hoursBeforeCancellingCosts` integer, nullable
      - `bookingFeePercentage` integer, nullable
      - `cancellationFeePctWithin24h` integer, nullable
      - `cancellationFeePctWithin48h` integer, nullable
      - `refundBookingFeeBefore48h` boolean, nullable
      - `hoursBeforeBookingFeeRefundable` integer, nullable
      - `followUpDaysAfter` integer, nullable
      - `followUpSmsTemplate` string, nullable
      - `providerIds` string[], nullable
      - `forms` FormTiny[], nullable
        - `id` string, required
        - `name` string, required
        - `pathName` string, required
      - `createdDate` string, date-time, nullable
      - `updatedDate` string, date-time, nullable
      - `confirmationSmsTemplate` string, nullable
      - `cancellationSmsTemplate` string, nullable
      - `noShowSmsTemplate` string, nullable
      - `overrideNoticeSmsTemplate` string, nullable
      - `reminderSmsTemplate` string, nullable
      - `selfSchedulingBufferTime` integer, nullable
      - `visibility` 'ALL' | 'NEW' | 'EXISTING' | 'NO'
      - `minutesBeforeRebookingAllowed` integer, nullable
      - `allowIndividualProviderBooking` boolean, nullable
      - `displayOrder` integer, nullable
      - `reservedTimeMinutes` integer, nullable
      - `category` string, nullable
      - `isDoubleBookable` boolean, nullable
      - `isPopular` boolean, nullable
      - `creditCardRequired` boolean, nullable
      - `collectCreditCard` boolean, nullable
      - `autoGfeTreatments` string[], nullable
      - `brandName` string, nullable
      - `unit` 'AMPOULES' | 'APPLICATORS' | 'BOTTLES' | 'BOXES' | 'CAPSULES' | 'CUPS' | 'DOSES' | 'G_PER_ML' | 'GRAMS' | 'IU' | 'IU_PER_ML' | 'OUNCES' | 'FLUID_OUNCES' | 'KG' | 'KITS' | 'LITERS' | 'MCG' | 'MG' | 'MG_PER_ML' | 'ML' | 'MMOL' | 'MICROGRAM_PER_ML' | 'PACKS' | 'PAIRS' | 'PATCHES' | 'PERCENTAGE' | 'PIECES' | 'POUCHES' | 'ROLLS' | 'SACHETS' | 'SHEETS' | 'SPRAYS' | 'STRIPS' | 'SYRINGES' | 'TABLETS' | 'TABLETS_PER_DAY' | 'TESTS' | 'TUBES' | 'UNITS' | 'VIALS' | 'TREATMENTS' | 'SESSIONS' | 'PULSES' | 'JOULES' | 'CENTIMETERS' | 'THREAD_COUNT' | 'INJECTIONS' | 'WRINKLE_UNITS' | 'POUNDS' | 'FEET' | 'INCHES'
      - `internalNotes` string, nullable
      - `sortOrder` integer, nullable
      - `taxable` boolean, nullable
      - `allowCustomPricing` boolean, nullable
    - `providerId` string, nullable
    - `bookables` EventServiceBookable[], nullable
      - `eventId` string, required
      - `serviceId` string, required
      - `bookableId` string, required
      - `start` string, date-time, required
      - `end` string, date-time, required
    - `start` string, date-time, nullable
    - `end` string, date-time, nullable
    - `externalId` string, nullable
    - `isArchived` boolean, nullable
  - `icons` EventIcon[]
  - `capacity` integer, nullable
  - `organizer` UserTiny, required
    - `id` string, required — The unique identifier for the user.
    - `firstName` string, nullable — The user's first name.
    - `lastName` string, nullable — The user's last name.
    - `phoneNumber` string, nullable — The user's phone number.
    - `email` string, nullable — The user's email address.
    - `type` 'PROVIDER' | 'PATIENT' | 'ASSISTANT', required
    - `locationId` string, nullable — The location of the user.
  - `meetingLink` string, nullable
  - `locationId` string, nullable
  - `formCompleted` boolean, nullable
  - `reminders` string[]
  - `recurrenceModificationMode` 'this' | 'future' | 'all' — Enum representing the different modes for handling recurring event modifications Used when modifying recurring events to specify which occurrences should be affected
  - `createdDate` string, date-time, nullable
  - `quickNotes` QuickNoteSummary[], nullable
    - `id` string, required
    - `patientId` string, required
    - `note` string, required
    - `creator` UserTiny, required
      - `id` string, required — The unique identifier for the user.
      - `firstName` string, nullable — The user's first name.
      - `lastName` string, nullable — The user's last name.
      - `phoneNumber` string, nullable — The user's phone number.
      - `email` string, nullable — The user's email address.
      - `type` 'PROVIDER' | 'PATIENT' | 'ASSISTANT', required
      - `locationId` string, nullable — The location of the user.
    - `eventId` string, nullable
    - `createdDate` string, date-time, required
    - `updatedDate` string, date-time, nullable
    - `isArchived` boolean

## Other responses

- `422` — Validation Error

---

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