---
title: "Cluster Confirm"
method: POST
path: "/v1/cases/{case_id}/cluster-confirm"
tags: ["cases"]
---

# Cluster Confirm

`POST /v1/cases/{case_id}/cluster-confirm`

## Request

- Base URL: `https://api.bitpoort.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.bitpoort.com/v1/cases/{case_id}/cluster-confirm`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

P2 confirmation (PR-4b): the analyst accepts a cluster proposal — every
member address is pinned with cluster metadata AND one cluster-confirmed
event (carrying the FULL evidence object) is appended, atomically. The API
boundary mirrors the pivot-not-member invariant: a poisoned request is a
422, never a silent fix-up.

## Path parameters

- `case_id` integer, required

## Request body

- ClusterConfirm
  - `pivot` string, required
  - `members` string[], required
  - `heuristic` string, required
  - `evidence` object

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/bitpoort/apis/bitpoort-api.md) · [All operations](https://skmtc.dev/bitpoort/apis/bitpoort-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bitpoort/apis/bitpoort-api/revisions/1a51d8566777?raw)
