Schedules
Base URL: https://api.miridia.io. Read Authentication and Conventions before you call these operations.
| Method | Path | Operation |
|---|---|---|
| GET | /api/v1/schedule/events | Get schedule events |
| POST | /api/v1/schedule/events | Create schedule event |
| GET | /api/v1/schedule/events/{scheduleEventId} | Get schedule event |
| PUT | /api/v1/schedule/events/{scheduleEventId} | Update schedule event |
| DELETE | /api/v1/schedule/events/{scheduleEventId} | Delete schedule event |
Get schedule events
GET/api/v1/schedule/events
Access. Send a bearer token or an API key. The caller needs the Schedule view permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
from | query | string (date-time) | No | |
to | query | string (date-time) | No | |
mine | query | boolean | No | Default: false. |
Response
200. Returns a PagedResult envelope. Each item in data is ScheduleEventOccurrenceResponse.
curl -X GET "https://api.miridia.io/api/v1/schedule/events" \
-H "Authorization: Bearer $MIRIDIA_TOKEN" \
-H "X-Business-Id: $MIRIDIA_BUSINESS_ID"{
"count": 0,
"totalCount": 0,
"page": 0,
"finalPage": 0,
"pageSize": 0,
"hasMore": true,
"statusCode": "OK",
"data": [
{
"seriesId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "string",
"description": "string",
"type": "Dispatch",
"occurrenceStart": "2026-09-29T08:00:00Z",
"occurrenceEnd": "2026-09-29T08:00:00Z",
"isRecurring": true,
"assignees": [
{}
],
"createdByUser": {}
}
],
"messages": [
{
"title": "string",
"message": "string",
"level": "Standard",
"icon": "SyncAlert",
"code": "string"
}
]
}Create schedule event
POST/api/v1/schedule/events
Access. Send a bearer token or an API key. The caller needs the Schedule modify permission.
Request body
Send JSON with the shape CreateScheduleEventCommand.
| Field | Type | Required | Description |
|---|---|---|---|
title | string | Yes | |
description | string | No | |
type | enum ScheduleEventType | No | One of: Dispatch, Incoming, Task, Production. |
startAt | string (date-time) | No | |
endAt | string (date-time) | No | |
recurrence | ScheduleRecurrenceRequest | No | |
assignees | ScheduleEventAssigneeRequest[] | No |
Response
200. Returns a SingleResult envelope. The data field is ScheduleEventResponse.
curl -X POST "https://api.miridia.io/api/v1/schedule/events" \
-H "Authorization: Bearer $MIRIDIA_TOKEN" \
-H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
-H "Content-Type: application/json" \
-d '{
"title": "string",
"description": "string",
"type": "Dispatch",
"startAt": "2026-09-29T08:00:00Z",
"endAt": "2026-09-29T08:00:00Z",
"recurrence": {
"frequency": "Daily",
"interval": 0,
"daysOfWeek": [
"Sunday"
],
"until": "2026-09-29T08:00:00Z"
},
"assignees": [
{
"userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"teamId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
]
}'{
"message": "string",
"messages": [
{
"title": "string",
"message": "string",
"level": "Standard",
"icon": "SyncAlert",
"code": "string"
}
],
"data": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "string",
"description": "string",
"type": "Dispatch",
"startAt": "2026-09-29T08:00:00Z",
"endAt": "2026-09-29T08:00:00Z",
"isRecurring": true,
"recurrence": {
"frequency": "Daily",
"interval": 0,
"daysOfWeek": [
"Sunday"
],
"until": "2026-09-29T08:00:00Z"
},
"assignees": [
{}
],
"exceptionDates": [
"2026-09-29"
],
"createdByUser": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"displayName": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"phoneNumber": "string"
},
"dateCreated": "2026-09-29T08:00:00Z",
"dateModified": "2026-09-29T08:00:00Z"
},
"statusCode": "OK",
"canRead": true,
"canEdit": true,
"canDelete": true
}Get schedule event
GET/api/v1/schedule/events/{scheduleEventId}
Access. Send a bearer token or an API key. The caller needs the Schedule view permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
scheduleEventId | path | string (uuid) | Yes |
Response
200. Returns a SingleResult envelope. The data field is ScheduleEventResponse.
curl -X GET "https://api.miridia.io/api/v1/schedule/events/{scheduleEventId}" \
-H "Authorization: Bearer $MIRIDIA_TOKEN" \
-H "X-Business-Id: $MIRIDIA_BUSINESS_ID"{
"message": "string",
"messages": [
{
"title": "string",
"message": "string",
"level": "Standard",
"icon": "SyncAlert",
"code": "string"
}
],
"data": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "string",
"description": "string",
"type": "Dispatch",
"startAt": "2026-09-29T08:00:00Z",
"endAt": "2026-09-29T08:00:00Z",
"isRecurring": true,
"recurrence": {
"frequency": "Daily",
"interval": 0,
"daysOfWeek": [
"Sunday"
],
"until": "2026-09-29T08:00:00Z"
},
"assignees": [
{}
],
"exceptionDates": [
"2026-09-29"
],
"createdByUser": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"displayName": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"phoneNumber": "string"
},
"dateCreated": "2026-09-29T08:00:00Z",
"dateModified": "2026-09-29T08:00:00Z"
},
"statusCode": "OK",
"canRead": true,
"canEdit": true,
"canDelete": true
}Update schedule event
PUT/api/v1/schedule/events/{scheduleEventId}
Access. Send a bearer token or an API key. The caller needs the Schedule modify permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
scheduleEventId | path | string (uuid) | Yes |
Request body
Send JSON with the shape UpdateScheduleEventCommand.
| Field | Type | Required | Description |
|---|---|---|---|
title | string | Yes | |
description | string | No | |
type | enum ScheduleEventType | No | One of: Dispatch, Incoming, Task, Production. |
startAt | string (date-time) | No | |
endAt | string (date-time) | No | |
recurrence | ScheduleRecurrenceRequest | No | |
assignees | ScheduleEventAssigneeRequest[] | No |
Response
200. Returns a SingleResult envelope. The data field is ScheduleEventResponse.
curl -X PUT "https://api.miridia.io/api/v1/schedule/events/{scheduleEventId}" \
-H "Authorization: Bearer $MIRIDIA_TOKEN" \
-H "X-Business-Id: $MIRIDIA_BUSINESS_ID" \
-H "Content-Type: application/json" \
-d '{
"title": "string",
"description": "string",
"type": "Dispatch",
"startAt": "2026-09-29T08:00:00Z",
"endAt": "2026-09-29T08:00:00Z",
"recurrence": {
"frequency": "Daily",
"interval": 0,
"daysOfWeek": [
"Sunday"
],
"until": "2026-09-29T08:00:00Z"
},
"assignees": [
{
"userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"teamId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
]
}'{
"message": "string",
"messages": [
{
"title": "string",
"message": "string",
"level": "Standard",
"icon": "SyncAlert",
"code": "string"
}
],
"data": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "string",
"description": "string",
"type": "Dispatch",
"startAt": "2026-09-29T08:00:00Z",
"endAt": "2026-09-29T08:00:00Z",
"isRecurring": true,
"recurrence": {
"frequency": "Daily",
"interval": 0,
"daysOfWeek": [
"Sunday"
],
"until": "2026-09-29T08:00:00Z"
},
"assignees": [
{}
],
"exceptionDates": [
"2026-09-29"
],
"createdByUser": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"displayName": "string",
"firstName": "string",
"lastName": "string",
"email": "string",
"phoneNumber": "string"
},
"dateCreated": "2026-09-29T08:00:00Z",
"dateModified": "2026-09-29T08:00:00Z"
},
"statusCode": "OK",
"canRead": true,
"canEdit": true,
"canDelete": true
}Delete schedule event
DELETE/api/v1/schedule/events/{scheduleEventId}
Access. Send a bearer token or an API key. The caller needs the Schedule delete permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
scheduleEventId | path | string (uuid) | Yes | |
scope | query | enum ScheduleEventDeleteScope | No | One of: Occurrence, Series. |
occurrenceDate | query | string (date) | No |
Response
200. Returns a SingleResult envelope. The data field is boolean.
curl -X DELETE "https://api.miridia.io/api/v1/schedule/events/{scheduleEventId}" \
-H "Authorization: Bearer $MIRIDIA_TOKEN" \
-H "X-Business-Id: $MIRIDIA_BUSINESS_ID"{
"message": "string",
"messages": [
{
"title": "string",
"message": "string",
"level": "Standard",
"icon": "SyncAlert",
"code": "string"
}
],
"data": true,
"statusCode": "OK",
"canRead": true,
"canEdit": true,
"canDelete": true
}Models
The operations on this page use these object types. Select a type to see its fields.
PrimitiveUserResponse
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
displayName | string | |
firstName | string | |
lastName | string | |
email | string | |
phoneNumber | string |
ScheduleEventAssigneeRequest
One assignee on a create or update command: exactly one of userId/teamId is set.
| Field | Type | Description |
|---|---|---|
userId | string (uuid) | |
teamId | string (uuid) |
ScheduleEventAssigneeResponse
Exactly one of userId/teamId is set. name is resolved live, never snapshotted.
| Field | Type | Description |
|---|---|---|
userId | string (uuid) | |
teamId | string (uuid) | |
name | string |
ScheduleEventOccurrenceResponse
One expanded instance of a series. The shape the calendar range read returns.
| Field | Type | Description |
|---|---|---|
seriesId | string (uuid) | |
title | string | |
description | string | |
type | enum ScheduleEventType | One of: Dispatch, Incoming, Task, Production. |
occurrenceStart | string (date-time) | |
occurrenceEnd | string (date-time) | |
isRecurring | boolean | |
assignees | ScheduleEventAssigneeResponse[] | |
createdByUser | PrimitiveUserResponse |
ScheduleEventResponse
The full series. The shape a create/update/get-one response returns, for the edit modal.
| Field | Type | Description |
|---|---|---|
id | string (uuid) | |
title | string | |
description | string | |
type | enum ScheduleEventType | One of: Dispatch, Incoming, Task, Production. |
startAt | string (date-time) | |
endAt | string (date-time) | |
isRecurring | boolean | |
recurrence | ScheduleRecurrenceResponse | |
assignees | ScheduleEventAssigneeResponse[] | |
exceptionDates | string (date)[] | |
createdByUser | PrimitiveUserResponse | |
dateCreated | string (date-time) | |
dateModified | string (date-time) |
ScheduleRecurrenceRequest
The recurrence rule of a create or update command.
| Field | Type | Description |
|---|---|---|
frequency | enum ScheduleRecurrenceFrequency | One of: None, Daily, Weekly, Monthly. |
interval | integer (int32) | |
daysOfWeek | enum DayOfWeek[] | Weekly recurrence only. Empty means the series repeats on the start date's own weekday. One of: Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday. |
until | string (date-time) |
ScheduleRecurrenceResponse
| Field | Type | Description |
|---|---|---|
frequency | enum ScheduleRecurrenceFrequency | One of: None, Daily, Weekly, Monthly. |
interval | integer (int32) | |
daysOfWeek | enum DayOfWeek[] | One of: Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday. |
until | string (date-time) |