Rensei docs

Store exact relay-owned post-takeover snapshot proof.

Relay-only TLS endpoint. Authentication uses one dedicated fixed-size bearer before body parsing; exact bytes are capped at 4096 by a counting limited reader (and by Content-Length when the transport supplies it), encrypted at rest, and bound to the unique prepared handoff. The first store returns 201, exact replay returns 200, and changed or abandoned authority returns a typed 409.

POST
/api/relay/session-shim/snapshot-receipts

Authorization

relaySnapshotReceiptBearer
headerAuthorizationBearer <43-character unpadded base64url>

Dedicated relay-only 32-byte snapshot-receipt token. It is not a relay callback token, attach JWT, runtime JWT, or user credential.

Request Body

application/json
  1. body
schemaVersion*number
orgId*string
Length1 <= length
sessionId*string
Length1 <= length
handoffNonce*string
Match^[A-Za-z0-9_-]{43}$
preparedCorrelationDigest*string
Match^[0-9a-f]{64}$
attachTokenJti*string
Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
ptyEpoch*string
Match^(0|[1-9][0-9]*)$
carrierEpoch*string
Match^(0|[1-9][0-9]*)$
storeAuthorityId*string
Length1 <= length
proofRevision*string
Match^(0|[1-9][0-9]*)$
proofDigest*string
Match^[0-9a-f]{64}$
carrierBoundary*string
Match^(0|[1-9][0-9]*)$
resolvedBoundary*string
Match^(0|[1-9][0-9]*)$
lastHostSeq*string
Match^(0|[1-9][0-9]*)$
reservationRequestId*string
Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
reservationRequestDigest*string
Match^[0-9a-f]{64}$
reservedCandidateCarrierEpoch*string
Match^(0|[1-9][0-9]*)$
gapFromSeq*|
Match^(0|[1-9][0-9]*)$
gapToSeq*|
Match^(0|[1-9][0-9]*)$
gapReason*string|null
snapshotRequestId*string
Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
rawFrameDigest*string
Match^[0-9a-f]{64}$
frameSeq*string
Match^(0|[1-9][0-9]*)$
atSeq*string
Match^(0|[1-9][0-9]*)$
inStream*boolean

Response Body

Exact durable replay.

application/json
  1. response
state*string
receiptRevision*string
Length1 <= length
Example Request
curl -X POST 'https://app.rensei.ai/api/relay/session-shim/snapshot-receipts' \  -H 'Content-Type: application/json' \  -d '{  "schemaVersion": 2,  "orgId": "string",  "sessionId": "string",  "handoffNonce": "string",  "preparedCorrelationDigest": "string",  "attachTokenJti": "29c83b11-3317-4a35-9cd3-43733e0bc11e",  "ptyEpoch": "string",  "carrierEpoch": "string",  "storeAuthorityId": "string",  "proofRevision": "string",  "proofDigest": "string",  "carrierBoundary": "string",  "resolvedBoundary": "string",  "lastHostSeq": "string",  "reservationRequestId": "f67df14c-6516-4128-9385-e696d3660552",  "reservationRequestDigest": "string",  "reservedCandidateCarrierEpoch": "string",  "gapFromSeq": "string",  "gapToSeq": "string",  "gapReason": "controller_unforwarded",  "snapshotRequestId": "18560400-c7fb-48f9-bb07-751d8d6e6aab",  "rawFrameDigest": "string",  "frameSeq": "string",  "atSeq": "string",  "inStream": true}'
Example Response
{  "state": "stored",  "receiptRevision": "string"}