Skip to content
OpenAppPhysical access, simplified
Login

No repeating holds

Type
hold_forbid_recurring
Category
Holds
Enforced at
Authoring-time
Tiers
OrgIntegrationDevice
Enforcement
Enforce
Default
Not configured — repeating holds are allowed for anyone with set-hold.

Forbids calendar-scheduled (weekly / repeating) holds for bound principals. One-shot temporary holds remain allowed unless another hold policy forbids them.

When it is enforced

Evaluated when someone creates or updates an invitation, hold, or share. Requests that would exceed the limit are rejected — they are not silently rewritten.

Where to set it

Settings → Policies (org), the integration Policies tab, or — on PalGate — the device steward Policies tab.

Policies never grant access. See thepolicies architecture guidefor how org, integration, and device tiers combine.

Arguments

The config object on create/update. Shared row fieldsenforcement (enforce, require_approval,audit_only) and enabled apply to every type;audit_only and disabled rows never block.

NameTypeRequiredValuesDescription
applies_tostring or string[]No
agentapi_keyinvitationmemberresidentadminall
Principal kinds this row binds. Closed set: agent, api_key, invitation, member, resident, admin, all. Unknown strings and empty arrays are rejected. `all` matches every kind. When omitted, the type-specific default applies (see Default). Device-tier rows without `applies_to` often bind everyone, including admins. Default: Org/integration: member and resident. Device-tier without applies_to: everyone, including admins.
outputstring or integerNoOptional channel or output id. When set, the policy binds only that output. When omitted, it binds every output of the tier target. A scoped row does not apply when the acting output is unknown.

How overlapping rows combine

Boolean OR across applicable enforcing rows (any forbid wins).

Example

A member can hold a light on until tonight, but cannot schedule “every weekday 08:00–18:00”.

config
{}

Integrations

This type is documented on these connectors: