org.simocracy.alias
A globally unique URL slug pointing at a gathering or sim. Written by the facilitator account so that PDS-level rkey uniqueness inside the facilitator's repo gives us a single global namespace. The rkey IS the slug — there is at most one alias record per slug across the entire platform.
A globally unique URL slug pointing at a gathering or sim. Written by the facilitator account so that PDS-level rkey uniqueness inside the facilitator's repo gives us a single global namespace. The rkey IS the slug — there is at most one alias record per slug across the entire platform.
URL-safe slug. Must equal the rkey of this record. Lowercase letters, digits, and hyphens only; no leading or trailing hyphen. Mirrored as a field so consumers that don't expose rkey can still read the slug.
Which collection the target lives in. Used by routers to decide whether the alias resolves under /events/<slug> or /sims/<slug>.
StrongRef to the gathering or sim record this slug points to.
DID of the user who claimed this slug. Must equal the DID in the target record's repo. Used for authorising release without re-fetching the target.
Timestamp when the alias was claimed.
▸ Raw lexicon JSON
{
"lexicon": 1,
"id": "org.simocracy.alias",
"defs": {
"main": {
"type": "record",
"description": "A globally unique URL slug pointing at a gathering or sim. Written by the facilitator account so that PDS-level rkey uniqueness inside the facilitator's repo gives us a single global namespace. The rkey IS the slug — there is at most one alias record per slug across the entire platform.",
"key": "any",
"record": {
"type": "object",
"required": [
"slug",
"kind",
"target",
"owner",
"createdAt"
],
"properties": {
"slug": {
"type": "string",
"minLength": 2,
"maxLength": 64,
"description": "URL-safe slug. Must equal the rkey of this record. Lowercase letters, digits, and hyphens only; no leading or trailing hyphen. Mirrored as a field so consumers that don't expose rkey can still read the slug."
},
"kind": {
"type": "string",
"knownValues": [
"gathering",
"sim"
],
"description": "Which collection the target lives in. Used by routers to decide whether the alias resolves under /events/<slug> or /sims/<slug>."
},
"target": {
"type": "ref",
"ref": "com.atproto.repo.strongRef",
"description": "StrongRef to the gathering or sim record this slug points to."
},
"owner": {
"type": "string",
"format": "did",
"description": "DID of the user who claimed this slug. Must equal the DID in the target record's repo. Used for authorising release without re-fetching the target."
},
"createdAt": {
"type": "string",
"format": "datetime",
"description": "Timestamp when the alias was claimed."
}
}
}
}
}
}