---
title: "Get Workspace Hotspots"
method: GET
path: "/workspaces/{workspace_id}/snapshots/{snapshot_id}/hotspots"
tags: ["workspaces"]
---

# Get Workspace Hotspots

`GET /workspaces/{workspace_id}/snapshots/{snapshot_id}/hotspots`

## Request

- Base URL: `https://api.repowise.dev` (the document declares no server; this is the origin it was published from)
- URL: `https://api.repowise.dev/workspaces/{workspace_id}/snapshots/{snapshot_id}/hotspots`
- Auth: HTTP bearer

Merged worst-N churn hotspots across every member repo.

The view used to fan out one uncached per-member ``getHotspots`` call from
the browser; this rolls the same per-member ``git_metadata.json`` derivation
up server-side. Hotspots aren't a precomputed workspace artifact — each
member's are derived from its own git metadata (same filter + translation as
the single-repo ``/snapshots/{id}/hotspots`` route) and merged here.

Authz mirrors the sibling artifact endpoints (cross-user → 404). It reads
the member snapshots this workspace snapshot froze, re-authorised for the
caller, so the merge is immutable per (snapshot, readable members) and
``limit`` just slices it.

## Path parameters

- `workspace_id` string, required
- `snapshot_id` string, required

## Query parameters

- `limit` integer

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/repowise/apis/repowise-hosted-api.md) · [All operations](https://skmtc.dev/repowise/apis/repowise-hosted-api/llms.txt) · [OpenAPI document](https://skmtc.dev/repowise/apis/repowise-hosted-api/revisions/3037f631a606?raw)
