fyi.opensocial.importAccount

Start moving an account that already exists on the network, on any server, here to become a group: check the account's proof that it hands its DID to this host, make it here switched off with new keys, and copy its whole repo and its files from its server. Answers with the credentials the account's PLC operation should name; once its server has signed one, completeImport finishes the move. The caller becomes the group's admin. Only a did:plc account, and never the caller's own. Starting again for an account the caller started on discards what the first start copied.

Details · procedure
Kindprocedure
Authorityopensocial.fyi
Indexed

Procedure

procedure · POST

Input

application/json

address

string

The label of its address on this host; by default its handle's first label.

  • maxLength: 253

serviceJwt

requiredstring

A service token from the account's own server (com.atproto.server.getServiceAuth), with this host's DID as aud and com.atproto.server.createAccount as lxm.

  • maxLength: 8192

Output

application/json

address

requiredstring

Its address here: one label under this host's handle domain.

blobs

requiredinteger

Files copied.

did

requiredstring · did

displayName

requiredstring

handle

requiredstring · handle

Its handle once moved: its own domain if it has one that still names it, otherwise its address.

recommendedCreds

requiredunknown

rotationKeys, alsoKnownAs, verificationMethods and services, as com.atproto.identity.getRecommendedDidCredentials answers: what the account's server signs into its PLC operation (com.atproto.identity.signPlcOperation).

records

requiredinteger

Records copied.

Errors

NotAllowed

No description in schema.

InvalidToken

No description in schema.

NotPlc

No description in schema.

SameAccount

No description in schema.

AlreadyHere

No description in schema.

InvalidHandle

No description in schema.

HandleNotAvailable

No description in schema.

InvalidRepo

No description in schema.

UpstreamFailure

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.

  • Start moving the account the caller signed in to move (getAccountMove) here, to become a group they run: the host asks its server for its token for this host, copies it as importAccount does, brings its spaces as importAccountSpace takes them, and asks its server to email the code that lets its identity move (finishAccountMove). Started again, it starts over.

  • Finish moving an account here: send the PLC operation its old server signed, which must give it to this host as importAccount said, switch it on and tell the network, and make the group's spaces with the caller as its admin. Only for whoever started the move.

  • What moving an account here would make of it, before anything moves (importAccount moves it so): its handle here, whether that's the one it has, and its address, this host's own name for it. A handle on a domain of the account's own that still names it comes along; one its old server gives out becomes the address. `refused` says why it can't have that address, as importAccount would. While the caller's own move of it is pending, `recommendedCreds` says again what the operation should name, as im

  • Source host: sign and submit the PLC operation repointing the group's DID document at the destination, and relinquish the group. Requires group.configure.

  • On the destination host: take the group in. Pulls it from the host it's leaving with migratePrepare's token (its public repo, what the host it leaves keeps of each space as its authority and the group's repo there, its files), checked against the group's current key, and keeps it switched off. The caller must hold group.configure by the group's own records as they arrive. Answers with what the PLC operation should name.