Workspace
GET /v1/workspace/logs
GET
/v1/workspace/logsscope: template:readActivity log for the key's workspace — every tracked action across templates, renders, members, billing, webhooks and more. Mirrors Orshot's /workspace/logs.
| Param | Type | Notes |
|---|---|---|
| page | number | Defaults to 1. |
| limit | number | Defaults to 25, max 100. |
| source | "dashboard" | "api" | "signed-url" | "webhook" | "mcp" | "staff" | "system" | Which surface produced the entry. |
| status | "success" | "failure" | |
| action | string | Prefix match on a dotted action name, e.g. "workspace.member" covers every member event. |
| from | string (ISO 8601) | e.g. 2026-08-01T00:00:00Z. |
| to | string (ISO 8601) | e.g. 2026-08-31T23:59:59Z. |
curl "https://buildonce.app/v1/workspace/logs?action=render&limit=10" \ -H "Authorization: Bearer fl_live_YOUR_API_KEY"
Response
{
"items": [
{
"id": "aud_9k2mq4x7tb1c",
"action": "workspace.member.invited",
"target": { "type": "member", "id": "mem_2a1b3c" },
"source": "dashboard",
"status": "success",
"actor": { "type": "user", "label": "jordan@acme.com" },
"ip": "203.0.113.42",
"metadata": { "email": "new-member@acme.com", "role": "member" },
"createdAt": "2026-09-28T12:00:00.000Z"
},
{
"id": "aud_4hd9s0k2mq7z",
"action": "render.created",
"target": { "type": "render", "id": "rnd_8kq2m4x7ab1c" },
"source": "api",
"status": "success",
"actor": { "type": "api_key", "label": "key_8f2a…" },
"ip": "203.0.113.17",
"metadata": { "templateId": "tpl_123", "renderId": "rnd_8kq2m4x7ab1c" },
"createdAt": "2026-09-28T11:58:00.000Z"
}
/* … */
],
"total": 540,
"page": 1,
"limit": 25
}actor.label is the acting user's email or the API key's public id — never a raw key. target is null when the action has no single affected object. metadata varies by action.
Was this page helpful?