---
title: "WorkBase"
description: "what every unit of work carries beyond the unit"
section: concepts
address: /concepts/workbase
contract: 0476e35e6e275db5
---

# WorkBase

what every unit of work carries beyond the unit

[figure: WorkBase 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 | carried by every unit of work |
| store | none |
| family | kernel |



## Fields


| field | type | required | note |
|---|---|---|---|
| `place` | `text` | yes | exactly one of the kind's places |
| `entered_place_at` | `time` | yes |  |
| `due_at` | `time` | no | its deadline |
| `held_reason` | `text` | no | required whenever it waits |
| `input_key` | `text` | yes | its idempotency key, so the same input is the same work |
| `attempts` | [Attempt](/concepts/attempt) | yes | each with the class of its failure |
| `cost` | [Cost](/concepts/cost) | yes |  |



## Routes that use it
No route takes or returns WorkBase directly. The record holds it, and the objects that point at it reach it.
