---
title: "Get project session analytics"
method: GET
path: "/v1/projects/{projectSlug}/sessions/analytics"
tags: ["Sessions"]
---

# Get project session analytics

`GET /v1/projects/{projectSlug}/sessions/analytics`

Returns session analytics for the project: a total (or median) per metric over the requested range, plus a per-bucket series for each metric. Buckets are 12-hour UTC-aligned. The range defaults to the trailing 7 days.

## Path parameters

- `projectSlug` string, required — Project slug (human-readable identifier)

## Query parameters

- `fromIso` string, date-time — Lower bound (inclusive) of the time range. Defaults to 7 days before `toIso`.
- `toIso` string, date-time — Upper bound (inclusive) of the time range. Defaults to now.

## Response `200`

Session analytics

- SessionAnalyticsResponse
  - `sessions` SessionAnalyticsSessions, required
    - `total` number, required — Number of sessions in the range.
    - `buckets` SessionAnalyticsBucket[], required — Number of sessions per bucket.
      - `bucket` string, required — ISO-8601 UTC timestamp of the bucket's start.
      - `value` number, required — Metric value for this bucket.
  - `traces` SessionAnalyticsTraces, required
    - `total` number, required — Number of traces across the range's sessions.
    - `buckets` SessionAnalyticsBucket[], required — Number of traces per bucket.
      - `bucket` string, required — ISO-8601 UTC timestamp of the bucket's start.
      - `value` number, required — Metric value for this bucket.
  - `cost` SessionAnalyticsCost, required
    - `total` number, required — Total session cost in USD.
    - `buckets` SessionAnalyticsBucket[], required — Session cost per bucket in USD.
      - `bucket` string, required — ISO-8601 UTC timestamp of the bucket's start.
      - `value` number, required — Metric value for this bucket.
  - `duration` SessionAnalyticsDuration, required
    - `median` number, required — Median session duration in seconds.
    - `buckets` SessionAnalyticsBucket[], required — Median session duration per bucket in seconds.
      - `bucket` string, required — ISO-8601 UTC timestamp of the bucket's start.
      - `value` number, required — Metric value for this bucket.
  - `tokens` SessionAnalyticsTokens, required
    - `total` number, required — Total tokens across all LLM spans.
    - `buckets` SessionAnalyticsBucket[], required — Tokens per bucket across all LLM spans.
      - `bucket` string, required — ISO-8601 UTC timestamp of the bucket's start.
      - `value` number, required — Metric value for this bucket.
  - `timeToFirstToken` SessionAnalyticsTimeToFirstToken, required
    - `median` number, required — Median time-to-first-token across LLM spans, in seconds.
    - `buckets` SessionAnalyticsBucket[], required — Median time-to-first-token per bucket, in seconds.
      - `bucket` string, required — ISO-8601 UTC timestamp of the bucket's start.
      - `value` number, required — Metric value for this bucket.
  - `spans` SessionAnalyticsSpans, required
    - `total` number, required — Total number of spans.
    - `buckets` SessionAnalyticsBucket[], required — Number of spans per bucket.
      - `bucket` string, required — ISO-8601 UTC timestamp of the bucket's start.
      - `value` number, required — Metric value for this bucket.

## Other responses

- `400` — Validation error
- `401` — Unauthorized
- `404` — Not found

---

[API](https://skmtc.net/latitude-dev/apis/latitude.md) · [All operations](https://skmtc.net/latitude-dev/apis/latitude/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/latitude-dev/latitude/revisions/2ce07f01d6c2/schema)
