---
title: "Create one or more user-owned one-off calendar events atomically"
method: POST
path: "/day-plan/events"
tags: ["day-plan"]
---

# Create one or more user-owned one-off calendar events atomically

`POST /day-plan/events`

## Request

- Base URL: `https://api.focusbear.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.focusbear.io/day-plan/events`
- Auth: HTTP bearer

## Request body

- CreateDayPlanEventsDto
  - `events` CreateDayPlanEventItemDto[], required
    - `title` string, required
    - `description` string
    - `location` string: Where the event is: an address, a room, or a call link
    - `url` string: The event's URL field, typically the meeting's join link
    - `dtstart_local` string, required: Local event start without an offset. Ambiguous and nonexistent times follow the same RFC 5545 timezone behavior as recurring event series.
    - `dtend_local` string, required: Local event end without an offset. The nominal wall-clock duration must be positive and no more than 24 hours.
    - `timezone` string, required: IANA timezone used to interpret the local start and end
    - `external_id` string: Opaque client identifier for one event occurrence. Posting an event whose external_id matches an existing one-off event of the current user updates that event in place instead of creating a duplicate.
    - `is_all_day` boolean: Whether the event spans the whole day

## Response `201`

- CreateDayPlanEventsResponseDto
  - `events` DayPlanEventResponseDto[], required
    - `external_id` string, nullable, required: Client identifier supplied when the event was created, or null when none was supplied
    - `is_all_day` boolean, required: Whether the event spans the whole day
    - `id` string, required
    - `title` string, required
    - `description` string, nullable, required
    - `location` string, nullable, required
    - `url` string, nullable, required
    - `event_begins` string, required
    - `event_ends` string, required
    - `timezone` string, required
    - `created_at` string, required
    - `updated_at` string, required

---

[API](https://skmtc.dev/focusbear/apis/focusbear-api.md) - [All operations](https://skmtc.dev/focusbear/apis/focusbear-api/llms.txt) - [OpenAPI document](https://skmtc.dev/focusbear/apis/focusbear-api/revisions/3a83a3b9a811?raw)
