Condition Sharing
Condition Sharing creates record-sharing rules that are independent from a single role's normal data policy.
Use it when records should be shared to selected organizations, departments, members, or roles only when configured conditions match.
Open Condition Sharing
Click Condition Sharing from the role page's left area.
The modal lists the existing condition sharing rules. New sits next to the modal title, and every rule row can be edited or deleted.
Before You Create A Rule
- The shared form must already exist; the condition fields and the variable sources are read from it
- To share through a variable, the shared form needs a member, department, or organization field, or a relation field (
search,multi_search,foreign_key) that points to a form with such a field - Condition sharing adds to the role's data policies; it never removes the access granted elsewhere
Rule Fields
| Field | Description |
|---|---|
| Rule Name | Name of the sharing rule |
| Shared Form | Form whose records are shared |
| Shared To | Fixed subjects (member, department, organization, role) or variables resolved from the record |
| Permission Expiration Time | Optional expiration time. Empty means never expires |
| Permissions When Condition Matches | View, edit, or delete permissions granted by the rule |
| Condition | Field-based condition that must match before sharing takes effect |
The rule list shows the form, the sharing targets, the granted permissions, the condition, and the expiration time of each rule. When edit or delete is selected, view permission is added to the rule automatically.
Conditions
Choose the shared form first, then configure conditions from that form's fields.
If the shared form has no configurable condition fields, the condition editor shows an empty state.
A rule without a configured condition matches every record of the shared form. Configure conditions when only part of the records should be shared.
Shared Targets
Targets are selected from the subject picker, which offers fixed subjects and variables grouped by source.
| Target | Description |
|---|---|
| Member, department, organization, role | The rule always shares to those fixed subjects while it is active |
| Variable | The rule shares to the subjects resolved from each record, so different records can share to different recipients |
Variables
A variable combines a source field of the shared form with a profile field, and resolves to a member, department, or organization:
| Variable source | How to configure it | Example |
|---|---|---|
| Record field → profile field | Pick a member, department, or organization field on the shared form, then pick a member, department, or organization field on the matching profile form | The shared form has an Applicant member field and the member profile has a Department field: the rule shares to the department recorded on the applicant |
| Related record field | Pick a relation field (search, multi_search, foreign_key) of the shared form, then pick a member, department, or organization field on the record it points to | The shared form points to a customer record that carries an Owner member field: the rule shares to that owner |
Variables are resolved when the rule is evaluated, so keep the source field filled in: when the field is empty, or when the referenced record no longer exists, the variable resolves to nothing and that record is not shared through it. Variable options are grouped by member, department, organization, and related form fields.
Verify A Rule
- Create the rule, save it, and check that it appears in the rule list with the expected form, targets, permissions, and expiration time
- Create or edit a record that matches the condition
- Open the target member's account and try to open that record
- Or use Permission Query on the role page: select the subject and the record, and the result lists the matching reason, for example
Matched condition sharing rule "<rule>" for target "<target>" with allow
Troubleshooting
| Symptom | What to check |
|---|---|
| The rule has no effect | The rule must be saved; also check the expiration time, whether the record matches the configured condition, and that the shared form is the one holding the records |
| No variable can be selected | The shared form must contain a member, department, or organization field; a related record field requires a relation field pointing to a form that has such a field |
| A variable never resolves | The source field of the record is empty, or the record the field points to was deleted; those records are not shared through the variable |
| The permission result shows a different reason | Condition sharing only adds access: a role data policy, a default subject permission, or the space administrator role can already allow the action |
| Edit and delete also require view | Selecting edit or delete adds view to the rule automatically; that is expected |
| A deleted rule still grants access | Check whether another rule, a role data policy, or the default subject permission grants the same action |
Targets can be organizations, departments, members, or roles.
Use role targets when the sharing audience is defined by role membership rather than a fixed organization structure.