# support.supper.membership.tier

> Published by [supper.support](https://lexicon.garden/identity/did:plc:mcsqdltevtjpu26xthzzmm2l)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:mcsqdltevtjpu26xthzzmm2l/support.supper.membership.tier)
- [Documentation](https://lexicon.garden/lexicon/did:plc:mcsqdltevtjpu26xthzzmm2l/support.supper.membership.tier/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:mcsqdltevtjpu26xthzzmm2l/support.supper.membership.tier/examples)

## Definitions

### `support.supper.membership.tier#badge`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `accentColor` | `string` | No | Optional #RRGGBB color used to present the badge in Supper. |
| `image` | `ref` → `#image` | No | Optional public badge image. |
| `label` | `string` | No | Public label displayed for this tier-specific badge. |

### `support.supper.membership.tier#image`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `alt` | `string` | No | Alternative text for the tier or badge image. |
| `blob` | `blob` | No | Portable tier or badge image stored on the creator's PDS. |
| `uri` | `string` (uri) | No | Optional Supper CDN rendering fallback for clients that cannot resolve the PDS blob. |

### `support.supper.membership.tier`

**Type**: `record`

A public Supper membership tier sidecar. It links Supper-specific image, badge, and permissioned-content presentation to the app-neutral ATM membership tier, which owns benefits, display order, and access rank and points to the canonical Product for title, description, images, and price resolution. Private welcome messages and member lists stay off public records; member-only content may be written as permissioned PDS records when supported.

**Key**: `any`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `archived` | `boolean` | No | Whether this tier is no longer available for new supporters. |
| `badge` | `ref` → `#badge` | No | Optional public badge presentation for members of this tier. Badge ownership is verified from active recurring payment state, not by this display object alone. |
| `contentCollections` | `array` | No | Permissioned record collections this tier space currently supports, for cross-app discovery. |
| `createdAt` | `string` (datetime) | Yes | When this public tier record was created. |
| `image` | `ref` → `#image` | No | Optional public tier image. |
| `membership` | `ref` → `com.atproto.repo.strongRef` | Yes | The parent support.supper.membership.program record. |
| `membershipTier` | `ref` → `com.atproto.repo.strongRef` | Yes | The app-neutral money.atmosphere.membership.tier record this Supper sidecar presents. Resolve benefits and access hierarchy there, then follow tier.product for canonical title, description, images, and recurring prices. |
| `updatedAt` | `string` (datetime) | No | When this public tier record was last updated. |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "badge": {
      "properties": {
        "accentColor": {
          "description": "Optional #RRGGBB color used to present the badge in Supper.",
          "maxLength": 7,
          "type": "string"
        },
        "image": {
          "description": "Optional public badge image.",
          "ref": "#image",
          "type": "ref"
        },
        "label": {
          "description": "Public label displayed for this tier-specific badge.",
          "maxGraphemes": 80,
          "maxLength": 800,
          "type": "string"
        }
      },
      "type": "object"
    },
    "image": {
      "properties": {
        "alt": {
          "description": "Alternative text for the tier or badge image.",
          "maxGraphemes": 300,
          "maxLength": 3000,
          "type": "string"
        },
        "blob": {
          "accept": [
            "image/jpeg",
            "image/png",
            "image/webp",
            "image/gif"
          ],
          "description": "Portable tier or badge image stored on the creator's PDS.",
          "maxSize": 4194304,
          "type": "blob"
        },
        "uri": {
          "description": "Optional Supper CDN rendering fallback for clients that cannot resolve the PDS blob.",
          "format": "uri",
          "type": "string"
        }
      },
      "type": "object"
    },
    "main": {
      "description": "A public Supper membership tier sidecar. It links Supper-specific image, badge, and permissioned-content presentation to the app-neutral ATM membership tier, which owns benefits, display order, and access rank and points to the canonical Product for title, description, images, and price resolution. Private welcome messages and member lists stay off public records; member-only content may be written as permissioned PDS records when supported.",
      "key": "any",
      "record": {
        "properties": {
          "archived": {
            "description": "Whether this tier is no longer available for new supporters.",
            "type": "boolean"
          },
          "badge": {
            "description": "Optional public badge presentation for members of this tier. Badge ownership is verified from active recurring payment state, not by this display object alone.",
            "ref": "#badge",
            "type": "ref"
          },
          "contentCollections": {
            "description": "Permissioned record collections this tier space currently supports, for cross-app discovery.",
            "items": {
              "format": "nsid",
              "type": "string"
            },
            "maxLength": 16,
            "type": "array"
          },
          "createdAt": {
            "description": "When this public tier record was created.",
            "format": "datetime",
            "type": "string"
          },
          "image": {
            "description": "Optional public tier image.",
            "ref": "#image",
            "type": "ref"
          },
          "membership": {
            "description": "The parent support.supper.membership.program record.",
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          },
          "membershipTier": {
            "description": "The app-neutral money.atmosphere.membership.tier record this Supper sidecar presents. Resolve benefits and access hierarchy there, then follow tier.product for canonical title, description, images, and recurring prices.",
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          },
          "updatedAt": {
            "description": "When this public tier record was last updated.",
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "membership",
          "membershipTier",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "support.supper.membership.tier",
  "lexicon": 1
}
```
