# Models: N

> API models starting with N.

## `NetworkPolicy1`

Network egress policy. Optional additive field. Discriminated on `kind`.

- `kind: Literal['none', 'unrestricted']`

## `NetworkPolicy2`

Network egress policy. Optional additive field. Discriminated on `kind`.

- `kind: Literal['allowlist']`
- `hosts: list[kindgi.client.Host]`

## `NetworkPolicyUnrecognized`

A `kind` this client doesn't know yet, from a newer runtime: the object as it came, every field kept.

- `kind: str`

## `NewItem`

- `key: str`
- `pointer: str`
- `rank: int | None` (optional)
- `judged: kindgi.client.Judged | None` (optional)

## `Node`

- `id: str`
- `kind: Union[Literal['input', 'prompt', 'retrieval', 'tool-call', 'tool-result', 'model-call', 'model-output', 'artifact', 'guardrail-check', 'event', 'policy-decision', 'memory-read', 'memory-write', 'wait', 'resume'], str]`
- `timestamp: AwareDatetime`
- `actor: str | None` (optional)
- `content_hash: str | None` (`contentHash` on the wire) (optional)
- `content_ref: str | None` (`contentRef` on the wire) (optional)
- `model_version: str | None` (`modelVersion` on the wire) (optional)
- `policy_decision_id: str | None` (`policyDecisionId` on the wire) (optional)
- `attributes: dict[str, Any] | None` (optional)
