@seamapi/types 1.399.0 → 1.400.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/connect.cjs +889 -297
  2. package/dist/connect.cjs.map +1 -1
  3. package/dist/connect.d.cts +848 -179
  4. package/lib/seam/connect/models/access-codes/managed-access-code.js +8 -2
  5. package/lib/seam/connect/models/access-codes/managed-access-code.js.map +1 -1
  6. package/lib/seam/connect/models/access-codes/unmanaged-access-code.js +4 -0
  7. package/lib/seam/connect/models/access-codes/unmanaged-access-code.js.map +1 -1
  8. package/lib/seam/connect/models/client-sessions/client-session.js +9 -0
  9. package/lib/seam/connect/models/client-sessions/client-session.js.map +1 -1
  10. package/lib/seam/connect/models/connect-webviews/connect-webview.js +13 -0
  11. package/lib/seam/connect/models/connect-webviews/connect-webview.js.map +1 -1
  12. package/lib/seam/connect/models/connected-accounts/connected-account.js +1 -0
  13. package/lib/seam/connect/models/connected-accounts/connected-account.js.map +1 -1
  14. package/lib/seam/connect/models/devices/capability-properties/access-code.js +4 -1
  15. package/lib/seam/connect/models/devices/capability-properties/access-code.js.map +1 -1
  16. package/lib/seam/connect/models/devices/device.js +5 -1
  17. package/lib/seam/connect/models/devices/device.js.map +1 -1
  18. package/lib/seam/connect/models/devices/unmanaged-device.js +1 -0
  19. package/lib/seam/connect/models/devices/unmanaged-device.js.map +1 -1
  20. package/lib/seam/connect/models/events/seam-event.js +3 -0
  21. package/lib/seam/connect/models/events/seam-event.js.map +1 -1
  22. package/lib/seam/connect/models/user-identities/user-identity.js +1 -1
  23. package/lib/seam/connect/models/workspaces/workspace.js +1 -0
  24. package/lib/seam/connect/models/workspaces/workspace.js.map +1 -1
  25. package/lib/seam/connect/openapi.d.ts +381 -0
  26. package/lib/seam/connect/openapi.js +807 -258
  27. package/lib/seam/connect/openapi.js.map +1 -1
  28. package/lib/seam/connect/route-types.d.ts +467 -179
  29. package/package.json +1 -1
  30. package/src/lib/seam/connect/models/access-codes/managed-access-code.ts +8 -2
  31. package/src/lib/seam/connect/models/access-codes/unmanaged-access-code.ts +4 -0
  32. package/src/lib/seam/connect/models/client-sessions/client-session.ts +9 -0
  33. package/src/lib/seam/connect/models/connect-webviews/connect-webview.ts +13 -0
  34. package/src/lib/seam/connect/models/connected-accounts/connected-account.ts +1 -0
  35. package/src/lib/seam/connect/models/devices/capability-properties/access-code.ts +6 -1
  36. package/src/lib/seam/connect/models/devices/device.ts +7 -1
  37. package/src/lib/seam/connect/models/devices/unmanaged-device.ts +1 -0
  38. package/src/lib/seam/connect/models/events/seam-event.ts +3 -0
  39. package/src/lib/seam/connect/models/user-identities/user-identity.ts +1 -1
  40. package/src/lib/seam/connect/models/workspaces/workspace.ts +1 -0
  41. package/src/lib/seam/connect/openapi.ts +1010 -258
  42. package/src/lib/seam/connect/route-types.ts +469 -179
