net.atpix.gallery.collectionRule

lexicon.atpix.net

{
  "id": "net.atpix.gallery.collectionRule",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "name",
          "targetScope",
          "createdAt"
        ],
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 200,
            "description": "dc:title — human-readable rule name."
          },
          "active": {
            "type": "boolean",
            "default": true,
            "description": "ATPix — inactive rules are ignored by listFeedPhotos."
          },
          "hashtags": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 64
            },
            "maxLength": 50,
            "description": "dc:subject — normalized hashtags (no #); matched against photo.keywords."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "dc:date · schema:dateCreated — RFC 3339 UTC."
          },
          "modifiedAt": {
            "type": "string",
            "format": "datetime",
            "description": "schema:dateModified — RFC 3339 UTC."
          },
          "description": {
            "type": "string",
            "maxLength": 2000,
            "description": "dc:description — optional explanation."
          },
          "targetScope": {
            "ref": "net.atpix.gallery.defs#targetScope",
            "type": "ref",
            "description": "ATPix — gallery (social feed) or album (membership seeding)."
          },
          "followedActors": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "did"
            },
            "maxLength": 500,
            "description": "schema:follows (conceptual) — explicit DID allow-list; unioned with follow graph when useFollowGraph is true."
          },
          "targetAlbumUri": {
            "type": "string",
            "format": "at-uri",
            "description": "ATPix — required when targetScope is album; target album AT URI."
          },
          "useFollowGraph": {
            "type": "boolean",
            "default": false,
            "description": "ATPix — when true, resolve actors via app.bsky.graph.getFollows."
          },
          "includeOwnPhotos": {
            "type": "boolean",
            "default": true,
            "description": "ATPix — include photos authored by the rule owner."
          }
        }
      },
      "description": "Declares social sources (follow graph, explicit DIDs, hashtags) for gallery feed or album population."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "description": "Rule for sourcing photos from followed actors and/or hashtags into gallery feed or albums."
}

Validate Record

Validate a record against net.atpix.gallery.collectionRule

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:x4crpdfko2d7xrcd5eovpwex
CID
bafyreiffgoisaqcxb7p7dkrqgcb6ge7sdrd2wct4t4vyxs7r4z27q2hwn4
Indexed At
2026-07-25 20:26 UTC
AT-URI
at://did:plc:x4crpdfko2d7xrcd5eovpwex/com.atproto.lexicon.schema/net.atpix.gallery.collectionRule

Referenced Schemas (1)

Lexicon Garden

@