> For the complete documentation index, see [llms.txt](https://developer.collibra.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.collibra.com/api/graphql/data-access/input-types/who-abac-rule-input.md).

# WhoAbacRuleInput

Input object for creating and updating WHO ABAC rules in an access control.

```graphql
input WhoAbacRuleInput {
  id: ID
  promiseDuration: Duration
  rule: AbacComparisonExpressionInput!
  type: AccessWhoItemType!
}
```

### Fields

#### id ● [`ID`](/api/graphql/data-access/scalars/id.md) scalar <a href="#id" id="id"></a>

The optional ID of the ABAC rule to create or update. If not specified a new ID will be generated.

#### promiseDuration ● [`Duration`](/api/graphql/data-access/scalars/duration.md) scalar <a href="#promise-duration" id="promise-duration"></a>

In case `type=whoPromise`, this indicates for how long the promise will provide access when requested.

#### rule ● [`AbacComparisonExpressionInput!`](/api/graphql/data-access/input-types/abac-comparison-expression-input.md) non-null input <a href="#rule" id="rule"></a>

The actual boolean expression to define which users to match.

#### type ● [`AccessWhoItemType!`](/api/graphql/data-access/enumerations/access-who-item-type.md) non-null enum <a href="#type" id="type"></a>

Defines if the users that are matched by this ABAC rule will get the access granted directly or as a promise (pre-approval).

### Member Of

[`AccessControlInput`](/api/graphql/data-access/input-types/access-control-input.md) input ● `simulateWhoAbacRuleSummary` query ● [`UserFilterInput`](/api/graphql/data-access/input-types/user-filter-input.md) input
