com.atproto.server.createAccount

Create an account. Implemented by PDS.

Details · procedure
Kindprocedure
Authorityserver.atproto.com
Indexed

Procedure

procedure · POST

Input

application/json

did

string · did

Pre-existing atproto DID, being imported to a new account.

email

string

handle

requiredstring · handle

Requested handle for the account.

password

string

Initial account password. May need to meet instance-specific password strength requirements.

plcOp

unknown

A signed DID PLC operation to be submitted as part of importing an existing account to this instance. NOTE: this optional field may be updated when full account migration is implemented.

DID PLC rotation key (aka, recovery key) to be included in PLC creation operation.

Output

application/json

accessJwt

requiredstring

did

requiredstring · did

The DID of the new account.

didDoc

unknown

Complete DID document.

handle

requiredstring · handle

refreshJwt

requiredstring

Errors

InvalidHandle

No description in schema.

InvalidPassword

No description in schema.

InvalidInviteCode

No description in schema.

HandleNotAvailable

No description in schema.

UnsupportedDomain

No description in schema.

UnresolvableDid

No description in schema.

IncompatibleDidDoc

No description in schema.

Similar lexicons

semantic match

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

  • ai.newnal.pdn.server.createAttestedAccount

    procedure not from the namespace authority

    Create an account on behalf of a client attested by a trusted issuer. Authenticated with a service-auth JWT (iss = trusted issuer DID, aud = this PDN, lxm = this method, exp - iat <= 60 s, unique jti). No invite code, no captcha. Without handle the server generates a memorable one; without email the server stores the placeholder <label>@newnal.id. Returns a full session, like createAccount; clients that need a scoped session create a scoped app password with it.

  • Register a new account on the Coves instance. Creates account on PDS and indexes in AppView.

  • Issue an account on any configured domain, including operator-only and permanent ones, optionally on somebody else's behalf. Bypasses the quota. Operators only.

  • Mint an ephemeral account owned by the calling account. The account is deleted and its identity retired when it expires.

  • Provision a brand-new stewarded PDS account. The caller authenticates via serviceAuth (aud = arbiter-server DID, lxm = town.muni.arbiter.createArbiter). The server creates a new account on the configured default PDS using an invite code + random password, stores the credentials, and writes the service + recovery records from the new account's session. No policy is written: the arbiter stays offline (fail-closed) until the recovery admin installs the first policy via `town.muni.arbiter.resetPoli