@@ -4,9 +4,15 @@ export interface Routes {
4
4
  method: 'POST';
5
5
  queryParams: {};
6
6
  jsonBody: {
7
- /** ID of the device for which to create the new access code. */
7
+ /** ID of the device for which you want to create the new access code. */
8
8
  device_id: string;
9
- /** Name of the new access code. */
9
+ /** Name of the new access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
10
+
11
+ 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`.
12
+
13
+ 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.
14
+
15
+ 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). */
10
16
  name?: string | undefined;
11
17
  /** Date and time at which the validity of the new access code starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
12
18
  starts_at?: string | undefined;
@@ -1147,7 +1153,7 @@ export interface Routes {
1147
1153
 
1148
1154
  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.
1149
1155
 
1150
- Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). 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`.
1156
+ Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). 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.
1151
1157
 
1152
1158
  In addition, for certain devices, Seam also supports [offline access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#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. */
1153
1159
  access_code: {
@@ -1163,7 +1169,13 @@ export interface Routes {
1163
1169
  access_code_id: string;
1164
1170
  /** Unique identifier for the device associated with the access code. */
1165
1171
  device_id: string;
1166
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
1172
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
1173
+
1174
+ 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`.
1175
+
1176
+ 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.
1177
+
1178
+ 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). */
1167
1179
  name: string | null;
1168
1180
  /** Code used for access. Typically, a numeric or alphanumeric string. */
1169
1181
  code: string | null;
@@ -1606,13 +1618,19 @@ export interface Routes {
1606
1618
  method: 'POST' | 'PUT';
1607
1619
  queryParams: {};
1608
1620
  jsonBody: {
1609
- /** IDs of the devices for which to create the new access codes. */
1621
+ /** IDs of the devices for which you want to create the new access codes. */
1610
1622
  device_ids: string[];
1611
1623
  /** 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. */
1612
1624
  behavior_when_code_cannot_be_shared?: 'throw' | 'create_random_code';
1613
1625
  /** 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. */
1614
1626
  preferred_code_length?: number | undefined;
1615
- /** Name of the new access code. */
1627
+ /** Name of the new access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
1628
+
1629
+ 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`.
1630
+
1631
+ 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.
1632
+
1633
+ 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). */
1616
1634
  name?: string | undefined;
1617
1635
  /** Date and time at which the validity of the new access code starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
1618
1636
  starts_at?: string | undefined;
@@ -1653,7 +1671,13 @@ export interface Routes {
1653
1671
  access_code_id: string;
1654
1672
  /** Unique identifier for the device associated with the access code. */
1655
1673
  device_id: string;
1656
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
1674
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
1675
+
1676
+ 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`.
1677
+
1678
+ 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.
1679
+
1680
+ 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). */
1657
1681
  name: string | null;
1658
1682
  /** Code used for access. Typically, a numeric or alphanumeric string. */
1659
1683
  code: string | null;
@@ -2097,9 +2121,9 @@ export interface Routes {
2097
2121
  queryParams: {};
2098
2122
  jsonBody: {};
2099
2123
  commonParams: {
2100
- /** ID of the device for which to delete the access code. */
2124
+ /** ID of the device for which you want to delete the access code. */
2101
2125
  device_id?: string | undefined;
2102
- /** ID of the access code to delete. */
2126
+ /** ID of the access code that you want to delete. */
2103
2127
  access_code_id: string;
2104
2128
  /** */
2105
2129
  sync?: boolean;
@@ -3217,6 +3241,7 @@ export interface Routes {
3217
3241
  queryParams: {};
3218
3242
  jsonBody: {};
3219
3243
  commonParams: {
3244
+ /** ID of the device for which you want to generate a code. */
3220
3245
  device_id: string;
3221
3246
  };
3222
3247
  formData: {};
@@ -3246,7 +3271,7 @@ export interface Routes {
3246
3271
 
3247
3272
  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.
3248
3273
 
3249
- Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). 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`.
3274
+ Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). 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.
3250
3275
 
3251
3276
  In addition, for certain devices, Seam also supports [offline access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#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. */
3252
3277
  access_code: {
@@ -3262,7 +3287,13 @@ export interface Routes {
3262
3287
  access_code_id: string;
3263
3288
  /** Unique identifier for the device associated with the access code. */
3264
3289
  device_id: string;
3265
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
3290
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
3291
+
3292
+ 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`.
3293
+
3294
+ 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.
3295
+
3296
+ 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). */
3266
3297
  name: string | null;
3267
3298
  /** Code used for access. Typically, a numeric or alphanumeric string. */
3268
3299
  code: string | null;
@@ -3732,7 +3763,13 @@ export interface Routes {
3732
3763
  access_code_id: string;
3733
3764
  /** Unique identifier for the device associated with the access code. */
3734
3765
  device_id: string;
3735
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
3766
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
3767
+
3768
+ 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`.
3769
+
3770
+ 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.
3771
+
3772
+ 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). */
3736
3773
  name: string | null;
3737
3774
  /** Code used for access. Typically, a numeric or alphanumeric string. */
3738
3775
  code: string | null;
@@ -4194,7 +4231,7 @@ export interface Routes {
4194
4231
 
4195
4232
  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.
4196
4233
 
4197
- Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). 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`.
4234
+ Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). 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.
4198
4235
 
4199
4236
  In addition, for certain devices, Seam also supports [offline access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#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. */
4200
4237
  backup_access_code: {
@@ -4210,7 +4247,13 @@ export interface Routes {
4210
4247
  access_code_id: string;
4211
4248
  /** Unique identifier for the device associated with the access code. */
4212
4249
  device_id: string;
4213
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
4250
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
4251
+
4252
+ 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`.
4253
+
4254
+ 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.
4255
+
4256
+ 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). */
4214
4257
  name: string | null;
4215
4258
  /** Code used for access. Typically, a numeric or alphanumeric string. */
4216
4259
  code: string | null;
@@ -4650,7 +4693,7 @@ export interface Routes {
4650
4693
 
4651
4694
  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.
4652
4695
 
4653
- Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). 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`.
4696
+ Seam supports programming two types of access codes: [ongoing](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#ongoing-access-codes) and [time-bound](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#time-bound-access-codes). 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.
4654
4697
 
4655
4698
  In addition, for certain devices, Seam also supports [offline access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#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. */
4656
4699
  access_code: {
@@ -4666,7 +4709,13 @@ export interface Routes {
4666
4709
  access_code_id: string;
4667
4710
  /** Unique identifier for the device associated with the access code. */
4668
4711
  device_id: string;
4669
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
4712
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
4713
+
4714
+ 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`.
4715
+
4716
+ 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.
4717
+
4718
+ 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). */
4670
4719
  name: string | null;
4671
4720
  /** Code used for access. Typically, a numeric or alphanumeric string. */
4672
4721
  code: string | null;
@@ -5109,7 +5158,7 @@ export interface Routes {
5109
5158
  method: 'POST';
5110
5159
  queryParams: {};
5111
5160
  jsonBody: {
5112
- /** ID of the device for which to report constraints. */
5161
+ /** ID of the device for which you want to report constraints. */
5113
5162
  device_id: string;
5114
5163
  /** 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`. */
5115
5164
  supported_code_lengths?: number[] | undefined;
@@ -5143,7 +5192,11 @@ export interface Routes {
5143
5192
 
5144
5193
  When you create an access code on a device in Seam, it is created as a managed access code. Access codes that exist on a device that were not created through Seam are considered unmanaged codes. We strictly limit the operations that can be performed on unmanaged codes.
5145
5194
 
5146
- Prior to using Seam to manage your devices, you may have used another lock management system to manage the access codes on your devices. Where possible, we help you keep any existing access codes on devices and transition those codes to ones managed by your Seam workspace. */
5195
+ Prior to using Seam to manage your devices, you may have used another lock management system to manage the access codes on your devices. Where possible, we help you keep any existing access codes on devices and transition those codes to ones managed by your Seam workspace.
5196
+
5197
+ Not all providers support unmanaged access codes. The following providers do not support unmanaged access codes:
5198
+
5199
+ - [Kwikset](https://docs.seam.co/latest/device-and-system-integration-guides/kwikset-locks) */
5147
5200
  access_code: {
5148
5201
  /** Nature of the access code. Values are `ongoing` for access codes that are active continuously until deactivated manually or `time_bound` for access codes that have a specific duration. */
5149
5202
  type: 'time_bound' | 'ongoing';
@@ -5151,7 +5204,13 @@ export interface Routes {
5151
5204
  access_code_id: string;
5152
5205
  /** Unique identifier for the device associated with the access code. */
5153
5206
  device_id: string;
5154
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
5207
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
5208
+
5209
+ 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`.
5210
+
5211
+ 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.
5212
+
5213
+ 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). */
5155
5214
  name: string | null;
5156
5215
  /** Code used for access. Typically, a numeric or alphanumeric string. */
5157
5216
  code: string | null;
@@ -5585,9 +5644,9 @@ export interface Routes {
5585
5644
  commonParams: {
5586
5645
  /** ID of the unmanaged access code that you want to convert to a managed access code. */
5587
5646
  access_code_id: string;
5588
- /** Indicates whether external modification of the access code is allowed. */
5647
+ /** Indicates whether [external modification](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#external-modification) of the access code is allowed. */
5589
5648
  is_external_modification_allowed?: boolean | undefined;
5590
- /** Indicates whether external modification of the access code is allowed. */
5649
+ /** Indicates whether [external modification](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes#external-modification) of the access code is allowed. */
5591
5650
  allow_external_modification?: boolean | undefined;
5592
5651
  /** Indicates whether to force the access code conversion. To switch management of an access code from one Seam workspace to another, set `force` to `true`. */
5593
5652
  force?: boolean | undefined;
@@ -5603,7 +5662,7 @@ export interface Routes {
5603
5662
  queryParams: {};
5604
5663
  jsonBody: {};
5605
5664
  commonParams: {
5606
- /** ID of the unmanaged access code to delete. */
5665
+ /** ID of the unmanaged access code that you want to delete. */
5607
5666
  access_code_id: string;
5608
5667
  /** */
5609
5668
  sync?: boolean;
@@ -6736,7 +6795,11 @@ export interface Routes {
6736
6795
 
6737
6796
  When you create an access code on a device in Seam, it is created as a managed access code. Access codes that exist on a device that were not created through Seam are considered unmanaged codes. We strictly limit the operations that can be performed on unmanaged codes.
6738
6797
 
6739
- Prior to using Seam to manage your devices, you may have used another lock management system to manage the access codes on your devices. Where possible, we help you keep any existing access codes on devices and transition those codes to ones managed by your Seam workspace. */
6798
+ Prior to using Seam to manage your devices, you may have used another lock management system to manage the access codes on your devices. Where possible, we help you keep any existing access codes on devices and transition those codes to ones managed by your Seam workspace.
6799
+
6800
+ Not all providers support unmanaged access codes. The following providers do not support unmanaged access codes:
6801
+
6802
+ - [Kwikset](https://docs.seam.co/latest/device-and-system-integration-guides/kwikset-locks) */
6740
6803
  access_code: {
6741
6804
  /** Nature of the access code. Values are `ongoing` for access codes that are active continuously until deactivated manually or `time_bound` for access codes that have a specific duration. */
6742
6805
  type: 'time_bound' | 'ongoing';
@@ -6744,7 +6807,13 @@ export interface Routes {
6744
6807
  access_code_id: string;
6745
6808
  /** Unique identifier for the device associated with the access code. */
6746
6809
  device_id: string;
6747
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
6810
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
6811
+
6812
+ 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`.
6813
+
6814
+ 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.
6815
+
6816
+ 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). */
6748
6817
  name: string | null;
6749
6818
  /** Code used for access. Typically, a numeric or alphanumeric string. */
6750
6819
  code: string | null;
@@ -7190,7 +7259,13 @@ export interface Routes {
7190
7259
  access_code_id: string;
7191
7260
  /** Unique identifier for the device associated with the access code. */
7192
7261
  device_id: string;
7193
- /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes. */
7262
+ /** Name of the access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
7263
+
7264
+ 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`.
7265
+
7266
+ 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.
7267
+
7268
+ 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). */
7194
7269
  name: string | null;
7195
7270
  /** Code used for access. Typically, a numeric or alphanumeric string. */
7196
7271
  code: string | null;
@@ -7640,7 +7715,13 @@ export interface Routes {
7640
7715
  method: 'POST' | 'PATCH' | 'PUT';
7641
7716
  queryParams: {};
7642
7717
  jsonBody: {
7643
- /** Name of the new access code. */
7718
+ /** Name of the new access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
7719
+
7720
+ 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`.
7721
+
7722
+ 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.
7723
+
7724
+ 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). */
7644
7725
  name?: string | undefined;
7645
7726
  /** Date and time at which the validity of the new access code starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
7646
7727
  starts_at?: string | undefined;
@@ -8794,7 +8875,13 @@ export interface Routes {
8794
8875
  ends_at?: string | undefined;
8795
8876
  /** Date and time at which the validity of the new access code starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
8796
8877
  starts_at?: string | undefined;
8797
- /** Name of the new access code. */
8878
+ /** Name of the new access code. Enables administrators and users to identify the access code easily, especially when there are numerous access codes.
8879
+
8880
+ 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`.
8881
+
8882
+ 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.
8883
+
8884
+ 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). */
8798
8885
  name?: string | undefined;
8799
8886
  /** Key that links the group of access codes, assigned on creation by `/access_codes/create_multiple`. */
8800
8887
  common_code_key: string;
@@ -8809,10 +8896,12 @@ export interface Routes {
8809
8896
  queryParams: {};
8810
8897
  jsonBody: {};
8811
8898
  commonParams: {
8812
- /** ID of the desired access group. */
8899
+ /** ID of the access group to which you want to add an access system user. */
8813
8900
  acs_access_group_id: string;
8814
- /** ID of the desired user. */
8815
- acs_user_id: string;
8901
+ /** ID of the access system user that you want to add to an access group. You can only provide one of acs_user_id or user_identity_id. */
8902
+ acs_user_id?: string | undefined;
8903
+ /** ID of the desired user identity that you want to add to an access group. You can only provide one of acs_user_id or user_identity_id. If the ACS system contains an ACS user with the same `email_address` or `phone_number` as the user identity that you specify, they are linked, and the access group membership belongs to the ACS user. If the ACS system does not have a corresponding ACS user, one is created. */
8904
+ user_identity_id?: string | undefined;
8816
8905
  };
8817
8906
  formData: {};
8818
8907
  jsonResponse: {};
@@ -8823,7 +8912,7 @@ export interface Routes {
8823
8912
  queryParams: {};
8824
8913
  jsonBody: {};
8825
8914
  commonParams: {
8826
- /** ID of the desired access group. */
8915
+ /** ID of the access group that you want to get. */
8827
8916
  acs_access_group_id: string;
8828
8917
  };
8829
8918
  formData: {};
@@ -8874,9 +8963,9 @@ export interface Routes {
8874
8963
  queryParams: {};
8875
8964
  jsonBody: {};
8876
8965
  commonParams: {
8877
- /** ID of the access control system for which you want to retrieve all access groups. */
8966
+ /** ID of the access system for which you want to retrieve all access groups. */
8878
8967
  acs_system_id?: string | undefined;
8879
- /** ID of the user for which you want to retrieve all access groups. */
8968
+ /** ID of the access system user for which you want to retrieve all access groups. */
8880
8969
  acs_user_id?: string | undefined;
8881
8970
  /** ID of the user identity for which you want to retrieve all access groups. */
8882
8971
  user_identity_id?: string | undefined;
@@ -8999,7 +9088,7 @@ export interface Routes {
8999
9088
  queryParams: {};
9000
9089
  jsonBody: {};
9001
9090
  commonParams: {
9002
- /** ID of the access group for which you want to retrieve all users. */
9091
+ /** ID of the access group for which you want to retrieve all access system users. */
9003
9092
  acs_access_group_id: string;
9004
9093
  };
9005
9094
  formData: {};
@@ -9194,11 +9283,11 @@ export interface Routes {
9194
9283
  queryParams: {};
9195
9284
  jsonBody: {};
9196
9285
  commonParams: {
9197
- /** ID of the desired access group. */
9286
+ /** ID of the access group from which you want to remove an access system user. */
9198
9287
  acs_access_group_id: string;
9199
- /** ID of the desired user. */
9288
+ /** ID of the access system user that you want to remove from an access group. */
9200
9289
  acs_user_id?: string | undefined;
9201
- /** ID of the desired user identity. */
9290
+ /** ID of the user identity associated with the user that you want to remove from an access group. */
9202
9291
  user_identity_id?: string | undefined;
9203
9292
  };
9204
9293
  formData: {};
@@ -9210,7 +9299,7 @@ export interface Routes {
9210
9299
  queryParams: {};
9211
9300
  jsonBody: {};
9212
9301
  commonParams: {
9213
- /** ID of the desired unmanaged access group. */
9302
+ /** ID of the unmanaged access group that you want to get. */
9214
9303
  acs_access_group_id: string;
9215
9304
  };
9216
9305
  formData: {};
@@ -9257,9 +9346,9 @@ export interface Routes {
9257
9346
  queryParams: {};
9258
9347
  jsonBody: {};
9259
9348
  commonParams: {
9260
- /** ID of the access control system for which you want to retrieve all unmanaged access groups. */
9349
+ /** ID of the access system for which you want to retrieve all unmanaged access groups. */
9261
9350
  acs_system_id?: string | undefined;
9262
- /** ID of the user for which you want to retrieve all unmanaged access groups. */
9351
+ /** ID of the access system user for which you want to retrieve all unmanaged access groups. */
9263
9352
  acs_user_id?: string | undefined;
9264
9353
  };
9265
9354
  formData: {};
@@ -9305,6 +9394,7 @@ export interface Routes {
9305
9394
  queryParams: {};
9306
9395
  jsonBody: {};
9307
9396
  commonParams: {
9397
+ /** ID of the access system for which you want to list credential pools. */
9308
9398
  acs_system_id: string;
9309
9399
  };
9310
9400
  formData: {};
@@ -9326,10 +9416,15 @@ export interface Routes {
9326
9416
  queryParams: {};
9327
9417
  jsonBody: {};
9328
9418
  commonParams: {
9419
+ /** ID of the user identity for which you want to launch a credential provisioning automation. */
9329
9420
  user_identity_id: string;
9421
+ /** Access system ID of the credential manager for which you want to launch a credential provisioning automation. */
9330
9422
  credential_manager_acs_system_id: string;
9423
+ /** ID of the credential pool for which you want to launch a credential provisioning automation. */
9331
9424
  acs_credential_pool_id?: string | undefined;
9425
+ /** Indicates whether to create an associated credential manager user. If you set `create_credential_manager_user` to `true`, you cannot specify a `credential_manager_acs_user_id`. */
9332
9426
  create_credential_manager_user?: boolean | undefined;
9427
+ /** ID of the associated access system user within the credential manager. If you specify a `credential_manager_acs_user_id`, you cannot set `create_credential_manager_user` to `true`. */
9333
9428
  credential_manager_acs_user_id?: string | undefined;
9334
9429
  };
9335
9430
  formData: {};
@@ -9349,9 +9444,9 @@ export interface Routes {
9349
9444
  method: 'PATCH' | 'POST';
9350
9445
  queryParams: {};
9351
9446
  jsonBody: {
9352
- /** ID of the desired user. */
9447
+ /** ID of the access system user to whom you want to assign a credential. */
9353
9448
  acs_user_id: string;
9354
- /** ID of the desired credential. */
9449
+ /** ID of the credential that you want to assign to an access system user. */
9355
9450
  acs_credential_id: string;
9356
9451
  };
9357
9452
  commonParams: {};
@@ -9485,11 +9580,11 @@ export interface Routes {
9485
9580
  commonParams: {
9486
9581
  /** ACS system ID of the credential manager for the new credential. */
9487
9582
  credential_manager_acs_system_id?: string | undefined;
9488
- /** ID of the ACS user to whom the new credential belongs. You must provide either `acs_user_id` or the combination of `user_identity_id` and `acs_system_id`. */
9583
+ /** ID of the access system user to whom the new credential belongs. You must provide either `acs_user_id` or the combination of `user_identity_id` and `acs_system_id`. */
9489
9584
  acs_user_id?: string | undefined;
9490
- /** ID of the user identity to whom the new credential belongs. You must provide either `acs_user_id` or the combination of `user_identity_id` and `acs_system_id`. If the ACS system contains an ACS user with the same `email_address` or `phone_number` as the user identity that you specify, they are linked, and the credential belongs to the ACS user. If the ACS system does not have a corresponding ACS user, one is created. */
9585
+ /** ID of the user identity to whom the new credential belongs. You must provide either `acs_user_id` or the combination of `user_identity_id` and `acs_system_id`. If the access system contains a user with the same `email_address` or `phone_number` as the user identity that you specify, they are linked, and the credential belongs to the access system user. If the access system does not have a corresponding user, one is created. */
9491
9586
  user_identity_id?: string | undefined;
9492
- /** ID of the ACS system to which the new credential belongs. You must provide either `acs_user_id` or the combination of `user_identity_id` and `acs_system_id`. */
9587
+ /** ID of the access system to which the new credential belongs. You must provide either `acs_user_id` or the combination of `user_identity_id` and `acs_system_id`. */
9493
9588
  acs_system_id?: string | undefined;
9494
9589
  /** Access method for the new credential. Supported values: `code`, `card`, `mobile_key`. */
9495
9590
  access_method: 'code' | 'card' | 'mobile_key';
@@ -9522,7 +9617,9 @@ export interface Routes {
9522
9617
  } | undefined;
9523
9618
  /** Salto Space-specific metadata for the new credential. */
9524
9619
  salto_space_metadata?: {
9620
+ /** Indicates whether to assign a first, new card to a user. See also [Programming Salto Space Card-based Credentials](https://docs.seam.co/latest/device-and-system-integration-guides/salto-proaccess-space-access-system/programming-salto-space-card-based-credentials). */
9525
9621
  assign_new_key?: boolean | undefined;
9622
+ /** Indicates whether to update the user's existing card. See also [Programming Salto Space Card-based Credentials](https://docs.seam.co/latest/device-and-system-integration-guides/salto-proaccess-space-access-system/programming-salto-space-card-based-credentials). */
9526
9623
  update_current_key?: boolean | undefined;
9527
9624
  } | undefined;
9528
9625
  /** Date and time at which the validity of the new credential starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
@@ -9658,7 +9755,7 @@ export interface Routes {
9658
9755
  queryParams: {};
9659
9756
  jsonBody: {};
9660
9757
  commonParams: {
9661
- /** ID of the ACS user to whom the new credential belongs. */
9758
+ /** ID of the access system user to whom the new credential belongs. */
9662
9759
  acs_user_id: string;
9663
9760
  /** IDs of the [`acs_entrance`s](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details) for which the new credential grants access. */
9664
9761
  allowed_acs_entrance_id: string;
@@ -9797,7 +9894,7 @@ export interface Routes {
9797
9894
  queryParams: {};
9798
9895
  jsonBody: {};
9799
9896
  commonParams: {
9800
- /** ID of the desired credential. */
9897
+ /** ID of the credential that you want to delete. */
9801
9898
  acs_credential_id: string;
9802
9899
  };
9803
9900
  formData: {};
@@ -9809,7 +9906,7 @@ export interface Routes {
9809
9906
  queryParams: {};
9810
9907
  jsonBody: {};
9811
9908
  commonParams: {
9812
- /** ID of the desired credential. */
9909
+ /** ID of the credential that you want to get. */
9813
9910
  acs_credential_id: string;
9814
9911
  };
9815
9912
  formData: {};
@@ -9940,15 +10037,15 @@ export interface Routes {
9940
10037
  queryParams: {};
9941
10038
  jsonBody: {};
9942
10039
  commonParams: ({
9943
- /** ID of the ACS user for which you want to retrieve all credentials. */
10040
+ /** ID of the access system user for which you want to retrieve all credentials. */
9944
10041
  acs_user_id: string;
9945
10042
  } | {
9946
- /** ID of the access control system for which you want to retrieve all credentials. */
10043
+ /** ID of the access system for which you want to retrieve all credentials. */
9947
10044
  acs_system_id: string;
9948
10045
  } | {
9949
- /** ID of the ACS user for which you want to retrieve all credentials. */
10046
+ /** ID of the access system user for which you want to retrieve all credentials. */
9950
10047
  acs_user_id: string;
9951
- /** ID of the access control system for which you want to retrieve all credentials. */
10048
+ /** ID of the access system for which you want to retrieve all credentials. */
9952
10049
  acs_system_id: string;
9953
10050
  } | {
9954
10051
  /** ID of the user identity for which you want to retrieve all credentials. */
@@ -10084,7 +10181,7 @@ export interface Routes {
10084
10181
  queryParams: {};
10085
10182
  jsonBody: {};
10086
10183
  commonParams: {
10087
- /** ID of the credential for which you want to retrieve all entrances to which this credential grants access. */
10184
+ /** ID of the credential for which you want to retrieve all entrances to which the credential grants access. */
10088
10185
  acs_credential_id: string;
10089
10186
  };
10090
10187
  formData: {};
@@ -10158,9 +10255,9 @@ export interface Routes {
10158
10255
  method: 'PATCH' | 'POST';
10159
10256
  queryParams: {};
10160
10257
  jsonBody: {
10161
- /** ID of the desired user. */
10258
+ /** ID of the access system user from which you want to unassign a credential. */
10162
10259
  acs_user_id: string;
10163
- /** ID of the desired credential. */
10260
+ /** ID of the credential that you want to unassign from an access system user. */
10164
10261
  acs_credential_id: string;
10165
10262
  };
10166
10263
  commonParams: {};
@@ -10292,7 +10389,7 @@ export interface Routes {
10292
10389
  queryParams: {};
10293
10390
  jsonBody: {};
10294
10391
  commonParams: {
10295
- /** ID of the desired unmanaged credential. */
10392
+ /** ID of the unmanaged credential that you want to get. */
10296
10393
  acs_credential_id: string;
10297
10394
  };
10298
10395
  formData: {};
@@ -10419,15 +10516,15 @@ export interface Routes {
10419
10516
  queryParams: {};
10420
10517
  jsonBody: {};
10421
10518
  commonParams: {
10422
- /** ID of the ACS user for which you want to retrieve all credentials. */
10519
+ /** ID of the access system user for which you want to retrieve all credentials. */
10423
10520
  acs_user_id: string;
10424
10521
  } | {
10425
- /** ID of the access control system for which you want to retrieve all credentials. */
10522
+ /** ID of the access system for which you want to retrieve all credentials. */
10426
10523
  acs_system_id: string;
10427
10524
  } | {
10428
- /** ID of the ACS user for which you want to retrieve all credentials. */
10525
+ /** ID of the access system user for which you want to retrieve all credentials. */
10429
10526
  acs_user_id: string;
10430
- /** ID of the access control system for which you want to retrieve all credentials. */
10527
+ /** ID of the access system for which you want to retrieve all credentials. */
10431
10528
  acs_system_id: string;
10432
10529
  } | {
10433
10530
  /** ID of the user identity for which you want to retrieve all credentials. */
@@ -10555,9 +10652,9 @@ export interface Routes {
10555
10652
  method: 'PATCH' | 'POST';
10556
10653
  queryParams: {};
10557
10654
  jsonBody: {
10558
- /** ID of the desired credential. */
10655
+ /** ID of the credential that you want to update. */
10559
10656
  acs_credential_id: string;
10560
- /** Replacement access (PIN) code for the credential. */
10657
+ /** Replacement access (PIN) code for the credential that you want to update. */
10561
10658
  code?: string | undefined;
10562
10659
  /** Replacement date and time at which the validity of the credential ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. Must be a time in the future and after the `starts_at` value that you set when creating the credential. */
10563
10660
  ends_at?: string | undefined;
@@ -12927,7 +13024,7 @@ export interface Routes {
12927
13024
  queryParams: {};
12928
13025
  jsonBody: {};
12929
13026
  commonParams: {
12930
- /** ID of the desired encoder. */
13027
+ /** ID of the encoder that you want to get. */
12931
13028
  acs_encoder_id: string;
12932
13029
  };
12933
13030
  formData: {};
@@ -12975,19 +13072,19 @@ export interface Routes {
12975
13072
  queryParams: {};
12976
13073
  jsonBody: {};
12977
13074
  commonParams: {
12978
- /** ID of the `acs_system` for which you want to retrieve all `acs_encoder`s. */
13075
+ /** ID of the access system for which you want to retrieve all encoders. */
12979
13076
  acs_system_id: string;
12980
- /** Number of `acs_encoders` to return. */
13077
+ /** Number of encoders to return. */
12981
13078
  limit?: number;
12982
13079
  } | {
12983
- /** IDs of the `acs_system`s for which you want to retrieve all `acs_encoder`s. */
13080
+ /** IDs of the access systems for which you want to retrieve all encoders. */
12984
13081
  acs_system_ids: string[];
12985
- /** Number of `acs_encoders` to return. */
13082
+ /** Number of encoders to return. */
12986
13083
  limit?: number;
12987
13084
  } | {
12988
- /** IDs of the `acs_encoder`s that you want to retrieve. */
13085
+ /** IDs of the encoders that you want to retrieve. */
12989
13086
  acs_encoder_ids: string[];
12990
- /** Number of `acs_encoders` to return. */
13087
+ /** Number of encoders to return. */
12991
13088
  limit?: number;
12992
13089
  };
12993
13090
  formData: {};
@@ -13021,7 +13118,7 @@ export interface Routes {
13021
13118
  queryParams: {};
13022
13119
  jsonBody: {};
13023
13120
  commonParams: {
13024
- /** ID of the `acs_encoder` to use for the scan. */
13121
+ /** ID of the encoder to use for the scan. */
13025
13122
  acs_encoder_id: string;
13026
13123
  };
13027
13124
  formData: {};
@@ -14216,6 +14313,7 @@ export interface Routes {
14216
14313
  queryParams: {};
14217
14314
  jsonBody: {};
14218
14315
  commonParams: {
14316
+ /** ID of the entrance that you want to get. */
14219
14317
  acs_entrance_id: string;
14220
14318
  };
14221
14319
  formData: {};
@@ -14292,7 +14390,9 @@ export interface Routes {
14292
14390
  method: 'POST';
14293
14391
  queryParams: {};
14294
14392
  jsonBody: {
14393
+ /** ID of the entrance to which you want to grant an access system user access. */
14295
14394
  acs_entrance_id: string;
14395
+ /** ID of the access system user to whom you want to grant access to an entrance. */
14296
14396
  acs_user_id: string;
14297
14397
  };
14298
14398
  commonParams: {};
@@ -14305,9 +14405,11 @@ export interface Routes {
14305
14405
  queryParams: {};
14306
14406
  jsonBody: {};
14307
14407
  commonParams: {
14408
+ /** ID of the access system for which you want to retrieve all entrances. */
14308
14409
  acs_system_id?: string | undefined;
14410
+ /** ID of the credential for which you want to retrieve all entrances. */
14309
14411
  acs_credential_id?: string | undefined;
14310
- /** */
14412
+ /** ID of the location for which you want to retrieve all entrances. */
14311
14413
  location_id?: (string | null) | undefined;
14312
14414
  };
14313
14415
  formData: {};
@@ -14382,7 +14484,9 @@ export interface Routes {
14382
14484
  queryParams: {};
14383
14485
  jsonBody: {};
14384
14486
  commonParams: {
14487
+ /** ID of the entrance for which you want to list all credentials that grant access. */
14385
14488
  acs_entrance_id: string;
14489
+ /** Conditions that credentials must meet to be included in the returned list. */
14386
14490
  include_if?: Array<'visionline_metadata.is_valid'> | undefined;
14387
14491
  };
14388
14492
  formData: {};
@@ -14508,7 +14612,7 @@ export interface Routes {
14508
14612
  queryParams: {};
14509
14613
  jsonBody: {};
14510
14614
  commonParams: {
14511
- /** ID of the desired access control system. */
14615
+ /** ID of the access system that you want to get. */
14512
14616
  acs_system_id: string;
14513
14617
  };
14514
14618
  formData: {};
@@ -14658,7 +14762,7 @@ export interface Routes {
14658
14762
  queryParams: {};
14659
14763
  jsonBody: {};
14660
14764
  commonParams: {
14661
- /** ID of the connected account by which to filter the list of returned access control systems. */
14765
+ /** ID of the connected account by which you want to filter the list of access systems. */
14662
14766
  connected_account_id?: string | undefined;
14663
14767
  };
14664
14768
  formData: {};
@@ -14803,7 +14907,7 @@ export interface Routes {
14803
14907
  queryParams: {};
14804
14908
  jsonBody: {};
14805
14909
  commonParams: {
14806
- /** ID of the ACS system for which you want to retrieve all compatible credential manager ACS systems. */
14910
+ /** ID of the access system for which you want to retrieve all compatible credential manager systems. */
14807
14911
  acs_system_id: string;
14808
14912
  };
14809
14913
  formData: {};
@@ -14948,9 +15052,9 @@ export interface Routes {
14948
15052
  queryParams: {};
14949
15053
  jsonBody: {};
14950
15054
  commonParams: {
14951
- /** ID of the desired `acs_user`. */
15055
+ /** ID of the access system user that you want to add to an access group. */
14952
15056
  acs_user_id: string;
14953
- /** ID of the desired access group. */
15057
+ /** ID of the access group to which you want to add an access system user. */
14954
15058
  acs_access_group_id: string;
14955
15059
  };
14956
15060
  formData: {};
@@ -14961,17 +15065,19 @@ export interface Routes {
14961
15065
  method: 'POST';
14962
15066
  queryParams: {};
14963
15067
  jsonBody: {
14964
- /** Full name of the new `acs_user`. */
15068
+ /** Full name of the new access system user. */
14965
15069
  full_name: string;
14966
- /** ID of the `acs_system` to which to add the new `acs_user`. */
15070
+ /** ID of the access system to which you want to add the new access system user. */
14967
15071
  acs_system_id: string;
14968
- /** Array of `access_group_id`s to indicate the access groups to which to add the new `acs_user`. */
15072
+ /** Array of access group IDs to indicate the access groups to which you want to add the new access system user. */
14969
15073
  acs_access_group_ids?: string[];
14970
- /** ID of the user identity with which to associate the new `acs_user`. */
15074
+ /** ID of the user identity with which you want to associate the new access system user. */
14971
15075
  user_identity_id?: string | undefined;
14972
- /** `starts_at` and `ends_at` timestamps for the new `acs_user`'s access. If you specify an `access_schedule`, you may include both `starts_at` and `ends_at`. `starts_at` defaults to the current time if not provided. `ends_at` is optional and must be a time in the future and after `starts_at`. */
15076
+ /** `starts_at` and `ends_at` timestamps for the new access system user's access. If you specify an `access_schedule`, you may include both `starts_at` and `ends_at`. If you omit `starts_at`, it defaults to the current time. `ends_at` is optional and must be a time in the future and after `starts_at`. */
14973
15077
  access_schedule?: {
15078
+ /** Starting timestamp for the new access system user's access. */
14974
15079
  starts_at?: string | undefined;
15080
+ /** Ending timestamp for the new access system user's access. */
14975
15081
  ends_at?: (string | undefined) | null;
14976
15082
  } | undefined;
14977
15083
  /**
@@ -15180,7 +15286,7 @@ export interface Routes {
15180
15286
  queryParams: {};
15181
15287
  jsonBody: {};
15182
15288
  commonParams: {
15183
- /** ID of the desired `acs_user`. */
15289
+ /** ID of the access system user that you want to delete. */
15184
15290
  acs_user_id: string;
15185
15291
  };
15186
15292
  formData: {};
@@ -15192,7 +15298,7 @@ export interface Routes {
15192
15298
  queryParams: {};
15193
15299
  jsonBody: {};
15194
15300
  commonParams: {
15195
- /** ID of the desired `acs_user`. */
15301
+ /** ID of the access system user that you want to get. */
15196
15302
  acs_user_id: string;
15197
15303
  };
15198
15304
  formData: {};
@@ -15392,18 +15498,19 @@ export interface Routes {
15392
15498
  queryParams: {};
15393
15499
  jsonBody: {};
15394
15500
  commonParams: {
15395
- /** ID of the user identity for which you want to retrieve all `acs_user`s. */
15501
+ /** ID of the user identity for which you want to retrieve all access system users. */
15396
15502
  user_identity_id?: string | undefined;
15397
- /** Phone number of the user identity for which you want to retrieve all `acs_user`s, in [E.164 format](https://www.itu.int/rec/T-REC-E.164/en) (for example, `+15555550100`). */
15503
+ /** Phone number of the user identity for which you want to retrieve all access system users, in [E.164 format](https://www.itu.int/rec/T-REC-E.164/en) (for example, `+15555550100`). */
15398
15504
  user_identity_phone_number?: string | undefined;
15399
- /** Email address of the user identity for which you want to retrieve all `acs_user`s. */
15505
+ /** Email address of the user identity for which you want to retrieve all access system users. */
15400
15506
  user_identity_email_address?: string | undefined;
15401
- /** ID of the `acs_system` for which you want to retrieve all `acs_user`s. */
15507
+ /** ID of the `acs_system` for which you want to retrieve all access system users. */
15402
15508
  acs_system_id?: string | undefined;
15403
- /** String for which to search. Filters returned `acs_user`s to include all records that satisfy a partial match using `full_name`, `phone_number`, `email_address`, `acs_user_id`, `user_identity_id`, `user_identity_full_name` or `user_identity_phone_number`. */
15509
+ /** String for which to search. Filters returned access system users to include all records that satisfy a partial match using `full_name`, `phone_number`, `email_address`, `acs_user_id`, `user_identity_id`, `user_identity_full_name` or `user_identity_phone_number`. */
15404
15510
  search?: string | undefined;
15405
15511
  /** Maximum number of records to return per page. */
15406
15512
  limit?: number;
15513
+ /** Timestamp by which to limit returned access system users. Returns users created before this timestamp. */
15407
15514
  created_before?: Date | undefined;
15408
15515
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
15409
15516
  page_cursor?: (string | undefined) | null;
@@ -15609,7 +15716,7 @@ export interface Routes {
15609
15716
  queryParams: {};
15610
15717
  jsonBody: {};
15611
15718
  commonParams: {
15612
- /** ID of the desired `acs_user`. */
15719
+ /** ID of the access system user for whom you want to list accessible entrances. */
15613
15720
  acs_user_id: string;
15614
15721
  };
15615
15722
  formData: {};
@@ -15684,9 +15791,9 @@ export interface Routes {
15684
15791
  queryParams: {};
15685
15792
  jsonBody: {};
15686
15793
  commonParams: {
15687
- /** ID of the desired `acs_user`. */
15794
+ /** ID of the access system user that you want to remove from an access group. */
15688
15795
  acs_user_id: string;
15689
- /** ID of the desired access group. */
15796
+ /** ID of the access group from which you want to remove an access system user. */
15690
15797
  acs_access_group_id: string;
15691
15798
  };
15692
15799
  formData: {};
@@ -15697,7 +15804,7 @@ export interface Routes {
15697
15804
  method: 'POST';
15698
15805
  queryParams: {};
15699
15806
  jsonBody: {
15700
- /** ID of the desired `acs_user`. */
15807
+ /** ID of the access system user for whom you want to revoke access. */
15701
15808
  acs_user_id: string;
15702
15809
  };
15703
15810
  commonParams: {};
@@ -15710,7 +15817,7 @@ export interface Routes {
15710
15817
  queryParams: {};
15711
15818
  jsonBody: {};
15712
15819
  commonParams: {
15713
- /** ID of the desired `acs_user`. */
15820
+ /** ID of the access system user that you want to suspend. */
15714
15821
  acs_user_id: string;
15715
15822
  };
15716
15823
  formData: {};
@@ -15722,6 +15829,7 @@ export interface Routes {
15722
15829
  queryParams: {};
15723
15830
  jsonBody: {};
15724
15831
  commonParams: {
15832
+ /** ID of the unmanaged access system user that you want to get. */
15725
15833
  acs_user_id: string;
15726
15834
  };
15727
15835
  formData: {};
@@ -15917,10 +16025,15 @@ export interface Routes {
15917
16025
  queryParams: {};
15918
16026
  jsonBody: {};
15919
16027
  commonParams: {
16028
+ /** ID of the user identity for which you want to retrieve all unmanaged access system users. */
15920
16029
  user_identity_id?: string | undefined;
16030
+ /** Phone number of the user identity for which you want to retrieve all unmanaged access system users. */
15921
16031
  user_identity_phone_number?: string | undefined;
16032
+ /** Email address of the user identity for which you want to retrieve all unmanaged access system users. */
15922
16033
  user_identity_email_address?: string | undefined;
16034
+ /** ID of the access system for which you want to retrieve all unmanaged access system users. */
15923
16035
  acs_system_id?: string | undefined;
16036
+ /** Number of unmanaged access system users to return. */
15924
16037
  limit?: number;
15925
16038
  };
15926
16039
  formData: {};
@@ -16115,7 +16228,7 @@ export interface Routes {
16115
16228
  queryParams: {};
16116
16229
  jsonBody: {};
16117
16230
  commonParams: {
16118
- /** ID of the desired `acs_user`. */
16231
+ /** ID of the access system user that you want to unsuspend. */
16119
16232
  acs_user_id: string;
16120
16233
  };
16121
16234
  formData: {};
@@ -16126,9 +16239,11 @@ export interface Routes {
16126
16239
  method: 'PATCH' | 'POST';
16127
16240
  queryParams: {};
16128
16241
  jsonBody: {
16129
- /** `starts_at` and `ends_at` timestamps for the `acs_user`'s access. If you specify an `access_schedule`, you must include both `starts_at` and `ends_at`. `ends_at` must be a time in the future and after `starts_at`. */
16242
+ /** `starts_at` and `ends_at` timestamps for the access system user's access. If you specify an `access_schedule`, you may include both `starts_at` and `ends_at`. If you omit `starts_at`, it defaults to the current time. `ends_at` is optional and must be a time in the future and after `starts_at`. */
16130
16243
  access_schedule?: ({
16244
+ /** Starting timestamp for the access system user's access. */
16131
16245
  starts_at: string;
16246
+ /** Ending timestamp for the access system user's access. */
16132
16247
  ends_at: string;
16133
16248
  } | null) | undefined;
16134
16249
  /** ID of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). */
@@ -16154,6 +16269,7 @@ export interface Routes {
16154
16269
  queryParams: {};
16155
16270
  jsonBody: {};
16156
16271
  commonParams: {
16272
+ /** ID of the action attempt that you want to get. */
16157
16273
  action_attempt_id: string;
16158
16274
  };
16159
16275
  formData: {};
@@ -17269,6 +17385,7 @@ export interface Routes {
17269
17385
  queryParams: {};
17270
17386
  jsonBody: {};
17271
17387
  commonParams: {
17388
+ /** IDs of the action attempts that you want to retrieve. */
17272
17389
  action_attempt_ids: string[];
17273
17390
  };
17274
17391
  formData: {};
@@ -18383,6 +18500,7 @@ export interface Routes {
18383
18500
  queryParams: {};
18384
18501
  jsonBody: {};
18385
18502
  commonParams: {
18503
+ /** ID of the Seam Bridge that you want to get. */
18386
18504
  bridge_id: string;
18387
18505
  };
18388
18506
  formData: {};
@@ -18415,16 +18533,29 @@ export interface Routes {
18415
18533
  method: 'POST' | 'PUT';
18416
18534
  queryParams: {};
18417
18535
  jsonBody: {
18536
+ /** Your user ID for the user for whom you want to create a client session. */
18418
18537
  user_identifier_key?: string | undefined;
18538
+ /** IDs of the [Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews) for which you want to create a client session. */
18419
18539
  connect_webview_ids?: string[] | undefined;
18540
+ /** IDs of the [connected accounts](https://docs.seam.co/latest/core-concepts/connected-accounts) for which you want to create a client session. */
18420
18541
  connected_account_ids?: string[] | undefined;
18542
+ /** IDs of the [user identities](https://docs.seam.co/latest/capability-guides/mobile-access/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) for which you want to create a client session. */
18421
18543
  user_identity_ids?: string[] | undefined;
18544
+ /** Date and time at which the client session should expire, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
18422
18545
  expires_at?: Date | undefined;
18423
18546
  };
18424
18547
  commonParams: {};
18425
18548
  formData: {};
18426
18549
  jsonResponse: {
18427
- /** */
18550
+ /** Represents a [client session](https://docs.seam.co/latest/core-concepts/authentication/client-session-tokens). If you want to restrict your users' access to their own devices, use client sessions.
18551
+
18552
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
18553
+
18554
+ When calling the Seam API from your backend using an API key, you can pass the `user_identifier_key` as a parameter to limit results to the associated client session. For example, `/devices/list?user_identifier_key=123` only returns devices associated with the client session created with the `user_identifier_key` `123`.
18555
+
18556
+ A client session has a token that you can use with the Seam JavaScript SDK to make requests from the client (browser) directly to the Seam API. The token restricts the user's access to only the devices that they own.
18557
+
18558
+ See also [Get Started with React](https://docs.seam.co/latest/ui-components/overview/getting-started-with-seam-components/get-started-with-react-components-and-client-session-tokens). */
18428
18559
  client_session: {
18429
18560
  client_session_id: string;
18430
18561
  workspace_id: string;
@@ -18445,6 +18576,7 @@ export interface Routes {
18445
18576
  queryParams: {};
18446
18577
  jsonBody: {};
18447
18578
  commonParams: {
18579
+ /** ID of the client session that you want to delete. */
18448
18580
  client_session_id: string;
18449
18581
  };
18450
18582
  formData: {};
@@ -18456,12 +18588,22 @@ export interface Routes {
18456
18588
  queryParams: {};
18457
18589
  jsonBody: {};
18458
18590
  commonParams: {
18591
+ /** ID of the client session that you want to get. */
18459
18592
  client_session_id?: string | undefined;
18593
+ /** User identifier key associated with the client session that you want to get. */
18460
18594
  user_identifier_key?: string | undefined;
18461
18595
  };
18462
18596
  formData: {};
18463
18597
  jsonResponse: {
18464
- /** */
18598
+ /** Represents a [client session](https://docs.seam.co/latest/core-concepts/authentication/client-session-tokens). If you want to restrict your users' access to their own devices, use client sessions.
18599
+
18600
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
18601
+
18602
+ When calling the Seam API from your backend using an API key, you can pass the `user_identifier_key` as a parameter to limit results to the associated client session. For example, `/devices/list?user_identifier_key=123` only returns devices associated with the client session created with the `user_identifier_key` `123`.
18603
+
18604
+ A client session has a token that you can use with the Seam JavaScript SDK to make requests from the client (browser) directly to the Seam API. The token restricts the user's access to only the devices that they own.
18605
+
18606
+ See also [Get Started with React](https://docs.seam.co/latest/ui-components/overview/getting-started-with-seam-components/get-started-with-react-components-and-client-session-tokens). */
18465
18607
  client_session: {
18466
18608
  client_session_id: string;
18467
18609
  workspace_id: string;
@@ -18481,16 +18623,29 @@ export interface Routes {
18481
18623
  method: 'POST';
18482
18624
  queryParams: {};
18483
18625
  jsonBody: {
18626
+ /** Your user ID for the user that you want to associate with the client session (or that is already associated with the existing client session). */
18484
18627
  user_identifier_key?: string | undefined;
18628
+ /** IDs of the [Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews) that you want to associate with the client session (or that are already associated with the existing client session). */
18485
18629
  connect_webview_ids?: string[] | undefined;
18630
+ /** IDs of the [connected accounts](https://docs.seam.co/latest/api/connected_accounts) that you want to associate with the client session (or that are already associated with the existing client session). */
18486
18631
  connected_account_ids?: string[] | undefined;
18632
+ /** IDs of the [user identities](https://docs.seam.co/latest/capability-guides/mobile-access/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) that you want to associate with the client session (or that are already associated with the existing client session). */
18487
18633
  user_identity_ids?: string[] | undefined;
18634
+ /** Date and time at which the client session should expire (or at which the existing client session expires), in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
18488
18635
  expires_at?: Date | undefined;
18489
18636
  };
18490
18637
  commonParams: {};
18491
18638
  formData: {};
18492
18639
  jsonResponse: {
18493
- /** */
18640
+ /** Represents a [client session](https://docs.seam.co/latest/core-concepts/authentication/client-session-tokens). If you want to restrict your users' access to their own devices, use client sessions.
18641
+
18642
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
18643
+
18644
+ When calling the Seam API from your backend using an API key, you can pass the `user_identifier_key` as a parameter to limit results to the associated client session. For example, `/devices/list?user_identifier_key=123` only returns devices associated with the client session created with the `user_identifier_key` `123`.
18645
+
18646
+ A client session has a token that you can use with the Seam JavaScript SDK to make requests from the client (browser) directly to the Seam API. The token restricts the user's access to only the devices that they own.
18647
+
18648
+ See also [Get Started with React](https://docs.seam.co/latest/ui-components/overview/getting-started-with-seam-components/get-started-with-react-components-and-client-session-tokens). */
18494
18649
  client_session: {
18495
18650
  client_session_id: string;
18496
18651
  workspace_id: string;
@@ -18511,15 +18666,28 @@ export interface Routes {
18511
18666
  queryParams: {};
18512
18667
  jsonBody: {};
18513
18668
  commonParams: {
18669
+ /** ID of the client session to which you want to grant access to resources. */
18514
18670
  client_session_id?: string | undefined;
18671
+ /** Your user ID for the user that you want to associate with the client session. */
18515
18672
  user_identifier_key?: string | undefined;
18673
+ /** IDs of the [connected accounts](https://docs.seam.co/latest/core-concepts/connected-accounts) that you want to associate with the client session. */
18516
18674
  connected_account_ids?: string[] | undefined;
18675
+ /** IDs of the [Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews) that you want to associate with the client session. */
18517
18676
  connect_webview_ids?: string[] | undefined;
18677
+ /** IDs of the [user identities](https://docs.seam.co/latest/capability-guides/mobile-access/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) that you want to associate with the client session. */
18518
18678
  user_identity_ids?: string[] | undefined;
18519
18679
  };
18520
18680
  formData: {};
18521
18681
  jsonResponse: {
18522
- /** */
18682
+ /** Represents a [client session](https://docs.seam.co/latest/core-concepts/authentication/client-session-tokens). If you want to restrict your users' access to their own devices, use client sessions.
18683
+
18684
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
18685
+
18686
+ When calling the Seam API from your backend using an API key, you can pass the `user_identifier_key` as a parameter to limit results to the associated client session. For example, `/devices/list?user_identifier_key=123` only returns devices associated with the client session created with the `user_identifier_key` `123`.
18687
+
18688
+ A client session has a token that you can use with the Seam JavaScript SDK to make requests from the client (browser) directly to the Seam API. The token restricts the user's access to only the devices that they own.
18689
+
18690
+ See also [Get Started with React](https://docs.seam.co/latest/ui-components/overview/getting-started-with-seam-components/get-started-with-react-components-and-client-session-tokens). */
18523
18691
  client_session: {
18524
18692
  client_session_id: string;
18525
18693
  workspace_id: string;
@@ -18540,10 +18708,15 @@ export interface Routes {
18540
18708
  queryParams: {};
18541
18709
  jsonBody: {};
18542
18710
  commonParams: {
18711
+ /** ID of the client session that you want to retrieve. */
18543
18712
  client_session_id?: string | undefined;
18713
+ /** Your user ID for the user by which you want to filter client sessions. */
18544
18714
  user_identifier_key?: string | undefined;
18715
+ /** ID of the [Connect Webview](https://docs.seam.co/latest/core-concepts/connect-webviews) for which you want to retrieve client sessions. */
18545
18716
  connect_webview_id?: string | undefined;
18717
+ /** Indicates whether to retrieve only client sessions without associated user identifier keys. */
18546
18718
  without_user_identifier_key?: boolean | undefined;
18719
+ /** ID of the [user identity](https://docs.seam.co/latest/capability-guides/mobile-access/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) for which you want to retrieve client sessions. */
18547
18720
  user_identity_id?: string | undefined;
18548
18721
  };
18549
18722
  formData: {};
@@ -18568,6 +18741,7 @@ export interface Routes {
18568
18741
  queryParams: {};
18569
18742
  jsonBody: {};
18570
18743
  commonParams: {
18744
+ /** ID of the client session that you want to revoke. */
18571
18745
  client_session_id: string;
18572
18746
  };
18573
18747
  formData: {};
@@ -18578,19 +18752,37 @@ export interface Routes {
18578
18752
  method: 'POST';
18579
18753
  queryParams: {};
18580
18754
  jsonBody: {
18755
+ /** */
18581
18756
  device_selection_mode?: ('none' | 'single' | 'multiple') | undefined;
18757
+ /** URL that you want to redirect the user to after the provider login is complete. */
18582
18758
  custom_redirect_url?: string | undefined;
18759
+ /** Alternative URL that you want to redirect the user to on an error. If you do not set this parameter, the Connect Webview falls back to the `custom_redirect_url`. */
18583
18760
  custom_redirect_failure_url?: string | undefined;
18761
+ /** Accepted device provider keys as an alternative to `provider_category`. Use this parameter to specify accepted providers explicitly. See [Customize the Brands to Display in Your Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews/customizing-connect-webviews#customize-the-brands-to-display-in-your-connect-webviews). To list all provider keys, use [`/devices/list_device_providers`](https://docs.seam.co/latest/api/devices/list_device_providers) with no filters. */
18584
18762
  accepted_providers?: Array<'dormakaba_community' | 'legic_connect' | 'akuvox' | 'august' | 'avigilon_alta' | 'brivo' | 'butterflymx' | 'schlage' | 'smartthings' | 'yale' | 'genie' | 'doorking' | 'salto' | 'salto_ks' | 'lockly' | 'ttlock' | 'linear' | 'noiseaware' | 'nuki' | 'seam_relay_admin' | 'igloo' | 'kwikset' | 'minut' | 'my_2n' | 'controlbyweb' | 'nest' | 'igloohome' | 'ecobee' | 'hubitat' | 'four_suites' | 'dormakaba_oracode' | 'pti' | 'wyze' | 'seam_passport' | 'visionline' | 'assa_abloy_credential_service' | 'seam_bridge' | 'tedee' | 'honeywell_resideo' | 'latch' | 'akiles' | 'assa_abloy_vostio' | 'assa_abloy_vostio_credential_service' | 'tado' | 'salto_space' | 'sensi' | 'kwikset2' | 'yale_access' | 'hid_cm' | 'google_nest'> | undefined;
18763
+ /** Specifies the category of providers that you want to include. To list all providers within a category, use [`/devices/list_device_providers`](https://docs.seam.co/latest/api/devices/list_device_providers) with the desired `provider_category` filter. */
18585
18764
  provider_category?: ('stable' | 'consumer_smartlocks' | 'thermostats' | 'noise_sensors' | 'access_control_systems' | 'internal_beta') | undefined;
18765
+ /** Custom metadata that you want to associate with the Connect Webview. Supports up to 50 JSON key:value pairs. [Adding custom metadata to a Connect Webview](https://docs.seam.co/latest/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview) enables you to store custom information, like customer details or internal IDs from your application. The custom metadata is then transferred to any [connected accounts](https://docs.seam.co/latest/core-concepts/connected-accounts) that were connected using the Connect Webview, making it easy to find and filter these resources in your [workspace](https://docs.seam.co/latest/core-concepts/workspaces). You can also [filter Connect Webviews by custom metadata](https://docs.seam.co/latest/core-concepts/connect-webviews/filtering-connect-webviews-by-custom-metadata). */
18586
18766
  custom_metadata?: Record<string, string | boolean | null> | undefined;
18767
+ /** Indicates whether newly-added devices should appear as [managed devices](https://docs.seam.co/latest/core-concepts/devices/managed-and-unmanaged-devices). See also: [Customize the Behavior Settings of Your Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews/customizing-connect-webviews#customize-the-behavior-settings-of-your-connect-webviews). */
18587
18768
  automatically_manage_new_devices?: boolean;
18769
+ /** Indicates whether Seam should finish syncing all devices in a newly-connected account before completing the associated Connect Webview. See also: [Customize the Behavior Settings of Your Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews/customizing-connect-webviews#customize-the-behavior-settings-of-your-connect-webviews). */
18588
18770
  wait_for_device_creation?: boolean;
18589
18771
  };
18590
18772
  commonParams: {};
18591
18773
  formData: {};
18592
18774
  jsonResponse: {
18593
- /** */
18775
+ /** Represents a [Connect Webview](https://docs.seam.co/latest/core-concepts/connect-webviews).
18776
+
18777
+ Connect Webviews are fully-embedded client-side components that you add to your app. Your users interact with your embedded Connect Webviews to link their IoT device or system accounts to Seam. That is, Connect Webviews walk your users through the process of logging in to their device or system accounts. Seam handles all the authentication steps, and—once your user has completed the authorization through your app—you can access and control their devices or systems using the Seam API.
18778
+
18779
+ Connect Webviews perform credential validation, multifactor authentication (when applicable), and error handling for each brand that Seam supports. Further, Connect Webviews work across all modern browsers and platforms, including Chrome, Safari, and Firefox.
18780
+
18781
+ To enable a user to connect their device or system account to Seam through your app, first create a `connect_webview`. Once created, this `connect_webview` includes a URL that you can use to open an [iframe](https://www.w3schools.com/html/html_iframe.asp) or new window containing the Connect Webview for your user.
18782
+
18783
+ When you create a Connect Webview, specify the desired provider category key in the `provider_category` parameter. Alternately, to specify a list of providers explicitly, use the `accepted_providers` parameter with a list of device provider keys.
18784
+
18785
+ To list all providers within a category, use `/devices/list_device_providers` with the desired `provider_category` filter. To list all provider keys, use `/devices/list_device_providers` with no filters. */
18594
18786
  connect_webview: {
18595
18787
  connect_webview_id: string;
18596
18788
  workspace_id: string;
@@ -18623,6 +18815,7 @@ export interface Routes {
18623
18815
  method: 'DELETE' | 'POST';
18624
18816
  queryParams: {};
18625
18817
  jsonBody: {
18818
+ /** ID of the Connect Webview that you want to delete. */
18626
18819
  connect_webview_id: string;
18627
18820
  };
18628
18821
  commonParams: {};
@@ -18635,11 +18828,22 @@ export interface Routes {
18635
18828
  queryParams: {};
18636
18829
  jsonBody: {};
18637
18830
  commonParams: {
18831
+ /** ID of the Connect Webview that you want to get. */
18638
18832
  connect_webview_id: string;
18639
18833
  };
18640
18834
  formData: {};
18641
18835
  jsonResponse: {
18642
- /** */
18836
+ /** Represents a [Connect Webview](https://docs.seam.co/latest/core-concepts/connect-webviews).
18837
+
18838
+ Connect Webviews are fully-embedded client-side components that you add to your app. Your users interact with your embedded Connect Webviews to link their IoT device or system accounts to Seam. That is, Connect Webviews walk your users through the process of logging in to their device or system accounts. Seam handles all the authentication steps, and—once your user has completed the authorization through your app—you can access and control their devices or systems using the Seam API.
18839
+
18840
+ Connect Webviews perform credential validation, multifactor authentication (when applicable), and error handling for each brand that Seam supports. Further, Connect Webviews work across all modern browsers and platforms, including Chrome, Safari, and Firefox.
18841
+
18842
+ To enable a user to connect their device or system account to Seam through your app, first create a `connect_webview`. Once created, this `connect_webview` includes a URL that you can use to open an [iframe](https://www.w3schools.com/html/html_iframe.asp) or new window containing the Connect Webview for your user.
18843
+
18844
+ When you create a Connect Webview, specify the desired provider category key in the `provider_category` parameter. Alternately, to specify a list of providers explicitly, use the `accepted_providers` parameter with a list of device provider keys.
18845
+
18846
+ To list all providers within a category, use `/devices/list_device_providers` with the desired `provider_category` filter. To list all provider keys, use `/devices/list_device_providers` with no filters. */
18643
18847
  connect_webview: {
18644
18848
  connect_webview_id: string;
18645
18849
  workspace_id: string;
@@ -18673,10 +18877,11 @@ export interface Routes {
18673
18877
  queryParams: {};
18674
18878
  jsonBody: {};
18675
18879
  commonParams: {
18676
- /** Returns webviews that can be accessed by the provided user_identifier_key. */
18880
+ /** Your user ID for the user by which you want to filter Connect Webviews. */
18677
18881
  user_identifier_key?: string | undefined;
18678
- /** Returns webviews whose custom_metadata contains all of the provided key/value pairs. */
18882
+ /** Custom metadata pairs by which you want to [filter Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews/filtering-connect-webviews-by-custom-metadata). Returns Connect Webviews with `custom_metadata` that contains all of the provided key:value pairs. */
18679
18883
  custom_metadata_has?: Record<string, string | boolean> | undefined;
18884
+ /** Maximum number of records to return per page. */
18680
18885
  limit?: number;
18681
18886
  };
18682
18887
  formData: {};
@@ -18713,7 +18918,9 @@ export interface Routes {
18713
18918
  method: 'DELETE' | 'POST';
18714
18919
  queryParams: {};
18715
18920
  jsonBody: {
18921
+ /** ID of the connected account that you want to delete. */
18716
18922
  connected_account_id: string;
18923
+ /** */
18717
18924
  sync?: boolean;
18718
18925
  };
18719
18926
  commonParams: {};
@@ -18726,13 +18933,15 @@ export interface Routes {
18726
18933
  queryParams: {};
18727
18934
  jsonBody: {};
18728
18935
  commonParams: {
18936
+ /** ID of the connected account that you want to get. */
18729
18937
  connected_account_id: string;
18730
18938
  } | {
18939
+ /** Email address associated with the connected account that you want to get. */
18731
18940
  email: string;
18732
18941
  };
18733
18942
  formData: {};
18734
18943
  jsonResponse: {
18735
- /** */
18944
+ /** Represents a [connected account](https://docs.seam.co/latest/core-concepts/connected-accounts). A connected account is an external third-party account to which your user has authorized Seam to get access, for example, an August account with a list of door locks. */
18736
18945
  connected_account: {
18737
18946
  connected_account_id?: string | undefined;
18738
18947
  created_at?: string | undefined;
@@ -18824,9 +19033,9 @@ export interface Routes {
18824
19033
  queryParams: {};
18825
19034
  jsonBody: {};
18826
19035
  commonParams: {
18827
- /** Returns accounts that can be accessed by the provided user_identifier_key. */
19036
+ /** Your user ID for the user by which you want to filter connected accounts. */
18828
19037
  user_identifier_key?: string | undefined;
18829
- /** Returns accounts whose custom_metadata contains all of the provided key/value pairs. */
19038
+ /** Custom metadata pairs by which you want to filter connected accounts. Returns connected accounts with `custom_metadata` that contains all of the provided key:value pairs. */
18830
19039
  custom_metadata_has?: Record<string, string | boolean> | undefined;
18831
19040
  customer_ids?: string[] | undefined;
18832
19041
  /** Maximum number of records to return per page. */
@@ -18935,14 +19144,17 @@ export interface Routes {
18935
19144
  method: 'POST';
18936
19145
  queryParams: {};
18937
19146
  jsonBody: {
19147
+ /** ID of the connected account that you want to update. */
18938
19148
  connected_account_id: string;
19149
+ /** Indicates whether newly-added devices should appear as [managed devices](https://docs.seam.co/latest/core-concepts/devices/managed-and-unmanaged-devices). */
18939
19150
  automatically_manage_new_devices?: boolean | undefined;
19151
+ /** Custom metadata that you want to associate with the connected account. Supports up to 50 JSON key:value pairs. [Adding custom metadata to a connected account](https://docs.seam.co/latest/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account) enables you to store custom information, like customer details or internal IDs from your application. Then, you can [filter connected accounts by the desired metadata](https://docs.seam.co/latest/core-concepts/connected-accounts/filtering-connected-accounts-by-custom-metadata). */
18940
19152
  custom_metadata?: Record<string, string | boolean | null> | undefined;
18941
19153
  };
18942
19154
  commonParams: {};
18943
19155
  formData: {};
18944
19156
  jsonResponse: {
18945
- /** */
19157
+ /** Represents a [connected account](https://docs.seam.co/latest/core-concepts/connected-accounts). A connected account is an external third-party account to which your user has authorized Seam to get access, for example, an August account with a list of door locks. */
18946
19158
  connected_account: {
18947
19159
  connected_account_id?: string | undefined;
18948
19160
  created_at?: string | undefined;
@@ -19034,6 +19246,7 @@ export interface Routes {
19034
19246
  queryParams: {};
19035
19247
  jsonBody: {};
19036
19248
  commonParams: {
19249
+ /** ID of the device that you want to delete. */
19037
19250
  device_id: string;
19038
19251
  };
19039
19252
  formData: {};
@@ -19045,12 +19258,14 @@ export interface Routes {
19045
19258
  queryParams: {};
19046
19259
  jsonBody: {};
19047
19260
  commonParams: {
19261
+ /** ID of the device that you want to get. */
19048
19262
  device_id?: string | undefined;
19263
+ /** Name of the device that you want to get. */
19049
19264
  name?: string | undefined;
19050
19265
  };
19051
19266
  formData: {};
19052
19267
  jsonResponse: {
19053
- /** */
19268
+ /** Represents a [device](https://docs.seam.co/latest/core-concepts/devices) that has been connected to Seam. */
19054
19269
  device: {
19055
19270
  /** Unique identifier for the device. */
19056
19271
  device_id: string;
@@ -19108,7 +19323,7 @@ export interface Routes {
19108
19323
  level: number;
19109
19324
  status: 'critical' | 'low' | 'good' | 'full';
19110
19325
  } | undefined;
19111
- /** Manufacturer of the device. */
19326
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
19112
19327
  manufacturer?: string | undefined;
19113
19328
  /** Image URL for the device. */
19114
19329
  image_url?: string | undefined;
@@ -19387,6 +19602,7 @@ export interface Routes {
19387
19602
  } | undefined;
19388
19603
  }) & ({
19389
19604
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
19605
+ /** Constraints on access codes for the device. 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. */
19390
19606
  code_constraints?: (Array<{
19391
19607
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
19392
19608
  } | {
@@ -19812,27 +20028,27 @@ export interface Routes {
19812
20028
  jsonBody: {};
19813
20029
  commonParams: {
19814
20030
  customer_ids?: string[] | undefined;
19815
- /** ID of the connected account by which to filter. */
20031
+ /** ID of the connected account for which you want to list devices. */
19816
20032
  connected_account_id?: string | undefined;
19817
- /** Array of IDs of the connected accounts by which to filter devices. */
20033
+ /** Array of IDs of the connected accounts for which you want to list devices. */
19818
20034
  connected_account_ids?: string[] | undefined;
19819
- /** ID of the Connect Webview by which to filter devices. */
20035
+ /** ID of the Connect Webview for which you want to list devices. */
19820
20036
  connect_webview_id?: string | undefined;
19821
- /** Device type by which to filter devices. */
20037
+ /** Device type for which you want to list devices. */
19822
20038
  device_type?: (('akuvox_lock' | 'august_lock' | 'brivo_access_point' | 'butterflymx_panel' | 'avigilon_alta_entry' | 'doorking_lock' | 'genie_door' | 'igloo_lock' | 'linear_lock' | 'lockly_lock' | 'kwikset_lock' | 'nuki_lock' | 'salto_lock' | 'schlage_lock' | 'seam_relay' | 'smartthings_lock' | 'wyze_lock' | 'yale_lock' | 'two_n_intercom' | 'controlbyweb_device' | 'ttlock_lock' | 'igloohome_lock' | 'hubitat_lock' | 'four_suites_door' | 'dormakaba_oracode_door' | 'tedee_lock' | 'akiles_lock') | ('noiseaware_activity_zone' | 'minut_sensor') | ('ecobee_thermostat' | 'nest_thermostat' | 'honeywell_resideo_thermostat' | 'tado_thermostat' | 'sensi_thermostat' | 'smartthings_thermostat') | ('ios_phone' | 'android_phone')) | undefined;
19823
- /** Array of device types by which to filter devices. */
20039
+ /** Array of device types for which you want to list devices. */
19824
20040
  device_types?: Array<('akuvox_lock' | 'august_lock' | 'brivo_access_point' | 'butterflymx_panel' | 'avigilon_alta_entry' | 'doorking_lock' | 'genie_door' | 'igloo_lock' | 'linear_lock' | 'lockly_lock' | 'kwikset_lock' | 'nuki_lock' | 'salto_lock' | 'schlage_lock' | 'seam_relay' | 'smartthings_lock' | 'wyze_lock' | 'yale_lock' | 'two_n_intercom' | 'controlbyweb_device' | 'ttlock_lock' | 'igloohome_lock' | 'hubitat_lock' | 'four_suites_door' | 'dormakaba_oracode_door' | 'tedee_lock' | 'akiles_lock') | ('noiseaware_activity_zone' | 'minut_sensor') | ('ecobee_thermostat' | 'nest_thermostat' | 'honeywell_resideo_thermostat' | 'tado_thermostat' | 'sensi_thermostat' | 'smartthings_thermostat') | ('ios_phone' | 'android_phone')> | undefined;
19825
- /** Manufacturer by which to filter devices. */
20041
+ /** Manufacturer for which you want to list devices. */
19826
20042
  manufacturer?: ('akuvox' | 'august' | 'avigilon_alta' | 'brivo' | 'butterflymx' | 'doorking' | 'four_suites' | 'genie' | 'igloo' | 'keywe' | 'kwikset' | 'linear' | 'lockly' | 'nuki' | 'philia' | 'salto' | 'samsung' | 'schlage' | 'seam' | 'unknown' | 'wyze' | 'yale' | 'two_n' | 'ttlock' | 'igloohome' | 'hubitat' | 'controlbyweb' | 'smartthings' | 'dormakaba_oracode' | 'tedee' | 'akiles' | 'ecobee' | 'honeywell_resideo' | 'minut' | 'nest' | 'noiseaware' | 'tado' | 'sensi') | undefined;
19827
- /** Array of device IDs by which to filter devices. */
20043
+ /** Array of device IDs for which you want to list devices. */
19828
20044
  device_ids?: string[] | undefined;
19829
20045
  /** Numerical limit on the number of devices to return. */
19830
20046
  limit?: number;
19831
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
20047
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
19832
20048
  created_before?: Date | undefined;
19833
- /** Your own internal user ID for the user by which to filter devices. */
20049
+ /** Your own internal user ID for the user for which you want to list devices. */
19834
20050
  user_identifier_key?: string | undefined;
19835
- /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices. */
20051
+ /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs for which you want to list devices. */
19836
20052
  custom_metadata_has?: Record<string, string | boolean> | undefined;
19837
20053
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
19838
20054
  page_cursor?: (string | undefined) | null;
@@ -19840,7 +20056,7 @@ export interface Routes {
19840
20056
  include_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
19841
20057
  /** */
19842
20058
  exclude_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
19843
- /** */
20059
+ /** ID of the location for which you want to list devices. */
19844
20060
  unstable_location_id?: (string | null) | undefined;
19845
20061
  };
19846
20062
  formData: {};
@@ -19902,7 +20118,7 @@ export interface Routes {
19902
20118
  level: number;
19903
20119
  status: 'critical' | 'low' | 'good' | 'full';
19904
20120
  } | undefined;
19905
- /** Manufacturer of the device. */
20121
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
19906
20122
  manufacturer?: string | undefined;
19907
20123
  /** Image URL for the device. */
19908
20124
  image_url?: string | undefined;
@@ -20181,6 +20397,7 @@ export interface Routes {
20181
20397
  } | undefined;
20182
20398
  }) & ({
20183
20399
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
20400
+ /** Constraints on access codes for the device. 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. */
20184
20401
  code_constraints?: (Array<{
20185
20402
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
20186
20403
  } | {
@@ -20614,6 +20831,7 @@ export interface Routes {
20614
20831
  queryParams: {};
20615
20832
  jsonBody: {};
20616
20833
  commonParams: {
20834
+ /** Category for which you want to list providers. */
20617
20835
  provider_category?: ('stable' | 'consumer_smartlocks' | 'thermostats' | 'noise_sensors' | 'access_control_systems') | undefined;
20618
20836
  };
20619
20837
  formData: {};
@@ -20642,6 +20860,7 @@ export interface Routes {
20642
20860
  method: 'POST';
20643
20861
  queryParams: {};
20644
20862
  jsonBody: {
20863
+ /** ID of the device that you want to simulate connecting to Seam. */
20645
20864
  device_id: string;
20646
20865
  };
20647
20866
  commonParams: {};
@@ -20653,6 +20872,7 @@ export interface Routes {
20653
20872
  method: 'POST';
20654
20873
  queryParams: {};
20655
20874
  jsonBody: {
20875
+ /** ID of the device that you want to simulate disconnecting from Seam. */
20656
20876
  device_id: string;
20657
20877
  };
20658
20878
  commonParams: {};
@@ -20664,6 +20884,7 @@ export interface Routes {
20664
20884
  method: 'DELETE' | 'POST';
20665
20885
  queryParams: {};
20666
20886
  jsonBody: {
20887
+ /** ID of the device that you want to simulate removing from Seam. */
20667
20888
  device_id: string;
20668
20889
  };
20669
20890
  commonParams: {};
@@ -20676,12 +20897,14 @@ export interface Routes {
20676
20897
  queryParams: {};
20677
20898
  jsonBody: {};
20678
20899
  commonParams: {
20900
+ /** ID of the unmanaged device that you want to get. */
20679
20901
  device_id?: string | undefined;
20902
+ /** Name of the unmanaged device that you want to get. */
20680
20903
  name?: string | undefined;
20681
20904
  };
20682
20905
  formData: {};
20683
20906
  jsonResponse: {
20684
- /** */
20907
+ /** Represents an [unmanaged device](https://docs.seam.co/latest/core-concepts/devices/managed-and-unmanaged-devices). An unmanaged device has a limited set of visible properties and a subset of supported events. You cannot control an unmanaged device. Any [access codes](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/migrating-existing-access-codes) on an unmanaged device are unmanaged. To control an unmanaged device with Seam, [convert it to a managed device](https://docs.seam.co/latest/core-concepts/devices/managed-and-unmanaged-devices#convert-an-unmanaged-device-to-managed). */
20685
20908
  device: {
20686
20909
  /** Unique identifier for the device. */
20687
20910
  device_id: string;
@@ -20903,7 +21126,7 @@ export interface Routes {
20903
21126
  name: string;
20904
21127
  /** Indicates whether the device is online. */
20905
21128
  online: boolean;
20906
- /** Manufacturer of the device. */
21129
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
20907
21130
  manufacturer?: string | undefined;
20908
21131
  /** Image URL for the device. */
20909
21132
  image_url?: string | undefined;
@@ -20959,27 +21182,27 @@ export interface Routes {
20959
21182
  jsonBody: {};
20960
21183
  commonParams: {
20961
21184
  customer_ids?: string[] | undefined;
20962
- /** ID of the connected account by which to filter. */
21185
+ /** ID of the connected account for which you want to list devices. */
20963
21186
  connected_account_id?: string | undefined;
20964
- /** Array of IDs of the connected accounts by which to filter devices. */
21187
+ /** Array of IDs of the connected accounts for which you want to list devices. */
20965
21188
  connected_account_ids?: string[] | undefined;
20966
- /** ID of the Connect Webview by which to filter devices. */
21189
+ /** ID of the Connect Webview for which you want to list devices. */
20967
21190
  connect_webview_id?: string | undefined;
20968
- /** Device type by which to filter devices. */
21191
+ /** Device type for which you want to list devices. */
20969
21192
  device_type?: (('akuvox_lock' | 'august_lock' | 'brivo_access_point' | 'butterflymx_panel' | 'avigilon_alta_entry' | 'doorking_lock' | 'genie_door' | 'igloo_lock' | 'linear_lock' | 'lockly_lock' | 'kwikset_lock' | 'nuki_lock' | 'salto_lock' | 'schlage_lock' | 'seam_relay' | 'smartthings_lock' | 'wyze_lock' | 'yale_lock' | 'two_n_intercom' | 'controlbyweb_device' | 'ttlock_lock' | 'igloohome_lock' | 'hubitat_lock' | 'four_suites_door' | 'dormakaba_oracode_door' | 'tedee_lock' | 'akiles_lock') | ('noiseaware_activity_zone' | 'minut_sensor') | ('ecobee_thermostat' | 'nest_thermostat' | 'honeywell_resideo_thermostat' | 'tado_thermostat' | 'sensi_thermostat' | 'smartthings_thermostat') | ('ios_phone' | 'android_phone')) | undefined;
20970
- /** Array of device types by which to filter devices. */
21193
+ /** Array of device types for which you want to list devices. */
20971
21194
  device_types?: Array<('akuvox_lock' | 'august_lock' | 'brivo_access_point' | 'butterflymx_panel' | 'avigilon_alta_entry' | 'doorking_lock' | 'genie_door' | 'igloo_lock' | 'linear_lock' | 'lockly_lock' | 'kwikset_lock' | 'nuki_lock' | 'salto_lock' | 'schlage_lock' | 'seam_relay' | 'smartthings_lock' | 'wyze_lock' | 'yale_lock' | 'two_n_intercom' | 'controlbyweb_device' | 'ttlock_lock' | 'igloohome_lock' | 'hubitat_lock' | 'four_suites_door' | 'dormakaba_oracode_door' | 'tedee_lock' | 'akiles_lock') | ('noiseaware_activity_zone' | 'minut_sensor') | ('ecobee_thermostat' | 'nest_thermostat' | 'honeywell_resideo_thermostat' | 'tado_thermostat' | 'sensi_thermostat' | 'smartthings_thermostat') | ('ios_phone' | 'android_phone')> | undefined;
20972
- /** Manufacturer by which to filter devices. */
21195
+ /** Manufacturer for which you want to list devices. */
20973
21196
  manufacturer?: ('akuvox' | 'august' | 'avigilon_alta' | 'brivo' | 'butterflymx' | 'doorking' | 'four_suites' | 'genie' | 'igloo' | 'keywe' | 'kwikset' | 'linear' | 'lockly' | 'nuki' | 'philia' | 'salto' | 'samsung' | 'schlage' | 'seam' | 'unknown' | 'wyze' | 'yale' | 'two_n' | 'ttlock' | 'igloohome' | 'hubitat' | 'controlbyweb' | 'smartthings' | 'dormakaba_oracode' | 'tedee' | 'akiles' | 'ecobee' | 'honeywell_resideo' | 'minut' | 'nest' | 'noiseaware' | 'tado' | 'sensi') | undefined;
20974
- /** Array of device IDs by which to filter devices. */
21197
+ /** Array of device IDs for which you want to list devices. */
20975
21198
  device_ids?: string[] | undefined;
20976
21199
  /** Numerical limit on the number of devices to return. */
20977
21200
  limit?: number;
20978
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
21201
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
20979
21202
  created_before?: Date | undefined;
20980
- /** Your own internal user ID for the user by which to filter devices. */
21203
+ /** Your own internal user ID for the user for which you want to list devices. */
20981
21204
  user_identifier_key?: string | undefined;
20982
- /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices. */
21205
+ /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs for which you want to list devices. */
20983
21206
  custom_metadata_has?: Record<string, string | boolean> | undefined;
20984
21207
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
20985
21208
  page_cursor?: (string | undefined) | null;
@@ -20987,7 +21210,7 @@ export interface Routes {
20987
21210
  include_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
20988
21211
  /** */
20989
21212
  exclude_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
20990
- /** */
21213
+ /** ID of the location for which you want to list devices. */
20991
21214
  unstable_location_id?: (string | null) | undefined;
20992
21215
  };
20993
21216
  formData: {};
@@ -21213,7 +21436,7 @@ export interface Routes {
21213
21436
  name: string;
21214
21437
  /** Indicates whether the device is online. */
21215
21438
  online: boolean;
21216
- /** Manufacturer of the device. */
21439
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
21217
21440
  manufacturer?: string | undefined;
21218
21441
  /** Image URL for the device. */
21219
21442
  image_url?: string | undefined;
@@ -21268,7 +21491,9 @@ export interface Routes {
21268
21491
  queryParams: {};
21269
21492
  jsonBody: {};
21270
21493
  commonParams: {
21494
+ /** ID of the unmanaged device that you want to update. */
21271
21495
  device_id: string;
21496
+ /** Indicates whether the device is managed. Set this parameter to `true` to convert an unmanaged device to managed. */
21272
21497
  is_managed: true;
21273
21498
  };
21274
21499
  formData: {};
@@ -21280,12 +21505,17 @@ export interface Routes {
21280
21505
  queryParams: {};
21281
21506
  jsonBody: {};
21282
21507
  commonParams: {
21508
+ /** ID of the device that you want to update. */
21283
21509
  device_id: string;
21284
21510
  properties?: {
21511
+ /** Name for the device. */
21285
21512
  name?: (string | null) | undefined;
21286
21513
  } | undefined;
21514
+ /** Name for the device. */
21287
21515
  name?: (string | null) | undefined;
21516
+ /** Indicates whether the device is managed. To unmanage a device, set `is_managed` to `false`. */
21288
21517
  is_managed?: boolean;
21518
+ /** Custom metadata that you want to associate with the device. Supports up to 50 JSON key:value pairs. [Adding custom metadata to a device](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) enables you to store custom information, like customer details or internal IDs from your application. Then, you can [filter devices by the desired metadata](https://docs.seam.co/latest/core-concepts/devices/filtering-devices-by-custom-metadata). */
21289
21519
  custom_metadata?: Record<string, string | boolean | null> | undefined;
21290
21520
  };
21291
21521
  formData: {};
@@ -21303,7 +21533,9 @@ export interface Routes {
21303
21533
  };
21304
21534
  formData: {};
21305
21535
  jsonResponse: {
21306
- /** */
21536
+ /** Represents an event. Events let you know when something interesting happens in your workspace. For example, when a lock is unlocked, Seam creates a `lock.unlocked` event. When a device's battery level is low, Seam creates a `device.battery_low` event.
21537
+
21538
+ As with other API resources, you can retrieve an individual event or a list of events. Seam also provides a separate [webhook](https://docs.seam.co/latest/developer-tools/webhooks) system for sending the event objects directly to an endpoint on your sever. Manage webhooks through [Seam Console](https://console.seam.co). You can also use the webhooks sandbox in Seam Console to see the different payloads for each event and test them against your own endpoints. */
21307
21539
  event?: ({
21308
21540
  /** ID of the event. */
21309
21541
  event_id: string;
@@ -24067,7 +24299,7 @@ export interface Routes {
24067
24299
  };
24068
24300
  formData: {};
24069
24301
  jsonResponse: {
24070
- /** */
24302
+ /** Represents a [device](https://docs.seam.co/latest/core-concepts/devices) that has been connected to Seam. */
24071
24303
  lock: {
24072
24304
  /** Unique identifier for the device. */
24073
24305
  device_id: string;
@@ -24125,7 +24357,7 @@ export interface Routes {
24125
24357
  level: number;
24126
24358
  status: 'critical' | 'low' | 'good' | 'full';
24127
24359
  } | undefined;
24128
- /** Manufacturer of the device. */
24360
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
24129
24361
  manufacturer?: string | undefined;
24130
24362
  /** Image URL for the device. */
24131
24363
  image_url?: string | undefined;
@@ -24404,6 +24636,7 @@ export interface Routes {
24404
24636
  } | undefined;
24405
24637
  }) & ({
24406
24638
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
24639
+ /** Constraints on access codes for the device. 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. */
24407
24640
  code_constraints?: (Array<{
24408
24641
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
24409
24642
  } | {
@@ -24820,7 +25053,7 @@ export interface Routes {
24820
25053
  can_simulate_connection?: boolean | undefined;
24821
25054
  can_simulate_disconnection?: boolean | undefined;
24822
25055
  };
24823
- /** */
25056
+ /** Represents a [device](https://docs.seam.co/latest/core-concepts/devices) that has been connected to Seam. */
24824
25057
  device: {
24825
25058
  /** Unique identifier for the device. */
24826
25059
  device_id: string;
@@ -24878,7 +25111,7 @@ export interface Routes {
24878
25111
  level: number;
24879
25112
  status: 'critical' | 'low' | 'good' | 'full';
24880
25113
  } | undefined;
24881
- /** Manufacturer of the device. */
25114
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
24882
25115
  manufacturer?: string | undefined;
24883
25116
  /** Image URL for the device. */
24884
25117
  image_url?: string | undefined;
@@ -25157,6 +25390,7 @@ export interface Routes {
25157
25390
  } | undefined;
25158
25391
  }) & ({
25159
25392
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
25393
+ /** Constraints on access codes for the device. 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. */
25160
25394
  code_constraints?: (Array<{
25161
25395
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
25162
25396
  } | {
@@ -25582,11 +25816,11 @@ export interface Routes {
25582
25816
  jsonBody: {};
25583
25817
  commonParams: {
25584
25818
  customer_ids?: string[] | undefined;
25585
- /** ID of the connected account by which to filter. */
25819
+ /** ID of the connected account for which you want to list devices. */
25586
25820
  connected_account_id?: string | undefined;
25587
- /** Array of IDs of the connected accounts by which to filter devices. */
25821
+ /** Array of IDs of the connected accounts for which you want to list devices. */
25588
25822
  connected_account_ids?: string[] | undefined;
25589
- /** ID of the Connect Webview by which to filter devices. */
25823
+ /** ID of the Connect Webview for which you want to list devices. */
25590
25824
  connect_webview_id?: string | undefined;
25591
25825
  /** Device type by which to filter devices. */
25592
25826
  device_type?: ('akuvox_lock' | 'august_lock' | 'brivo_access_point' | 'butterflymx_panel' | 'avigilon_alta_entry' | 'doorking_lock' | 'genie_door' | 'igloo_lock' | 'linear_lock' | 'lockly_lock' | 'kwikset_lock' | 'nuki_lock' | 'salto_lock' | 'schlage_lock' | 'seam_relay' | 'smartthings_lock' | 'wyze_lock' | 'yale_lock' | 'two_n_intercom' | 'controlbyweb_device' | 'ttlock_lock' | 'igloohome_lock' | 'hubitat_lock' | 'four_suites_door' | 'dormakaba_oracode_door' | 'tedee_lock' | 'akiles_lock') | undefined;
@@ -25594,15 +25828,15 @@ export interface Routes {
25594
25828
  device_types?: Array<'akuvox_lock' | 'august_lock' | 'brivo_access_point' | 'butterflymx_panel' | 'avigilon_alta_entry' | 'doorking_lock' | 'genie_door' | 'igloo_lock' | 'linear_lock' | 'lockly_lock' | 'kwikset_lock' | 'nuki_lock' | 'salto_lock' | 'schlage_lock' | 'seam_relay' | 'smartthings_lock' | 'wyze_lock' | 'yale_lock' | 'two_n_intercom' | 'controlbyweb_device' | 'ttlock_lock' | 'igloohome_lock' | 'hubitat_lock' | 'four_suites_door' | 'dormakaba_oracode_door' | 'tedee_lock' | 'akiles_lock'> | undefined;
25595
25829
  /** Manufacturer by which to filter devices. */
25596
25830
  manufacturer?: ('akuvox' | 'august' | 'brivo' | 'butterflymx' | 'avigilon_alta' | 'doorking' | 'genie' | 'igloo' | 'linear' | 'lockly' | 'kwikset' | 'nuki' | 'salto' | 'schlage' | 'seam' | 'smartthings' | 'wyze' | 'yale' | 'two_n' | 'controlbyweb' | 'ttlock' | 'igloohome' | 'hubitat' | 'four_suites' | 'dormakaba_oracode' | 'tedee' | 'akiles') | undefined;
25597
- /** Array of device IDs by which to filter devices. */
25831
+ /** Array of device IDs for which you want to list devices. */
25598
25832
  device_ids?: string[] | undefined;
25599
25833
  /** Numerical limit on the number of devices to return. */
25600
25834
  limit?: number;
25601
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
25835
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
25602
25836
  created_before?: Date | undefined;
25603
- /** Your own internal user ID for the user by which to filter devices. */
25837
+ /** Your own internal user ID for the user for which you want to list devices. */
25604
25838
  user_identifier_key?: string | undefined;
25605
- /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices. */
25839
+ /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs for which you want to list devices. */
25606
25840
  custom_metadata_has?: Record<string, string | boolean> | undefined;
25607
25841
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
25608
25842
  page_cursor?: (string | undefined) | null;
@@ -25610,7 +25844,7 @@ export interface Routes {
25610
25844
  include_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
25611
25845
  /** */
25612
25846
  exclude_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
25613
- /** */
25847
+ /** ID of the location for which you want to list devices. */
25614
25848
  unstable_location_id?: (string | null) | undefined;
25615
25849
  };
25616
25850
  formData: {};
@@ -25672,7 +25906,7 @@ export interface Routes {
25672
25906
  level: number;
25673
25907
  status: 'critical' | 'low' | 'good' | 'full';
25674
25908
  } | undefined;
25675
- /** Manufacturer of the device. */
25909
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
25676
25910
  manufacturer?: string | undefined;
25677
25911
  /** Image URL for the device. */
25678
25912
  image_url?: string | undefined;
@@ -25951,6 +26185,7 @@ export interface Routes {
25951
26185
  } | undefined;
25952
26186
  }) & ({
25953
26187
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
26188
+ /** Constraints on access codes for the device. 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. */
25954
26189
  code_constraints?: (Array<{
25955
26190
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
25956
26191
  } | {
@@ -26424,7 +26659,7 @@ export interface Routes {
26424
26659
  level: number;
26425
26660
  status: 'critical' | 'low' | 'good' | 'full';
26426
26661
  } | undefined;
26427
- /** Manufacturer of the device. */
26662
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
26428
26663
  manufacturer?: string | undefined;
26429
26664
  /** Image URL for the device. */
26430
26665
  image_url?: string | undefined;
@@ -26703,6 +26938,7 @@ export interface Routes {
26703
26938
  } | undefined;
26704
26939
  }) & ({
26705
26940
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
26941
+ /** Constraints on access codes for the device. 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. */
26706
26942
  code_constraints?: (Array<{
26707
26943
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
26708
26944
  } | {
@@ -31626,11 +31862,11 @@ export interface Routes {
31626
31862
  jsonBody: {};
31627
31863
  commonParams: {
31628
31864
  customer_ids?: string[] | undefined;
31629
- /** ID of the connected account by which to filter. */
31865
+ /** ID of the connected account for which you want to list devices. */
31630
31866
  connected_account_id?: string | undefined;
31631
- /** Array of IDs of the connected accounts by which to filter devices. */
31867
+ /** Array of IDs of the connected accounts for which you want to list devices. */
31632
31868
  connected_account_ids?: string[] | undefined;
31633
- /** ID of the Connect Webview by which to filter devices. */
31869
+ /** ID of the Connect Webview for which you want to list devices. */
31634
31870
  connect_webview_id?: string | undefined;
31635
31871
  /** Device type by which to filter devices. */
31636
31872
  device_type?: ('noiseaware_activity_zone' | 'minut_sensor') | undefined;
@@ -31638,15 +31874,15 @@ export interface Routes {
31638
31874
  device_types?: Array<'noiseaware_activity_zone' | 'minut_sensor'> | undefined;
31639
31875
  /** Manufacturer by which to filter devices. */
31640
31876
  manufacturer?: ('minut' | 'noiseaware') | undefined;
31641
- /** Array of device IDs by which to filter devices. */
31877
+ /** Array of device IDs for which you want to list devices. */
31642
31878
  device_ids?: string[] | undefined;
31643
31879
  /** Numerical limit on the number of devices to return. */
31644
31880
  limit?: number;
31645
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
31881
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
31646
31882
  created_before?: Date | undefined;
31647
- /** Your own internal user ID for the user by which to filter devices. */
31883
+ /** Your own internal user ID for the user for which you want to list devices. */
31648
31884
  user_identifier_key?: string | undefined;
31649
- /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices. */
31885
+ /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs for which you want to list devices. */
31650
31886
  custom_metadata_has?: Record<string, string | boolean> | undefined;
31651
31887
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
31652
31888
  page_cursor?: (string | undefined) | null;
@@ -31654,7 +31890,7 @@ export interface Routes {
31654
31890
  include_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
31655
31891
  /** */
31656
31892
  exclude_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
31657
- /** */
31893
+ /** ID of the location for which you want to list devices. */
31658
31894
  unstable_location_id?: (string | null) | undefined;
31659
31895
  };
31660
31896
  formData: {};
@@ -31716,7 +31952,7 @@ export interface Routes {
31716
31952
  level: number;
31717
31953
  status: 'critical' | 'low' | 'good' | 'full';
31718
31954
  } | undefined;
31719
- /** Manufacturer of the device. */
31955
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
31720
31956
  manufacturer?: string | undefined;
31721
31957
  /** Image URL for the device. */
31722
31958
  image_url?: string | undefined;
@@ -31995,6 +32231,7 @@ export interface Routes {
31995
32231
  } | undefined;
31996
32232
  }) & ({
31997
32233
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
32234
+ /** Constraints on access codes for the device. 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. */
31998
32235
  code_constraints?: (Array<{
31999
32236
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
32000
32237
  } | {
@@ -32468,7 +32705,7 @@ export interface Routes {
32468
32705
  level: number;
32469
32706
  status: 'critical' | 'low' | 'good' | 'full';
32470
32707
  } | undefined;
32471
- /** Manufacturer of the device. */
32708
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
32472
32709
  manufacturer?: string | undefined;
32473
32710
  /** Image URL for the device. */
32474
32711
  image_url?: string | undefined;
@@ -32747,6 +32984,7 @@ export interface Routes {
32747
32984
  } | undefined;
32748
32985
  }) & ({
32749
32986
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
32987
+ /** Constraints on access codes for the device. 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. */
32750
32988
  code_constraints?: (Array<{
32751
32989
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
32752
32990
  } | {
@@ -37046,7 +37284,15 @@ export interface Routes {
37046
37284
  commonParams: {};
37047
37285
  formData: {};
37048
37286
  jsonResponse: {
37049
- /** */
37287
+ /** Represents a [client session](https://docs.seam.co/latest/core-concepts/authentication/client-session-tokens). If you want to restrict your users' access to their own devices, use client sessions.
37288
+
37289
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
37290
+
37291
+ When calling the Seam API from your backend using an API key, you can pass the `user_identifier_key` as a parameter to limit results to the associated client session. For example, `/devices/list?user_identifier_key=123` only returns devices associated with the client session created with the `user_identifier_key` `123`.
37292
+
37293
+ A client session has a token that you can use with the Seam JavaScript SDK to make requests from the client (browser) directly to the Seam API. The token restricts the user's access to only the devices that they own.
37294
+
37295
+ See also [Get Started with React](https://docs.seam.co/latest/ui-components/overview/getting-started-with-seam-components/get-started-with-react-components-and-client-session-tokens). */
37050
37296
  client_session: {
37051
37297
  client_session_id: string;
37052
37298
  workspace_id: string;
@@ -40661,7 +40907,7 @@ export interface Routes {
40661
40907
  };
40662
40908
  formData: {};
40663
40909
  jsonResponse: {
40664
- /** */
40910
+ /** Represents a [device](https://docs.seam.co/latest/core-concepts/devices) that has been connected to Seam. */
40665
40911
  thermostat: {
40666
40912
  /** Unique identifier for the device. */
40667
40913
  device_id: string;
@@ -40719,7 +40965,7 @@ export interface Routes {
40719
40965
  level: number;
40720
40966
  status: 'critical' | 'low' | 'good' | 'full';
40721
40967
  } | undefined;
40722
- /** Manufacturer of the device. */
40968
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
40723
40969
  manufacturer?: string | undefined;
40724
40970
  /** Image URL for the device. */
40725
40971
  image_url?: string | undefined;
@@ -40998,6 +41244,7 @@ export interface Routes {
40998
41244
  } | undefined;
40999
41245
  }) & ({
41000
41246
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
41247
+ /** Constraints on access codes for the device. 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. */
41001
41248
  code_constraints?: (Array<{
41002
41249
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
41003
41250
  } | {
@@ -43671,11 +43918,11 @@ export interface Routes {
43671
43918
  jsonBody: {};
43672
43919
  commonParams: {
43673
43920
  customer_ids?: string[] | undefined;
43674
- /** ID of the connected account by which to filter. */
43921
+ /** ID of the connected account for which you want to list devices. */
43675
43922
  connected_account_id?: string | undefined;
43676
- /** Array of IDs of the connected accounts by which to filter devices. */
43923
+ /** Array of IDs of the connected accounts for which you want to list devices. */
43677
43924
  connected_account_ids?: string[] | undefined;
43678
- /** ID of the Connect Webview by which to filter devices. */
43925
+ /** ID of the Connect Webview for which you want to list devices. */
43679
43926
  connect_webview_id?: string | undefined;
43680
43927
  /** Device type by which to filter thermostat devices. */
43681
43928
  device_type?: ('ecobee_thermostat' | 'nest_thermostat' | 'honeywell_resideo_thermostat' | 'tado_thermostat' | 'sensi_thermostat' | 'smartthings_thermostat') | undefined;
@@ -43683,15 +43930,15 @@ export interface Routes {
43683
43930
  device_types?: Array<'ecobee_thermostat' | 'nest_thermostat' | 'honeywell_resideo_thermostat' | 'tado_thermostat' | 'sensi_thermostat' | 'smartthings_thermostat'> | undefined;
43684
43931
  /** Manufacturer by which to filter thermostat devices. */
43685
43932
  manufacturer?: ('ecobee' | 'honeywell_resideo' | 'nest' | 'tado' | 'sensi') | undefined;
43686
- /** Array of device IDs by which to filter devices. */
43933
+ /** Array of device IDs for which you want to list devices. */
43687
43934
  device_ids?: string[] | undefined;
43688
43935
  /** Numerical limit on the number of devices to return. */
43689
43936
  limit?: number;
43690
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
43937
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
43691
43938
  created_before?: Date | undefined;
43692
- /** Your own internal user ID for the user by which to filter devices. */
43939
+ /** Your own internal user ID for the user for which you want to list devices. */
43693
43940
  user_identifier_key?: string | undefined;
43694
- /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices. */
43941
+ /** Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs for which you want to list devices. */
43695
43942
  custom_metadata_has?: Record<string, string | boolean> | undefined;
43696
43943
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
43697
43944
  page_cursor?: (string | undefined) | null;
@@ -43699,7 +43946,7 @@ export interface Routes {
43699
43946
  include_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
43700
43947
  /** */
43701
43948
  exclude_if?: Array<'can_remotely_unlock' | 'can_remotely_lock' | 'can_program_offline_access_codes' | 'can_program_online_access_codes' | 'can_hvac_heat' | 'can_hvac_cool' | 'can_hvac_heat_cool' | 'can_turn_off_hvac' | 'can_simulate_removal' | 'can_simulate_connection' | 'can_simulate_disconnection'> | undefined;
43702
- /** */
43949
+ /** ID of the location for which you want to list devices. */
43703
43950
  unstable_location_id?: (string | null) | undefined;
43704
43951
  };
43705
43952
  formData: {};
@@ -43761,7 +44008,7 @@ export interface Routes {
43761
44008
  level: number;
43762
44009
  status: 'critical' | 'low' | 'good' | 'full';
43763
44010
  } | undefined;
43764
- /** Manufacturer of the device. */
44011
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
43765
44012
  manufacturer?: string | undefined;
43766
44013
  /** Image URL for the device. */
43767
44014
  image_url?: string | undefined;
@@ -44040,6 +44287,7 @@ export interface Routes {
44040
44287
  } | undefined;
44041
44288
  }) & ({
44042
44289
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
44290
+ /** Constraints on access codes for the device. 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. */
44043
44291
  code_constraints?: (Array<{
44044
44292
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
44045
44293
  } | {
@@ -44513,7 +44761,7 @@ export interface Routes {
44513
44761
  level: number;
44514
44762
  status: 'critical' | 'low' | 'good' | 'full';
44515
44763
  } | undefined;
44516
- /** Manufacturer of the device. */
44764
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
44517
44765
  manufacturer?: string | undefined;
44518
44766
  /** Image URL for the device. */
44519
44767
  image_url?: string | undefined;
@@ -44792,6 +45040,7 @@ export interface Routes {
44792
45040
  } | undefined;
44793
45041
  }) & ({
44794
45042
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
45043
+ /** Constraints on access codes for the device. 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. */
44795
45044
  code_constraints?: (Array<{
44796
45045
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
44797
45046
  } | {
@@ -50444,6 +50693,43 @@ export interface Routes {
50444
50693
  };
50445
50694
  };
50446
50695
  };
50696
+ '/unstable_partner/resources/push': {
50697
+ route: '/unstable_partner/resources/push';
50698
+ method: 'POST';
50699
+ queryParams: {};
50700
+ jsonBody: Array<{
50701
+ partner_resource_type?: string | undefined;
50702
+ partner_resource_key?: string | undefined;
50703
+ customer_key?: string | undefined;
50704
+ email_address?: string | undefined;
50705
+ phone_number?: string | undefined;
50706
+ starts_at?: string | undefined;
50707
+ ends_at?: string | undefined;
50708
+ user_identity_key?: string | undefined;
50709
+ location_keys?: string[] | undefined;
50710
+ name?: string | undefined;
50711
+ description?: string | undefined;
50712
+ icon_url?: string | undefined;
50713
+ custom_metadata?: Record<string, string> | undefined;
50714
+ }> | {
50715
+ partner_resource_type?: string | undefined;
50716
+ partner_resource_key?: string | undefined;
50717
+ customer_key?: string | undefined;
50718
+ email_address?: string | undefined;
50719
+ phone_number?: string | undefined;
50720
+ starts_at?: string | undefined;
50721
+ ends_at?: string | undefined;
50722
+ user_identity_key?: string | undefined;
50723
+ location_keys?: string[] | undefined;
50724
+ name?: string | undefined;
50725
+ description?: string | undefined;
50726
+ icon_url?: string | undefined;
50727
+ custom_metadata?: Record<string, string> | undefined;
50728
+ };
50729
+ commonParams: {};
50730
+ formData: {};
50731
+ jsonResponse: {};
50732
+ };
50447
50733
  '/user_identities/add_acs_user': {
50448
50734
  route: '/user_identities/add_acs_user';
50449
50735
  method: 'POST' | 'PUT';
@@ -50477,7 +50763,7 @@ export interface Routes {
50477
50763
  };
50478
50764
  formData: {};
50479
50765
  jsonResponse: {
50480
- /** Represents a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) associated with an application user account. */
50766
+ /** Represents a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) associated with an application user account. */
50481
50767
  user_identity: {
50482
50768
  /** ID of the user identity. */
50483
50769
  user_identity_id: string;
@@ -50638,7 +50924,7 @@ export interface Routes {
50638
50924
  };
50639
50925
  formData: {};
50640
50926
  jsonResponse: {
50641
- /** Represents a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access-in-development/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) associated with an application user account. */
50927
+ /** Represents a [user identity](https://docs.seam.co/latest/capability-guides/mobile-access/managing-mobile-app-user-accounts-with-user-identities#what-is-a-user-identity) associated with an application user account. */
50642
50928
  user_identity: {
50643
50929
  /** ID of the user identity. */
50644
50930
  user_identity_id: string;
@@ -50767,7 +51053,7 @@ export interface Routes {
50767
51053
  level: number;
50768
51054
  status: 'critical' | 'low' | 'good' | 'full';
50769
51055
  } | undefined;
50770
- /** Manufacturer of the device. */
51056
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
50771
51057
  manufacturer?: string | undefined;
50772
51058
  /** Image URL for the device. */
50773
51059
  image_url?: string | undefined;
@@ -51046,6 +51332,7 @@ export interface Routes {
51046
51332
  } | undefined;
51047
51333
  }) & ({
51048
51334
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
51335
+ /** Constraints on access codes for the device. 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. */
51049
51336
  code_constraints?: (Array<{
51050
51337
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
51051
51338
  } | {
@@ -51521,7 +51808,7 @@ export interface Routes {
51521
51808
  level: number;
51522
51809
  status: 'critical' | 'low' | 'good' | 'full';
51523
51810
  } | undefined;
51524
- /** Manufacturer of the device. */
51811
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
51525
51812
  manufacturer?: string | undefined;
51526
51813
  /** Image URL for the device. */
51527
51814
  image_url?: string | undefined;
@@ -51800,6 +52087,7 @@ export interface Routes {
51800
52087
  } | undefined;
51801
52088
  }) & ({
51802
52089
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
52090
+ /** Constraints on access codes for the device. 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. */
51803
52091
  code_constraints?: (Array<{
51804
52092
  constraint_type: 'no_zeros' | 'cannot_start_with_12' | 'no_triple_consecutive_ints' | 'cannot_specify_pin_code' | 'pin_code_matches_existing_set' | 'start_date_in_future' | 'no_ascending_or_descending_sequence' | 'at_least_three_unique_digits' | 'cannot_contain_089' | 'cannot_contain_0789';
51805
52093
  } | {
@@ -52716,7 +53004,7 @@ export interface Routes {
52716
53004
  commonParams: {};
52717
53005
  formData: {};
52718
53006
  jsonResponse: {
52719
- /** */
53007
+ /** Represents a Seam [workspace](https://docs.seam.co/latest/core-concepts/workspaces). A workspace is a top-level entity that encompasses all other resources below it, such as devices, connected accounts, and Connect Webviews. Seam provides two types of workspaces. A [sandbox workspace](https://docs.seam.co/latest/core-concepts/workspaces#sandbox-workspaces) is a special type of workspace designed for testing code. Sandbox workspaces offer test device accounts and virtual devices that you can connect and control. This ability to work with virtual devices is quite handy because it removes the need to own physical devices from multiple brands. To connect real devices and systems to Seam, use a [production workspace](https://docs.seam.co/latest/core-concepts/workspaces#production-workspaces). */
52720
53008
  workspace: {
52721
53009
  workspace_id: string;
52722
53010
  name: string;
@@ -52745,7 +53033,7 @@ export interface Routes {
52745
53033
  commonParams: {};
52746
53034
  formData: {};
52747
53035
  jsonResponse: {
52748
- /** */
53036
+ /** Represents a Seam [workspace](https://docs.seam.co/latest/core-concepts/workspaces). A workspace is a top-level entity that encompasses all other resources below it, such as devices, connected accounts, and Connect Webviews. Seam provides two types of workspaces. A [sandbox workspace](https://docs.seam.co/latest/core-concepts/workspaces#sandbox-workspaces) is a special type of workspace designed for testing code. Sandbox workspaces offer test device accounts and virtual devices that you can connect and control. This ability to work with virtual devices is quite handy because it removes the need to own physical devices from multiple brands. To connect real devices and systems to Seam, use a [production workspace](https://docs.seam.co/latest/core-concepts/workspaces#production-workspaces). */
52749
53037
  workspace: {
52750
53038
  workspace_id: string;
52751
53039
  name: string;