curl "https://app.runtm.com/api/cloud/sessions/ses_abc123/usage" \
-H "Authorization: Bearer runtm_xxx"
import requests
session_id = "ses_abc123"
resp = requests.get(
f"https://app.runtm.com/api/cloud/sessions/{session_id}/usage",
headers={"Authorization": "Bearer runtm_xxx"},
)
print(resp.json())
const sessionId = "ses_abc123";
const resp = await fetch(
`https://app.runtm.com/api/cloud/sessions/${sessionId}/usage`,
{
headers: {
Authorization: "Bearer runtm_xxx",
},
}
);
const data = await resp.json();
{
"session_id": "ses_abc123",
"prompts": [
{
"timestamp": "2026-05-09T17:00:00Z",
"prompt_preview": "Add rate limiting to the API...",
"model": "sonnet",
"cost_usd": 0.03,
"input_tokens": 2800,
"output_tokens": 1200,
"duration_ms": 11000
},
{
"timestamp": "2026-05-09T17:15:00Z",
"prompt_preview": "Write tests for the rate limiter...",
"model": "sonnet",
"cost_usd": 0.02,
"input_tokens": 1500,
"output_tokens": 900,
"duration_ms": 8200
}
],
"total_prompts": 2,
"total_cost_usd": 0.05
}
Personal
Session Usage
Usage breakdown for a specific session (prompts, tokens, cost).
GET
/
api
/
sessions
/
{session_id}
/
usage
curl "https://app.runtm.com/api/cloud/sessions/ses_abc123/usage" \
-H "Authorization: Bearer runtm_xxx"
import requests
session_id = "ses_abc123"
resp = requests.get(
f"https://app.runtm.com/api/cloud/sessions/{session_id}/usage",
headers={"Authorization": "Bearer runtm_xxx"},
)
print(resp.json())
const sessionId = "ses_abc123";
const resp = await fetch(
`https://app.runtm.com/api/cloud/sessions/${sessionId}/usage`,
{
headers: {
Authorization: "Bearer runtm_xxx",
},
}
);
const data = await resp.json();
{
"session_id": "ses_abc123",
"prompts": [
{
"timestamp": "2026-05-09T17:00:00Z",
"prompt_preview": "Add rate limiting to the API...",
"model": "sonnet",
"cost_usd": 0.03,
"input_tokens": 2800,
"output_tokens": 1200,
"duration_ms": 11000
},
{
"timestamp": "2026-05-09T17:15:00Z",
"prompt_preview": "Write tests for the rate limiter...",
"model": "sonnet",
"cost_usd": 0.02,
"input_tokens": 1500,
"output_tokens": 900,
"duration_ms": 8200
}
],
"total_prompts": 2,
"total_cost_usd": 0.05
}
Returns a prompt-by-prompt usage breakdown for a specific session, including per-prompt cost, model, and token counts.
In organization context, any org member can view usage for sessions belonging to that org.
Required scope:
activity:read
string
required
The session ID to get usage for.
string
required
The session ID.
object[]
required
Array of per-prompt usage entries. Each contains fields like
model, cost_usd, input_tokens, output_tokens, duration_ms, timestamp, and prompt_preview.integer
required
Total number of prompts in this session.
number
required
Total cost for the session in USD.
curl "https://app.runtm.com/api/cloud/sessions/ses_abc123/usage" \
-H "Authorization: Bearer runtm_xxx"
import requests
session_id = "ses_abc123"
resp = requests.get(
f"https://app.runtm.com/api/cloud/sessions/{session_id}/usage",
headers={"Authorization": "Bearer runtm_xxx"},
)
print(resp.json())
const sessionId = "ses_abc123";
const resp = await fetch(
`https://app.runtm.com/api/cloud/sessions/${sessionId}/usage`,
{
headers: {
Authorization: "Bearer runtm_xxx",
},
}
);
const data = await resp.json();
{
"session_id": "ses_abc123",
"prompts": [
{
"timestamp": "2026-05-09T17:00:00Z",
"prompt_preview": "Add rate limiting to the API...",
"model": "sonnet",
"cost_usd": 0.03,
"input_tokens": 2800,
"output_tokens": 1200,
"duration_ms": 11000
},
{
"timestamp": "2026-05-09T17:15:00Z",
"prompt_preview": "Write tests for the rate limiter...",
"model": "sonnet",
"cost_usd": 0.02,
"input_tokens": 1500,
"output_tokens": 900,
"duration_ms": 8200
}
],
"total_prompts": 2,
"total_cost_usd": 0.05
}