@seamapi/types 1.952.0 → 1.954.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13671,14 +13671,14 @@ export type Routes = {
13671
13671
  name: string;
13672
13672
  /**
13673
13673
  * @deprecated Use `external_type`.*/
13674
- access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
13674
+ access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
13675
13675
  /**
13676
13676
  * @deprecated Use `external_type_display_name`.*/
13677
13677
  access_group_type_display_name: string;
13678
13678
  /** Display name for the access group. */
13679
13679
  display_name: string;
13680
13680
  /** Brand-specific terminology for the access group type. */
13681
- external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
13681
+ external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
13682
13682
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
13683
13683
  external_type_display_name: string;
13684
13684
  /** Date and time at which the access group was created. */
@@ -22651,14 +22651,14 @@ export type Routes = {
22651
22651
  name: string;
22652
22652
  /**
22653
22653
  * @deprecated Use `external_type`.*/
22654
- access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
22654
+ access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
22655
22655
  /**
22656
22656
  * @deprecated Use `external_type_display_name`.*/
22657
22657
  access_group_type_display_name: string;
22658
22658
  /** Display name for the access group. */
22659
22659
  display_name: string;
22660
22660
  /** Brand-specific terminology for the access group type. */
22661
- external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
22661
+ external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
22662
22662
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
22663
22663
  external_type_display_name: string;
22664
22664
  /** Date and time at which the access group was created. */
@@ -22837,14 +22837,14 @@ export type Routes = {
22837
22837
  name: string;
22838
22838
  /**
22839
22839
  * @deprecated Use `external_type`.*/
22840
- access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
22840
+ access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
22841
22841
  /**
22842
22842
  * @deprecated Use `external_type_display_name`.*/
22843
22843
  access_group_type_display_name: string;
22844
22844
  /** Display name for the access group. */
22845
22845
  display_name: string;
22846
22846
  /** Brand-specific terminology for the access group type. */
22847
- external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
22847
+ external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
22848
22848
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
22849
22849
  external_type_display_name: string;
22850
22850
  /** Date and time at which the access group was created. */
@@ -23504,14 +23504,14 @@ export type Routes = {
23504
23504
  name: string;
23505
23505
  /**
23506
23506
  * @deprecated Use `external_type`.*/
23507
- access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
23507
+ access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
23508
23508
  /**
23509
23509
  * @deprecated Use `external_type_display_name`.*/
23510
23510
  access_group_type_display_name: string;
23511
23511
  /** Display name for the access group. */
23512
23512
  display_name: string;
23513
23513
  /** Brand-specific terminology for the access group type. */
23514
- external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
23514
+ external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
23515
23515
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
23516
23516
  external_type_display_name: string;
23517
23517
  /** Date and time at which the access group was created. */
@@ -23687,14 +23687,14 @@ export type Routes = {
23687
23687
  name: string;
23688
23688
  /**
23689
23689
  * @deprecated Use `external_type`.*/
23690
- access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
23690
+ access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
23691
23691
  /**
23692
23692
  * @deprecated Use `external_type_display_name`.*/
23693
23693
  access_group_type_display_name: string;
23694
23694
  /** Display name for the access group. */
23695
23695
  display_name: string;
23696
23696
  /** Brand-specific terminology for the access group type. */
23697
- external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
23697
+ external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
23698
23698
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
23699
23699
  external_type_display_name: string;
23700
23700
  /** Date and time at which the access group was created. */
@@ -48064,6 +48064,13 @@ export type Routes = {
48064
48064
  ID of the ACS entrance associated with the access-denied event.
48065
48065
  */
48066
48066
  acs_entrance_id?: string | undefined;
48067
+ /** Why access was denied, when the provider reports a determinable cause. Omitted when unknown. */
48068
+ reason?: {
48069
+ /** Normalized reason a lock denied access. Provider-agnostic; not all providers report every value. */
48070
+ reason_code: 'unknown_code' | 'expired_code' | 'blocklisted_code' | 'too_many_attempts' | 'blocked_by_privacy_mode' | 'credential_error';
48071
+ /** Human-readable explanation of why access was denied. */
48072
+ message: string;
48073
+ } | undefined;
48067
48074
  } | {
48068
48075
  /** ID of the event. */
48069
48076
  event_id: string;
@@ -51323,6 +51330,13 @@ export type Routes = {
51323
51330
  ID of the ACS entrance associated with the access-denied event.
51324
51331
  */
51325
51332
  acs_entrance_id?: string | undefined;
51333
+ /** Why access was denied, when the provider reports a determinable cause. Omitted when unknown. */
51334
+ reason?: {
51335
+ /** Normalized reason a lock denied access. Provider-agnostic; not all providers report every value. */
51336
+ reason_code: 'unknown_code' | 'expired_code' | 'blocklisted_code' | 'too_many_attempts' | 'blocked_by_privacy_mode' | 'credential_error';
51337
+ /** Human-readable explanation of why access was denied. */
51338
+ message: string;
51339
+ } | undefined;
51326
51340
  } | {
51327
51341
  /** ID of the event. */
51328
51342
  event_id: string;
@@ -81087,6 +81101,13 @@ export type Routes = {
81087
81101
  ID of the ACS entrance associated with the access-denied event.
81088
81102
  */
81089
81103
  acs_entrance_id?: string | undefined;
81104
+ /** Why access was denied, when the provider reports a determinable cause. Omitted when unknown. */
81105
+ reason?: {
81106
+ /** Normalized reason a lock denied access. Provider-agnostic; not all providers report every value. */
81107
+ reason_code: 'unknown_code' | 'expired_code' | 'blocklisted_code' | 'too_many_attempts' | 'blocked_by_privacy_mode' | 'credential_error';
81108
+ /** Human-readable explanation of why access was denied. */
81109
+ message: string;
81110
+ } | undefined;
81090
81111
  } | {
81091
81112
  /** ID of the event. */
81092
81113
  event_id: string;
@@ -113040,14 +113061,14 @@ export type Routes = {
113040
113061
  name: string;
113041
113062
  /**
113042
113063
  * @deprecated Use `external_type`.*/
113043
- access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
113064
+ access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
113044
113065
  /**
113045
113066
  * @deprecated Use `external_type_display_name`.*/
113046
113067
  access_group_type_display_name: string;
113047
113068
  /** Display name for the access group. */
113048
113069
  display_name: string;
113049
113070
  /** Brand-specific terminology for the access group type. */
113050
- external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
113071
+ external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
113051
113072
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
113052
113073
  external_type_display_name: string;
113053
113074
  /** Date and time at which the access group was created. */
@@ -115170,14 +115191,14 @@ export type Routes = {
115170
115191
  name: string;
115171
115192
  /**
115172
115193
  * @deprecated Use `external_type`.*/
115173
- access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
115194
+ access_group_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
115174
115195
  /**
115175
115196
  * @deprecated Use `external_type_display_name`.*/
115176
115197
  access_group_type_display_name: string;
115177
115198
  /** Display name for the access group. */
115178
115199
  display_name: string;
115179
115200
  /** Brand-specific terminology for the access group type. */
115180
- external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group';
115201
+ external_type: 'pti_unit' | 'pti_access_level' | 'salto_ks_access_group' | 'brivo_group' | 'salto_space_group' | 'dormakaba_community_access_group' | 'dormakaba_ambiance_access_group' | 'avigilon_alta_group' | 'kisi_access_group';
115181
115202
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
115182
115203
  external_type_display_name: string;
115183
115204
  /** Date and time at which the access group was created. */
@@ -119182,6 +119203,13 @@ export type Routes = {
119182
119203
  ID of the ACS entrance associated with the access-denied event.
119183
119204
  */
119184
119205
  acs_entrance_id?: string | undefined;
119206
+ /** Why access was denied, when the provider reports a determinable cause. Omitted when unknown. */
119207
+ reason?: {
119208
+ /** Normalized reason a lock denied access. Provider-agnostic; not all providers report every value. */
119209
+ reason_code: 'unknown_code' | 'expired_code' | 'blocklisted_code' | 'too_many_attempts' | 'blocked_by_privacy_mode' | 'credential_error';
119210
+ /** Human-readable explanation of why access was denied. */
119211
+ message: string;
119212
+ } | undefined;
119185
119213
  } | {
119186
119214
  /** ID of the event. */
119187
119215
  event_id: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seamapi/types",
3
- "version": "1.952.0",
3
+ "version": "1.954.0",
4
4
  "description": "TypeScript types for the Seam API.",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -13,6 +13,7 @@ export const acs_access_group_external_type = z.enum([
13
13
  'dormakaba_community_access_group',
14
14
  'dormakaba_ambiance_access_group',
15
15
  'avigilon_alta_group',
16
+ 'kisi_access_group',
16
17
  ])
17
18
 
18
19
  export type AcsAccessGroupExternalType = z.infer<
@@ -60,3 +60,18 @@ export const common_event_warning = z
60
60
  .describe(
61
61
  'Warning associated with the resource, including the warning code, message, and creation timestamp.',
62
62
  )
63
+
64
+ export const lock_access_denied_reason = z
65
+ .enum([
66
+ 'unknown_code',
67
+ 'expired_code',
68
+ 'blocklisted_code',
69
+ 'too_many_attempts',
70
+ 'blocked_by_privacy_mode',
71
+ 'credential_error',
72
+ ])
73
+ .describe(
74
+ 'Normalized reason a lock denied access. Provider-agnostic; not all providers report every value.',
75
+ )
76
+
77
+ export type LockAccessDeniedReason = z.infer<typeof lock_access_denied_reason>
@@ -6,6 +6,7 @@ import {
6
6
  common_event,
7
7
  common_event_error,
8
8
  common_event_warning,
9
+ lock_access_denied_reason,
9
10
  } from './common.js'
10
11
 
11
12
  const device_event = common_event.extend({
@@ -549,6 +550,17 @@ export const lock_access_denied_event = device_event.extend({
549
550
  .uuid()
550
551
  .optional()
551
552
  .describe('ID of the affected device.'),
553
+ reason: z
554
+ .object({
555
+ reason_code: lock_access_denied_reason,
556
+ message: z
557
+ .string()
558
+ .describe('Human-readable explanation of why access was denied.'),
559
+ })
560
+ .optional()
561
+ .describe(
562
+ 'Why access was denied, when the provider reports a determinable cause. Omitted when unknown.',
563
+ ),
552
564
  }).describe(`
553
565
  ---
554
566
  route_path: /locks
@@ -2733,6 +2733,7 @@ const openapi: OpenAPISpec = {
2733
2733
  'dormakaba_community_access_group',
2734
2734
  'dormakaba_ambiance_access_group',
2735
2735
  'avigilon_alta_group',
2736
+ 'kisi_access_group',
2736
2737
  ],
2737
2738
  type: 'string',
2738
2739
  'x-deprecated': 'Use `external_type`.',
@@ -2837,6 +2838,7 @@ const openapi: OpenAPISpec = {
2837
2838
  'dormakaba_community_access_group',
2838
2839
  'dormakaba_ambiance_access_group',
2839
2840
  'avigilon_alta_group',
2841
+ 'kisi_access_group',
2840
2842
  ],
2841
2843
  type: 'string',
2842
2844
  },
@@ -26164,6 +26166,32 @@ const openapi: OpenAPISpec = {
26164
26166
  format: 'date-time',
26165
26167
  type: 'string',
26166
26168
  },
26169
+ reason: {
26170
+ description:
26171
+ 'Why access was denied, when the provider reports a determinable cause. Omitted when unknown.',
26172
+ properties: {
26173
+ message: {
26174
+ description:
26175
+ 'Human-readable explanation of why access was denied.',
26176
+ type: 'string',
26177
+ },
26178
+ reason_code: {
26179
+ description:
26180
+ 'Normalized reason a lock denied access. Provider-agnostic; not all providers report every value.',
26181
+ enum: [
26182
+ 'unknown_code',
26183
+ 'expired_code',
26184
+ 'blocklisted_code',
26185
+ 'too_many_attempts',
26186
+ 'blocked_by_privacy_mode',
26187
+ 'credential_error',
26188
+ ],
26189
+ type: 'string',
26190
+ },
26191
+ },
26192
+ required: ['reason_code', 'message'],
26193
+ type: 'object',
26194
+ },
26167
26195
  user_identity_id: {
26168
26196
  description:
26169
26197
  '\n undocumented: Unreleased.\n ---\n ID of the user identity associated with the access-denied event.\n ',
@@ -30875,6 +30903,7 @@ const openapi: OpenAPISpec = {
30875
30903
  'dormakaba_community_access_group',
30876
30904
  'dormakaba_ambiance_access_group',
30877
30905
  'avigilon_alta_group',
30906
+ 'kisi_access_group',
30878
30907
  ],
30879
30908
  type: 'string',
30880
30909
  'x-deprecated': 'Use `external_type`.',
@@ -30979,6 +31008,7 @@ const openapi: OpenAPISpec = {
30979
31008
  'dormakaba_community_access_group',
30980
31009
  'dormakaba_ambiance_access_group',
30981
31010
  'avigilon_alta_group',
31011
+ 'kisi_access_group',
30982
31012
  ],
30983
31013
  type: 'string',
30984
31014
  },
@@ -15817,6 +15817,7 @@ export type Routes = {
15817
15817
  | 'dormakaba_community_access_group'
15818
15818
  | 'dormakaba_ambiance_access_group'
15819
15819
  | 'avigilon_alta_group'
15820
+ | 'kisi_access_group'
15820
15821
  /**
15821
15822
  * @deprecated Use `external_type_display_name`.*/
15822
15823
  access_group_type_display_name: string
@@ -15832,6 +15833,7 @@ export type Routes = {
15832
15833
  | 'dormakaba_community_access_group'
15833
15834
  | 'dormakaba_ambiance_access_group'
15834
15835
  | 'avigilon_alta_group'
15836
+ | 'kisi_access_group'
15835
15837
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
15836
15838
  external_type_display_name: string
15837
15839
  /** Date and time at which the access group was created. */
@@ -26269,6 +26271,7 @@ export type Routes = {
26269
26271
  | 'dormakaba_community_access_group'
26270
26272
  | 'dormakaba_ambiance_access_group'
26271
26273
  | 'avigilon_alta_group'
26274
+ | 'kisi_access_group'
26272
26275
  /**
26273
26276
  * @deprecated Use `external_type_display_name`.*/
26274
26277
  access_group_type_display_name: string
@@ -26284,6 +26287,7 @@ export type Routes = {
26284
26287
  | 'dormakaba_community_access_group'
26285
26288
  | 'dormakaba_ambiance_access_group'
26286
26289
  | 'avigilon_alta_group'
26290
+ | 'kisi_access_group'
26287
26291
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
26288
26292
  external_type_display_name: string
26289
26293
  /** Date and time at which the access group was created. */
@@ -26485,6 +26489,7 @@ export type Routes = {
26485
26489
  | 'dormakaba_community_access_group'
26486
26490
  | 'dormakaba_ambiance_access_group'
26487
26491
  | 'avigilon_alta_group'
26492
+ | 'kisi_access_group'
26488
26493
  /**
26489
26494
  * @deprecated Use `external_type_display_name`.*/
26490
26495
  access_group_type_display_name: string
@@ -26500,6 +26505,7 @@ export type Routes = {
26500
26505
  | 'dormakaba_community_access_group'
26501
26506
  | 'dormakaba_ambiance_access_group'
26502
26507
  | 'avigilon_alta_group'
26508
+ | 'kisi_access_group'
26503
26509
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
26504
26510
  external_type_display_name: string
26505
26511
  /** Date and time at which the access group was created. */
@@ -27259,6 +27265,7 @@ export type Routes = {
27259
27265
  | 'dormakaba_community_access_group'
27260
27266
  | 'dormakaba_ambiance_access_group'
27261
27267
  | 'avigilon_alta_group'
27268
+ | 'kisi_access_group'
27262
27269
  /**
27263
27270
  * @deprecated Use `external_type_display_name`.*/
27264
27271
  access_group_type_display_name: string
@@ -27274,6 +27281,7 @@ export type Routes = {
27274
27281
  | 'dormakaba_community_access_group'
27275
27282
  | 'dormakaba_ambiance_access_group'
27276
27283
  | 'avigilon_alta_group'
27284
+ | 'kisi_access_group'
27277
27285
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
27278
27286
  external_type_display_name: string
27279
27287
  /** Date and time at which the access group was created. */
@@ -27472,6 +27480,7 @@ export type Routes = {
27472
27480
  | 'dormakaba_community_access_group'
27473
27481
  | 'dormakaba_ambiance_access_group'
27474
27482
  | 'avigilon_alta_group'
27483
+ | 'kisi_access_group'
27475
27484
  /**
27476
27485
  * @deprecated Use `external_type_display_name`.*/
27477
27486
  access_group_type_display_name: string
@@ -27487,6 +27496,7 @@ export type Routes = {
27487
27496
  | 'dormakaba_community_access_group'
27488
27497
  | 'dormakaba_ambiance_access_group'
27489
27498
  | 'avigilon_alta_group'
27499
+ | 'kisi_access_group'
27490
27500
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
27491
27501
  external_type_display_name: string
27492
27502
  /** Date and time at which the access group was created. */
@@ -57707,6 +57717,21 @@ export type Routes = {
57707
57717
  ID of the ACS entrance associated with the access-denied event.
57708
57718
  */
57709
57719
  acs_entrance_id?: string | undefined
57720
+ /** Why access was denied, when the provider reports a determinable cause. Omitted when unknown. */
57721
+ reason?:
57722
+ | {
57723
+ /** Normalized reason a lock denied access. Provider-agnostic; not all providers report every value. */
57724
+ reason_code:
57725
+ | 'unknown_code'
57726
+ | 'expired_code'
57727
+ | 'blocklisted_code'
57728
+ | 'too_many_attempts'
57729
+ | 'blocked_by_privacy_mode'
57730
+ | 'credential_error'
57731
+ /** Human-readable explanation of why access was denied. */
57732
+ message: string
57733
+ }
57734
+ | undefined
57710
57735
  }
57711
57736
  | {
57712
57737
  /** ID of the event. */
@@ -61570,6 +61595,21 @@ export type Routes = {
61570
61595
  ID of the ACS entrance associated with the access-denied event.
61571
61596
  */
61572
61597
  acs_entrance_id?: string | undefined
61598
+ /** Why access was denied, when the provider reports a determinable cause. Omitted when unknown. */
61599
+ reason?:
61600
+ | {
61601
+ /** Normalized reason a lock denied access. Provider-agnostic; not all providers report every value. */
61602
+ reason_code:
61603
+ | 'unknown_code'
61604
+ | 'expired_code'
61605
+ | 'blocklisted_code'
61606
+ | 'too_many_attempts'
61607
+ | 'blocked_by_privacy_mode'
61608
+ | 'credential_error'
61609
+ /** Human-readable explanation of why access was denied. */
61610
+ message: string
61611
+ }
61612
+ | undefined
61573
61613
  }
61574
61614
  | {
61575
61615
  /** ID of the event. */
@@ -96959,6 +96999,21 @@ export type Routes = {
96959
96999
  ID of the ACS entrance associated with the access-denied event.
96960
97000
  */
96961
97001
  acs_entrance_id?: string | undefined
97002
+ /** Why access was denied, when the provider reports a determinable cause. Omitted when unknown. */
97003
+ reason?:
97004
+ | {
97005
+ /** Normalized reason a lock denied access. Provider-agnostic; not all providers report every value. */
97006
+ reason_code:
97007
+ | 'unknown_code'
97008
+ | 'expired_code'
97009
+ | 'blocklisted_code'
97010
+ | 'too_many_attempts'
97011
+ | 'blocked_by_privacy_mode'
97012
+ | 'credential_error'
97013
+ /** Human-readable explanation of why access was denied. */
97014
+ message: string
97015
+ }
97016
+ | undefined
96962
97017
  }
96963
97018
  | {
96964
97019
  /** ID of the event. */
@@ -134853,6 +134908,7 @@ export type Routes = {
134853
134908
  | 'dormakaba_community_access_group'
134854
134909
  | 'dormakaba_ambiance_access_group'
134855
134910
  | 'avigilon_alta_group'
134911
+ | 'kisi_access_group'
134856
134912
  /**
134857
134913
  * @deprecated Use `external_type_display_name`.*/
134858
134914
  access_group_type_display_name: string
@@ -134868,6 +134924,7 @@ export type Routes = {
134868
134924
  | 'dormakaba_community_access_group'
134869
134925
  | 'dormakaba_ambiance_access_group'
134870
134926
  | 'avigilon_alta_group'
134927
+ | 'kisi_access_group'
134871
134928
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
134872
134929
  external_type_display_name: string
134873
134930
  /** Date and time at which the access group was created. */
@@ -137367,6 +137424,7 @@ export type Routes = {
137367
137424
  | 'dormakaba_community_access_group'
137368
137425
  | 'dormakaba_ambiance_access_group'
137369
137426
  | 'avigilon_alta_group'
137427
+ | 'kisi_access_group'
137370
137428
  /**
137371
137429
  * @deprecated Use `external_type_display_name`.*/
137372
137430
  access_group_type_display_name: string
@@ -137382,6 +137440,7 @@ export type Routes = {
137382
137440
  | 'dormakaba_community_access_group'
137383
137441
  | 'dormakaba_ambiance_access_group'
137384
137442
  | 'avigilon_alta_group'
137443
+ | 'kisi_access_group'
137385
137444
  /** Display name that corresponds to the brand-specific terminology for the access group type. */
137386
137445
  external_type_display_name: string
137387
137446
  /** Date and time at which the access group was created. */
@@ -141912,6 +141971,21 @@ export type Routes = {
141912
141971
  ID of the ACS entrance associated with the access-denied event.
141913
141972
  */
141914
141973
  acs_entrance_id?: string | undefined
141974
+ /** Why access was denied, when the provider reports a determinable cause. Omitted when unknown. */
141975
+ reason?:
141976
+ | {
141977
+ /** Normalized reason a lock denied access. Provider-agnostic; not all providers report every value. */
141978
+ reason_code:
141979
+ | 'unknown_code'
141980
+ | 'expired_code'
141981
+ | 'blocklisted_code'
141982
+ | 'too_many_attempts'
141983
+ | 'blocked_by_privacy_mode'
141984
+ | 'credential_error'
141985
+ /** Human-readable explanation of why access was denied. */
141986
+ message: string
141987
+ }
141988
+ | undefined
141915
141989
  }
141916
141990
  | {
141917
141991
  /** ID of the event. */