Schedules API
GET/api/v1/calendars
Product availabilityAlgaPSA

List calendars

Lists the calendars the caller can see, with effective access. Requires user_schedule:read; visibility is the same as the schedule sidebar: the caller's own personal calendar, personal calendars shared with the caller (active owners only), and group calendars the caller can see (every group calendar for user_schedule:update holders). HOW TO USE A RESULT ON A SCHEDULE ENTRY: for a group calendar, send its calendar_id as `calendar_id` on POST/PUT /api/v1/schedules. Personal calendars have no calendar_id in this list (null) and are identified by owner_user_id; to put an entry on a personal calendar send `calendar_id: null` (or omit it) together with `assigned_user_ids: [owner_user_id]`. Group-calendar validation rejects personal ids.

RBAC · time_sheet

Query parameters

typestringOptional
Only return calendars of this type.
include_archivedstringOptional
Include archived group calendars (default false). Archived calendars are only visible to their managers.

Response body

Success response 200 · schema WorkV1CalendarListResponse

dataarray of WorkV1CalendarRequired
itemsobject
calendar_idstring <uuid>RequiredNullable
Group calendars: the id to send as calendar_id on a schedule entry. Personal calendars: always null, because a personal calendar is not addressed by an id on entries. To put an entry on someone's personal calendar, send calendar_id null (or omit it) together with assigned_user_ids: [owner_user_id].
namestringRequired
Group calendar name, or the owner's display name for a personal calendar.
calendar_typestringRequired
Enum: personalgroup
owner_user_idstring <uuid>RequiredNullable
Owner of a personal calendar (its identity in this list); null for group calendars.
access_levelstringRequired
Effective access level of the caller on this calendar.
Enum: readeditmanagefree_busy
can_editbooleanRequired
True when access_level is edit or manage.
is_archivedbooleanRequired
metaobject

Response codes

200
Visible calendars.
400
Invalid query parameter.
401
API key missing/invalid or associated user missing.
403
Missing user_schedule:read.
500
Unexpected controller/service failure.