agency.portable.membership
A self-attested claim by an atproto account that it is linked to an identity, community, or role in an external service. Paired with a matching agency.portable.attestation record on the attester's PDS.
Details · record, key any
| Kind | record |
|---|---|
| Record key | any |
| Authority | portable.agency |
| Indexed |
Record
record · key anyProperties
DID of the attester that verified this claim.
role
stringOptional role, rank, or status within the service or community (e.g. 'admin', 'maintainer', 'fascinator').
#service
objectIdentifies an external service and, optionally, a specific community and identity within it.
Properties
community
stringOptional identifier for a specific group, server, workspace, or organization within the service (e.g. a Discord guild ID, a GitHub org slug).
identifier
stringOptional external identity within the service (e.g. a user ID or handle). Include when proving platform identity; may be omitted when only proving community or role membership.
External service identifier (e.g. 'discord', 'github', 'slack').
Similar lexicons
semantic matchLexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
agency.portable.attestation
recordAn attestation by a verifier that a subject atproto account is linked to an identity, community, or role in an external service. Paired with a matching agency.portable.membership record on the subject's PDS.
-
social.colibri.member
recordA community-side member record granting a user roles within the community. Lives on the community repo and is written when an admission is finalized.
-
Claims that an account on another service belongs to this atproto account. Only valid if the authoriser has published a matching attestation.
-
A user-owned canonical membership link, one record per Community. The record key MUST be base32(sha256(community AT-URI)) truncated to 24 characters, lowercase and unpadded, so writing it twice replaces the record instead of adding a second one and a repo can never hold two memberships for the same Community. The AppView rejects a record whose key is not that derivation, so the invariant is enforced rather than assumed. The key is derived from the AT-URI rather than the Community name, which its
-
at.mapped.member
recordA registered mapped.at member. Stored on the service account repo.