# airdress.member_authorization.*

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

## `airdress.member_authorization.asserted`

The person it concerns info

This operator vouched to the hub for a member who signed in.

**Audience: the person it concerns.** About one person on the airdress. It reaches only that person: their own devices and subscriptions they made themselves. The owner's subscriptions never receive another person's events.

**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: functions act for the owner, and this event is about someone else.

**Versions**

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

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `kid` | string | yes | The assertion key's kid, a public identifier. |
| `principal_id` | string (uuid) | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "This operator vouched to the hub for a member who signed in.",
  "properties": {
    "kid": {
      "description": "The assertion key's kid, a public identifier.",
      "type": "string"
    },
    "principal_id": {
      "format": "uuid",
      "type": "string"
    }
  },
  "required": [
    "kid",
    "principal_id"
  ],
  "title": "MemberAuthorizationAsserted",
  "type": "object"
}
```

</details>

## `airdress.member_authorization.enabled`

Owner info Functions

Members of this airdress can sign in through this operator at `path`.

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

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `path` | string | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "Members of this airdress can sign in through this operator at `path`.",
  "properties": {
    "path": {
      "type": "string"
    }
  },
  "required": [
    "path"
  ],
  "title": "MemberAuthorizationEnabled",
  "type": "object"
}
```

</details>

## `airdress.member_authorization.not_a_member`

Owner info

A sign-in for the hub matched no active sub-user. It names nobody, and anybody with a hub account can cause one, so it stays off 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.138.

**Data**

It carries no fields.

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "A sign-in for the hub matched no active sub-user. It names nobody, and anybody with a hub account can cause one, so it stays off the bus.",
  "title": "MemberAuthorizationNotAMember",
  "type": "object"
}
```

</details>

## `airdress.member_authorization.request_refused`

Owner warn

A member sign-in request was refused before it reached the login: `reason` says why. Anybody can cause one, so it stays off 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.138.

**Data**

| Field | Type | Required | Description |
| ----- | ---- | -------- | ----------- |
| `reason` | string | yes |  |

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

```json
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "A member sign-in request was refused before it reached the login: `reason` says why. Anybody can cause one, so it stays off the bus.",
  "properties": {
    "reason": {
      "type": "string"
    }
  },
  "required": [
    "reason"
  ],
  "title": "MemberAuthorizationRequestRefused",
  "type": "object"
}
```

</details>