DevelopersAPI reference

Activity log API

REST endpoints for activity log in SKUFlow: 1 operations with parameters, request and response fields, permissions and curl examples.

Base URL: https://app.skuflow.ai/api. Every call needs Authorization: Bearer skf_… (Authentication); {organizationId} ($ORGANIZATION_ID in the examples) is your business's id.

OperationEndpointRisk
The organization's activity logGET /organizations/{organizationId}/audit-eventsread

The organization's activity log

GET /organizations/{organizationId}/audit-events

Who did what, newest first: every write and sensitive call (succeeded or failed), every refused call, and public calls (request form, quote answers, portal) for this organization. Reads are not recorded. Filter by actor, action (exact, or a prefix ending in . such as payments.), resource, outcome, channel and date range (UTC days); paged with a total. Read-only.

Permissionaudit.read (Owner, Admin)
Riskread, OAuth scope skuflow.read. Read: reads only.
MCP toolauditEvents_list (toolset reports)

Parameters

NameInTypeRequiredDescription
actorUserIdquerystringNoOnly this person's actions. Up to 200 characters.
actionquerystringNoA procedure (payments.refund) or a prefix ending in . (invoices.). Up to 200 characters.
resourceTypequerystringNoe.g. quote, invoice, payment. Up to 100 characters.
resourceIdquerystringNoUp to 200 characters.
outcomequeryenumNoOne of SUCCESS, DENIED, ERROR.
viaqueryenumNoOne of WEB, API, MCP, PUBLIC, COPILOT.
fromquerystringNoOn or after this day (UTC), YYYY-MM-DD.
toquerystringNoOn or before this day (UTC), YYYY-MM-DD.
limitqueryintegerNoPage size, 1–200. Default 50.
offsetqueryintegerNoRows to skip; the answer's total counts every match. Default 0.

Example

curl "https://app.skuflow.ai/api/organizations/$ORGANIZATION_ID/audit-events" \
  -H "Authorization: Bearer $SKUFLOW_API_KEY"

Response

200: the answer's fields
FieldTypeDescription
itemsarray of object
items[].idstring
items[].organizationIdstring or null
items[].occurredAtstring (date-time)
items[].actorTypeenumOne of USER, AGENT, SYSTEM, PUBLIC.
items[].actorUserIdstring or null
items[].actorobject or nullThe signed-in person who acted, from the local user mirror.
items[].actor.idstring
items[].actor.namestring or null
items[].actor.emailstring or null
items[].actorClientIdstring or nullThe OAuth / MCP client, for agent calls.
items[].actingForUserIdstring or nullThe user an agent acted for.
items[].viaenumWeb: the SKUFlow app; API: a Bearer-token client; MCP: an AI agent; PUBLIC: no sign-in; COPILOT: SKUFlow AI, the in-app AI assistant acting for the user. One of WEB, API, MCP, PUBLIC, COPILOT.
items[].actionstringThe procedure, e.g. payments.refund.
items[].permissionstring or null
items[].riskenumOne of READ, WRITE, SENSITIVE.
items[].resourceTypestring or null
items[].resourceIdstring or null
items[].outcomeenumOne of SUCCESS, DENIED, ERROR.
items[].errorCodestring or null
items[].ipstring or null
items[].userAgentstring or null
items[].metadataanyRedacted summary of the input: ids it named, the fields it sent and a few enum or amount values. Never free text, secrets or tokens.
totalinteger

On this page