app.certified.badge.definition
Defines a badge that can be awarded via badge award records to users, projects, or activity claims.
Details · record, key tid
| Kind | record |
|---|---|
| Record key | tid |
| Authority | badge.certified.app |
| Indexed |
Checks
Valid Lint pass{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Defines a badge that can be awarded via badge award records to users, projects, or activity claims.",
"key": "tid",
"record": {
"properties": {
"allowedIssuers": {
"description": "Optional allowlist of DIDs allowed to issue this badge. If omitted, anyone may issue it.",
"items": {
"ref": "app.certified.defs#did",
"type": "ref"
},
"maxLength": 100,
"type": "array"
},
"badgeType": {
"description": "Category of the badge. Values beyond the known set are permitted.",
"knownValues": [
"endorsement",
"verification",
"participation",
"certification",
"affiliation",
"recognition"
],
"maxLength": 100,
"type": "string"
},
"createdAt": {
"description": "Client-declared timestamp when this record was originally created",
"format": "datetime",
"type": "string"
},
"description": {
"description": "Optional short statement describing what the badge represents.",
"maxGraphemes": 500,
"maxLength": 5000,
"type": "string"
},
"icon": {
"accept": [
"image/png",
"image/jpeg",
"image/webp",
"image/svg+xml"
],
"description": "Icon representing the badge, stored as a blob for compact visual display.",
"maxSize": 1048576,
"type": "blob"
},
"signatures": {
"description": "Optional cryptographic signatures attesting to this record's content.",
"ref": "app.certified.signature.defs#list",
"type": "ref"
},
"title": {
"description": "Human-readable title of the badge.",
"maxLength": 256,
"type": "string"
}
},
"required": [
"title",
"badgeType",
"createdAt"
],
"type": "object"
},
"type": "record"
}
},
"id": "app.certified.badge.definition",
"lexicon": 1
}