# ProcessTokenTotals

A run's token usage, totalled into five kinds. Each total adds up the run's recorded token counts of the types named below.

**Kind:** an object, used in responses.

## Fields

Every field is present in a response; empty ones are `null`.

| Field | Type | Description |
|---|---|---|
| `input` | `integer` | Fresh (non-cached) input tokens: type `input`. |
| `output` | `integer` | Output tokens: type `output`. |
| `cacheRead` | `integer` | Input tokens served from the provider's cache: type `cache_read`. |
| `cacheWrite` | `integer` | Input tokens written to the provider's cache: types `cache_creation`, `cache_creation_5m` and `cache_creation_1h`. |
| `reasoning` | `integer` | Reasoning tokens: type `reasoning` (part of output, on providers that report it). |

## Example

```json
{
  "input": 0,
  "output": 0,
  "cacheRead": 0,
  "cacheWrite": 0,
  "reasoning": 0
}
```

## Where it's used

- Inside [`ProcessSummary`](https://docs.maitento.com/reference/types/process-summary.md)
