audit
GET
https://api.gaiadesk.net/v1 /audit Scope audit:readAudit events about the caller and their own desks, newest first.
Atlas audit events: desk sessions, agent-token activity reported by desks, and every API call (api.*: actor, key, desk, operation and result; never a body). A team's whole trail stays in the team console and its SIEM stream.
Parameters
deskstringqueryOnly events about this desk (one of the caller's own).
actorstringqueryOnly events by this actor id (an email, a token id).
actionstringqueryOnly this action, or every action under it when it ends in
.* (api.*).tokenstringqueryOnly events by this agent token id or API key id.
since_msintegerqueryuntil_msintegerquerylimitintegerqueryAt most this many (default 100, at most 500).
Code samples
cURL
curl -X GET "https://api.gaiadesk.net/v1/audit" \
-H "Authorization: Bearer $GAIADESK_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 The events.
Example
{
"events": [
{
"id": "string",
"action": "string",
"stream": "string",
"occurred_at_ms": 0,
"actor": {
"type": "string",
"id": "string"
},
"target": {
"type": "string",
"id": "string",
"name": "string"
},
"metadata": {}
}
]
}Schema
eventsApiAuditEvent[]requiredShow child parameters
idstringrequiredactionstringrequireddesk.session.start, agent.exec, api.wakeDesk, …streamstringrequiredsession, agent, enterprise, api.occurred_at_msintegerrequiredactorobjectrequiredShow child parameters
typestringidstringtargetobjectShow child parameters
typestringidstringnamestringmetadataobjectrequiredHeaders
X-Request-IdstringThis request's id (
req_…), also in every error body. Quote it to support.400 The request is malformed (
usage).Example
{
"error": {
"desk": "string",
"kind": "string",
"message": "string",
"reason": "string",
"request_id": "string",
"status": 0
},
"e2e": {
"v": 0,
"events": [
{
"seq": 0,
"nonce": "string",
"ciphertext": "string"
}
]
}
}Schema
errorError & objectrequiredThe CLI's error object plus this request's id.
Show child parameters
deskstringThe desk it concerned, when there was one.
kindstringrequiredThe six kinds a program branches on. Stable: a new kind would be a breaking change, so match with a wildcard arm anyway.
messagestringrequiredreasonstringThe finer cause:
offline, unknown_desk, not_online, network, not_signed_in, timeout, local, …request_idstringrequiredstatusintegerOnly in a held body (
GaiaDesk-Held) — the HTTP status this failure would have had, had its 200 not been sent already.e2eobjectAn end-to-end encrypted operation's events; the last opens to the desk's real error (its
message here is a placeholder).Show child parameters
vintegerrequiredeventsApiE2eFrame[]requiredShow child parameters
seqintegerrequirednoncestringrequiredciphertextstringrequired404 No such desk or resource visible to the caller (
unreachable, unknown_desk).Same as 400 · GET /audit
429 Over this key's rate limit (
refused, rate_limited).Same as 400 · GET /audit
Headers
Retry-AfterintegerSeconds to wait before trying again.
RateLimit-LimitintegerRequests allowed per window for this key.
RateLimit-RemainingintegerRequests left in the current window.
RateLimit-ResetintegerSeconds until the window resets.
Updated