Use these endpoints to append log events (e.g. from Kotlin/Android or other apps)
and to read or filter them. All paths are relative to your server; replace
https://winbusiness.com with your host if different.
Base URL
All logging endpoints live under:
/logos/prism/websites/logging/
Example base: https://winbusiness.com/logos/prism/websites/logging
Prism apps (built-in logging)
These apps log events automatically. Filter by system to see what users are doing:
ai-mate– Voice process_and_send, transcript handling, Matrix routing, errorsmemory-manager– Story/commentary upsert, format, image commentary, errorsdaily-scroll– Feed loads, refresh, topic add/delete, errors
Example: GET …/read?system=daily-scroll&limit=50
Appending log records (POST)
Endpoint: POST …/logging/add
Send a single log event as JSON. Use this from your app (e.g. Kotlin/Android) to push logs to the server.
Request:
- Content-Type:
application/json - Body (JSON):
system(required),level,message, optionalextra
Fields:
system(orsource) – Identifier for the app/source (e.g."kotlin-android-app"). Used for filtering.level– One ofdebug,info,warn,error. Default:info.message(ormsg) – Log text.extra– Optional string or JSON object for additional data (stored as text).
Example request:
POST /logos/prism/websites/logging/add
Content-Type: application/json
{
"system": "my-android-app",
"level": "info",
"message": "User opened settings screen",
"extra": "{\"screen\": \"Settings\"}"
}
Example response (201):
{"ok": true, "id": 123}
Reading log records (GET)
Endpoint: GET …/logging/read
Returns log entries, newest first. Optional query parameters filter results. Use this to inspect what happened (e.g. when debugging with an AI or in the Log Manager UI).
Query parameters:
system– Only entries from this system (exact match).level– Only entries with this level (debug,info,warn,error).since– Only entries withts≥ this value (ISO 8601 or compatible).until– Only entries withts≤ this value.limit– Max number of entries (default 500, max 2000).offset– Skip this many entries (default 0) for pagination.
Example requests:
GET …/logging/read?limit=50
GET …/logging/read?system=my-android-app&level=error&limit=100
GET …/logging/read?since=2025-03-11T00:00:00Z&until=2025-03-11T23:59:59Z
Example response (200):
{
"ok": true,
"entries": [
{
"id": 123,
"ts": "2025-03-11T14:30:00.123456Z",
"system": "my-android-app",
"level": "info",
"message": "User opened settings screen",
"extra": "{\"screen\": \"Settings\"}",
"created_at": "2025-03-11 14:30:00"
}
],
"count": 1
}
Listing systems (GET)
Endpoint: GET …/logging/systems
Returns the list of distinct system values that have logged at least once. Useful for filter dropdowns or for an AI to know which sources exist.
Example response (200):
{"ok": true, "systems": ["my-android-app", "kotlin-debug-run"]}
Log Manager UI
Open …/logging/ in a browser to view a table of log entries with filters (system, level, limit) and a Refresh button.