# monster.attest.vouch

> Published by [attest.attest.monster](https://lexicon.garden/identity/did:plc:tqeqvx3hcgzg5uvgogwkm7lk)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:tqeqvx3hcgzg5uvgogwkm7lk/monster.attest.vouch)
- [Documentation](https://lexicon.garden/lexicon/did:plc:tqeqvx3hcgzg5uvgogwkm7lk/monster.attest.vouch/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:tqeqvx3hcgzg5uvgogwkm7lk/monster.attest.vouch/examples)

## Definitions

### `monster.attest.vouch`

**Type**: `record`

'I know this person': the author vouches for another account. Vouching costs the voucher in trust computations. Delete to retract. Mirrors sh.tangled.graph.vouch where a subject is known there. Record key: a base32 sha256 of the subject/target, so there is one per author per subject.

**Key**: `any`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `reason` | `string` | No |  |
| `subject` | `string` (did) | Yes | The account vouched for. Never the author. |
| `createdAt` | `string` (datetime) | Yes | Client-declared time of the statement. |
| `signatures` | `ref` → `app.certified.signature.defs#list` | No | Inline signatures per the ATProtocol Attestation Specification; attest requires one from the author's device key (did:key, delegated from their passkey). |

## Raw Schema

```json
{
  "id": "monster.attest.vouch",
  "defs": {
    "main": {
      "key": "any",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "subject",
          "createdAt"
        ],
        "properties": {
          "reason": {
            "type": "string",
            "maxLength": 2560,
            "maxGraphemes": 256
          },
          "subject": {
            "type": "string",
            "format": "did",
            "description": "The account vouched for. Never the author."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "Client-declared time of the statement."
          },
          "signatures": {
            "ref": "app.certified.signature.defs#list",
            "type": "ref",
            "description": "Inline signatures per the ATProtocol Attestation Specification; attest requires one from the author's device key (did:key, delegated from their passkey)."
          }
        }
      },
      "description": "'I know this person': the author vouches for another account. Vouching costs the voucher in trust computations. Delete to retract. Mirrors sh.tangled.graph.vouch where a subject is known there. Record key: a base32 sha256 of the subject/target, so there is one per author per subject."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
