Constructors

Properties

client: AxiosInstance
defaults: Required<SeamHttpRequestOptions>
ltsVersion: "1.0.0" = seamApiLtsVersion
ltsVersion: string = seamApiLtsVersion

Accessors

Methods

  • Parameters

    • Optionalparameters: {
          allow_external_modification?: boolean;
          attempt_for_offline_device?: boolean;
          code?: string;
          common_code_key?: string;
          device_id: string;
          ends_at?: string;
          is_external_modification_allowed?: boolean;
          is_offline_access_code?: boolean;
          is_one_time_use?: boolean;
          max_time_rounding?:
              | "1hour"
              | "1day"
              | "1h"
              | "1d";
          name?: string;
          prefer_native_scheduling?: boolean;
          preferred_code_length?: number;
          starts_at?: string;
          sync?: boolean;
          use_backup_access_code_pool?: boolean;
          use_offline_access_code?: boolean;
      }
      • Optionalallow_external_modification?: boolean

        Indicates whether external modification of the code is allowed. Default: false.

      • Optionalattempt_for_offline_device?: boolean
      • Optionalcode?: string

        Code to be used for access.

      • Optionalcommon_code_key?: string

        Key to identify access codes that should have the same code. Any two access codes with the same common_code_key are guaranteed to have the same code. See also Creating and Updating Multiple Linked Access Codes.

      • device_id: string

        ID of the device for which you want to create the new access code.

      • Optionalends_at?: string

        Date and time at which the validity of the new access code ends, in ISO 8601 format. Must be a time in the future and after starts_at.

      • Optionalis_external_modification_allowed?: boolean

        Indicates whether external modification of the code is allowed. Default: false.

      • Optionalis_offline_access_code?: boolean

        Indicates whether the access code is an offline access code.

      • Optionalis_one_time_use?: boolean

        Indicates whether the offline access code is a single-use access code.

      • Optionalmax_time_rounding?:
            | "1hour"
            | "1day"
            | "1h"
            | "1d"

        Maximum rounding adjustment. To create a daily-bound offline access code for devices that support this feature, set this parameter to 1d.

      • Optionalname?: string

        Name of the new 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).

      • Optionalprefer_native_scheduling?: boolean

        Indicates whether native scheduling should be used for time-bound codes when supported by the provider. Default: true.

      • Optionalpreferred_code_length?: number

        Preferred code length. Only applicable if you do not specify a code. If the affected device does not support the preferred code length, Seam reverts to using the shortest supported code length.

      • Optionalstarts_at?: string

        Date and time at which the validity of the new access code starts, in ISO 8601 format.

      • Optionalsync?: boolean
      • Optionaluse_backup_access_code_pool?: boolean

        Indicates whether to use a backup access code pool provided by Seam. If true, you can use /access_codes/pull_backup_access_code.

      • Optionaluse_offline_access_code?: boolean
    • options: AccessCodesCreateOptions = {}

    Returns AccessCodesCreateRequest

  • Parameters

    • Optionalparameters: {
          allow_external_modification?: boolean;
          attempt_for_offline_device?: boolean;
          behavior_when_code_cannot_be_shared?: "throw" | "create_random_code";
          code?: string;
          device_ids: string[];
          ends_at?: string;
          is_external_modification_allowed?: boolean;
          is_offline_access_code?: boolean;
          is_one_time_use?: boolean;
          max_time_rounding?:
              | "1hour"
              | "1day"
              | "1h"
              | "1d";
          name?: string;
          prefer_native_scheduling?: boolean;
          preferred_code_length?: number;
          starts_at?: string;
          use_backup_access_code_pool?: boolean;
          use_offline_access_code?: boolean;
      }
      • Optionalallow_external_modification?: boolean

        Indicates whether external modification of the code is allowed. Default: false.

      • Optionalattempt_for_offline_device?: boolean
      • Optionalbehavior_when_code_cannot_be_shared?: "throw" | "create_random_code"

        Desired behavior if any device cannot share a code. If throw (default), no access codes will be created if any device cannot share a code. If create_random_code, a random code will be created on devices that cannot share a code.

      • Optionalcode?: string

        Code to be used for access.

      • device_ids: string[]

        IDs of the devices for which you want to create the new access codes.

      • Optionalends_at?: string

        Date and time at which the validity of the new access code ends, in ISO 8601 format. Must be a time in the future and after starts_at.

      • Optionalis_external_modification_allowed?: boolean

        Indicates whether external modification of the code is allowed. Default: false.

      • Optionalis_offline_access_code?: boolean

        Indicates whether the access code is an offline access code.

      • Optionalis_one_time_use?: boolean

        Indicates whether the offline access code is a single-use access code.

      • Optionalmax_time_rounding?:
            | "1hour"
            | "1day"
            | "1h"
            | "1d"

        Maximum rounding adjustment. To create a daily-bound offline access code for devices that support this feature, set this parameter to 1d.

      • Optionalname?: string

        Name of the new 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).

      • Optionalprefer_native_scheduling?: boolean

        Indicates whether native scheduling should be used for time-bound codes when supported by the provider. Default: true.

      • Optionalpreferred_code_length?: number

        Preferred code length. Only applicable if you do not specify a code. If the affected device does not support the preferred code length, Seam reverts to using the shortest supported code length.

      • Optionalstarts_at?: string

        Date and time at which the validity of the new access code starts, in ISO 8601 format.

      • Optionaluse_backup_access_code_pool?: boolean

        Indicates whether to use a backup access code pool provided by Seam. If true, you can use /access_codes/pull_backup_access_code.

      • Optionaluse_offline_access_code?: boolean
    • options: AccessCodesCreateMultipleOptions = {}

    Returns AccessCodesCreateMultipleRequest

  • Parameters

    • Optionalparameters: {
          access_code_id: string;
          device_id?: string;
          sync?: boolean;
      }
      • access_code_id: string

        ID of the access code that you want to delete.

      • Optionaldevice_id?: string

        ID of the device for which you want to delete the access code.

      • Optionalsync?: boolean
    • options: AccessCodesDeleteOptions = {}

    Returns AccessCodesDeleteRequest

  • Parameters

    • Optionalparameters: {
          access_code_id?: string;
          code?: string;
          device_id?: string;
      }
      • Optionalaccess_code_id?: string

        ID of the access code that you want to get. You must specify either access_code_id or both device_id and code.

      • Optionalcode?: string

        Code of the access code that you want to get. You must specify either access_code_id or both device_id and code.

      • Optionaldevice_id?: string

        ID of the device containing the access code that you want to get. You must specify either access_code_id or both device_id and code.

    • options: AccessCodesGetOptions = {}

    Returns AccessCodesGetRequest

  • Parameters

    • Optionalparameters: {
          access_code_ids?: string[];
          customer_ids?: string[];
          device_id?: string;
          limit?: number;
          page_cursor?: null | string;
          user_identifier_key?: string;
      }
      • Optionalaccess_code_ids?: string[]

        IDs of the access codes that you want to retrieve. Specify either device_id or access_code_ids.

      • Optionalcustomer_ids?: string[]
      • Optionaldevice_id?: string

        ID of the device for which you want to list access codes. Specify either device_id or access_code_ids.

      • Optionallimit?: number

        Numerical limit on the number of access codes to return.

      • Optionalpage_cursor?: null | string

        Identifies the specific page of results to return, obtained from the previous page's next_page_cursor.

      • Optionaluser_identifier_key?: string

        Your user ID for the user by which to filter access codes.

    • options: AccessCodesListOptions = {}

    Returns AccessCodesListRequest

  • Parameters

    • Optionalparameters: {
          device_id: string;
          max_code_length?: number;
          min_code_length?: number;
          supported_code_lengths?: number[];
      }
      • device_id: string

        ID of the device for which you want to report constraints.

      • Optionalmax_code_length?: number

        Maximum supported code length as an integer between 4 and 20, inclusive. You can specify either min_code_length/max_code_length or supported_code_lengths.

      • Optionalmin_code_length?: number

        Minimum supported code length as an integer between 4 and 20, inclusive. You can specify either min_code_length/max_code_length or supported_code_lengths.

      • Optionalsupported_code_lengths?: number[]

        Array of supported code lengths as integers between 4 and 20, inclusive. You can specify either supported_code_lengths or min_code_length/max_code_length.

    • options: AccessCodesReportDeviceConstraintsOptions = {}

    Returns AccessCodesReportDeviceConstraintsRequest

  • Parameters

    • Optionalparameters: {
          access_code_id: string;
          allow_external_modification?: boolean;
          attempt_for_offline_device?: boolean;
          code?: string;
          device_id?: string;
          ends_at?: string;
          is_external_modification_allowed?: boolean;
          is_managed?: boolean;
          is_offline_access_code?: boolean;
          is_one_time_use?: boolean;
          max_time_rounding?:
              | "1hour"
              | "1day"
              | "1h"
              | "1d";
          name?: string;
          prefer_native_scheduling?: boolean;
          preferred_code_length?: number;
          starts_at?: string;
          sync?: boolean;
          type?: "ongoing" | "time_bound";
          use_backup_access_code_pool?: boolean;
          use_offline_access_code?: boolean;
      }
      • access_code_id: string

        ID of the access code that you want to update.

      • Optionalallow_external_modification?: boolean

        Indicates whether external modification of the code is allowed. Default: false.

      • Optionalattempt_for_offline_device?: boolean
      • Optionalcode?: string

        Code to be used for access.

      • Optionaldevice_id?: string

        ID of the device containing the access code that you want to update.

      • Optionalends_at?: string

        Date and time at which the validity of the new access code ends, in ISO 8601 format. Must be a time in the future and after starts_at.

      • Optionalis_external_modification_allowed?: boolean

        Indicates whether external modification of the code is allowed. Default: false.

      • Optionalis_managed?: boolean

        Indicates whether the access code is managed through Seam. Note that to convert an unmanaged access code into a managed access code, use /access_codes/unmanaged/convert_to_managed.

      • Optionalis_offline_access_code?: boolean

        Indicates whether the access code is an offline access code.

      • Optionalis_one_time_use?: boolean

        Indicates whether the offline access code is a single-use access code.

      • Optionalmax_time_rounding?:
            | "1hour"
            | "1day"
            | "1h"
            | "1d"

        Maximum rounding adjustment. To create a daily-bound offline access code for devices that support this feature, set this parameter to 1d.

      • Optionalname?: string

        Name of the new 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).

      • Optionalprefer_native_scheduling?: boolean

        Indicates whether native scheduling should be used for time-bound codes when supported by the provider. Default: true.

      • Optionalpreferred_code_length?: number

        Preferred code length. Only applicable if you do not specify a code. If the affected device does not support the preferred code length, Seam reverts to using the shortest supported code length.

      • Optionalstarts_at?: string

        Date and time at which the validity of the new access code starts, in ISO 8601 format.

      • Optionalsync?: boolean
      • Optionaltype?: "ongoing" | "time_bound"

        Type to which you want to convert the access code. To convert a time-bound access code to an ongoing access code, set type to ongoing. See also Changing a time-bound access code to permanent access.

      • Optionaluse_backup_access_code_pool?: boolean

        Indicates whether to use a backup access code pool provided by Seam. If true, you can use /access_codes/pull_backup_access_code.

      • Optionaluse_offline_access_code?: boolean
    • options: AccessCodesUpdateOptions = {}

    Returns AccessCodesUpdateRequest

  • Parameters

    • clientSessionToken: string

    Returns Promise<void>

  • Parameters

    • Optionalparameters: {
          common_code_key: string;
          ends_at?: string;
          name?: string;
          starts_at?: string;
      }
      • common_code_key: string

        Key that links the group of access codes, assigned on creation by /access_codes/create_multiple.

      • Optionalends_at?: string

        Date and time at which the validity of the new access code ends, in ISO 8601 format. Must be a time in the future and after starts_at.

      • Optionalname?: string

        Name of the new 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).

      • Optionalstarts_at?: string

        Date and time at which the validity of the new access code starts, in ISO 8601 format.

    • options: AccessCodesUpdateMultipleOptions = {}

    Returns AccessCodesUpdateMultipleRequest