GET
/v1/me/sessionsWhat belongs on a security screen: which devices can read this account's mail right now, and when each of them last did anything.
Newest activity first. Only usable tokens are listed; a device that was signed out disappears rather than showing as inactive.
Request
curl https://api.proppertrading.com/v1/me/sessions \
-H "Authorization: Bearer ptat_9f2c1a44_3b8e7d2f5c9a1b4e6d8f0a2c4e6b8d1f"
Response
{
"data": [
{
"id": "9f2c1a44",
"object": "session",
"name": "Jamie iPhone",
"app": "mail",
"platform": "ios",
"device_name": "Jamie iPhone",
"os_version": "26.0",
"app_version": "1.0.0",
"current": true,
"two_factor": true,
"last_seen_at": "2026-08-19T15:00:33+00:00",
"created_at": "2026-08-19T15:00:31+00:00",
"expires_at": null
}
],
"meta": {
"request_id": "req_01kz4bkr1aj1gv63d8fv3133ey",
"has_more": false,
"next_cursor": null
}
}
| Field | Description |
|---|---|
id | Use this to sign that device out |
current | The device making this call. Warn before signing this one out |
two_factor | Whether two-factor was answered when this device signed in |
last_seen_at | Written at most once a minute, so it lags by up to that |
The device fields are self-reported
They were sent by whichever client signed in, and nothing verifies them. Read them as a label, not as evidence.
Errors
| Status | Code | Meaning |
|---|---|---|
| 401 | invalid_token | Not a token, or the secret does not match |
| 403 | insufficient_scope | This device does not hold me:read |