# me.byjp.pebble-index.recording

> Published by [byjp.me](https://lexicon.garden/identity/did:plc:ephkzpinhaqcabtkugtbzrwu)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:ephkzpinhaqcabtkugtbzrwu/me.byjp.pebble-index.recording)
- [Documentation](https://lexicon.garden/lexicon/did:plc:ephkzpinhaqcabtkugtbzrwu/me.byjp.pebble-index.recording/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:ephkzpinhaqcabtkugtbzrwu/me.byjp.pebble-index.recording/examples)

## Definitions

### `me.byjp.pebble-index.recording`

**Type**: `record`

A voice recording captured by Pebble Index: the audio as a blob plus its transcript. Blob access control is at the record layer, so the audio is only reachable by parties with access to the space.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `audio` | `blob` | Yes | The recorded audio, AAC in an MP4 container. |
| `client` | `string` | No | The capture device or app that produced the recording (e.g. "ring"). |
| `trigger` | `string` | No | The device gesture that started the recording, when known. |
| `createdAt` | `string` (datetime) | No | When this record was created, if different from recordedAt. |
| `durationMs` | `integer` | No | Recording length in milliseconds. |
| `recordedAt` | `string` (datetime) | Yes |  |
| `transcript` | `string` | No |  |
| `recordingId` | `string` | No | The capturing app's identifier for the recording, when known. |

## Raw Schema

```json
{
  "id": "me.byjp.pebble-index.recording",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "audio",
          "recordedAt"
        ],
        "properties": {
          "audio": {
            "type": "blob",
            "accept": [
              "audio/mp4"
            ],
            "maxSize": 104857600,
            "description": "The recorded audio, AAC in an MP4 container."
          },
          "client": {
            "type": "string",
            "description": "The capture device or app that produced the recording (e.g. \"ring\")."
          },
          "trigger": {
            "type": "string",
            "description": "The device gesture that started the recording, when known.",
            "knownValues": [
              "single-click-hold",
              "double-click-hold"
            ]
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "When this record was created, if different from recordedAt."
          },
          "durationMs": {
            "type": "integer",
            "minimum": 0,
            "description": "Recording length in milliseconds."
          },
          "recordedAt": {
            "type": "string",
            "format": "datetime"
          },
          "transcript": {
            "type": "string",
            "maxGraphemes": 100000
          },
          "recordingId": {
            "type": "string",
            "maxLength": 512,
            "description": "The capturing app's identifier for the recording, when known."
          }
        }
      },
      "description": "A voice recording captured by Pebble Index: the audio as a blob plus its transcript. Blob access control is at the record layer, so the audio is only reachable by parties with access to the space."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
