Organizations¶
Create organizations and manage members.
Org
dataclass
¶
An organization identity.
OrgMember
dataclass
¶
OrgMember(member_did: str, role: str, capabilities: list[str], issuer_did: str, attestation_rid: str, revoked: bool, expires_at: str | None)
OrgService
¶
Resource service for organization operations.
create
¶
create(label: str, repo_path: str | None = None, passphrase: str | None = None) -> Org
Create a new organization identity.
Parameters:
-
label(str) –Human-readable name for the org.
-
repo_path(str | None, default:None) –Override identity store path.
-
passphrase(str | None, default:None) –Override passphrase.
Returns:
-
Org–Org with the KERI prefix, DID, and label.
Raises:
-
OrgError–If organization creation fails.
-
KeychainError–If the keychain is locked or inaccessible.
Examples:
add_member
¶
add_member(org_did: str, member_did: str, role: str = 'member', capabilities: list[str] | None = None, note: str | None = None, repo_path: str | None = None, passphrase: str | None = None, member_public_key_hex: str | None = None) -> OrgMember
Add a member to an organization.
Parameters:
-
org_did(str) –The organization's DID (
did:keri:...). -
member_did(str) –The member's DID to add.
-
role(str, default:'member') –One of
"admin","member","readonly". -
capabilities(list[str] | None, default:None) –Explicit capability list. If None, uses role defaults.
-
note(str | None, default:None) –Optional human-readable note for the attestation.
-
member_public_key_hex(str | None, default:None) –Member's Ed25519 public key hex. Required when the member's identity is in a different registry.
Returns:
-
OrgMember–OrgMember with the membership attestation details.
Raises:
-
OrgError–If the member cannot be added.
Examples:
revoke_member
¶
revoke_member(org_did: str, member_did: str, note: str | None = None, repo_path: str | None = None, passphrase: str | None = None, member_public_key_hex: str | None = None) -> OrgMember
Revoke a member's authorization.
Parameters:
-
org_did(str) –The organization's DID.
-
member_did(str) –The member's DID to revoke.
-
note(str | None, default:None) –Optional human-readable note.
-
member_public_key_hex(str | None, default:None) –Member's Ed25519 public key hex. Required when the member's identity is in a different registry.
Returns:
-
OrgMember–OrgMember with revoked status.
Raises:
-
OrgError–If the member cannot be revoked.
Examples:
update_member
¶
update_member(org_did: str, member_did: str, role: str | None = None, capabilities: list[str] | None = None, note: str | None = None, repo_path: str | None = None, passphrase: str | None = None, member_public_key_hex: str | None = None) -> OrgMember
Update a member's role or capabilities.
Parameters:
-
org_did(str) –The organization's DID.
-
member_did(str) –The member's DID to update.
-
role(str | None, default:None) –New role. If None, keeps current.
-
capabilities(list[str] | None, default:None) –New capabilities. If None, uses role defaults.
-
note(str | None, default:None) –Optional note.
-
member_public_key_hex(str | None, default:None) –Member's Ed25519 public key hex. Required when the member's identity is in a different registry.
Returns:
-
OrgMember–OrgMember with the updated role and capabilities.
Raises:
-
OrgError–If the member cannot be updated.
Examples:
list_members
¶
list_members(org_did: str, include_revoked: bool = False, repo_path: str | None = None) -> list[OrgMember]