---
title: "Ingest a versioned Protocol signal envelope"
method: POST
path: "/v1/protocol/signals/envelopes"
---

# Ingest a versioned Protocol signal envelope

`POST /v1/protocol/signals/envelopes`

## Request

- Base URL: `https://api.decionis.com`
- URL: `https://api.decionis.com/v1/protocol/signals/envelopes`
- Auth: HTTP bearer

Persists an evidence-bearing signal for deterministic policy evaluation
and material-signal revalidation. Semantic classifier metadata is input
evidence only and cannot mint an authority verdict or execution grant.

## Headers

- `X-Correlation-ID` string
- `Idempotency-Key` string

## Request body

- ProtocolSignalEnvelope
  - `protocol_version` string, required
  - `envelope_id` string, uuid, required
  - `org_id` string, required
  - `source` object, required
    - `provider` string, required
    - `connector_id` string
    - `mode` 'DIRECT_API' | 'CUSTOMER_INFRA' | 'WEBHOOK' | 'MANUAL', required
  - `domain` string, required
  - `metric_name` string, required
  - `metric_type` 'gauge' | 'counter' | 'event' | 'categorical', required
  - `value` unknown, required
  - `unit` string
  - `recorded_at` string, date-time, required
  - `ingested_at` string, date-time, required
  - `dimensions` object
  - `semantic` PersistedSemanticSignalMetadata
    - `schema_version` '1.0', required
    - `signal_id` string, required
    - `kind` string, required
    - `detector_version` string, required
    - `observed_at` string, date-time, required
    - `confidence_basis_points` integer, required
    - `evidence_digest` string, nullable, required
    - `value_digest` string, required
    - `material` boolean, required
  - `evidence` string[]
  - `trace` object
  - `hash` string

## Response `202`

Signal envelope accepted

- ArtifactAcceptedResponse
  - `accepted` boolean, required
  - `service` string, required
  - `protocol_version` string, required
  - `artifact` 'policy_bundle' | 'signal_envelope', required
  - `artifact_id` string, required
  - `org_id` string, required
  - `received_at` string, date-time, required

## Other responses

- `400`: Structured API error
- `401`: Structured API error

---

[API](https://skmtc.dev/decionis/apis/decionis-policy-evaluation-api.md) · [All operations](https://skmtc.dev/decionis/apis/decionis-policy-evaluation-api/llms.txt) · [OpenAPI document](https://skmtc.dev/decionis/apis/decionis-policy-evaluation-api/revisions/357f5e459d0c?raw)
