@seamapi/types 1.399.0 → 1.399.1

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 +877 -295
  2. package/dist/connect.cjs.map +1 -1
  3. package/dist/connect.d.cts +835 -178
  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 +371 -0
  26. package/lib/seam/connect/openapi.js +795 -256
  27. package/lib/seam/connect/openapi.js.map +1 -1
  28. package/lib/seam/connect/route-types.d.ts +464 -178
  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 +996 -256
  42. package/src/lib/seam/connect/route-types.ts +466 -178
@@ -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,9 +8896,9 @@ 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. */
8901
+ /** ID of the access system user that you want to add to an access group. */
8815
8902
  acs_user_id: string;
8816
8903
  };
8817
8904
  formData: {};
@@ -8823,7 +8910,7 @@ export interface Routes {
8823
8910
  queryParams: {};
8824
8911
  jsonBody: {};
8825
8912
  commonParams: {
8826
- /** ID of the desired access group. */
8913
+ /** ID of the access group that you want to get. */
8827
8914
  acs_access_group_id: string;
8828
8915
  };
8829
8916
  formData: {};
@@ -8874,9 +8961,9 @@ export interface Routes {
8874
8961
  queryParams: {};
8875
8962
  jsonBody: {};
8876
8963
  commonParams: {
8877
- /** ID of the access control system for which you want to retrieve all access groups. */
8964
+ /** ID of the access system for which you want to retrieve all access groups. */
8878
8965
  acs_system_id?: string | undefined;
8879
- /** ID of the user for which you want to retrieve all access groups. */
8966
+ /** ID of the access system user for which you want to retrieve all access groups. */
8880
8967
  acs_user_id?: string | undefined;
8881
8968
  /** ID of the user identity for which you want to retrieve all access groups. */
8882
8969
  user_identity_id?: string | undefined;
@@ -8999,7 +9086,7 @@ export interface Routes {
8999
9086
  queryParams: {};
9000
9087
  jsonBody: {};
9001
9088
  commonParams: {
9002
- /** ID of the access group for which you want to retrieve all users. */
9089
+ /** ID of the access group for which you want to retrieve all access system users. */
9003
9090
  acs_access_group_id: string;
9004
9091
  };
9005
9092
  formData: {};
@@ -9194,11 +9281,11 @@ export interface Routes {
9194
9281
  queryParams: {};
9195
9282
  jsonBody: {};
9196
9283
  commonParams: {
9197
- /** ID of the desired access group. */
9284
+ /** ID of the access group from which you want to remove an access system user. */
9198
9285
  acs_access_group_id: string;
9199
- /** ID of the desired user. */
9286
+ /** ID of the access system user that you want to remove from an access group. */
9200
9287
  acs_user_id?: string | undefined;
9201
- /** ID of the desired user identity. */
9288
+ /** ID of the user identity associated with the user that you want to remove from an access group. */
9202
9289
  user_identity_id?: string | undefined;
9203
9290
  };
9204
9291
  formData: {};
@@ -9210,7 +9297,7 @@ export interface Routes {
9210
9297
  queryParams: {};
9211
9298
  jsonBody: {};
9212
9299
  commonParams: {
9213
- /** ID of the desired unmanaged access group. */
9300
+ /** ID of the unmanaged access group that you want to get. */
9214
9301
  acs_access_group_id: string;
9215
9302
  };
9216
9303
  formData: {};
@@ -9257,9 +9344,9 @@ export interface Routes {
9257
9344
  queryParams: {};
9258
9345
  jsonBody: {};
9259
9346
  commonParams: {
9260
- /** ID of the access control system for which you want to retrieve all unmanaged access groups. */
9347
+ /** ID of the access system for which you want to retrieve all unmanaged access groups. */
9261
9348
  acs_system_id?: string | undefined;
9262
- /** ID of the user for which you want to retrieve all unmanaged access groups. */
9349
+ /** ID of the access system user for which you want to retrieve all unmanaged access groups. */
9263
9350
  acs_user_id?: string | undefined;
9264
9351
  };
9265
9352
  formData: {};
@@ -9305,6 +9392,7 @@ export interface Routes {
9305
9392
  queryParams: {};
9306
9393
  jsonBody: {};
9307
9394
  commonParams: {
9395
+ /** ID of the access system for which you want to list credential pools. */
9308
9396
  acs_system_id: string;
9309
9397
  };
9310
9398
  formData: {};
@@ -9326,10 +9414,15 @@ export interface Routes {
9326
9414
  queryParams: {};
9327
9415
  jsonBody: {};
9328
9416
  commonParams: {
9417
+ /** ID of the user identity for which you want to launch a credential provisioning automation. */
9329
9418
  user_identity_id: string;
9419
+ /** Access system ID of the credential manager for which you want to launch a credential provisioning automation. */
9330
9420
  credential_manager_acs_system_id: string;
9421
+ /** ID of the credential pool for which you want to launch a credential provisioning automation. */
9331
9422
  acs_credential_pool_id?: string | undefined;
9423
+ /** 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
9424
  create_credential_manager_user?: boolean | undefined;
9425
+ /** 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
9426
  credential_manager_acs_user_id?: string | undefined;
9334
9427
  };
9335
9428
  formData: {};
@@ -9349,9 +9442,9 @@ export interface Routes {
9349
9442
  method: 'PATCH' | 'POST';
9350
9443
  queryParams: {};
9351
9444
  jsonBody: {
9352
- /** ID of the desired user. */
9445
+ /** ID of the access system user to whom you want to assign a credential. */
9353
9446
  acs_user_id: string;
9354
- /** ID of the desired credential. */
9447
+ /** ID of the credential that you want to assign to an access system user. */
9355
9448
  acs_credential_id: string;
9356
9449
  };
9357
9450
  commonParams: {};
@@ -9485,11 +9578,11 @@ export interface Routes {
9485
9578
  commonParams: {
9486
9579
  /** ACS system ID of the credential manager for the new credential. */
9487
9580
  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`. */
9581
+ /** 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
9582
  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. */
9583
+ /** 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
9584
  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`. */
9585
+ /** 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
9586
  acs_system_id?: string | undefined;
9494
9587
  /** Access method for the new credential. Supported values: `code`, `card`, `mobile_key`. */
9495
9588
  access_method: 'code' | 'card' | 'mobile_key';
@@ -9522,7 +9615,9 @@ export interface Routes {
9522
9615
  } | undefined;
9523
9616
  /** Salto Space-specific metadata for the new credential. */
9524
9617
  salto_space_metadata?: {
9618
+ /** 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
9619
  assign_new_key?: boolean | undefined;
9620
+ /** 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
9621
  update_current_key?: boolean | undefined;
9527
9622
  } | undefined;
9528
9623
  /** 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 +9753,7 @@ export interface Routes {
9658
9753
  queryParams: {};
9659
9754
  jsonBody: {};
9660
9755
  commonParams: {
9661
- /** ID of the ACS user to whom the new credential belongs. */
9756
+ /** ID of the access system user to whom the new credential belongs. */
9662
9757
  acs_user_id: string;
9663
9758
  /** 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
9759
  allowed_acs_entrance_id: string;
@@ -9797,7 +9892,7 @@ export interface Routes {
9797
9892
  queryParams: {};
9798
9893
  jsonBody: {};
9799
9894
  commonParams: {
9800
- /** ID of the desired credential. */
9895
+ /** ID of the credential that you want to delete. */
9801
9896
  acs_credential_id: string;
9802
9897
  };
9803
9898
  formData: {};
@@ -9809,7 +9904,7 @@ export interface Routes {
9809
9904
  queryParams: {};
9810
9905
  jsonBody: {};
9811
9906
  commonParams: {
9812
- /** ID of the desired credential. */
9907
+ /** ID of the credential that you want to get. */
9813
9908
  acs_credential_id: string;
9814
9909
  };
9815
9910
  formData: {};
@@ -9940,15 +10035,15 @@ export interface Routes {
9940
10035
  queryParams: {};
9941
10036
  jsonBody: {};
9942
10037
  commonParams: ({
9943
- /** ID of the ACS user for which you want to retrieve all credentials. */
10038
+ /** ID of the access system user for which you want to retrieve all credentials. */
9944
10039
  acs_user_id: string;
9945
10040
  } | {
9946
- /** ID of the access control system for which you want to retrieve all credentials. */
10041
+ /** ID of the access system for which you want to retrieve all credentials. */
9947
10042
  acs_system_id: string;
9948
10043
  } | {
9949
- /** ID of the ACS user for which you want to retrieve all credentials. */
10044
+ /** ID of the access system user for which you want to retrieve all credentials. */
9950
10045
  acs_user_id: string;
9951
- /** ID of the access control system for which you want to retrieve all credentials. */
10046
+ /** ID of the access system for which you want to retrieve all credentials. */
9952
10047
  acs_system_id: string;
9953
10048
  } | {
9954
10049
  /** ID of the user identity for which you want to retrieve all credentials. */
@@ -10084,7 +10179,7 @@ export interface Routes {
10084
10179
  queryParams: {};
10085
10180
  jsonBody: {};
10086
10181
  commonParams: {
10087
- /** ID of the credential for which you want to retrieve all entrances to which this credential grants access. */
10182
+ /** ID of the credential for which you want to retrieve all entrances to which the credential grants access. */
10088
10183
  acs_credential_id: string;
10089
10184
  };
10090
10185
  formData: {};
@@ -10158,9 +10253,9 @@ export interface Routes {
10158
10253
  method: 'PATCH' | 'POST';
10159
10254
  queryParams: {};
10160
10255
  jsonBody: {
10161
- /** ID of the desired user. */
10256
+ /** ID of the access system user from which you want to unassign a credential. */
10162
10257
  acs_user_id: string;
10163
- /** ID of the desired credential. */
10258
+ /** ID of the credential that you want to unassign from an access system user. */
10164
10259
  acs_credential_id: string;
10165
10260
  };
10166
10261
  commonParams: {};
@@ -10292,7 +10387,7 @@ export interface Routes {
10292
10387
  queryParams: {};
10293
10388
  jsonBody: {};
10294
10389
  commonParams: {
10295
- /** ID of the desired unmanaged credential. */
10390
+ /** ID of the unmanaged credential that you want to get. */
10296
10391
  acs_credential_id: string;
10297
10392
  };
10298
10393
  formData: {};
@@ -10419,15 +10514,15 @@ export interface Routes {
10419
10514
  queryParams: {};
10420
10515
  jsonBody: {};
10421
10516
  commonParams: {
10422
- /** ID of the ACS user for which you want to retrieve all credentials. */
10517
+ /** ID of the access system user for which you want to retrieve all credentials. */
10423
10518
  acs_user_id: string;
10424
10519
  } | {
10425
- /** ID of the access control system for which you want to retrieve all credentials. */
10520
+ /** ID of the access system for which you want to retrieve all credentials. */
10426
10521
  acs_system_id: string;
10427
10522
  } | {
10428
- /** ID of the ACS user for which you want to retrieve all credentials. */
10523
+ /** ID of the access system user for which you want to retrieve all credentials. */
10429
10524
  acs_user_id: string;
10430
- /** ID of the access control system for which you want to retrieve all credentials. */
10525
+ /** ID of the access system for which you want to retrieve all credentials. */
10431
10526
  acs_system_id: string;
10432
10527
  } | {
10433
10528
  /** ID of the user identity for which you want to retrieve all credentials. */
@@ -10555,9 +10650,9 @@ export interface Routes {
10555
10650
  method: 'PATCH' | 'POST';
10556
10651
  queryParams: {};
10557
10652
  jsonBody: {
10558
- /** ID of the desired credential. */
10653
+ /** ID of the credential that you want to update. */
10559
10654
  acs_credential_id: string;
10560
- /** Replacement access (PIN) code for the credential. */
10655
+ /** Replacement access (PIN) code for the credential that you want to update. */
10561
10656
  code?: string | undefined;
10562
10657
  /** 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
10658
  ends_at?: string | undefined;
@@ -12927,7 +13022,7 @@ export interface Routes {
12927
13022
  queryParams: {};
12928
13023
  jsonBody: {};
12929
13024
  commonParams: {
12930
- /** ID of the desired encoder. */
13025
+ /** ID of the encoder that you want to get. */
12931
13026
  acs_encoder_id: string;
12932
13027
  };
12933
13028
  formData: {};
@@ -12975,19 +13070,19 @@ export interface Routes {
12975
13070
  queryParams: {};
12976
13071
  jsonBody: {};
12977
13072
  commonParams: {
12978
- /** ID of the `acs_system` for which you want to retrieve all `acs_encoder`s. */
13073
+ /** ID of the access system for which you want to retrieve all encoders. */
12979
13074
  acs_system_id: string;
12980
- /** Number of `acs_encoders` to return. */
13075
+ /** Number of encoders to return. */
12981
13076
  limit?: number;
12982
13077
  } | {
12983
- /** IDs of the `acs_system`s for which you want to retrieve all `acs_encoder`s. */
13078
+ /** IDs of the access systems for which you want to retrieve all encoders. */
12984
13079
  acs_system_ids: string[];
12985
- /** Number of `acs_encoders` to return. */
13080
+ /** Number of encoders to return. */
12986
13081
  limit?: number;
12987
13082
  } | {
12988
- /** IDs of the `acs_encoder`s that you want to retrieve. */
13083
+ /** IDs of the encoders that you want to retrieve. */
12989
13084
  acs_encoder_ids: string[];
12990
- /** Number of `acs_encoders` to return. */
13085
+ /** Number of encoders to return. */
12991
13086
  limit?: number;
12992
13087
  };
12993
13088
  formData: {};
@@ -13021,7 +13116,7 @@ export interface Routes {
13021
13116
  queryParams: {};
13022
13117
  jsonBody: {};
13023
13118
  commonParams: {
13024
- /** ID of the `acs_encoder` to use for the scan. */
13119
+ /** ID of the encoder to use for the scan. */
13025
13120
  acs_encoder_id: string;
13026
13121
  };
13027
13122
  formData: {};
@@ -14216,6 +14311,7 @@ export interface Routes {
14216
14311
  queryParams: {};
14217
14312
  jsonBody: {};
14218
14313
  commonParams: {
14314
+ /** ID of the entrance that you want to get. */
14219
14315
  acs_entrance_id: string;
14220
14316
  };
14221
14317
  formData: {};
@@ -14292,7 +14388,9 @@ export interface Routes {
14292
14388
  method: 'POST';
14293
14389
  queryParams: {};
14294
14390
  jsonBody: {
14391
+ /** ID of the entrance to which you want to grant an access system user access. */
14295
14392
  acs_entrance_id: string;
14393
+ /** ID of the access system user to whom you want to grant access to an entrance. */
14296
14394
  acs_user_id: string;
14297
14395
  };
14298
14396
  commonParams: {};
@@ -14305,9 +14403,11 @@ export interface Routes {
14305
14403
  queryParams: {};
14306
14404
  jsonBody: {};
14307
14405
  commonParams: {
14406
+ /** ID of the access system for which you want to retrieve all entrances. */
14308
14407
  acs_system_id?: string | undefined;
14408
+ /** ID of the credential for which you want to retrieve all entrances. */
14309
14409
  acs_credential_id?: string | undefined;
14310
- /** */
14410
+ /** ID of the location for which you want to retrieve all entrances. */
14311
14411
  location_id?: (string | null) | undefined;
14312
14412
  };
14313
14413
  formData: {};
@@ -14382,7 +14482,9 @@ export interface Routes {
14382
14482
  queryParams: {};
14383
14483
  jsonBody: {};
14384
14484
  commonParams: {
14485
+ /** ID of the entrance for which you want to list all credentials that grant access. */
14385
14486
  acs_entrance_id: string;
14487
+ /** Conditions that credentials must meet to be included in the returned list. */
14386
14488
  include_if?: Array<'visionline_metadata.is_valid'> | undefined;
14387
14489
  };
14388
14490
  formData: {};
@@ -14508,7 +14610,7 @@ export interface Routes {
14508
14610
  queryParams: {};
14509
14611
  jsonBody: {};
14510
14612
  commonParams: {
14511
- /** ID of the desired access control system. */
14613
+ /** ID of the access system that you want to get. */
14512
14614
  acs_system_id: string;
14513
14615
  };
14514
14616
  formData: {};
@@ -14658,7 +14760,7 @@ export interface Routes {
14658
14760
  queryParams: {};
14659
14761
  jsonBody: {};
14660
14762
  commonParams: {
14661
- /** ID of the connected account by which to filter the list of returned access control systems. */
14763
+ /** ID of the connected account by which you want to filter the list of access systems. */
14662
14764
  connected_account_id?: string | undefined;
14663
14765
  };
14664
14766
  formData: {};
@@ -14803,7 +14905,7 @@ export interface Routes {
14803
14905
  queryParams: {};
14804
14906
  jsonBody: {};
14805
14907
  commonParams: {
14806
- /** ID of the ACS system for which you want to retrieve all compatible credential manager ACS systems. */
14908
+ /** ID of the access system for which you want to retrieve all compatible credential manager systems. */
14807
14909
  acs_system_id: string;
14808
14910
  };
14809
14911
  formData: {};
@@ -14948,9 +15050,9 @@ export interface Routes {
14948
15050
  queryParams: {};
14949
15051
  jsonBody: {};
14950
15052
  commonParams: {
14951
- /** ID of the desired `acs_user`. */
15053
+ /** ID of the access system user that you want to add to an access group. */
14952
15054
  acs_user_id: string;
14953
- /** ID of the desired access group. */
15055
+ /** ID of the access group to which you want to add an access system user. */
14954
15056
  acs_access_group_id: string;
14955
15057
  };
14956
15058
  formData: {};
@@ -14961,17 +15063,19 @@ export interface Routes {
14961
15063
  method: 'POST';
14962
15064
  queryParams: {};
14963
15065
  jsonBody: {
14964
- /** Full name of the new `acs_user`. */
15066
+ /** Full name of the new access system user. */
14965
15067
  full_name: string;
14966
- /** ID of the `acs_system` to which to add the new `acs_user`. */
15068
+ /** ID of the access system to which you want to add the new access system user. */
14967
15069
  acs_system_id: string;
14968
- /** Array of `access_group_id`s to indicate the access groups to which to add the new `acs_user`. */
15070
+ /** Array of access group IDs to indicate the access groups to which you want to add the new access system user. */
14969
15071
  acs_access_group_ids?: string[];
14970
- /** ID of the user identity with which to associate the new `acs_user`. */
15072
+ /** ID of the user identity with which you want to associate the new access system user. */
14971
15073
  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`. */
15074
+ /** `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
15075
  access_schedule?: {
15076
+ /** Starting timestamp for the new access system user's access. */
14974
15077
  starts_at?: string | undefined;
15078
+ /** Ending timestamp for the new access system user's access. */
14975
15079
  ends_at?: (string | undefined) | null;
14976
15080
  } | undefined;
14977
15081
  /**
@@ -15180,7 +15284,7 @@ export interface Routes {
15180
15284
  queryParams: {};
15181
15285
  jsonBody: {};
15182
15286
  commonParams: {
15183
- /** ID of the desired `acs_user`. */
15287
+ /** ID of the access system user that you want to delete. */
15184
15288
  acs_user_id: string;
15185
15289
  };
15186
15290
  formData: {};
@@ -15192,7 +15296,7 @@ export interface Routes {
15192
15296
  queryParams: {};
15193
15297
  jsonBody: {};
15194
15298
  commonParams: {
15195
- /** ID of the desired `acs_user`. */
15299
+ /** ID of the access system user that you want to get. */
15196
15300
  acs_user_id: string;
15197
15301
  };
15198
15302
  formData: {};
@@ -15392,18 +15496,19 @@ export interface Routes {
15392
15496
  queryParams: {};
15393
15497
  jsonBody: {};
15394
15498
  commonParams: {
15395
- /** ID of the user identity for which you want to retrieve all `acs_user`s. */
15499
+ /** ID of the user identity for which you want to retrieve all access system users. */
15396
15500
  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`). */
15501
+ /** 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
15502
  user_identity_phone_number?: string | undefined;
15399
- /** Email address of the user identity for which you want to retrieve all `acs_user`s. */
15503
+ /** Email address of the user identity for which you want to retrieve all access system users. */
15400
15504
  user_identity_email_address?: string | undefined;
15401
- /** ID of the `acs_system` for which you want to retrieve all `acs_user`s. */
15505
+ /** ID of the `acs_system` for which you want to retrieve all access system users. */
15402
15506
  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`. */
15507
+ /** 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
15508
  search?: string | undefined;
15405
15509
  /** Maximum number of records to return per page. */
15406
15510
  limit?: number;
15511
+ /** Timestamp by which to limit returned access system users. Returns users created before this timestamp. */
15407
15512
  created_before?: Date | undefined;
15408
15513
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
15409
15514
  page_cursor?: (string | undefined) | null;
@@ -15609,7 +15714,7 @@ export interface Routes {
15609
15714
  queryParams: {};
15610
15715
  jsonBody: {};
15611
15716
  commonParams: {
15612
- /** ID of the desired `acs_user`. */
15717
+ /** ID of the access system user for whom you want to list accessible entrances. */
15613
15718
  acs_user_id: string;
15614
15719
  };
15615
15720
  formData: {};
@@ -15684,9 +15789,9 @@ export interface Routes {
15684
15789
  queryParams: {};
15685
15790
  jsonBody: {};
15686
15791
  commonParams: {
15687
- /** ID of the desired `acs_user`. */
15792
+ /** ID of the access system user that you want to remove from an access group. */
15688
15793
  acs_user_id: string;
15689
- /** ID of the desired access group. */
15794
+ /** ID of the access group from which you want to remove an access system user. */
15690
15795
  acs_access_group_id: string;
15691
15796
  };
15692
15797
  formData: {};
@@ -15697,7 +15802,7 @@ export interface Routes {
15697
15802
  method: 'POST';
15698
15803
  queryParams: {};
15699
15804
  jsonBody: {
15700
- /** ID of the desired `acs_user`. */
15805
+ /** ID of the access system user for whom you want to revoke access. */
15701
15806
  acs_user_id: string;
15702
15807
  };
15703
15808
  commonParams: {};
@@ -15710,7 +15815,7 @@ export interface Routes {
15710
15815
  queryParams: {};
15711
15816
  jsonBody: {};
15712
15817
  commonParams: {
15713
- /** ID of the desired `acs_user`. */
15818
+ /** ID of the access system user that you want to suspend. */
15714
15819
  acs_user_id: string;
15715
15820
  };
15716
15821
  formData: {};
@@ -15722,6 +15827,7 @@ export interface Routes {
15722
15827
  queryParams: {};
15723
15828
  jsonBody: {};
15724
15829
  commonParams: {
15830
+ /** ID of the unmanaged access system user that you want to get. */
15725
15831
  acs_user_id: string;
15726
15832
  };
15727
15833
  formData: {};
@@ -15917,10 +16023,15 @@ export interface Routes {
15917
16023
  queryParams: {};
15918
16024
  jsonBody: {};
15919
16025
  commonParams: {
16026
+ /** ID of the user identity for which you want to retrieve all unmanaged access system users. */
15920
16027
  user_identity_id?: string | undefined;
16028
+ /** Phone number of the user identity for which you want to retrieve all unmanaged access system users. */
15921
16029
  user_identity_phone_number?: string | undefined;
16030
+ /** Email address of the user identity for which you want to retrieve all unmanaged access system users. */
15922
16031
  user_identity_email_address?: string | undefined;
16032
+ /** ID of the access system for which you want to retrieve all unmanaged access system users. */
15923
16033
  acs_system_id?: string | undefined;
16034
+ /** Number of unmanaged access system users to return. */
15924
16035
  limit?: number;
15925
16036
  };
15926
16037
  formData: {};
@@ -16115,7 +16226,7 @@ export interface Routes {
16115
16226
  queryParams: {};
16116
16227
  jsonBody: {};
16117
16228
  commonParams: {
16118
- /** ID of the desired `acs_user`. */
16229
+ /** ID of the access system user that you want to unsuspend. */
16119
16230
  acs_user_id: string;
16120
16231
  };
16121
16232
  formData: {};
@@ -16126,9 +16237,11 @@ export interface Routes {
16126
16237
  method: 'PATCH' | 'POST';
16127
16238
  queryParams: {};
16128
16239
  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`. */
16240
+ /** `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
16241
  access_schedule?: ({
16242
+ /** Starting timestamp for the access system user's access. */
16131
16243
  starts_at: string;
16244
+ /** Ending timestamp for the access system user's access. */
16132
16245
  ends_at: string;
16133
16246
  } | null) | undefined;
16134
16247
  /** ID of the [ACS user](https://docs.seam.co/latest/capability-guides/access-systems/user-management). */
@@ -16154,6 +16267,7 @@ export interface Routes {
16154
16267
  queryParams: {};
16155
16268
  jsonBody: {};
16156
16269
  commonParams: {
16270
+ /** ID of the action attempt that you want to get. */
16157
16271
  action_attempt_id: string;
16158
16272
  };
16159
16273
  formData: {};
@@ -17269,6 +17383,7 @@ export interface Routes {
17269
17383
  queryParams: {};
17270
17384
  jsonBody: {};
17271
17385
  commonParams: {
17386
+ /** IDs of the action attempts that you want to retrieve. */
17272
17387
  action_attempt_ids: string[];
17273
17388
  };
17274
17389
  formData: {};
@@ -18383,6 +18498,7 @@ export interface Routes {
18383
18498
  queryParams: {};
18384
18499
  jsonBody: {};
18385
18500
  commonParams: {
18501
+ /** ID of the Seam Bridge that you want to get. */
18386
18502
  bridge_id: string;
18387
18503
  };
18388
18504
  formData: {};
@@ -18415,16 +18531,29 @@ export interface Routes {
18415
18531
  method: 'POST' | 'PUT';
18416
18532
  queryParams: {};
18417
18533
  jsonBody: {
18534
+ /** Your user ID for the user for whom you want to create a client session. */
18418
18535
  user_identifier_key?: string | undefined;
18536
+ /** IDs of the [Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews) for which you want to create a client session. */
18419
18537
  connect_webview_ids?: string[] | undefined;
18538
+ /** IDs of the [connected accounts](https://docs.seam.co/latest/core-concepts/connected-accounts) for which you want to create a client session. */
18420
18539
  connected_account_ids?: string[] | undefined;
18540
+ /** 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
18541
  user_identity_ids?: string[] | undefined;
18542
+ /** 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
18543
  expires_at?: Date | undefined;
18423
18544
  };
18424
18545
  commonParams: {};
18425
18546
  formData: {};
18426
18547
  jsonResponse: {
18427
- /** */
18548
+ /** 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.
18549
+
18550
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
18551
+
18552
+ 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`.
18553
+
18554
+ 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.
18555
+
18556
+ 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
18557
  client_session: {
18429
18558
  client_session_id: string;
18430
18559
  workspace_id: string;
@@ -18445,6 +18574,7 @@ export interface Routes {
18445
18574
  queryParams: {};
18446
18575
  jsonBody: {};
18447
18576
  commonParams: {
18577
+ /** ID of the client session that you want to delete. */
18448
18578
  client_session_id: string;
18449
18579
  };
18450
18580
  formData: {};
@@ -18456,12 +18586,22 @@ export interface Routes {
18456
18586
  queryParams: {};
18457
18587
  jsonBody: {};
18458
18588
  commonParams: {
18589
+ /** ID of the client session that you want to get. */
18459
18590
  client_session_id?: string | undefined;
18591
+ /** User identifier key associated with the client session that you want to get. */
18460
18592
  user_identifier_key?: string | undefined;
18461
18593
  };
18462
18594
  formData: {};
18463
18595
  jsonResponse: {
18464
- /** */
18596
+ /** 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.
18597
+
18598
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
18599
+
18600
+ 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`.
18601
+
18602
+ 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.
18603
+
18604
+ 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
18605
  client_session: {
18466
18606
  client_session_id: string;
18467
18607
  workspace_id: string;
@@ -18481,16 +18621,29 @@ export interface Routes {
18481
18621
  method: 'POST';
18482
18622
  queryParams: {};
18483
18623
  jsonBody: {
18624
+ /** 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
18625
  user_identifier_key?: string | undefined;
18626
+ /** 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
18627
  connect_webview_ids?: string[] | undefined;
18628
+ /** 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
18629
  connected_account_ids?: string[] | undefined;
18630
+ /** 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
18631
  user_identity_ids?: string[] | undefined;
18632
+ /** 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
18633
  expires_at?: Date | undefined;
18489
18634
  };
18490
18635
  commonParams: {};
18491
18636
  formData: {};
18492
18637
  jsonResponse: {
18493
- /** */
18638
+ /** 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.
18639
+
18640
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
18641
+
18642
+ 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`.
18643
+
18644
+ 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.
18645
+
18646
+ 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
18647
  client_session: {
18495
18648
  client_session_id: string;
18496
18649
  workspace_id: string;
@@ -18511,15 +18664,28 @@ export interface Routes {
18511
18664
  queryParams: {};
18512
18665
  jsonBody: {};
18513
18666
  commonParams: {
18667
+ /** ID of the client session to which you want to grant access to resources. */
18514
18668
  client_session_id?: string | undefined;
18669
+ /** Your user ID for the user that you want to associate with the client session. */
18515
18670
  user_identifier_key?: string | undefined;
18671
+ /** IDs of the [connected accounts](https://docs.seam.co/latest/core-concepts/connected-accounts) that you want to associate with the client session. */
18516
18672
  connected_account_ids?: string[] | undefined;
18673
+ /** IDs of the [Connect Webviews](https://docs.seam.co/latest/core-concepts/connect-webviews) that you want to associate with the client session. */
18517
18674
  connect_webview_ids?: string[] | undefined;
18675
+ /** 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
18676
  user_identity_ids?: string[] | undefined;
18519
18677
  };
18520
18678
  formData: {};
18521
18679
  jsonResponse: {
18522
- /** */
18680
+ /** 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.
18681
+
18682
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
18683
+
18684
+ 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`.
18685
+
18686
+ 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.
18687
+
18688
+ 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
18689
  client_session: {
18524
18690
  client_session_id: string;
18525
18691
  workspace_id: string;
@@ -18540,10 +18706,15 @@ export interface Routes {
18540
18706
  queryParams: {};
18541
18707
  jsonBody: {};
18542
18708
  commonParams: {
18709
+ /** ID of the client session that you want to retrieve. */
18543
18710
  client_session_id?: string | undefined;
18711
+ /** Your user ID for the user by which you want to filter client sessions. */
18544
18712
  user_identifier_key?: string | undefined;
18713
+ /** ID of the [Connect Webview](https://docs.seam.co/latest/core-concepts/connect-webviews) for which you want to retrieve client sessions. */
18545
18714
  connect_webview_id?: string | undefined;
18715
+ /** Indicates whether to retrieve only client sessions without associated user identifier keys. */
18546
18716
  without_user_identifier_key?: boolean | undefined;
18717
+ /** 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
18718
  user_identity_id?: string | undefined;
18548
18719
  };
18549
18720
  formData: {};
@@ -18568,6 +18739,7 @@ export interface Routes {
18568
18739
  queryParams: {};
18569
18740
  jsonBody: {};
18570
18741
  commonParams: {
18742
+ /** ID of the client session that you want to revoke. */
18571
18743
  client_session_id: string;
18572
18744
  };
18573
18745
  formData: {};
@@ -18578,19 +18750,37 @@ export interface Routes {
18578
18750
  method: 'POST';
18579
18751
  queryParams: {};
18580
18752
  jsonBody: {
18753
+ /** */
18581
18754
  device_selection_mode?: ('none' | 'single' | 'multiple') | undefined;
18755
+ /** URL that you want to redirect the user to after the provider login is complete. */
18582
18756
  custom_redirect_url?: string | undefined;
18757
+ /** 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
18758
  custom_redirect_failure_url?: string | undefined;
18759
+ /** 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
18760
  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;
18761
+ /** 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
18762
  provider_category?: ('stable' | 'consumer_smartlocks' | 'thermostats' | 'noise_sensors' | 'access_control_systems' | 'internal_beta') | undefined;
18763
+ /** 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
18764
  custom_metadata?: Record<string, string | boolean | null> | undefined;
18765
+ /** 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
18766
  automatically_manage_new_devices?: boolean;
18767
+ /** 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
18768
  wait_for_device_creation?: boolean;
18589
18769
  };
18590
18770
  commonParams: {};
18591
18771
  formData: {};
18592
18772
  jsonResponse: {
18593
- /** */
18773
+ /** Represents a [Connect Webview](https://docs.seam.co/latest/core-concepts/connect-webviews).
18774
+
18775
+ 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.
18776
+
18777
+ 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.
18778
+
18779
+ 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.
18780
+
18781
+ 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.
18782
+
18783
+ 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
18784
  connect_webview: {
18595
18785
  connect_webview_id: string;
18596
18786
  workspace_id: string;
@@ -18623,6 +18813,7 @@ export interface Routes {
18623
18813
  method: 'DELETE' | 'POST';
18624
18814
  queryParams: {};
18625
18815
  jsonBody: {
18816
+ /** ID of the Connect Webview that you want to delete. */
18626
18817
  connect_webview_id: string;
18627
18818
  };
18628
18819
  commonParams: {};
@@ -18635,11 +18826,22 @@ export interface Routes {
18635
18826
  queryParams: {};
18636
18827
  jsonBody: {};
18637
18828
  commonParams: {
18829
+ /** ID of the Connect Webview that you want to get. */
18638
18830
  connect_webview_id: string;
18639
18831
  };
18640
18832
  formData: {};
18641
18833
  jsonResponse: {
18642
- /** */
18834
+ /** Represents a [Connect Webview](https://docs.seam.co/latest/core-concepts/connect-webviews).
18835
+
18836
+ 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.
18837
+
18838
+ 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.
18839
+
18840
+ 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.
18841
+
18842
+ 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.
18843
+
18844
+ 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
18845
  connect_webview: {
18644
18846
  connect_webview_id: string;
18645
18847
  workspace_id: string;
@@ -18673,10 +18875,11 @@ export interface Routes {
18673
18875
  queryParams: {};
18674
18876
  jsonBody: {};
18675
18877
  commonParams: {
18676
- /** Returns webviews that can be accessed by the provided user_identifier_key. */
18878
+ /** Your user ID for the user by which you want to filter Connect Webviews. */
18677
18879
  user_identifier_key?: string | undefined;
18678
- /** Returns webviews whose custom_metadata contains all of the provided key/value pairs. */
18880
+ /** 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
18881
  custom_metadata_has?: Record<string, string | boolean> | undefined;
18882
+ /** Maximum number of records to return per page. */
18680
18883
  limit?: number;
18681
18884
  };
18682
18885
  formData: {};
@@ -18713,7 +18916,9 @@ export interface Routes {
18713
18916
  method: 'DELETE' | 'POST';
18714
18917
  queryParams: {};
18715
18918
  jsonBody: {
18919
+ /** ID of the connected account that you want to delete. */
18716
18920
  connected_account_id: string;
18921
+ /** */
18717
18922
  sync?: boolean;
18718
18923
  };
18719
18924
  commonParams: {};
@@ -18726,13 +18931,15 @@ export interface Routes {
18726
18931
  queryParams: {};
18727
18932
  jsonBody: {};
18728
18933
  commonParams: {
18934
+ /** ID of the connected account that you want to get. */
18729
18935
  connected_account_id: string;
18730
18936
  } | {
18937
+ /** Email address associated with the connected account that you want to get. */
18731
18938
  email: string;
18732
18939
  };
18733
18940
  formData: {};
18734
18941
  jsonResponse: {
18735
- /** */
18942
+ /** 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
18943
  connected_account: {
18737
18944
  connected_account_id?: string | undefined;
18738
18945
  created_at?: string | undefined;
@@ -18824,9 +19031,9 @@ export interface Routes {
18824
19031
  queryParams: {};
18825
19032
  jsonBody: {};
18826
19033
  commonParams: {
18827
- /** Returns accounts that can be accessed by the provided user_identifier_key. */
19034
+ /** Your user ID for the user by which you want to filter connected accounts. */
18828
19035
  user_identifier_key?: string | undefined;
18829
- /** Returns accounts whose custom_metadata contains all of the provided key/value pairs. */
19036
+ /** 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
19037
  custom_metadata_has?: Record<string, string | boolean> | undefined;
18831
19038
  customer_ids?: string[] | undefined;
18832
19039
  /** Maximum number of records to return per page. */
@@ -18935,14 +19142,17 @@ export interface Routes {
18935
19142
  method: 'POST';
18936
19143
  queryParams: {};
18937
19144
  jsonBody: {
19145
+ /** ID of the connected account that you want to update. */
18938
19146
  connected_account_id: string;
19147
+ /** Indicates whether newly-added devices should appear as [managed devices](https://docs.seam.co/latest/core-concepts/devices/managed-and-unmanaged-devices). */
18939
19148
  automatically_manage_new_devices?: boolean | undefined;
19149
+ /** 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
19150
  custom_metadata?: Record<string, string | boolean | null> | undefined;
18941
19151
  };
18942
19152
  commonParams: {};
18943
19153
  formData: {};
18944
19154
  jsonResponse: {
18945
- /** */
19155
+ /** 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
19156
  connected_account: {
18947
19157
  connected_account_id?: string | undefined;
18948
19158
  created_at?: string | undefined;
@@ -19034,6 +19244,7 @@ export interface Routes {
19034
19244
  queryParams: {};
19035
19245
  jsonBody: {};
19036
19246
  commonParams: {
19247
+ /** ID of the device that you want to delete. */
19037
19248
  device_id: string;
19038
19249
  };
19039
19250
  formData: {};
@@ -19045,12 +19256,14 @@ export interface Routes {
19045
19256
  queryParams: {};
19046
19257
  jsonBody: {};
19047
19258
  commonParams: {
19259
+ /** ID of the device that you want to get. */
19048
19260
  device_id?: string | undefined;
19261
+ /** Name of the device that you want to get. */
19049
19262
  name?: string | undefined;
19050
19263
  };
19051
19264
  formData: {};
19052
19265
  jsonResponse: {
19053
- /** */
19266
+ /** Represents a [device](https://docs.seam.co/latest/core-concepts/devices) that has been connected to Seam. */
19054
19267
  device: {
19055
19268
  /** Unique identifier for the device. */
19056
19269
  device_id: string;
@@ -19108,7 +19321,7 @@ export interface Routes {
19108
19321
  level: number;
19109
19322
  status: 'critical' | 'low' | 'good' | 'full';
19110
19323
  } | undefined;
19111
- /** Manufacturer of the device. */
19324
+ /** 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
19325
  manufacturer?: string | undefined;
19113
19326
  /** Image URL for the device. */
19114
19327
  image_url?: string | undefined;
@@ -19387,6 +19600,7 @@ export interface Routes {
19387
19600
  } | undefined;
19388
19601
  }) & ({
19389
19602
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
19603
+ /** 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
19604
  code_constraints?: (Array<{
19391
19605
  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
19606
  } | {
@@ -19812,27 +20026,27 @@ export interface Routes {
19812
20026
  jsonBody: {};
19813
20027
  commonParams: {
19814
20028
  customer_ids?: string[] | undefined;
19815
- /** ID of the connected account by which to filter. */
20029
+ /** ID of the connected account for which you want to list devices. */
19816
20030
  connected_account_id?: string | undefined;
19817
- /** Array of IDs of the connected accounts by which to filter devices. */
20031
+ /** Array of IDs of the connected accounts for which you want to list devices. */
19818
20032
  connected_account_ids?: string[] | undefined;
19819
- /** ID of the Connect Webview by which to filter devices. */
20033
+ /** ID of the Connect Webview for which you want to list devices. */
19820
20034
  connect_webview_id?: string | undefined;
19821
- /** Device type by which to filter devices. */
20035
+ /** Device type for which you want to list devices. */
19822
20036
  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. */
20037
+ /** Array of device types for which you want to list devices. */
19824
20038
  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. */
20039
+ /** Manufacturer for which you want to list devices. */
19826
20040
  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. */
20041
+ /** Array of device IDs for which you want to list devices. */
19828
20042
  device_ids?: string[] | undefined;
19829
20043
  /** Numerical limit on the number of devices to return. */
19830
20044
  limit?: number;
19831
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
20045
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
19832
20046
  created_before?: Date | undefined;
19833
- /** Your own internal user ID for the user by which to filter devices. */
20047
+ /** Your own internal user ID for the user for which you want to list devices. */
19834
20048
  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. */
20049
+ /** 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
20050
  custom_metadata_has?: Record<string, string | boolean> | undefined;
19837
20051
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
19838
20052
  page_cursor?: (string | undefined) | null;
@@ -19840,7 +20054,7 @@ export interface Routes {
19840
20054
  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
20055
  /** */
19842
20056
  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
- /** */
20057
+ /** ID of the location for which you want to list devices. */
19844
20058
  unstable_location_id?: (string | null) | undefined;
19845
20059
  };
19846
20060
  formData: {};
@@ -19902,7 +20116,7 @@ export interface Routes {
19902
20116
  level: number;
19903
20117
  status: 'critical' | 'low' | 'good' | 'full';
19904
20118
  } | undefined;
19905
- /** Manufacturer of the device. */
20119
+ /** 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
20120
  manufacturer?: string | undefined;
19907
20121
  /** Image URL for the device. */
19908
20122
  image_url?: string | undefined;
@@ -20181,6 +20395,7 @@ export interface Routes {
20181
20395
  } | undefined;
20182
20396
  }) & ({
20183
20397
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
20398
+ /** 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
20399
  code_constraints?: (Array<{
20185
20400
  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
20401
  } | {
@@ -20614,6 +20829,7 @@ export interface Routes {
20614
20829
  queryParams: {};
20615
20830
  jsonBody: {};
20616
20831
  commonParams: {
20832
+ /** Category for which you want to list providers. */
20617
20833
  provider_category?: ('stable' | 'consumer_smartlocks' | 'thermostats' | 'noise_sensors' | 'access_control_systems') | undefined;
20618
20834
  };
20619
20835
  formData: {};
@@ -20642,6 +20858,7 @@ export interface Routes {
20642
20858
  method: 'POST';
20643
20859
  queryParams: {};
20644
20860
  jsonBody: {
20861
+ /** ID of the device that you want to simulate connecting to Seam. */
20645
20862
  device_id: string;
20646
20863
  };
20647
20864
  commonParams: {};
@@ -20653,6 +20870,7 @@ export interface Routes {
20653
20870
  method: 'POST';
20654
20871
  queryParams: {};
20655
20872
  jsonBody: {
20873
+ /** ID of the device that you want to simulate disconnecting from Seam. */
20656
20874
  device_id: string;
20657
20875
  };
20658
20876
  commonParams: {};
@@ -20664,6 +20882,7 @@ export interface Routes {
20664
20882
  method: 'DELETE' | 'POST';
20665
20883
  queryParams: {};
20666
20884
  jsonBody: {
20885
+ /** ID of the device that you want to simulate removing from Seam. */
20667
20886
  device_id: string;
20668
20887
  };
20669
20888
  commonParams: {};
@@ -20676,12 +20895,14 @@ export interface Routes {
20676
20895
  queryParams: {};
20677
20896
  jsonBody: {};
20678
20897
  commonParams: {
20898
+ /** ID of the unmanaged device that you want to get. */
20679
20899
  device_id?: string | undefined;
20900
+ /** Name of the unmanaged device that you want to get. */
20680
20901
  name?: string | undefined;
20681
20902
  };
20682
20903
  formData: {};
20683
20904
  jsonResponse: {
20684
- /** */
20905
+ /** 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
20906
  device: {
20686
20907
  /** Unique identifier for the device. */
20687
20908
  device_id: string;
@@ -20903,7 +21124,7 @@ export interface Routes {
20903
21124
  name: string;
20904
21125
  /** Indicates whether the device is online. */
20905
21126
  online: boolean;
20906
- /** Manufacturer of the device. */
21127
+ /** 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
21128
  manufacturer?: string | undefined;
20908
21129
  /** Image URL for the device. */
20909
21130
  image_url?: string | undefined;
@@ -20959,27 +21180,27 @@ export interface Routes {
20959
21180
  jsonBody: {};
20960
21181
  commonParams: {
20961
21182
  customer_ids?: string[] | undefined;
20962
- /** ID of the connected account by which to filter. */
21183
+ /** ID of the connected account for which you want to list devices. */
20963
21184
  connected_account_id?: string | undefined;
20964
- /** Array of IDs of the connected accounts by which to filter devices. */
21185
+ /** Array of IDs of the connected accounts for which you want to list devices. */
20965
21186
  connected_account_ids?: string[] | undefined;
20966
- /** ID of the Connect Webview by which to filter devices. */
21187
+ /** ID of the Connect Webview for which you want to list devices. */
20967
21188
  connect_webview_id?: string | undefined;
20968
- /** Device type by which to filter devices. */
21189
+ /** Device type for which you want to list devices. */
20969
21190
  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. */
21191
+ /** Array of device types for which you want to list devices. */
20971
21192
  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. */
21193
+ /** Manufacturer for which you want to list devices. */
20973
21194
  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. */
21195
+ /** Array of device IDs for which you want to list devices. */
20975
21196
  device_ids?: string[] | undefined;
20976
21197
  /** Numerical limit on the number of devices to return. */
20977
21198
  limit?: number;
20978
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
21199
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
20979
21200
  created_before?: Date | undefined;
20980
- /** Your own internal user ID for the user by which to filter devices. */
21201
+ /** Your own internal user ID for the user for which you want to list devices. */
20981
21202
  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. */
21203
+ /** 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
21204
  custom_metadata_has?: Record<string, string | boolean> | undefined;
20984
21205
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
20985
21206
  page_cursor?: (string | undefined) | null;
@@ -20987,7 +21208,7 @@ export interface Routes {
20987
21208
  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
21209
  /** */
20989
21210
  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
- /** */
21211
+ /** ID of the location for which you want to list devices. */
20991
21212
  unstable_location_id?: (string | null) | undefined;
20992
21213
  };
20993
21214
  formData: {};
@@ -21213,7 +21434,7 @@ export interface Routes {
21213
21434
  name: string;
21214
21435
  /** Indicates whether the device is online. */
21215
21436
  online: boolean;
21216
- /** Manufacturer of the device. */
21437
+ /** 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
21438
  manufacturer?: string | undefined;
21218
21439
  /** Image URL for the device. */
21219
21440
  image_url?: string | undefined;
@@ -21268,7 +21489,9 @@ export interface Routes {
21268
21489
  queryParams: {};
21269
21490
  jsonBody: {};
21270
21491
  commonParams: {
21492
+ /** ID of the unmanaged device that you want to update. */
21271
21493
  device_id: string;
21494
+ /** Indicates whether the device is managed. Set this parameter to `true` to convert an unmanaged device to managed. */
21272
21495
  is_managed: true;
21273
21496
  };
21274
21497
  formData: {};
@@ -21280,12 +21503,17 @@ export interface Routes {
21280
21503
  queryParams: {};
21281
21504
  jsonBody: {};
21282
21505
  commonParams: {
21506
+ /** ID of the device that you want to update. */
21283
21507
  device_id: string;
21284
21508
  properties?: {
21509
+ /** Name for the device. */
21285
21510
  name?: (string | null) | undefined;
21286
21511
  } | undefined;
21512
+ /** Name for the device. */
21287
21513
  name?: (string | null) | undefined;
21514
+ /** Indicates whether the device is managed. To unmanage a device, set `is_managed` to `false`. */
21288
21515
  is_managed?: boolean;
21516
+ /** 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
21517
  custom_metadata?: Record<string, string | boolean | null> | undefined;
21290
21518
  };
21291
21519
  formData: {};
@@ -21303,7 +21531,9 @@ export interface Routes {
21303
21531
  };
21304
21532
  formData: {};
21305
21533
  jsonResponse: {
21306
- /** */
21534
+ /** 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.
21535
+
21536
+ 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
21537
  event?: ({
21308
21538
  /** ID of the event. */
21309
21539
  event_id: string;
@@ -24067,7 +24297,7 @@ export interface Routes {
24067
24297
  };
24068
24298
  formData: {};
24069
24299
  jsonResponse: {
24070
- /** */
24300
+ /** Represents a [device](https://docs.seam.co/latest/core-concepts/devices) that has been connected to Seam. */
24071
24301
  lock: {
24072
24302
  /** Unique identifier for the device. */
24073
24303
  device_id: string;
@@ -24125,7 +24355,7 @@ export interface Routes {
24125
24355
  level: number;
24126
24356
  status: 'critical' | 'low' | 'good' | 'full';
24127
24357
  } | undefined;
24128
- /** Manufacturer of the device. */
24358
+ /** 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
24359
  manufacturer?: string | undefined;
24130
24360
  /** Image URL for the device. */
24131
24361
  image_url?: string | undefined;
@@ -24404,6 +24634,7 @@ export interface Routes {
24404
24634
  } | undefined;
24405
24635
  }) & ({
24406
24636
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
24637
+ /** 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
24638
  code_constraints?: (Array<{
24408
24639
  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
24640
  } | {
@@ -24820,7 +25051,7 @@ export interface Routes {
24820
25051
  can_simulate_connection?: boolean | undefined;
24821
25052
  can_simulate_disconnection?: boolean | undefined;
24822
25053
  };
24823
- /** */
25054
+ /** Represents a [device](https://docs.seam.co/latest/core-concepts/devices) that has been connected to Seam. */
24824
25055
  device: {
24825
25056
  /** Unique identifier for the device. */
24826
25057
  device_id: string;
@@ -24878,7 +25109,7 @@ export interface Routes {
24878
25109
  level: number;
24879
25110
  status: 'critical' | 'low' | 'good' | 'full';
24880
25111
  } | undefined;
24881
- /** Manufacturer of the device. */
25112
+ /** 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
25113
  manufacturer?: string | undefined;
24883
25114
  /** Image URL for the device. */
24884
25115
  image_url?: string | undefined;
@@ -25157,6 +25388,7 @@ export interface Routes {
25157
25388
  } | undefined;
25158
25389
  }) & ({
25159
25390
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
25391
+ /** 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
25392
  code_constraints?: (Array<{
25161
25393
  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
25394
  } | {
@@ -25582,11 +25814,11 @@ export interface Routes {
25582
25814
  jsonBody: {};
25583
25815
  commonParams: {
25584
25816
  customer_ids?: string[] | undefined;
25585
- /** ID of the connected account by which to filter. */
25817
+ /** ID of the connected account for which you want to list devices. */
25586
25818
  connected_account_id?: string | undefined;
25587
- /** Array of IDs of the connected accounts by which to filter devices. */
25819
+ /** Array of IDs of the connected accounts for which you want to list devices. */
25588
25820
  connected_account_ids?: string[] | undefined;
25589
- /** ID of the Connect Webview by which to filter devices. */
25821
+ /** ID of the Connect Webview for which you want to list devices. */
25590
25822
  connect_webview_id?: string | undefined;
25591
25823
  /** Device type by which to filter devices. */
25592
25824
  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 +25826,15 @@ export interface Routes {
25594
25826
  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
25827
  /** Manufacturer by which to filter devices. */
25596
25828
  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. */
25829
+ /** Array of device IDs for which you want to list devices. */
25598
25830
  device_ids?: string[] | undefined;
25599
25831
  /** Numerical limit on the number of devices to return. */
25600
25832
  limit?: number;
25601
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
25833
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
25602
25834
  created_before?: Date | undefined;
25603
- /** Your own internal user ID for the user by which to filter devices. */
25835
+ /** Your own internal user ID for the user for which you want to list devices. */
25604
25836
  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. */
25837
+ /** 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
25838
  custom_metadata_has?: Record<string, string | boolean> | undefined;
25607
25839
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
25608
25840
  page_cursor?: (string | undefined) | null;
@@ -25610,7 +25842,7 @@ export interface Routes {
25610
25842
  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
25843
  /** */
25612
25844
  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
- /** */
25845
+ /** ID of the location for which you want to list devices. */
25614
25846
  unstable_location_id?: (string | null) | undefined;
25615
25847
  };
25616
25848
  formData: {};
@@ -25672,7 +25904,7 @@ export interface Routes {
25672
25904
  level: number;
25673
25905
  status: 'critical' | 'low' | 'good' | 'full';
25674
25906
  } | undefined;
25675
- /** Manufacturer of the device. */
25907
+ /** 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
25908
  manufacturer?: string | undefined;
25677
25909
  /** Image URL for the device. */
25678
25910
  image_url?: string | undefined;
@@ -25951,6 +26183,7 @@ export interface Routes {
25951
26183
  } | undefined;
25952
26184
  }) & ({
25953
26185
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
26186
+ /** 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
26187
  code_constraints?: (Array<{
25955
26188
  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
26189
  } | {
@@ -26424,7 +26657,7 @@ export interface Routes {
26424
26657
  level: number;
26425
26658
  status: 'critical' | 'low' | 'good' | 'full';
26426
26659
  } | undefined;
26427
- /** Manufacturer of the device. */
26660
+ /** 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
26661
  manufacturer?: string | undefined;
26429
26662
  /** Image URL for the device. */
26430
26663
  image_url?: string | undefined;
@@ -26703,6 +26936,7 @@ export interface Routes {
26703
26936
  } | undefined;
26704
26937
  }) & ({
26705
26938
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
26939
+ /** 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
26940
  code_constraints?: (Array<{
26707
26941
  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
26942
  } | {
@@ -31626,11 +31860,11 @@ export interface Routes {
31626
31860
  jsonBody: {};
31627
31861
  commonParams: {
31628
31862
  customer_ids?: string[] | undefined;
31629
- /** ID of the connected account by which to filter. */
31863
+ /** ID of the connected account for which you want to list devices. */
31630
31864
  connected_account_id?: string | undefined;
31631
- /** Array of IDs of the connected accounts by which to filter devices. */
31865
+ /** Array of IDs of the connected accounts for which you want to list devices. */
31632
31866
  connected_account_ids?: string[] | undefined;
31633
- /** ID of the Connect Webview by which to filter devices. */
31867
+ /** ID of the Connect Webview for which you want to list devices. */
31634
31868
  connect_webview_id?: string | undefined;
31635
31869
  /** Device type by which to filter devices. */
31636
31870
  device_type?: ('noiseaware_activity_zone' | 'minut_sensor') | undefined;
@@ -31638,15 +31872,15 @@ export interface Routes {
31638
31872
  device_types?: Array<'noiseaware_activity_zone' | 'minut_sensor'> | undefined;
31639
31873
  /** Manufacturer by which to filter devices. */
31640
31874
  manufacturer?: ('minut' | 'noiseaware') | undefined;
31641
- /** Array of device IDs by which to filter devices. */
31875
+ /** Array of device IDs for which you want to list devices. */
31642
31876
  device_ids?: string[] | undefined;
31643
31877
  /** Numerical limit on the number of devices to return. */
31644
31878
  limit?: number;
31645
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
31879
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
31646
31880
  created_before?: Date | undefined;
31647
- /** Your own internal user ID for the user by which to filter devices. */
31881
+ /** Your own internal user ID for the user for which you want to list devices. */
31648
31882
  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. */
31883
+ /** 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
31884
  custom_metadata_has?: Record<string, string | boolean> | undefined;
31651
31885
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
31652
31886
  page_cursor?: (string | undefined) | null;
@@ -31654,7 +31888,7 @@ export interface Routes {
31654
31888
  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
31889
  /** */
31656
31890
  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
- /** */
31891
+ /** ID of the location for which you want to list devices. */
31658
31892
  unstable_location_id?: (string | null) | undefined;
31659
31893
  };
31660
31894
  formData: {};
@@ -31716,7 +31950,7 @@ export interface Routes {
31716
31950
  level: number;
31717
31951
  status: 'critical' | 'low' | 'good' | 'full';
31718
31952
  } | undefined;
31719
- /** Manufacturer of the device. */
31953
+ /** 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
31954
  manufacturer?: string | undefined;
31721
31955
  /** Image URL for the device. */
31722
31956
  image_url?: string | undefined;
@@ -31995,6 +32229,7 @@ export interface Routes {
31995
32229
  } | undefined;
31996
32230
  }) & ({
31997
32231
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
32232
+ /** 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
32233
  code_constraints?: (Array<{
31999
32234
  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
32235
  } | {
@@ -32468,7 +32703,7 @@ export interface Routes {
32468
32703
  level: number;
32469
32704
  status: 'critical' | 'low' | 'good' | 'full';
32470
32705
  } | undefined;
32471
- /** Manufacturer of the device. */
32706
+ /** 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
32707
  manufacturer?: string | undefined;
32473
32708
  /** Image URL for the device. */
32474
32709
  image_url?: string | undefined;
@@ -32747,6 +32982,7 @@ export interface Routes {
32747
32982
  } | undefined;
32748
32983
  }) & ({
32749
32984
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
32985
+ /** 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
32986
  code_constraints?: (Array<{
32751
32987
  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
32988
  } | {
@@ -37046,7 +37282,15 @@ export interface Routes {
37046
37282
  commonParams: {};
37047
37283
  formData: {};
37048
37284
  jsonResponse: {
37049
- /** */
37285
+ /** 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.
37286
+
37287
+ You create each client session with a custom `user_identifier_key`. Normally, the `user_identifier_key` is a user ID that your application provides.
37288
+
37289
+ 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`.
37290
+
37291
+ 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.
37292
+
37293
+ 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
37294
  client_session: {
37051
37295
  client_session_id: string;
37052
37296
  workspace_id: string;
@@ -40661,7 +40905,7 @@ export interface Routes {
40661
40905
  };
40662
40906
  formData: {};
40663
40907
  jsonResponse: {
40664
- /** */
40908
+ /** Represents a [device](https://docs.seam.co/latest/core-concepts/devices) that has been connected to Seam. */
40665
40909
  thermostat: {
40666
40910
  /** Unique identifier for the device. */
40667
40911
  device_id: string;
@@ -40719,7 +40963,7 @@ export interface Routes {
40719
40963
  level: number;
40720
40964
  status: 'critical' | 'low' | 'good' | 'full';
40721
40965
  } | undefined;
40722
- /** Manufacturer of the device. */
40966
+ /** 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
40967
  manufacturer?: string | undefined;
40724
40968
  /** Image URL for the device. */
40725
40969
  image_url?: string | undefined;
@@ -40998,6 +41242,7 @@ export interface Routes {
40998
41242
  } | undefined;
40999
41243
  }) & ({
41000
41244
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
41245
+ /** 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
41246
  code_constraints?: (Array<{
41002
41247
  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
41248
  } | {
@@ -43671,11 +43916,11 @@ export interface Routes {
43671
43916
  jsonBody: {};
43672
43917
  commonParams: {
43673
43918
  customer_ids?: string[] | undefined;
43674
- /** ID of the connected account by which to filter. */
43919
+ /** ID of the connected account for which you want to list devices. */
43675
43920
  connected_account_id?: string | undefined;
43676
- /** Array of IDs of the connected accounts by which to filter devices. */
43921
+ /** Array of IDs of the connected accounts for which you want to list devices. */
43677
43922
  connected_account_ids?: string[] | undefined;
43678
- /** ID of the Connect Webview by which to filter devices. */
43923
+ /** ID of the Connect Webview for which you want to list devices. */
43679
43924
  connect_webview_id?: string | undefined;
43680
43925
  /** Device type by which to filter thermostat devices. */
43681
43926
  device_type?: ('ecobee_thermostat' | 'nest_thermostat' | 'honeywell_resideo_thermostat' | 'tado_thermostat' | 'sensi_thermostat' | 'smartthings_thermostat') | undefined;
@@ -43683,15 +43928,15 @@ export interface Routes {
43683
43928
  device_types?: Array<'ecobee_thermostat' | 'nest_thermostat' | 'honeywell_resideo_thermostat' | 'tado_thermostat' | 'sensi_thermostat' | 'smartthings_thermostat'> | undefined;
43684
43929
  /** Manufacturer by which to filter thermostat devices. */
43685
43930
  manufacturer?: ('ecobee' | 'honeywell_resideo' | 'nest' | 'tado' | 'sensi') | undefined;
43686
- /** Array of device IDs by which to filter devices. */
43931
+ /** Array of device IDs for which you want to list devices. */
43687
43932
  device_ids?: string[] | undefined;
43688
43933
  /** Numerical limit on the number of devices to return. */
43689
43934
  limit?: number;
43690
- /** Date threshold for devices to return. If specified, returns only devices created before the specified date. */
43935
+ /** Timestamp by which to limit returned devices. Returns devices created before this timestamp. */
43691
43936
  created_before?: Date | undefined;
43692
- /** Your own internal user ID for the user by which to filter devices. */
43937
+ /** Your own internal user ID for the user for which you want to list devices. */
43693
43938
  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. */
43939
+ /** 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
43940
  custom_metadata_has?: Record<string, string | boolean> | undefined;
43696
43941
  /** Identifies the specific page of results to return, obtained from the previous page's `next_page_cursor`. */
43697
43942
  page_cursor?: (string | undefined) | null;
@@ -43699,7 +43944,7 @@ export interface Routes {
43699
43944
  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
43945
  /** */
43701
43946
  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
- /** */
43947
+ /** ID of the location for which you want to list devices. */
43703
43948
  unstable_location_id?: (string | null) | undefined;
43704
43949
  };
43705
43950
  formData: {};
@@ -43761,7 +44006,7 @@ export interface Routes {
43761
44006
  level: number;
43762
44007
  status: 'critical' | 'low' | 'good' | 'full';
43763
44008
  } | undefined;
43764
- /** Manufacturer of the device. */
44009
+ /** 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
44010
  manufacturer?: string | undefined;
43766
44011
  /** Image URL for the device. */
43767
44012
  image_url?: string | undefined;
@@ -44040,6 +44285,7 @@ export interface Routes {
44040
44285
  } | undefined;
44041
44286
  }) & ({
44042
44287
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
44288
+ /** 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
44289
  code_constraints?: (Array<{
44044
44290
  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
44291
  } | {
@@ -44513,7 +44759,7 @@ export interface Routes {
44513
44759
  level: number;
44514
44760
  status: 'critical' | 'low' | 'good' | 'full';
44515
44761
  } | undefined;
44516
- /** Manufacturer of the device. */
44762
+ /** 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
44763
  manufacturer?: string | undefined;
44518
44764
  /** Image URL for the device. */
44519
44765
  image_url?: string | undefined;
@@ -44792,6 +45038,7 @@ export interface Routes {
44792
45038
  } | undefined;
44793
45039
  }) & ({
44794
45040
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
45041
+ /** 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
45042
  code_constraints?: (Array<{
44796
45043
  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
45044
  } | {
@@ -50444,6 +50691,43 @@ export interface Routes {
50444
50691
  };
50445
50692
  };
50446
50693
  };
50694
+ '/unstable_partner/resources/push': {
50695
+ route: '/unstable_partner/resources/push';
50696
+ method: 'POST';
50697
+ queryParams: {};
50698
+ jsonBody: Array<{
50699
+ partner_resource_type?: string | undefined;
50700
+ partner_resource_key?: string | undefined;
50701
+ customer_key?: string | undefined;
50702
+ email_address?: string | undefined;
50703
+ phone_number?: string | undefined;
50704
+ starts_at?: string | undefined;
50705
+ ends_at?: string | undefined;
50706
+ user_identity_key?: string | undefined;
50707
+ location_keys?: string[] | undefined;
50708
+ name?: string | undefined;
50709
+ description?: string | undefined;
50710
+ icon_url?: string | undefined;
50711
+ custom_metadata?: Record<string, string> | undefined;
50712
+ }> | {
50713
+ partner_resource_type?: string | undefined;
50714
+ partner_resource_key?: string | undefined;
50715
+ customer_key?: string | undefined;
50716
+ email_address?: string | undefined;
50717
+ phone_number?: string | undefined;
50718
+ starts_at?: string | undefined;
50719
+ ends_at?: string | undefined;
50720
+ user_identity_key?: string | undefined;
50721
+ location_keys?: string[] | undefined;
50722
+ name?: string | undefined;
50723
+ description?: string | undefined;
50724
+ icon_url?: string | undefined;
50725
+ custom_metadata?: Record<string, string> | undefined;
50726
+ };
50727
+ commonParams: {};
50728
+ formData: {};
50729
+ jsonResponse: {};
50730
+ };
50447
50731
  '/user_identities/add_acs_user': {
50448
50732
  route: '/user_identities/add_acs_user';
50449
50733
  method: 'POST' | 'PUT';
@@ -50477,7 +50761,7 @@ export interface Routes {
50477
50761
  };
50478
50762
  formData: {};
50479
50763
  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. */
50764
+ /** 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
50765
  user_identity: {
50482
50766
  /** ID of the user identity. */
50483
50767
  user_identity_id: string;
@@ -50638,7 +50922,7 @@ export interface Routes {
50638
50922
  };
50639
50923
  formData: {};
50640
50924
  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. */
50925
+ /** 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
50926
  user_identity: {
50643
50927
  /** ID of the user identity. */
50644
50928
  user_identity_id: string;
@@ -50767,7 +51051,7 @@ export interface Routes {
50767
51051
  level: number;
50768
51052
  status: 'critical' | 'low' | 'good' | 'full';
50769
51053
  } | undefined;
50770
- /** Manufacturer of the device. */
51054
+ /** 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
51055
  manufacturer?: string | undefined;
50772
51056
  /** Image URL for the device. */
50773
51057
  image_url?: string | undefined;
@@ -51046,6 +51330,7 @@ export interface Routes {
51046
51330
  } | undefined;
51047
51331
  }) & ({
51048
51332
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
51333
+ /** 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
51334
  code_constraints?: (Array<{
51050
51335
  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
51336
  } | {
@@ -51521,7 +51806,7 @@ export interface Routes {
51521
51806
  level: number;
51522
51807
  status: 'critical' | 'low' | 'good' | 'full';
51523
51808
  } | undefined;
51524
- /** Manufacturer of the device. */
51809
+ /** 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
51810
  manufacturer?: string | undefined;
51526
51811
  /** Image URL for the device. */
51527
51812
  image_url?: string | undefined;
@@ -51800,6 +52085,7 @@ export interface Routes {
51800
52085
  } | undefined;
51801
52086
  }) & ({
51802
52087
  _experimental_supported_code_from_access_codes_lengths?: (number[] | undefined) | undefined;
52088
+ /** 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
52089
  code_constraints?: (Array<{
51804
52090
  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
52091
  } | {
@@ -52716,7 +53002,7 @@ export interface Routes {
52716
53002
  commonParams: {};
52717
53003
  formData: {};
52718
53004
  jsonResponse: {
52719
- /** */
53005
+ /** 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
53006
  workspace: {
52721
53007
  workspace_id: string;
52722
53008
  name: string;
@@ -52745,7 +53031,7 @@ export interface Routes {
52745
53031
  commonParams: {};
52746
53032
  formData: {};
52747
53033
  jsonResponse: {
52748
- /** */
53034
+ /** 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
53035
  workspace: {
52750
53036
  workspace_id: string;
52751
53037
  name: string;