Skip to content

6.13.2.29 OrganizationPredefinedRoleEnum

6.13.2.29.1 Purpose

The predefined roles of every Organization, each with a stable key that systems use instead of the role's name, and the explicit list of capabilities it holds. Organization roles carry the key; a capability enters a role only by a decision, never because a system published it.

Owner and Sync Client are system roles: Owner belongs to the Organization's owner alone, Sync Client to the service account of a farm sync client, and no operation changes either. Technician, Veterinarian and Advisor hold no admin capability, so they are the roles a farm can delegate.

6.13.2.29.2 Values

Value Description
owner Owner, priority 1000. A system role: held only by the Person of Organization.owner, and never changed through an operation.
Capabilities: moochat.moochat.access, farm.animals.read, farm.animals.update, farm.animal_groups.read, farm.animal_groups.manage_members, access.organization_delegations.manage, access.organization.update, access.members.read, access.members.manage, farm.ownerships.transfer, farm.animal_records.read, farm.animal_events.record, farm.animal_diagnoses.record, farm.official_submissions.submit, farm.animal_groups.manage, farm.sources.manage, farm.ingestion.read, access.cooperative_constraints.read, access.cooperative_constraints.manage, farm.animal_records.edit_own, farm.data_issues.read, farm.sync_clients.read, farm.sync_clients.manage, farm.models.use, access.webhooks.manage, farm.farm_configurations.manage, grant.checks.run, grant.documents.manage, moochat.connectors.manage, access.groups.read, access.groups.manage, access.organization.close, access.cooperative_links.manage, farm.erasure_requests.request, grant.call_actions.manage, access.cooperative_members.read.
Every capability of OrganizationRoleCapabilityEnum a Person may hold; never farm.sync_runs.write.
manager Manager, priority 900. The capabilities of Owner except access.organization.close; transferring the ownership stays the owner's.
technician Technician, priority 500, the operator of the farm and the Field technician of a delegation.
Capabilities: farm.animals.read, farm.animals.update, farm.animal_groups.read, farm.animal_groups.manage_members, farm.animal_records.read, farm.animal_records.edit_own, farm.animal_events.record, farm.data_issues.read, farm.ingestion.read, farm.sync_clients.read, farm.models.use, moochat.moochat.access, access.cooperative_constraints.read.
Can be delegated.
veterinarian Veterinarian, priority 400.
Capabilities: farm.animals.read, farm.animal_groups.read, farm.animal_records.read, farm.animal_diagnoses.record, farm.models.use, moochat.moochat.access.
Can be delegated.
advisor Advisor, read only, priority 300.
Capabilities: farm.animals.read, farm.animal_groups.read, farm.animal_records.read, farm.data_issues.read, farm.models.use, moochat.moochat.access.
Can be delegated; the usual role a farm gives its cooperative.
sync_client Sync Client, priority 10. A system role: given only to the ServiceAccount a farm sync client becomes at enrolment (SyncClient), never to a Person, a group, a join link or a delegation, and never changed through an operation.
Capabilities: farm.sync_runs.write, farm.sync_clients.read.
The farm system finds it by this key, never by its name.
analyst Analyst, read only, priority 200: the role of an Insurer, for the farm data delegated to it.
Capabilities: farm.animals.read, farm.animal_groups.read, farm.animal_records.read, farm.models.use, moochat.moochat.access.
Can be delegated, to an Insurer only.

6.13.2.29.3 Relationships

Used by

6.13.2.29.4 Rules & constraints