---
title: "Settle one page of Gateway Access evidence set-based in one DB transaction (ADR 0087 R4)"
method: POST
path: "/internal/gateway/access-evidence/settle"
---

# Settle one page of Gateway Access evidence set-based in one DB transaction (ADR 0087 R4)

`POST /internal/gateway/access-evidence/settle`

## Request

- Base URL: `https://api.eurobase.dev`
- URL: `https://api.eurobase.dev/internal/gateway/access-evidence/settle`
- Auth: HTTP bearer

The body is passed to the DB unchanged. Every record gets its own ADR 0078 verdict, bound to the SHA-256 of the exact page bytes; settled members are finalized in the same transaction.

## Request body

- GatewayAccessEvidencePage
  - `schemaVersion` 'gateway-access-evidence.v2', required
  - `storeUid` string, required
  - `records` object[], required
    - `walRecordId` string, required
    - `segmentId` string, required
    - `sequence` integer, required
    - `sourceReservationId` string, required
    - `rowFingerprint` string, required
    - `projectId` string, required
    - `assetType` 'app' | 'container' | 'function' | 'static', required
    - `assetId` string, required
    - `deploymentId` string, required
    - `entry` object, required: The Access entry exactly as the Gateway wrote it

## Response `200`

One verdict per record, in page order

- GatewayAccessEvidencePageAnswer
  - `schemaVersion` 'gateway-access-evidence.v2', required
  - `storeUid` string, required
  - `envelopeFingerprint` string, required
  - `results` object[], required
    - `index` integer, required
    - `walRecordId` string
    - `sourceReservationId` string
    - `sequence` integer
    - `status` 'accepted' | 'exact_retry' | 'project_deleted' | 'rejected' | 'conflict', required
    - `disposition` 'accepted' | 'project-deleted'
    - `reason` string
    - `conflictClass` 'sequence' | 'evidence_identity' | 'log_proof' | 'receipt' | 'membership'
    - `incidentId` string

## Other responses

- `401`: Gateway Access settlement token is invalid
- `422`: The page is not a gateway-access-evidence.v2 page of the token store, or its bytes cannot settle whole (gateway-access-evidence-page-unsettleable); nothing was settled
- `503`: Settlement is unavailable or over its deadline; the page stays in the Gateway WAL and is retried

---

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