Team admin alerts
Team owners can list unresolved operational alerts for their team, resolve or dismiss them, and mark them read. These carry diagnostic payloads — every team alert route is JWT-only and cannot be used with amio_sk_ API key.
Response shape:
read is your own read marker, never another user’s. meta.unread_count is how many of the team’s open alerts you have not read, across the whole list rather than just the current page.
Resolve, dismiss or mark read
data.id is optional; if you send it, it must match the alert in the URL (otherwise 409 resource_id_mismatch). The response is the alert with its new status and read, plus meta.unread_count.
- Repeating a request is safe. Sending the same
statusagain returns200and keeps the originalresolved_atandresolved_by. - A closed alert cannot be closed the other way. Asking for
dismissedon a resolved alert (or the reverse) returns409alert_already_closed. 404— the alert does not exist, is not a valid alert id, or belongs to another team. These cases are indistinguishable by design.403— the caller is not the team owner, or used an API key.422— an unknown attribute, an emptyattributesobject, anullvalue, or astatusother thanresolvedordismissed.
Platform admin alerts
Platform admins can list unresolved cross-tenant alerts (abuse signals, infrastructure events).platform_admin role required.
Query parameters:
Response shape:
Role permissions
Platform admins can assign and remove permissions from roles without rebuilding the role.Assign a permission
201 with the updated role resource. Re-assigning a permission the role already holds is a no-op that still returns 201.
Remove a permission
204 No Content. Removing a permission the role does not hold is a no-op that still returns 204. Returns 404 if the role itself does not exist.