at.locale.membership

locale.at

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "key": "tid",
      "record": {
        "properties": {
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "locales": {
            "description": "Locale scope. Omitted = all target locales.",
            "items": {
              "maxLength": 35,
              "minLength": 2,
              "type": "string"
            },
            "maxLength": 1000,
            "type": "array"
          },
          "member": {
            "description": "DID the role is granted to.",
            "format": "did",
            "type": "string"
          },
          "project": {
            "format": "at-uri",
            "type": "string"
          },
          "role": {
            "knownValues": [
              "admin",
              "reviewer",
              "translator",
              "viewer"
            ],
            "type": "string"
          }
        },
        "required": [
          "project",
          "member",
          "role",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "description": "Grants a role to a DID on a project, optionally scoped to specific locales. Authored ONLY by the project owner (or an admin); the ingester rejects memberships authored by anyone else.",
  "id": "at.locale.membership",
  "lexicon": 1
}

Validate Record

Validate a record against at.locale.membership

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:uwynodlfvaieqcisgh5zvdwx
CID
bafyreibcoztani5tcirn3mmzdzfn7mspia7qcvi4iigwwn67nlqn2egtw4
Indexed At
2026-06-24 00:19 UTC
AT-URI
at://did:plc:uwynodlfvaieqcisgh5zvdwx/com.atproto.lexicon.schema/at.locale.membership

Version History (2 versions)

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Grants a member their roles. Written by the group authority; the record key is the member's DID.

  • Grants a DID a role on a space. Only honored when authored by the space owner. Lives in the owner's repo.

  • dk.raakode.lab.groups.membership recordnot from the namespace authority

    A member's role in the group. Written by the group authority into its repo in the space, never held as app database state — this is what makes a role survive the group changing app. The simplespace member list governs…

  • An accepted team member grant, authored by the domain owner. Stored in the owner's repository.

  • A membership grant for a wiki. The rkey is a TID. The member's DID lives in the record body.

Lexicon Garden

@