An access code is a code used for a keypad or pinpad device. Unlike physical keys, which can easily be lost or duplicated, PIN codes can be customized, tracked, and altered on the fly. Using the Seam Access Code API, you can easily generate access codes on the hundreds of door lock models with which we integrate.
Seam supports programming two types of access codes: ongoing and time-bound. To differentiate between the two, refer to the type property of the access code. Ongoing codes display as ongoing, whereas time-bound codes are labeled time_bound. An ongoing access code is active, until it has been removed from the device. To specify an ongoing access code, leave both starts_at and ends_at empty. A time-bound access code will be programmed at the starts_at time and removed at the ends_at time.
In addition, for certain devices, Seam also supports offline access codes. Offline access (PIN) codes are designed for door locks that might not always maintain an internet connection. For this type of access code, the device manufacturer uses encryption keys (tokens) to create server-based registries of algorithmically-generated offline PIN codes. Because the tokens remain synchronized with the managed devices, the locks do not require an active internet connection—and you do not need to be near the locks—to create an offline access code. Then, owners or managers can share these offline codes with users through a variety of mechanisms, such as messaging applications. That is, lock users do not need to install a smartphone application to receive an offline access code.
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
empty_backup_access_code_pool
is_device_errorBoolean
Indicates that the error is a device error.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
august_lock_not_authorized
Indicates that the user is not authorized to use the August lock.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
august_lock_not_authorized
is_device_errorBoolean
Indicates that the error is a device error.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
august_lock_missing_bridge
Indicates that the lock is not connected to a bridge.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
august_lock_missing_bridge
is_device_errorBoolean
Indicates that the error is a device error.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
ttlock_lock_not_paired_to_gateway
Indicates that the lock is not paired with a gateway.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
ttlock_lock_not_paired_to_gateway
is_device_errorBoolean
Indicates that the error is a device error.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
missing_device_credentials
Indicates that device credentials are missing.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
missing_device_credentials
is_device_errorBoolean
Indicates that the error is a device error.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
auxiliary_heat_running
Indicates that the auxiliary heat is running.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
auxiliary_heat_running
is_device_errorBoolean
Indicates that the error is a device error.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
subscription_required
Indicates that a subscription is required to connect.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
subscription_required
is_device_errorBoolean
Indicates that the error is a device error.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
lockly_missing_wifi_bridge
Indicates that the Lockly lock is not connected to a Wi-Fi bridge.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
lockly_missing_wifi_bridge
is_device_errorBoolean
Indicates that the error is a device error.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
invalid_credentials
Indicates that the credentials provided were invalid.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
invalid_credentials
is_bridge_errorBoolean
Indicates whether the error is related to Seam Bridge.
is_connected_account_errorBoolean
Indicates whether the error is related specifically to the connected account.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
bridge_disconnected
Indicates that the Seam API cannot communicate with Seam Bridge, for example, if the Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. See also Troubleshooting Your Access Control System.
created_atDatetime
Date and time at which Seam created the error.
error_codeEnum
Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
Enum values:
bridge_disconnected
is_bridge_errorBoolean
Indicates whether the error is related to Seam Bridge.
is_connected_account_errorBoolean
Indicates whether the error is related specifically to the connected account.
messageString
Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
is_backupBoolean
Indicates whether the access code is a backup code.
is_backup_access_code_availableBoolean
Indicates whether a backup access code is available for use if the primary access code is lost or compromised.
is_external_modification_allowedBoolean
Indicates whether changes to the access code from external sources are permitted.
is_managedBoolean
Indicates whether Seam manages the access code.
is_offline_access_codeBoolean
Indicates whether the access code is intended for use in offline scenarios. If true, this code can be created on a device without a network connection.
is_one_time_useBoolean
Indicates whether the access code can only be used once. If true, the code becomes invalid after the first use.
is_scheduled_on_deviceBoolean
Indicates whether the code is set on the device according to a preconfigured schedule.
is_waiting_for_code_assignmentBoolean
Indicates whether the access code is waiting for a code assignment.
nameString
Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. Note that the name provided on Seam is used to identify the code on Seam and is not necessarily the name that will appear in the lock provider's app or on the device. This is because lock providers may have constraints on names, such as length, uniqueness, or characters that can be used. In addition, some lock providers may break down names into components such as first_name and last_name. To provide a consistent experience, Seam identifies the code on Seam by its name but may modify the name that appears on the lock provider's app or on the device. For example, Seam may add additional characters or truncate the name to meet provider constraints. To help your users identify codes set by Seam, Seam provides the name exactly as it appears on the lock provider's app or on the device as a separate property called appearance. This is an object with a name property and, optionally, first_name and last_name properties (for providers that break down a name into components).
pulled_backup_access_code_idUUID
Identifier of the pulled backup access code. Used to associate the pulled backup access code with the original access code.
starts_atDatetime
Date and time at which the time-bound access code becomes active.
statusEnum
Current status of the access code within the operational lifecycle. Values are setting, a transitional phase that indicates that the code is being configured or activated; set, which indicates that the code is active and operational; unset, which indicates a deactivated or unused state, either before activation or after deliberate deactivation; removing, which indicates a transitional period in which the code is being deleted or made inactive; and unknown, which indicates an indeterminate state, due to reasons such as system errors or incomplete data, that highlights a potential need for system review or troubleshooting. See also Lifecycle of Access Codes.
Enum values
setting
set
unset
removing
unknown
typeEnum
Type of the access code. ongoing access codes are active continuously until deactivated manually. time_bound access codes have a specific duration.
Igloohome bridge has too many pending jobs in the queue.
igloohome_bridge_offline
Igloohome bridge is offline.
hubitat_no_free_positions_available
No free positions available on the device.
hubitat_device_programming_delay
Access code has not yet been fully moved to the device.
failed_to_set_on_device
Failed to set code on device.
failed_to_remove_from_device
Failed to remove code from device.
duplicate_code_on_device
Duplicate access code detected on device.
duplicate_code_attempt_prevented
An attempt to modify this access code was prevented.
dormakaba_oracode_no_valid_user_level
No valid user level for Oracode.
code_modified_external_to_seam
Code was modified or removed externally after Seam successfully set it on the device.
august_lock_temporarily_offline
August lock is temporarily offline.
august_lock_missing_keypad
August lock is missing a keypad.
august_lock_invalid_code_length
Invalid code length for August lock.
august_device_slots_full
All access code slots on the device are full.
august_device_programming_delay
Access code has not yet been fully moved to the device.
account_disconnected
Indicates that the account is disconnected.
august_lock_missing_bridge
Indicates that the lock is not connected to a bridge.
august_lock_not_authorized
Indicates that the user is not authorized to use the August lock.
bridge_disconnected
Indicates that the Seam API cannot communicate with Seam Bridge, for example, if the Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. See also Troubleshooting Your Access Control System.
Enables you to report access code-related constraints for a device. Currently, supports reporting supported code length constraints for SmartThings devices.