Managing members
source-coop member manages the members of an organization (ACCOUNT) or a product (ACCOUNT/PRODUCT). source-coop invitation answers the invitations that you receive. A member's name is their account ID. You cannot invite by email.
Roles, from most to least access: owners, maintainers, write_data, read_data.
- Only owners can make a member an owner, or change or revoke an owner.
- Owners and maintainers can manage the other roles.
- A product's member list shows only the product's own members. The organization's members can also use its products, and show in the organization's list.
With shell completion, TAB shows:
- For
ACCOUNTorACCOUNT/PRODUCT: your organizations and their products. - For a member: the members of that organization or product.
- For
invite: the organization's members who are not yet members of the product. - For
invitation accept,rejectandmember leave: your invitations and memberships.
With --json, these commands print the memberships as the API gives them: membership_id, account_id, membership_account_id, product_id (for a product), role, state and state_changed. invite --json prints an array of the new memberships.
create and delete are other names for invite and revoke.
List and view
source-coop member list my-org # members and open invitations
source-coop member list my-org/my-data --json # the members of a product, as JSON
source-coop member list my-org --state invited # only open invitations
source-coop member list my-org -i # move through the members full screen
source-coop member view my-org alice # one member; -i for its screen
member list and view, then --jsonmember list -i uses the same keys as product list -i. On a member's screen:
echanges the role.drevokes the membership. For an invitation,dwithdraws it, andeis not available.bopens their profile.
member list -i: open a member and change their roleInvite
source-coop member invite my-org alice bob --role maintainers
source-coop member invite my-org/my-data -A people.txt --role read_data
source-coop member invite my-org # asks who to invite, and the role
invite takes account IDs as arguments.
--accounts-file PATH(-A,-for stdin) adds one ID from each line. It skips empty lines and lines that start with#.--from-filereadsaccount_idandrolefrom a JSON object.- Each account gets its own invitation. If the API refuses one, the CLI shows the error and sends the others. Then the command fails.
- At a terminal,
inviteasks for the missing accounts and role, and then asks you to confirm. The default role isread_data. It showsownersonly if you can give that role. ← goes back one question. - If invitations fail, the CLI saves the ones not sent as a draft. The next
inviteto the same place offers them again. - If you invite a service account of the product's owner, it becomes a member at once. Its role must be
read_dataorwrite_data.
member invite with prompts, then from flags with --jsonEdit
source-coop member edit my-org alice --role owners
source-coop member edit my-org -i # select a member, then a role
Without --role, edit asks for a role, starting from the current one. You cannot change the role of an invitation. Revoke it and invite again.
member edit: pick a role, then --role with --jsonRevoke and leave
source-coop member revoke my-org alice # also withdraws an open invitation
source-coop member leave my-org # end your own membership
revoke asks you to confirm. For your own membership, you must also type the organization or product name.
leave always asks you to type the name, because only an owner or maintainer can add you again.
Without a terminal, revoke and leave need --yes.
member revoke an invitation, then member leave with the name typed wrongYour invitations
source-coop invitation list # invitations that wait for your answer
source-coop invitation list -i # open one, then accept (a) or reject (r) it
source-coop invitation accept my-org/my-data
source-coop invitation reject my-org
source-coop invitation accept -i # select an invitation
When you accept, you become a member with the role of the invitation. With --json, the command prints the membership after the change.
invitation list -i: accept one, then reject another