---
title: "Unit"
description: "what every unit carries, whatever its type"
section: concepts
address: /concepts/unit
contract: 0476e35e6e275db5
---

# Unit

what every unit carries, whatever its type

[figure: Unit is a value at none scope. The drawing shows its fields and the objects that they point at.]

| property | value |
|---|---|
| kind | value |
| scope | none |
| key | every unit carries these |
| store | none |
| family | kernel |



## Fields


| field | type | required | note |
|---|---|---|---|
| `id` | `id` | yes | opaque, ordered by time, given once by the kernel; never made from an attribute |
| `kind` | [Kind](/concepts/kind) | yes | a registered kind; an unregistered kind cannot be named in code |
| `key` | `text` | no | for a kind that is the same by construction, made from the input; two units of one kind never share one |
| `scope` | [Scope](/concepts/scope) | yes | never widens; a unit made from others lives at the narrowest |
| `made_at` | `time` | yes | set once |
| `made_by` | [Caller](/concepts/caller) | yes | the caller with the run |
| `trace` | `id` | yes | the run that made or moved it, set on every flow |



## Routes that use it
- [`/v1/read/unit`](/reference/read/unit) returns it
