Audit Logs And Operations
Purpose: query operation history for provider actions, job execution, and troubleshooting.
UI Flow
- UI loads latest logs per account.
- User filters logs by task/job/email/credential events.
- UI exposes scoped detail page for each log.
- UI can run controlled cleanup for old logs using search-delete dry-run first.
Client Library Flow
const logs = await api.logs.list(accountId, { limit: 50, offset: 0 });
const filtered = await api.logs.search(accountId, {
query: "smtp_send_message",
limit: 20,
});
if (filtered.data.length > 0) {
await api.logs.get(filtered.data[0].id);
}
HTTP/curl Flow
API_BASE_URL="https://api.inbox-manager.com"
curl -sS "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/logs?limit=20&offset=0" \
-H "authorization: Bearer ${BEARER_TOKEN}"
curl -sS -X POST "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/logs/search" \
-H "authorization: Bearer ${BEARER_TOKEN}" \
-H "content-type: application/json" \
--data '{"query":"imap_fetch_body","limit":20,"offset":0}'
curl -sS "${API_BASE_URL}/api/logs/${LOG_ID}" \
-H "authorization: Bearer ${BEARER_TOKEN}"
curl -sS -X POST "${API_BASE_URL}/api/accounts/${ACCOUNT_ID}/logs/search-delete" \
-H "authorization: Bearer ${BEARER_TOKEN}" \
-H "content-type: application/json" \
--data '{"query":"debug","dry_run":true,"limit":100,"older_than":"2026-01-01T00:00:00.000Z"}'
Notes
- Logs are account and application scoped.
- Security policy excludes credential plaintext from logs.
older_thanis required forsearch-delete.