GenuineAIGenuineAI
For usersFor developers
  • Overview
  • Guides
  • How-to
  • API reference
Documentation
  • Quickstart
  • Authentication
  • Errors
  • Rate limits
  • API reference
Platform
  • Platform overview
  • Solutions
  • Pricing
  • Sign in
Company
  • Status
  • Trust Center
  • Contact
  • Terms of Service
  • Privacy Policy

© 2026 GenuineAI Ventures LLC

support@genuinehq.com
Overview
Core
Media library
AI
Documents
Knowledge
Creative
Website & content
Automation
Customer channels
Administration
    Users
    Roles
    Workspace settings
    Audit
      List the access loggetList audit historygetList security eventsget
    Storage
    Usage breakdown
    Media tag groups
    Media status flows
    Issued share links
    Social connections
    Social calendar
Schemas
GenuineAI API
GenuineAI API

Audit

Who changed what, and when.


List the access log

GET
https://api.genuineai.app/api/v1
/admin/access-logs

Returns the workspace's request log — who called what, when, and with which parameters.

List the access log › query Parameters

cursor
​string · maxLength: 512 · pattern: ^[A-Za-z0-9_-]+$
limit
​integer
log_body
​string
log_id
​string · uuid
log_method
​string
log_params
​string
log_query
​string
log_timestamp
​array
log_url
​string
log_user
​string · uuid
log_user_name
​string
offset
​integer · min: 0
sort
​string · minLength: 1 · maxLength: 64 · pattern: ^-?[a-z0-9_]+$

List the access log › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

List the access log › Responses

Success

​AccessLogEntry[] · required
has_more
​boolean · required

Whether more rows exist past this page.

next_cursor
​string | null · required

Pass back as cursor for the next page. Null on the last page.

GET/admin/access-logs
curl https://api.genuineai.app/api/v1/admin/access-logs \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
{ "data": [ { "log_id": "00000000-0000-0000-0000-000000000000", "log_timestamp": "2024-08-25T15:00:00Z", "log_user": "log_user", "log_api_key": "log_api_key", "log_level": "log_level", "log_method": "log_method", "log_url": "log_url", "log_params": "log_params", "log_query": "log_query", "log_body": "log_body", "log_user_name": "log_user_name" } ], "has_more": true, "next_cursor": "next_cursor" }
json
application/json

List audit history

GET
https://api.genuineai.app/api/v1
/admin/history

Returns the workspace's audit trail: who changed which record, when, and what the changeset was.

List audit history › query Parameters

cursor
​string · maxLength: 512 · pattern: ^[A-Za-z0-9_-]+$
history_id
​string · uuid
history_op
​string
history_record
​string · uuid
history_table
​string
history_timestamp
​array
history_user
​string · uuid
history_user_name
​string
limit
​integer
offset
​integer · min: 0
sort
​string · minLength: 1 · maxLength: 64 · pattern: ^-?[a-z0-9_]+$

List audit history › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

List audit history › Responses

Success

​AuditEvent[] · required
has_more
​boolean · required

Whether more rows exist past this page.

next_cursor
​string | null · required

Pass back as cursor for the next page. Null on the last page.

GET/admin/history
curl https://api.genuineai.app/api/v1/admin/history \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
{ "data": [ { "history_id": "00000000-0000-0000-0000-000000000000", "history_timestamp": "2024-08-25T15:00:00Z", "history_user": "history_user", "history_record": "history_record", "history_table": "history_table", "history_op": "history_op", "history_ref": "history_ref", "history_changeset": "history_changeset", "history_user_name": "history_user_name" } ], "has_more": true, "next_cursor": "next_cursor" }
json
application/json

List security events

GET
https://api.genuineai.app/api/v1
/admin/security-events

Authentication activity across the workspace — sign-in attempts, credential changes, second-factor actions and account blocks, as the identity provider reported them.

Events are recorded when authentication is processed, which is not always when a person acted: a token exchange renewing a session carries its own timestamp. Filter on ae_type to narrow to the events a person caused, and on ae_success to separate attempts from outcomes.

List security events › query Parameters

ae_city
​string
ae_connection
​string
ae_country
​string
ae_id
​string · uuid
ae_ip
​string
ae_success
​boolean
ae_timestamp
​array
ae_type
​array
ae_user
​string · uuid
ae_user_name
​string
cursor
​string · maxLength: 512 · pattern: ^[A-Za-z0-9_-]+$
limit
​integer
offset
​integer · min: 0
sort
​string · minLength: 1 · maxLength: 64 · pattern: ^-?[a-z0-9_]+$

List security events › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

List security events › Responses

Success

​SecurityEvent[] · required
has_more
​boolean · required

Whether more rows exist past this page.

next_cursor
​string | null · required

Pass back as cursor for the next page. Null on the last page.

GET/admin/security-events
curl https://api.genuineai.app/api/v1/admin/security-events \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
{ "data": [ { "ae_id": "00000000-0000-0000-0000-000000000000", "ae_timestamp": "2024-08-25T15:00:00Z", "ae_user": "00000000-0000-0000-0000-000000000000", "ae_type": "ae_type", "ae_success": true, "ae_ip": "ae_ip", "ae_user_agent": "ae_user_agent", "ae_city": "ae_city", "ae_country": "ae_country", "ae_connection": "ae_connection", "ae_client_name": "ae_client_name", "ae_user_name": "ae_user_name" } ], "has_more": true, "next_cursor": "next_cursor" }
json
application/json

Workspace settingsStorage