Account
Current user and paired-device management.
Current user and paired-device management. All account routes require Authorization: Bearer <accessToken> or a valid s46_access auth cookie.
Route inventory
| Method | Route | Purpose |
|---|---|---|
GET | /v1/me | Authenticated user, organization, team, and role. |
GET | /v1/devices | List active paired devices for the account. |
DELETE | /v1/devices/{deviceId} | Revoke a paired device and its token family. |
Current user
GET/v1/me→ 200
Returns the identity behind the bearer token. Use the role to decide whether to show admin surfaces: owner and admin may call admin routes for their target org/team; member and viewer may not.
curl https://api.s46.dev/v1/me \
-H "Authorization: Bearer $S46_ACCESS_TOKEN"const me = await fetch("https://api.s46.dev/v1/me", {
headers: { Authorization: `Bearer ${accessToken}` },
}).then((r) => r.json());me = requests.get("https://api.s46.dev/v1/me",
headers={"Authorization": f"Bearer {access_token}"}).json(){
"email": "dscape@s46.dev",
"organization": "s46",
"team": "@s46/engineering",
"role": "owner"
}Paired devices
GET/v1/devices→ 200
DELETE/v1/devices/{deviceId}→ 200
List the account's active devices, or revoke one. deviceId must be URL path-escaped. Deleting the current device invalidates the token family used for the request.
# List devices
curl https://api.s46.dev/v1/devices \
-H "Authorization: Bearer $S46_ACCESS_TOKEN"
# Revoke a device (deviceId must be URL path-escaped)
curl -X DELETE https://api.s46.dev/v1/devices/dev-laptop \
-H "Authorization: Bearer $S46_ACCESS_TOKEN"const devices = await fetch("https://api.s46.dev/v1/devices", {
headers: { Authorization: `Bearer ${accessToken}` },
}).then((r) => r.json());
await fetch("https://api.s46.dev/v1/devices/dev-laptop", {
method: "DELETE",
headers: { Authorization: `Bearer ${accessToken}` },
});devices = requests.get("https://api.s46.dev/v1/devices",
headers={"Authorization": f"Bearer {access_token}"}).json()
requests.delete("https://api.s46.dev/v1/devices/dev-laptop",
headers={"Authorization": f"Bearer {access_token}"}){
"devices": [
{
"id": "dev-laptop",
"name": "Dev laptop",
"account": "dscape@s46.dev",
"organizationSlug": "s46",
"team": "@s46/engineering",
"createdAt": "2030-01-01T10:00:00Z",
"lastSeenAt": "2030-01-01T12:30:00Z",
"lastSeenIp": "203.0.113.10"
}
]
}{ "revoked": true, "deviceId": "dev-laptop" }