Community Types
Open Communities
Section titled “Open Communities”The default type. Anyone with an AT Protocol account can join immediately.
POST /api/v1/communities/:did/members/join{ "userDid": "did:plc:abc123" }→ 201 { "status": "joined", ... }Admin-Approved Communities
Section titled “Admin-Approved Communities”Join requests go to a pending queue. Admins review and approve or reject them.
POST /api/v1/communities/:did/members/join{ "userDid": "did:plc:abc123" }→ 202 { "status": "pending", ... }Managing Pending Requests
Section titled “Managing Pending Requests”GET /api/v1/communities/:did/members/pending?adminDid=did:plc:admin{ "pendingMembers": [ { "userDid": "did:plc:abc", "handle": "alice.bsky.social", "avatar": "...", "requestedAt": "..." } ]}Approve:
POST /api/v1/communities/:did/members/approve{ "adminDid": "did:plc:admin", "memberDid": "did:plc:abc" }Reject:
POST /api/v1/communities/:did/members/reject{ "adminDid": "did:plc:admin", "memberDid": "did:plc:abc", "reason": "Not a fit" }Private Communities (Coming Soon)
Section titled “Private Communities (Coming Soon)”Private communities will support invite-only membership where admins send direct invitations.
Setting Community Type
Section titled “Setting Community Type”PUT /communities/:did/profile{ "displayName": "My Community", "type": "admin-approved" }Valid types: open, admin-approved, private.