LOOMAL
SDK / API ReferenceCalendar

Update Event

Update an existing calendar event

Scope: calendar:write

Update fields on an existing calendar event. Only provided fields are updated.

Request

import { Loomal } from "@loomal/sdk";

const loomal = new Loomal({ apiKey: process.env.LOOMAL_API_KEY! });
const event = await loomal.calendar.update("evt_abc123", {
  title: "Updated Team Sync",
  location: "Conference Room 2",
});
import os
from loomal import Loomal

loomal = Loomal(api_key=os.environ["LOOMAL_API_KEY"])
event = loomal.calendar.update(
    "evt_abc123",
    title="Updated Team Sync",
    location="Conference Room 2",
)
loomal calendar update evt_abc123 \
  --title "Updated Team Sync" \
  --location "Conference Room 2"
calendar.update(event_id="evt_abc123", title="Updated Team Sync", location="Conference Room 2")

Available through @loomal/mcp — see MCP setup.

curl -X PATCH https://api.loomal.ai/v0/calendar/evt_abc123 \
  -H "Authorization: Bearer loid-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Updated Team Sync",
    "location": "Conference Room 2"
  }'

Path Parameters

ParamTypeDescription
eventIdstringThe event ID to update

Request Body

All fields are optional. Only provided fields are updated.

FieldTypeDescription
titlestringNew title
descriptionstringNew description
startAtstringNew start date/time (ISO 8601)
endAtstringNew end date/time (ISO 8601)
isAllDaybooleanAll-day event
locationstringNew location

Response 200

{
  "eventId": "evt_abc123",
  "title": "Updated Team Sync",
  "startAt": "2026-04-07T10:00:00.000Z",
  "endAt": "2026-04-07T11:00:00.000Z",
  "isAllDay": false,
  "location": "Zoom",
  "updatedAt": "2026-04-06T14:00:00.000Z"
}

On this page