# community.gifthood.interest

> Published by [gifthood.community](https://lexicon.garden/identity/did:plc:7prvtl4j6wsfmkrfrnwknuxj)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:7prvtl4j6wsfmkrfrnwknuxj/community.gifthood.interest)
- [Documentation](https://lexicon.garden/lexicon/did:plc:7prvtl4j6wsfmkrfrnwknuxj/community.gifthood.interest/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:7prvtl4j6wsfmkrfrnwknuxj/community.gifthood.interest/examples)

## Definitions

### `community.gifthood.interest`

**Type**: `record`

A public expression of interest in a listing. Coordination of pickup happens off-app via direct message.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `langs` | `array` | No | Language(s) the message is written in, as BCP-47 language tags. Author-asserted; clients default from the composer's locale. |
| `facets` | `array` | No | Annotations over `message` (mentions, links) keyed by UTF-8 byte range. Reuses app.bsky.richtext.facet for atmosphere-wide interop. Author-asserted at compose time; clients MUST treat them as display hints, re-validate ranges, and never trust a facet URI over the visible text. Addresses and phone numbers are deliberately NOT faceted here — those affordances are direct-message-only. |
| `message` | `string` | No | Optional short public note (e.g. 'still available?'). Pickup details belong in direct messages, not here. |
| `subject` | `ref` → `com.atproto.repo.strongRef` | Yes | Strong reference (URI + CID) to the listing this interest refers to. |
| `createdAt` | `string` (datetime) | Yes |  |

## Raw Schema

```json
{
  "id": "community.gifthood.interest",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "subject",
          "createdAt"
        ],
        "properties": {
          "langs": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "language"
            },
            "maxLength": 3,
            "description": "Language(s) the message is written in, as BCP-47 language tags. Author-asserted; clients default from the composer's locale."
          },
          "facets": {
            "type": "array",
            "items": {
              "ref": "app.bsky.richtext.facet",
              "type": "ref"
            },
            "description": "Annotations over `message` (mentions, links) keyed by UTF-8 byte range. Reuses app.bsky.richtext.facet for atmosphere-wide interop. Author-asserted at compose time; clients MUST treat them as display hints, re-validate ranges, and never trust a facet URI over the visible text. Addresses and phone numbers are deliberately NOT faceted here — those affordances are direct-message-only."
          },
          "message": {
            "type": "string",
            "maxLength": 600,
            "description": "Optional short public note (e.g. 'still available?'). Pickup details belong in direct messages, not here.",
            "maxGraphemes": 300
          },
          "subject": {
            "ref": "com.atproto.repo.strongRef",
            "type": "ref",
            "description": "Strong reference (URI + CID) to the listing this interest refers to."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime"
          }
        }
      },
      "description": "A public expression of interest in a listing. Coordination of pickup happens off-app via direct message."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
