social.colibri.beta.community.adopt
Adopts an existing account as a community: this AppView takes custody of its credentials, creates the four community spaces on whichever PDS already hosts it, and seeds the same starter layout social.colibri.beta.community.create does. The account keeps its own DID, handle and PDS, and the caller becomes its owner. Use this instead of community.create to bring your own DID.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | community.beta.colibri.social |
| Indexed |
Showing version bafyreic42qpxubjlobsijb4tathtz5n5wrfxunpztsuhbzx5rkweqdiswq. Show the latest
Procedure
procedure · POSTInput
application/jsondescription
stringThe community's description.
maxLength: 256
The account to adopt. The credentials must authenticate as this exact DID, which is what proves the caller controls it.
The identifier used to authenticate with the account's PDS, such as its handle or DID.
The community's name.
minLength: 1maxLength: 32
The account's password. An app password is not enough: minting a delegation token requires full access.
requiresApprovalToJoin
booleanWhether joining produces an application a moderator must approve. Defaults to false.
Output
application/jsonThe adopted community.
Errors
AuthRequired
The request is missing, malformed, or unverifiable service auth.
InvalidRequest
The arguments are inconsistent or malformed beyond schema validation.
AlreadyExists
This account is already a community on this AppView.
CredentialsRejected
The PDS refused the given identifier and password.
IdentityMismatch
The credentials authenticate a different account than the DID given.
SpacesUnsupported
The account's PDS does not implement com.atproto.simplespace, so it cannot host community spaces.
UpstreamFailure
A PDS or third-party call the AppView depends on failed.
Similar lexicons
semantic matchLexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
Creates a community, bootstrapping its DID repo with a default category, channel, owner role, and member record.
-
Starts a sign-in as a community host account. The requesting user opens the returned URL, signs in as that account on its own server and allows the AppView to act for it. The AppView then adopts the account as a new community, or reconnects an existing community after its sign-in lapsed or its account moved. Poll getHostAuthorization with the returned request to learn the outcome.
-
social.colibri.beta.community.create
procedureProvisions a new community: an account on the AppView's PDS, its four spaces, an owner role, and a starter layout of two categories holding one text channel and one voice channel between them. This call runs long enough that progress is also emitted over social.colibri.beta.sync.subscribeEvents.
-
Hands the AppView credentials for a community hosted elsewhere, so it can administer a community it did not create. The password is stored encrypted at rest.
-
social.colibri.beta.community.join
procedureAdmits the requesting user to a community. Joining is an AppView procedure rather than a record the user writes, because admission is what makes the community's spaces readable to them.