dev.knotless.shareRepo

Names the account among the collaborators of the repository's dev.knotless.repo record, as `knotless repo share --write` does: it pushes and commits through the gateway the owner delegated writes to, which must be named first, as `knotless account delegate` names it. Its owner can, logged in to this appview's web pages: the appview writes with the session it keeps for that account, which the pages' session cookie names. For an organization's repository, so can an admin who joined it, logged in to the pages or with a service token from their own PDS for this method: the appview's gateway, which the organization delegated its writes to, writes as the organization.

Details · procedure
Kindprocedure
Authorityknotless.dev
Indexed

Procedure

procedure · POST

Input

application/json

repo

requiredstring · at-uri

The repository's dev.knotless.repo record, as dev.knotless.getRepo takes it.

with

requiredstring · at-identifier

The account, by handle or DID.

write

boolean

Whether it may push, as `knotless repo share --write` lets it; false lets it only read a private repository, and open pulls and issues there, as `knotless repo share` does, taking back any push it had. True when absent.

Output

application/json

collaborators

requiredarray

The accounts that may push to it now.

itemsref

Errors

NotFound

No such repository.

InvalidRequest

There is no such account, the owner has delegated writes to no gateway, or a public repository was shared for reading, which anyone may.

AuthenticationRequired

No account is logged in to the pages, or its session has ended.

Forbidden

The account logged in is not the repository's owner.

Similar lexicons

semantic match

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

  • Takes back what was shared of a repository with an account.

  • Offers a repository to another account, or withdraws the offer.

  • Names an account among a repository's agents.

  • Creates a repository in an organization's account, through the gateway the organization delegated writes to, which makes it as the organization, as `knotless repo create` does. The caller must be an admin of it who joined. Requires a service token from the caller's PDS, audience the gateway's DID, for this method.

  • Forks a repository into the account logged in to this appview's pages.