Understanding Code Constraints
Learn about manufacturer- and device-specific constraints on codes.
Last updated
Was this helpful?
Learn about manufacturer- and device-specific constraints on codes.
Last updated
Was this helpful?
When creating access codes, it is important to be aware of any constraints on the code
. and review its device.properties.code_constraints
. Seam represents each constraint as an object with a constraint_type
property. Depending on the constraint type, there may also be additional properties. Note that some constraints are manufacturer- or device-specific.
The constraint_type
property can be any of the following enum values:
no_zeros
Cannot use 0
s as digits in the PIN code.
cannot_start_with_12
PIN code cannot start with the sequence of digits 12
.
no_triple_consecutive_ints
No more than three digits in a row can be consecutive or the same in the PIN code.
cannot_specify_pin_code
Cannot specify a PIN code. You must leave the code empty, and the lock provider generates a PIN code.
pin_code_matches_existing_set
If you specify a PIN code, it must match an existing set of PIN codes used in the account.
For example, the PIN code could match the code assigned to a user in the system.
start_date_in_future
For time-bound codes, the start date must be in the future.
no_ascending_or_descending_sequence
PIN code cannot consist of a sequence of consecutive digits.
at_least_three_unique_digits
PIN code must contain at least three unique digits.
cannot_contain_089
PIN code cannot contain the digits 0
, 8
, or 9
.
For example, this restriction could apply to a cylinder lock that only includes the digits 1
to 7
.
cannot_contain_0789
PIN code cannot contain the digits 0
, 7
, 8
, or 9
.
For example, this restriction could apply to a cylinder lock that only includes the digits 1
to 6
.
name_length
Name of the code has some restrictions on length.
When the constraint_type
is name_length
, the constraint object has one or two additional properties called min_length
and max_length
to specify the length constraints.
name_must_be_unique
Name of the code must be unique within the device.