Skip to content

Organizations

How organizations work in Tholos — team structure, membership, and blockchain configuration.

An organization is the top-level entity in Tholos. It groups users, vaults, and policies under a shared team structure.

Every Tholos user belongs to one or more organizations. An organization contains:

  • Members — users with assigned roles
  • Vaults — wallets secured by MPC key shares
  • Invitations — pending invites for new members
  • Blockchain opt-ins — which blockchain networks are enabled

Organizations are created through the Tholos Dashboard during the onboarding flow. Once created, you can manage them programmatically via the API.

Organization admins can invite new members by email and manage existing members:

Terminal window
# Invite members
curl -X POST https://api.tholos.app/organization/{orgId}/invite \
-H "Authorization: Bearer $THOLOS_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"emails": ["alice@example.com", "bob@example.com"]}'
# List members
curl https://api.tholos.app/organization/{orgId}/members \
-H "Authorization: Bearer $THOLOS_API_TOKEN"
# Remove a member
curl -X DELETE https://api.tholos.app/organization/{orgId}/member/{memberId} \
-H "Authorization: Bearer $THOLOS_API_TOKEN"

By default, organizations have access to core blockchains (Ethereum, Solana, Bitcoin, etc.). Additional chains like Cosmos ecosystem networks require explicit opt-in by an organization admin:

Terminal window
# Get current opt-ins
curl https://api.tholos.app/organization/{orgId}/blockchain-opt-in \
-H "Authorization: Bearer $THOLOS_API_TOKEN"
# Set opt-ins
curl -X PUT https://api.tholos.app/organization/{orgId}/blockchain-opt-in \
-H "Authorization: Bearer $THOLOS_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"blockchains": ["cosmos-hub", "stride", "neutron"]}'

Each member has an organization-level role that determines their base permissions:

RoleDescription
AdminFull control — manage members, roles, settings, and all vaults
UserStandard access — can participate in vaults they are added to
AuditorRead-only access — can view all vaults in the organization but cannot initiate actions

See Roles & Permissions for details on how organization roles interact with vault roles.

OperationMethodEndpoint
Update organizationPUT/organization/{id}
List membersGET/organization/{id}/members
List pending invitesGET/organization/{id}/invited-members
List vaultsGET/organization/{id}/vaults
Invite membersPOST/organization/{id}/invite
Remove inviteDELETE/organization/{id}/invite
Remove memberDELETE/organization/{id}/member/{memberId}
Update member rolePUT/organization/{id}/member/{memberId}/role
Get blockchain opt-insGET/organization/{id}/blockchain-opt-in
Set blockchain opt-insPUT/organization/{id}/blockchain-opt-in