# `Condukt.Sandbox.NetworkPolicy.Request`
[🔗](https://github.com/tuist/condukt/blob/1.5.1/lib/condukt/sandbox/network_policy/request.ex#L1)

A single outbound network request observed by the sandbox egress layer.

Requests are emitted by `Condukt.Sandbox.NetworkPolicy`-capable sandboxes
(today, `Condukt.Sandbox.Kubernetes` via the `condukt-egress` sidecar) and
surfaced through telemetry on the BEAM side. See
`Condukt.Sandbox.NetworkPolicy` for the event taxonomy.

Method, path, request headers, request body sha256/preview, response
status, response headers, response body sha256/preview, and byte counts
are populated by the sidecar after MITM TLS termination. Fields the
sidecar could not derive (e.g. for cleartext or pre-handshake events)
remain `nil`.

Bodies and headers may be partially redacted by the sidecar according to
the `Condukt.Sandbox.NetworkPolicy` redaction patterns.

# `from_json`

Decodes a request from the NDJSON wire format emitted by `condukt-egress`.

Unknown keys are ignored so the protocol can evolve forward-compatibly.
Required fields: `id`, `host`, `port`, `started_at`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
