/api/v2/audit-log Return recent audit events for the authenticated account.
The response keeps the raw endpoint/method fields for forensics, but also includes API-composed summary, category, action, resourceLabel, and changes fields so clients do not have to interpret route names or request bodies.
By default this endpoint also merges dedicated DNS history events from dns_audit_events, which provide concrete before/after DNS record and nameserver changes.
Use hideGet=true when the user wants changes rather than read-only page loads.
audit:read
Use Authorization: Bearer <token> for API keys. Dashboard sessions may also use hostup_session.
limit integer · min: 1 · max: 100 Page size from 1 to 100.
cursor string Cursor returned by the previous page.
startAt string Inclusive ISO-8601 lower bound. Defaults to the last 12 hours.
endAt string Inclusive ISO-8601 upper bound.
hideGet boolean Hide read-only GET events.
includeStats boolean Include account-level audit counters for the selected window.
includeDnsEvents boolean Include dedicated DNS history events with before/after DNS values. Defaults to true.
Authorization Bearer <token> Accept application/json data array<object> required data[].id string required data[].occurredAt string required data[].method string required data[].endpoint string required data[].path string required data[].ipAddress string · nullable Nullable: may be null when not applicable.
data[].userAgent string · nullable Nullable: may be null when not applicable.
data[].statusCode integer · nullable Nullable: may be null when not applicable.
data[].success boolean required data[].durationMs integer · nullable Nullable: may be null when not applicable.
data[].errorMessage string · nullable Nullable: may be null when not applicable.
data[].authMethod string · nullable Nullable: may be null when not applicable.
data[].resourcesAccessed array<string> required data[].severity string required data[].tags array<string> required data[].eventSource string · enum required request_audit dns_history data[].actorType string · nullable · enum Nullable: may be null when not applicable.
customer staff system api smartcopy data[].actorId string · nullable Nullable: may be null when not applicable.
data[].requestId string · nullable Nullable: may be null when not applicable.
data[].category string · enum required dns domain security billing api account data[].action string required data[].summary string required data[].resourceLabel string · nullable Nullable: may be null when not applicable.
data[].changes array<object> required data[].changes[].label string required data[].changes[].before string · nullable required Nullable: may be null when not applicable.
data[].changes[].after string · nullable required Nullable: may be null when not applicable.
total integer required hasMore boolean required nextCursor string · nullable required stats object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object Retry-After seconds plus X-RateLimit-* headers. 10 fields type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object https://cloud.hostup.se/api/v2/audit-log curl -X GET "https://cloud.hostup.se/api/v2/audit-log" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" {
"data": [
{
"id": "b95de54b-2d8d-45f1-96b9-2d2e5a3c02fb",
"occurredAt": "2026-05-19T09:55:00.000Z",
"method": "PUT",
"endpoint": "/api/v2/dns-zones/zone_01hxa3b4c5d6e7f8g9h0j1k2m3/records/drr_01hxa3b4c5d6e7f8g9h0j1k2m4",
"path": "/api/v2/dns-zones/zone_01hxa3b4c5d6e7f8g9h0j1k2m3/records/drr_01hxa3b4c5d6e7f8g9h0j1k2m4",
"ipAddress": "203.0.113.25",
"userAgent": "Mozilla/5.0",
"statusCode": 200,
"success": true,
"durationMs": 214,
"errorMessage": null,
"authMethod": "session",
"resourcesAccessed": [
"v2_dns_zone:zone_01hxa3b4c5d6e7f8g9h0j1k2m3:record_update"
],
"severity": "info",
"tags": [
"v2_dns_record_update"
],
"eventSource": "request_audit",
"actorType": null,
"actorId": null,
"requestId": null,
"category": "dns",
"action": "dns_record_update",
"summary": "Changed DNS record A @ -> 203.0.113.10.",
"resourceLabel": "drr_01hxa3b4c5d6e7f8g9h0j1k2m4",
"changes": [
{
"label": "Example Label",
"before": null,
"after": "203.0.113.10"
}
]
}
],
"total": 1,
"hasMore": false,
"nextCursor": null
}