at.atpcraft.player.skin

One skin record per player per server. The skin URL is required; an optional blob CID may be preferred by consumers. The record must carry at least one server endorsement. The record key is the server's signing key id.

Repository @atpcraft.at did:plc:6y74tzb6iqeuzuqqxgkizrek namespace authority
Details · record, key any
Kindrecord
Record keyany
Authorityplayer.atpcraft.at
Indexed
cid bafyreihaiurkzqi5veeeam6isgt7py6rzclwrzukm4twgpzmleebn33iim

Checks

Valid Lint pass
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "One skin record per player per server. The skin URL is required; an optional blob CID may be preferred by consumers. The record must carry at least one server endorsement. The record key is the server's signing key id.",
      "key": "any",
      "record": {
        "properties": {
          "capeCid": {
            "description": "Optional CID of the cape blob in the player's repo.",
            "maxLength": 128,
            "type": "string"
          },
          "capeUrl": {
            "description": "Optional public URL of the player's cape PNG.",
            "format": "uri",
            "maxLength": 2048,
            "type": "string"
          },
          "endorsements": {
            "description": "Server signatures over the canonical skin payload.",
            "items": {
              "ref": "at.atpcraft.player.defs#endorsement",
              "type": "ref"
            },
            "maxLength": 64,
            "minLength": 1,
            "type": "array"
          },
          "model": {
            "description": "Minecraft skin model type.",
            "knownValues": [
              "default",
              "slim"
            ],
            "maxLength": 32,
            "type": "string"
          },
          "skinCid": {
            "description": "Optional CID of the skin blob in the player's repo.",
            "maxLength": 128,
            "type": "string"
          },
          "skinUrl": {
            "description": "Public URL of the player's skin PNG.",
            "format": "uri",
            "maxLength": 2048,
            "type": "string"
          },
          "timestamp": {
            "description": "Record update time.",
            "format": "datetime",
            "maxLength": 64,
            "type": "string"
          }
        },
        "required": [
          "skinUrl",
          "timestamp",
          "endorsements"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "description": "Server-endorsed player skin and cape references for ATPcraft. Each record is signed by the ATPcraft server that wrote it so other servers can verify the skin.",
  "id": "at.atpcraft.player.skin",
  "lexicon": 1
}