Reading Sessions
List Reading Sessions
Returns a paginated list of reading sessions for the authenticated user.
GET
/
v1
/
reading_sessions
curl "https://api.getmatter.com/public/v1/reading_sessions" \
-H "Authorization: Bearer mat_your_token_here"
curl "https://api.getmatter.com/public/v1/reading_sessions?since=2026-04-01T00:00:00Z" \
-H "Authorization: Bearer mat_your_token_here"
response = requests.get(
"https://api.getmatter.com/public/v1/reading_sessions",
headers={"Authorization": f"Bearer {token}"},
params={"since": "2026-04-01T00:00:00Z"}
)
sessions = response.json()
{
"object": "list",
"results": [
{
"object": "reading_session",
"id": "rs_k8x2m",
"date": "2026-04-09T14:23:00Z",
"seconds_read": 180
},
{
"object": "reading_session",
"id": "rs_j7w1n",
"date": "2026-04-09T08:12:00Z",
"seconds_read": 162
},
{
"object": "reading_session",
"id": "rs_h6v0p",
"date": "2026-04-08T21:45:00Z",
"seconds_read": 480
}
],
"has_more": true,
"next_cursor": "eyJ1YSI6MTc..."
}
Each session records a single reading period with a timestamp and duration.
Use these to compute reading streaks, daily totals, or other time-based
statistics client-side.
Query Parameters
string
Only return sessions on or after this ISO 8601 datetime. Useful for incremental sync.
Example:
2026-04-01T00:00:00Z.integer
default:25
Number of sessions per page. Min 1, max 100.
string
Cursor for the next page of results.
Response
string
required
Always
"list".array
required
boolean
required
Whether there are more results.
string
Cursor for the next page.
curl "https://api.getmatter.com/public/v1/reading_sessions" \
-H "Authorization: Bearer mat_your_token_here"
curl "https://api.getmatter.com/public/v1/reading_sessions?since=2026-04-01T00:00:00Z" \
-H "Authorization: Bearer mat_your_token_here"
response = requests.get(
"https://api.getmatter.com/public/v1/reading_sessions",
headers={"Authorization": f"Bearer {token}"},
params={"since": "2026-04-01T00:00:00Z"}
)
sessions = response.json()
{
"object": "list",
"results": [
{
"object": "reading_session",
"id": "rs_k8x2m",
"date": "2026-04-09T14:23:00Z",
"seconds_read": 180
},
{
"object": "reading_session",
"id": "rs_j7w1n",
"date": "2026-04-09T08:12:00Z",
"seconds_read": 162
},
{
"object": "reading_session",
"id": "rs_h6v0p",
"date": "2026-04-08T21:45:00Z",
"seconds_read": 480
}
],
"has_more": true,
"next_cursor": "eyJ1YSI6MTc..."
}
curl "https://api.getmatter.com/public/v1/reading_sessions" \
-H "Authorization: Bearer mat_your_token_here"
curl "https://api.getmatter.com/public/v1/reading_sessions?since=2026-04-01T00:00:00Z" \
-H "Authorization: Bearer mat_your_token_here"
response = requests.get(
"https://api.getmatter.com/public/v1/reading_sessions",
headers={"Authorization": f"Bearer {token}"},
params={"since": "2026-04-01T00:00:00Z"}
)
sessions = response.json()
{
"object": "list",
"results": [
{
"object": "reading_session",
"id": "rs_k8x2m",
"date": "2026-04-09T14:23:00Z",
"seconds_read": 180
},
{
"object": "reading_session",
"id": "rs_j7w1n",
"date": "2026-04-09T08:12:00Z",
"seconds_read": 162
},
{
"object": "reading_session",
"id": "rs_h6v0p",
"date": "2026-04-08T21:45:00Z",
"seconds_read": 480
}
],
"has_more": true,
"next_cursor": "eyJ1YSI6MTc..."
}