The activity log as CSV
GET
/console/actions/export
const url = 'https://example.com/console/actions/export?area=businesses&tenantId=019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f&kind=breakGlass&order=asc';const options = { method: 'GET', headers: {cookie: 'bottle.session_token=<bottle.session_token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/console/actions/export?area=businesses&tenantId=019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f&kind=breakGlass&order=asc' \ --cookie bottle.session_token=<bottle.session_token>The same filters as GET /console/actions, every page of them up to 10,000 rows, as a CSV file: when (UTC), who, what in words, the action, the business, the person and the details. Recorded as actions.exported.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”q
string
area
string
action
string
tenantId
UUID v7
string format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8fUUID v7
staffUserId
string
personId
string
kind
string
from
string format: date
to
string format: date
order
string
Responses
Section titled “Responses”The CSV
Media typetext/csv
string
Not signed in
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Not Bottle staff, or no two-step sign-in
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Validation failed
Media typeapplication/json
object
error
required
string
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string
Example
{ "error": "validation", "issues": [ { "path": "email", "message": "Invalid email" } ]}