ExportSessionDto
One row from the reading-session log. r2_progression is deliberately
absent: nothing reads a session's historical locator, and it is the only
non-scalar column on the row.
active_duration_ms(integer | null)<int64>nullable
client_ended_atstring<date-time>required
client_started_atstring<date-time>required
device_idstringrequired
device_namestring | nullnullable
duration_sourcestringrequired
"measured", "inferred", or "unknown".
Example:
measuredidstring<uuid>required
kindstringrequired
"progress", "completed", or "reset".
Example:
progresspages_read(integer | null)<int32>nullable
passinteger<int32>required
server_recorded_atstring<date-time>required
to_page(integer | null)<int32>nullable
to_percentage(number | null)<double>nullable
ExportSessionDto
{
"active_duration_ms": 0,
"client_ended_at": "2024-07-29T15:51:28.071Z",
"client_started_at": "2024-07-29T15:51:28.071Z",
"device_id": "string",
"device_name": "string",
"duration_source": "measured",
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"kind": "progress",
"pages_read": 0,
"pass": 0,
"server_recorded_at": "2024-07-29T15:51:28.071Z",
"to_page": 0,
"to_percentage": 0
}