support.supper.commerce.listListings

supper.support

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "commissionView": {
      "properties": {
        "accessAudience": {
          "knownValues": [
            "everyone",
            "monthly-supporters"
          ],
          "maxLength": 32,
          "type": "string"
        },
        "archived": {
          "type": "boolean"
        },
        "cid": {
          "description": "CID of the exact commission record generation returned in this view.",
          "format": "cid",
          "type": "string"
        },
        "createdAt": {
          "format": "datetime",
          "type": "string"
        },
        "creator": {
          "description": "Author repo DID; commissions are creator-owned.",
          "format": "did",
          "type": "string"
        },
        "indexedAt": {
          "description": "When the AppView indexed this record.",
          "format": "datetime",
          "type": "string"
        },
        "kind": {
          "knownValues": [
            "digital",
            "physical",
            "service"
          ],
          "maxLength": 32,
          "type": "string"
        },
        "product": {
          "description": "Canonical money.atmosphere.product strongRef. Resolve title, description, image, currency, and prices through this record.",
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        },
        "publishAt": {
          "format": "datetime",
          "type": "string"
        },
        "slotLimit": {
          "description": "Public per-commission open-request cap hint. NOT scarce-inventory truth; the AppView never enforces availability.",
          "minimum": 0,
          "type": "integer"
        },
        "uri": {
          "description": "AT URI of the indexed support.supper.commission record.",
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri",
        "cid",
        "creator",
        "product",
        "archived",
        "indexedAt"
      ],
      "type": "object"
    },
    "main": {
      "description": "List a creator's public Supper commerce records across repos: support.supper.membership.program programs, support.supper.membership.tier sidecars, and support.supper.commission offers. Only records authored by the named creator's own repo (creatorVerified) are returned. Public read; membership outputs carry their portable ATM program or tier identity and Supper presentation fields, while catalog product and price data resolve through those ATM records. Outputs never carry processor ids, member lists, or private inventory counts.",
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "cursor": {
              "maxLength": 4096,
              "type": "string"
            },
            "listings": {
              "items": {
                "closed": false,
                "refs": [
                  "#membershipView",
                  "#tierView",
                  "#commissionView"
                ],
                "type": "union"
              },
              "type": "array"
            }
          },
          "required": [
            "listings"
          ],
          "type": "object"
        }
      },
      "parameters": {
        "properties": {
          "creator": {
            "description": "DID of the creator whose public commerce records to list.",
            "format": "did",
            "type": "string"
          },
          "cursor": {
            "description": "Opaque cursor from a previous response.",
            "maxLength": 4096,
            "type": "string"
          },
          "includeArchived": {
            "default": false,
            "description": "When true, include archived listings. Defaults to false.",
            "type": "boolean"
          },
          "kind": {
            "description": "Optional filter restricting results to a single listing kind.",
            "knownValues": [
              "membership",
              "tier",
              "commission"
            ],
            "maxLength": 32,
            "type": "string"
          },
          "limit": {
            "default": 50,
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "creator"
        ],
        "type": "params"
      },
      "type": "query"
    },
    "membershipView": {
      "properties": {
        "archived": {
          "type": "boolean"
        },
        "cid": {
          "description": "CID of the exact membership record generation returned in this view.",
          "format": "cid",
          "type": "string"
        },
        "createdAt": {
          "format": "datetime",
          "type": "string"
        },
        "creator": {
          "format": "did",
          "type": "string"
        },
        "indexedAt": {
          "description": "When the AppView indexed this record.",
          "format": "datetime",
          "type": "string"
        },
        "mode": {
          "knownValues": [
            "monthly-tips",
            "tiers",
            "off"
          ],
          "maxLength": 32,
          "type": "string"
        },
        "program": {
          "description": "App-neutral money.atmosphere.membership.program strongRef from the creator's repo.",
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        },
        "uri": {
          "description": "AT URI of the indexed support.supper.membership.program record.",
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri",
        "cid",
        "creator",
        "program",
        "archived",
        "indexedAt"
      ],
      "type": "object"
    },
    "tierView": {
      "properties": {
        "archived": {
          "type": "boolean"
        },
        "badgeLabel": {
          "description": "Public badge label only. Badge ownership is verified from active recurring payment state, not by this display field.",
          "maxGraphemes": 80,
          "maxLength": 800,
          "type": "string"
        },
        "cid": {
          "description": "CID of the exact membership-tier record generation returned in this view.",
          "format": "cid",
          "type": "string"
        },
        "createdAt": {
          "format": "datetime",
          "type": "string"
        },
        "creator": {
          "format": "did",
          "type": "string"
        },
        "indexedAt": {
          "description": "When the AppView indexed this record.",
          "format": "datetime",
          "type": "string"
        },
        "membership": {
          "description": "The parent support.supper.membership.program record.",
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        },
        "membershipTier": {
          "description": "App-neutral money.atmosphere.membership.tier strongRef from the creator's repo.",
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        },
        "uri": {
          "description": "AT URI of the indexed support.supper.membership.tier record.",
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri",
        "cid",
        "creator",
        "membership",
        "membershipTier",
        "archived",
        "indexedAt"
      ],
      "type": "object"
    }
  },
  "id": "support.supper.commerce.listListings",
  "lexicon": 1
}

Validate Record

Validate a record against support.supper.commerce.listListings

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:mcsqdltevtjpu26xthzzmm2l
CID
bafyreieqei2jedcrgdzrs7z7ycpmq3hwuflrb5sl5cw5223j6tfsggalvq
Indexed At
2026-09-17 17:23 UTC
AT-URI
at://did:plc:mcsqdltevtjpu26xthzzmm2l/com.atproto.lexicon.schema/support.supper.commerce.listListings

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • support.supper.entitlements.listEntitlements querynot from the namespace authority

    List creator-owned support.supper.entitlement anchors, optionally filtered by kind. The creator convenience field is derived from the author repo; legacy records whose copied creator field names a different DID are excl…

  • Public, creator-owned Supper commission workflow sidecar. Canonical title, description, image, currency, and base price resolve through the required money.atmosphere.product strongRef and its money.atmosphere.price reco…

  • Get a creator's verified cross-repo support feed: support.supper.feed.post records authored on every supporter repo whose recipient is the named creator, newest first. Every returned post carries a payment strongRef ver…

Lexicon Garden

@