{ "id": "com.atproto.server.createAccount", "defs": { "main": { "type": "procedure", "input": { "schema": { "type": "object", "required": [ "handle" ], "properties": { "did": { "type": "string", "format": "did", "description": "Pre-existing atproto DID, being imported to a new account." }, "email": { "type": "string" }, "plcOp": { "type": "unknown", "description": "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." }, "handle": { "type": "string", "format": "handle", "description": "Requested handle for the account." }, "password": { "type": "string", "description": "Initial account password. May need to meet instance-specific password strength requirements." }, "inviteCode": { "type": "string" }, "recoveryKey": { "type": "string", "description": "DID PLC rotation key (aka, recovery key) to be included in PLC creation operation." }, "verificationCode": { "type": "string" }, "verificationPhone": { "type": "string" } } }, "encoding": "application/json" }, "errors": [ { "name": "InvalidHandle" }, { "name": "InvalidPassword" }, { "name": "InvalidInviteCode" }, { "name": "HandleNotAvailable" }, { "name": "UnsupportedDomain" }, { "name": "UnresolvableDid" }, { "name": "IncompatibleDidDoc" } ], "output": { "schema": { "type": "object", "required": [ "accessJwt", "refreshJwt", "handle", "did" ], "properties": { "did": { "type": "string", "format": "did", "description": "The DID of the new account." }, "didDoc": { "type": "unknown", "description": "Complete DID document." }, "handle": { "type": "string", "format": "handle" }, "accessJwt": { "type": "string" }, "refreshJwt": { "type": "string" } }, "description": "Account login session returned on successful account creation." }, "encoding": "application/json" }, "description": "Create an account. Implemented by PDS." } }, "$type": "com.atproto.lexicon.schema", "lexicon": 1 }