# airdress.tls.*

{/* 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.tls` family. How to read a section, and what
each audience means, is on the [event reference](/events/) page.

## `airdress.tls.own_cert_issued_on_retry`

Owner info Functions

The airdress's own certificate, which failed at start, was issued by the retry and is now served.

**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.136.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `fqdn` | string | yes |  |
| `tries` | integer (uint32) | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "The airdress's own certificate, which failed at start, was issued by the retry and is now served.",
  "properties": {
    "fqdn": {
      "type": "string"
    },
    "tries": {
      "format": "uint32",
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "fqdn",
    "tries"
  ],
  "title": "OwnCertIssuedOnRetry",
  "type": "object"
}
```

</details>

## `airdress.tls.own_cert_retry_failed`

Owner warn

One more attempt to issue the airdress's own certificate failed; the placeholder is still served and the retry continues with backoff.

**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.136.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `attempt` | integer (uint32) | yes |  |
| `error` | string | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "One more attempt to issue the airdress's own certificate failed; the placeholder is still served and the retry continues with backoff.",
  "properties": {
    "attempt": {
      "format": "uint32",
      "minimum": 0,
      "type": "integer"
    },
    "error": {
      "type": "string"
    }
  },
  "required": [
    "attempt",
    "error"
  ],
  "title": "OwnCertRetryFailed",
  "type": "object"
}
```

</details>

## `airdress.tls.owner_renew_refused`

Owner info Functions

The owner asked to renew the airdress's certificate and was refused.

By policy (`reason = authz`) or because one was started recently (`reason = rate_limited`, with `retry_after_secs`). The owner's OIDC subject is in the journal line and kept out of the recorded data.

**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.136.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `fqdn` | string | yes |  |
| `reason` | string | yes |  |
| `retry_after_secs` | integer or null | no |  |
| `rotate` | boolean | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "The owner asked to renew the airdress's certificate and was refused.\n\nBy policy (`reason = authz`) or because one was started recently (`reason = rate_limited`, with `retry_after_secs`). The owner's OIDC subject is in the journal line and kept out of the recorded data.",
  "properties": {
    "fqdn": {
      "type": "string"
    },
    "reason": {
      "type": "string"
    },
    "retry_after_secs": {
      "format": "uint64",
      "minimum": 0,
      "type": [
        "integer",
        "null"
      ]
    },
    "rotate": {
      "type": "boolean"
    }
  },
  "required": [
    "fqdn",
    "reason",
    "rotate"
  ],
  "title": "TlsOwnerRenewRefused",
  "type": "object"
}
```

</details>

## `airdress.tls.owner_renew_requested`

Owner info Functions

The owner started a renewal of the airdress's certificate. The owner's OIDC subject is in the journal line and kept out of the recorded data.

**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.136.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `fqdn` | string | yes |  |
| `job_id` | string (uuid) | yes |  |
| `rotate` | boolean | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "The owner started a renewal of the airdress's certificate. The owner's OIDC subject is in the journal line and kept out of the recorded data.",
  "properties": {
    "fqdn": {
      "type": "string"
    },
    "job_id": {
      "format": "uuid",
      "type": "string"
    },
    "rotate": {
      "type": "boolean"
    }
  },
  "required": [
    "fqdn",
    "job_id",
    "rotate"
  ],
  "title": "TlsOwnerRenewRequested",
  "type": "object"
}
```

</details>

## `airdress.tls.renew_failed`

Owner warn Functions

A certificate renewal job failed; the certificate in service is unchanged.

**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.136.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `error` | string | yes |  |
| `fqdn` | string | yes |  |
| `job_id` | string (uuid) | yes |  |
| `rotate` | boolean | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "A certificate renewal job failed; the certificate in service is unchanged.",
  "properties": {
    "error": {
      "type": "string"
    },
    "fqdn": {
      "type": "string"
    },
    "job_id": {
      "format": "uuid",
      "type": "string"
    },
    "rotate": {
      "type": "boolean"
    }
  },
  "required": [
    "error",
    "fqdn",
    "job_id",
    "rotate"
  ],
  "title": "TlsRenewFailed",
  "type": "object"
}
```

</details>

## `airdress.tls.renew_started`

Owner info Functions

A certificate renewal job started, from the host's admin door (`via = host`) or the owner's (`via = owner`).

**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.136.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `fqdn` | string | yes |  |
| `job_id` | string (uuid) | yes |  |
| `rotate` | boolean | yes |  |
| `via` | string | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "A certificate renewal job started, from the host's admin door (`via = host`) or the owner's (`via = owner`).",
  "properties": {
    "fqdn": {
      "type": "string"
    },
    "job_id": {
      "format": "uuid",
      "type": "string"
    },
    "rotate": {
      "type": "boolean"
    },
    "via": {
      "type": "string"
    }
  },
  "required": [
    "fqdn",
    "job_id",
    "rotate",
    "via"
  ],
  "title": "TlsRenewStarted",
  "type": "object"
}
```

</details>

## `airdress.tls.renew_succeeded`

Owner info Functions

A certificate renewal job finished: the new certificate is served.

**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.136.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `fqdn` | string | yes |  |
| `job_id` | string (uuid) | yes |  |
| `rotate` | boolean | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "A certificate renewal job finished: the new certificate is served.",
  "properties": {
    "fqdn": {
      "type": "string"
    },
    "job_id": {
      "format": "uuid",
      "type": "string"
    },
    "rotate": {
      "type": "boolean"
    }
  },
  "required": [
    "fqdn",
    "job_id",
    "rotate"
  ],
  "title": "TlsRenewSucceeded",
  "type": "object"
}
```

</details>