Announcements
Notices to members.
5 endpoints · base URL https://api.aerscheduler.com
get
/announcementsList announcements
Notices posted to your organization, newest first.
Query parameters
q | string | Free-text filter. Matches the fields a person would search on. |
expired | boolean | true for notices whose expireAt has passed, false for those still live. Omit for both. A notice with no expireAt never expires and counts as live. |
limit | integer | Rows to return, 1,1000. Defaults to 1000; a larger value is clamped rather than rejected. |
offset | integer | Rows to skip, for paging. Defaults to 0. |
sort | string | Field to order by before paging, as a dot path into the row , total, user.firstName. Omit to keep the endpoint's own order. Numbers and ISO timestamps order as numbers and instants, not as text, and empty values always sort last regardless of direction. Ordering happens before the page is cut, so it orders the whole collection rather than the page you are holding. |
order | "asc" | "desc" | asc (default) or desc. Only meaningful with sort. |
Responses
200 | OK | The announcements.→ { data: Announcement[] } |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
Example request
curl https://api.aerscheduler.com/announcements \
-H "Authorization: Bearer $AERSCHEDULER_KEY"post
/announcementsPost an announcement
Notifies the roles you target. Requires the admin role.
Request body
The notice.
titlerequired | string | |
messagerequired | string | |
expireAt | string | |
forRoles | string[] |
Responses
200 | OK | Success.→ { data: Announcement } |
201 | Created | Success.→ { data: Announcement } |
400 | Bad Request | Validation failed. |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
Example request
curl -X POST https://api.aerscheduler.com/announcements \
-H "Authorization: Bearer $AERSCHEDULER_KEY" \
-H "Content-Type: application/json" \
-d '{"title":"…","message":"…"}'patch
/announcements/{id}Update an announcement
Requires the admin role.
Path parameters
idrequired | integer | The announcement id. |
Request body
Fields to change.
title | string | |
message | string | |
expireAt | string |
Responses
200 | OK | Success.→ { data: Announcement } |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
Example request
curl -X PATCH https://api.aerscheduler.com/announcements/:id \
-H "Authorization: Bearer $AERSCHEDULER_KEY" \
-H "Content-Type: application/json" \
-d '{"title":"…","message":"…"}'delete
/announcements/{id}Delete an announcement
Requires the admin role.
Path parameters
idrequired | integer | The announcement id. |
Responses
204 | No Content | Success. No body. |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
Example request
curl -X DELETE https://api.aerscheduler.com/announcements/:id \
-H "Authorization: Bearer $AERSCHEDULER_KEY"post
/announcements/{id}/seenMark an announcement as seen
Hides the notice from your Home. It stays on the announcements page. Idempotent.
Path parameters
idrequired | integer | The announcement id. |
Responses
200 | OK | Success.→ { data: Announcement } |
401 | Unauthorized | No token, an expired token, or a malformed one. Sign in again. |
403 | Forbidden | Authenticated, but not allowed to do this. |
404 | Not Found | That announcement is not in your organization. |
429 | Too Many Requests | Rate limited. Retry-After says how long to wait. |
Example request
curl -X POST https://api.aerscheduler.com/announcements/:id/seen \
-H "Authorization: Bearer $AERSCHEDULER_KEY"