---
title: "Fetch a masked raw, structured, mapped, or registry-typed transaction payload."
method: GET
path: "/v1/transactions/{id}/payload"
tags: ["Transactions"]
---

# Fetch a masked raw, structured, mapped, or registry-typed transaction payload.

`GET /v1/transactions/{id}/payload`

## Request

- Base URL: `https://signaledi.com/api`
- URL: `https://signaledi.com/api/v1/transactions/{id}/payload`
- Auth: HTTP bearer

Payloads are masked by default and every response reports `masked`/`revealed`. Unmasked healthcare payloads require an interactive privileged session (`reveal=true`), an active tenant BAA, and durable reveal audit evidence; API keys are refused with 403 PAYLOAD_REVEAL_FORBIDDEN before any tenant data is read.

## Path parameters

- `id` string, required

## Query parameters

- `view` 'raw' | 'structured' | 'canonical' | 'mapped' | 'document'
- `reveal` 'true' | '1'

## Response `200`

Transaction payload (masked unless an audited reveal succeeded).

- TransactionPayloadResult
  - `ok` true, required
  - `transactionId` string, required
  - `view` 'raw' | 'structured' | 'canonical' | 'document', required: `mapped` is reported as `canonical`.
  - `documentType` string, required
  - `documentTypeCode` string: document view only.
  - `schemaVersion` string: document view only.
  - `direction` string: document view only.
  - `environment` string: document view only.
  - `standard` 'x12': document view only.
  - `payload` unknown, required
  - `masked` boolean, required: True when the payload contains healthcare-classified content that was masked before delivery. Non-sensitive payloads report false.
  - `revealed` boolean, required: True only after a gated, audited `reveal=true` succeeded for an interactive session; always false for API keys.

## Other responses

- `400`: `view` is not one of the documented values (`code` INVALID_PAYLOAD_VIEW).
- `401`: Missing or invalid API key (`code` AUTH_UNAUTHORIZED).
- `403`: Standard 403 causes (see Forbidden), or `reveal=true` was requested by a credential that may never reveal — any API key, or a session whose role lacks the reveal permission (`code` PAYLOAD_REVEAL_FORBIDDEN). The refusal happens before any tenant data is read.
- `404`: Resource not found, or the /v1 platform is disabled (`code` NOT_FOUND / PARTNER_NOT_FOUND / WORKSPACE_NOT_FOUND).
- `409`: The typed document view is unavailable for this type (`code` DOCUMENT_VIEW_UNAVAILABLE; body adds `supportedViews` and `capabilities`).
- `429`: Rate limit exceeded (`code` RATE_LIMITED).
- `500`: Unexpected server error (`code` e.g. PARSE_FAILED, VALIDATE_FAILED, OUTBOUND_FAILED, INBOUND_FAILED, BATCH_FAILED, TRANSACTIONS_FAILED, DOCUMENT_RECEIPT_FAILED, DOCUMENT_PAYLOAD_FAILED). Sanitized bodies carry an opaque `correlationId` to quote to support; internal error text is never echoed.
- `503`: A permitted reveal could not be durably audited, so the unmasked payload was not released (`code` PAYLOAD_REVEAL_AUDIT_UNAVAILABLE). Retry later or read the masked view.

---

[API](https://skmtc.dev/signaledi/apis/signaledi-developer-api.md) · [All operations](https://skmtc.dev/signaledi/apis/signaledi-developer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/signaledi/apis/signaledi-developer-api/revisions/9bc596644a10?raw)
