# airdress.bootstrap.*

{/* Generated by scripts/generate-event-reference.mjs from https://schemas.airdress.co/operator/events/v1.json (operator v0.1.138).
    Do not edit by hand: run `pnpm generate:event-reference` and commit the result. */}

The events in the `airdress.bootstrap` family. How to read a section, and what
each audience means, is on the [event reference](/events/) page.

## `airdress.bootstrap.backoff`

Owner warn

Bootstrap failures from one address crossed the threshold; it is locked out. A rate limit: not on the bus.

**Audience: owner.** About the airdress as a whole. Only the owner receives it: the owner's devices and the owner's subscriptions.

**Where it goes**

- **The operator's journal**, as one log line at this level, and **the event log**, where `airdress events tail` reads it.
- **Subscriptions** that name it, within its audience.
- Not functions bound to this operator's events: it is kept off that path as too frequent or too internal. A subscription with a function target still receives it.

**Versions**

- Version 1: first carried by operator v0.1.135.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `ip` | string (ip) | yes |  |
| `locked_for_secs` | integer (uint64) | yes |  |

<details>
<summary>JSON Schema</summary>

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "Bootstrap failures from one address crossed the threshold; it is locked out. A rate limit: not on the bus.",
  "properties": {
    "ip": {
      "format": "ip",
      "type": "string"
    },
    "locked_for_secs": {
      "format": "uint64",
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "ip",
    "locked_for_secs"
  ],
  "title": "BootstrapLockedOut",
  "type": "object"
}
```

</details>

## `airdress.bootstrap.rejected`

Owner warn Functions

A bootstrap-token enrollment was refused. The token value never appears.

**Audience: owner.** About the airdress as a whole. Only the owner receives it: the owner's devices and the owner's subscriptions.

**Where it goes**

- **The operator's journal**, as one log line at this level, and **the event log**, where `airdress events tail` reads it.
- **Subscriptions** that name it, within its audience.
- **Functions bound to this operator's events** (`source: operator`).

**Versions**

- Version 1: first carried by operator v0.1.135.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `airdress` | string | yes |  |
| `attempt` | integer (uint32) | yes | Failures from this address so far. |
| `ip` | string (ip) | yes |  |

<details>
<summary>JSON Schema</summary>

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "A bootstrap-token enrollment was refused. The token value never appears.",
  "properties": {
    "airdress": {
      "type": "string"
    },
    "attempt": {
      "description": "Failures from this address so far.",
      "format": "uint32",
      "minimum": 0,
      "type": "integer"
    },
    "ip": {
      "format": "ip",
      "type": "string"
    }
  },
  "required": [
    "airdress",
    "attempt",
    "ip"
  ],
  "title": "BootstrapRejected",
  "type": "object"
}
```

</details>