| title | Audit log |
|---|---|
| description | View, filter, and export the activity log. Track config changes, deploys, auth events, and system actions across all apps. |
import { Aside, TabItem, Tabs } from '@astrojs/starlight/components';
Every action in SimpleDeploy is recorded in a persistent activity log. Use it for incident review, compliance evidence, or just to check who deployed what.
See Activity & Audit Log for the full category list.
**Per-app:** App detail page, **Activity** tab. Filterable by category.Global: System → Audit Log. Filterable by category and app.
Dashboard: Recent activity card shows the latest events across apps you can access.
# Per-app feed
curl "https://manage.example.com/api/apps/myapp/activity?limit=50" \
-H "Authorization: Bearer $SD_API_KEY"
# Global feed
curl "https://manage.example.com/api/activity?limit=100" \
-H "Authorization: Bearer $SD_API_KEY"
# Filter by category
curl "https://manage.example.com/api/activity?categories=deploy,auth&limit=50" \
-H "Authorization: Bearer $SD_API_KEY"Each entry includes id, app_slug, actor_name, category, action, summary, sync_status, and created_at. Full before_json/after_json is returned only by GET /api/activity/{id}.
# Dump the last 1000 entries to a file
curl "https://manage.example.com/api/activity?limit=1000" \
-H "Authorization: Bearer $SD_API_KEY" > activity-$(date +%F).jsonFor cursor-based pagination, use the next_before value from each response as the before query param on the next request.
Default: 365 days. Set to 0 to keep entries forever. Adjust on the System → Audit Log page or via the API:
curl -X PUT https://manage.example.com/api/system/audit-config \
-H "Authorization: Bearer $SD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"retention_days": 90}'Super-admins can purge all entries on the System → Audit Log page or via:
curl -X DELETE https://manage.example.com/api/activity \
-H "Authorization: Bearer $SD_API_KEY"See also: Activity & Audit Log, Security hardening.