@seamapi/types 0.0.5 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/README.md +36 -2
  2. package/connect.d.ts +1 -0
  3. package/connect.js +2 -0
  4. package/connect.js.map +1 -0
  5. package/dist/connect.cjs +41 -0
  6. package/dist/connect.cjs.map +1 -0
  7. package/dist/connect.d.cts +56 -0
  8. package/dist/index.cjs +8 -0
  9. package/dist/index.cjs.map +1 -0
  10. package/dist/index.d.cts +3 -0
  11. package/index.d.ts +2 -2
  12. package/index.js +1 -2
  13. package/index.js.map +1 -1
  14. package/lib/seam/connect/index.d.ts +5 -1
  15. package/lib/seam/connect/index.js +6 -1
  16. package/lib/seam/connect/index.js.map +1 -1
  17. package/lib/seam/connect/model-types.d.ts +1 -0
  18. package/lib/seam/connect/model-types.js +2 -0
  19. package/lib/seam/connect/model-types.js.map +1 -0
  20. package/lib/seam/connect/models/connect-webview.d.ts +42 -0
  21. package/lib/seam/connect/models/connect-webview.js +16 -0
  22. package/lib/seam/connect/models/connect-webview.js.map +1 -0
  23. package/lib/seam/connect/models/index.d.ts +1 -0
  24. package/lib/seam/connect/models/index.js +2 -0
  25. package/lib/seam/connect/models/index.js.map +1 -0
  26. package/lib/seam/connect/openapi.d.ts +2 -0
  27. package/lib/seam/connect/openapi.js +2 -0
  28. package/lib/seam/connect/openapi.js.map +1 -0
  29. package/lib/seam/connect/route-types.d.ts +1694 -0
  30. package/lib/seam/connect/route-types.js +2 -0
  31. package/lib/seam/connect/route-types.js.map +1 -0
  32. package/lib/seam/connect/schemas.d.ts +1 -0
  33. package/lib/seam/connect/schemas.js +2 -0
  34. package/lib/seam/connect/schemas.js.map +1 -0
  35. package/package.json +25 -24
  36. package/src/connect.ts +1 -0
  37. package/src/index.ts +1 -2
  38. package/src/lib/seam/.prettierrc.json +5 -0
  39. package/src/lib/seam/connect/index.ts +8 -1
  40. package/src/lib/seam/connect/model-types.ts +1 -0
  41. package/src/lib/seam/connect/models/connect-webview.ts +18 -0
  42. package/src/lib/seam/connect/models/index.ts +1 -0
  43. package/src/lib/seam/connect/openapi.ts +1 -0
  44. package/src/lib/seam/connect/route-types.ts +2321 -0
  45. package/src/lib/seam/connect/schemas.ts +1 -0
  46. package/lib/index.d.ts +0 -3
  47. package/lib/index.js +0 -4
  48. package/lib/index.js.map +0 -1
  49. package/lib/seam/connect/workspace.d.ts +0 -9
  50. package/lib/seam/connect/workspace.js +0 -5
  51. package/lib/seam/connect/workspace.js.map +0 -1
  52. package/lib/seam/index.d.ts +0 -1
  53. package/lib/seam/index.js +0 -2
  54. package/lib/seam/index.js.map +0 -1
  55. package/lib/todo.d.ts +0 -1
  56. package/lib/todo.js +0 -2
  57. package/lib/todo.js.map +0 -1
  58. package/src/lib/index.ts +0 -3
  59. package/src/lib/seam/connect/workspace.ts +0 -6
  60. package/src/lib/seam/index.ts +0 -1
  61. package/src/lib/todo.ts +0 -1
@@ -0,0 +1,1694 @@
1
+ export interface Routes {
2
+ "/access_codes/create": {
3
+ route: "/access_codes/create";
4
+ method: "POST";
5
+ queryParams: {};
6
+ jsonBody: {
7
+ device_id: string;
8
+ name?: string | undefined;
9
+ starts_at?: string | undefined;
10
+ ends_at?: string | undefined;
11
+ code?: string | undefined;
12
+ sync?: boolean;
13
+ attempt_for_offline_device?: boolean;
14
+ common_code_key?: string | undefined;
15
+ prefer_native_scheduling?: boolean | undefined;
16
+ use_backup_access_code_pool?: boolean | undefined;
17
+ };
18
+ commonParams: {};
19
+ formData: {};
20
+ jsonResponse: {
21
+ action_attempt: {
22
+ status: "success";
23
+ action_type: string;
24
+ action_attempt_id: string;
25
+ result?: any;
26
+ error: null;
27
+ } | {
28
+ status: "pending";
29
+ action_type: string;
30
+ action_attempt_id: string;
31
+ result: null;
32
+ error: null;
33
+ } | {
34
+ status: "error";
35
+ action_type: string;
36
+ action_attempt_id: string;
37
+ result: null;
38
+ error: {
39
+ type: string;
40
+ message: string;
41
+ };
42
+ };
43
+ access_code: {
44
+ common_code_key: string | null;
45
+ is_scheduled_on_device?: boolean | undefined;
46
+ type: "time_bound" | "ongoing";
47
+ is_waiting_for_code_assignment?: boolean | undefined;
48
+ access_code_id: string;
49
+ device_id: string;
50
+ name: string | null;
51
+ code: string | null;
52
+ created_at: string;
53
+ errors?: any;
54
+ warnings?: any;
55
+ is_managed: true;
56
+ starts_at?: string | undefined;
57
+ ends_at?: string | undefined;
58
+ status: "setting" | "set" | "unset" | "removing" | "unknown";
59
+ is_backup_access_code_available: boolean;
60
+ is_backup?: boolean | undefined;
61
+ pulled_backup_access_code_id?: (string | null) | undefined;
62
+ };
63
+ };
64
+ };
65
+ "/access_codes/create_multiple": {
66
+ route: "/access_codes/create_multiple";
67
+ method: "POST" | "PUT";
68
+ queryParams: {};
69
+ jsonBody: {
70
+ device_ids: string[];
71
+ behavior_when_code_cannot_be_shared?: "throw" | "create_random_code";
72
+ name?: string | undefined;
73
+ starts_at?: string | undefined;
74
+ ends_at?: string | undefined;
75
+ code?: string | undefined;
76
+ attempt_for_offline_device?: boolean;
77
+ prefer_native_scheduling?: boolean | undefined;
78
+ use_backup_access_code_pool?: boolean | undefined;
79
+ };
80
+ commonParams: {};
81
+ formData: {};
82
+ jsonResponse: {
83
+ access_codes: Array<{
84
+ common_code_key: string | null;
85
+ is_scheduled_on_device?: boolean | undefined;
86
+ type: "time_bound" | "ongoing";
87
+ is_waiting_for_code_assignment?: boolean | undefined;
88
+ access_code_id: string;
89
+ device_id: string;
90
+ name: string | null;
91
+ code: string | null;
92
+ created_at: string;
93
+ errors?: any;
94
+ warnings?: any;
95
+ is_managed: true;
96
+ starts_at?: string | undefined;
97
+ ends_at?: string | undefined;
98
+ status: "setting" | "set" | "unset" | "removing" | "unknown";
99
+ is_backup_access_code_available: boolean;
100
+ is_backup?: boolean | undefined;
101
+ pulled_backup_access_code_id?: (string | null) | undefined;
102
+ }>;
103
+ };
104
+ };
105
+ "/access_codes/delete": {
106
+ route: "/access_codes/delete";
107
+ method: "DELETE" | "POST";
108
+ queryParams: {};
109
+ jsonBody: {};
110
+ commonParams: {
111
+ device_id?: string | undefined;
112
+ access_code_id: string;
113
+ sync?: boolean;
114
+ };
115
+ formData: {};
116
+ jsonResponse: {
117
+ action_attempt: {
118
+ status: "success";
119
+ action_type: string;
120
+ action_attempt_id: string;
121
+ result?: any;
122
+ error: null;
123
+ } | {
124
+ status: "pending";
125
+ action_type: string;
126
+ action_attempt_id: string;
127
+ result: null;
128
+ error: null;
129
+ } | {
130
+ status: "error";
131
+ action_type: string;
132
+ action_attempt_id: string;
133
+ result: null;
134
+ error: {
135
+ type: string;
136
+ message: string;
137
+ };
138
+ };
139
+ };
140
+ };
141
+ "/access_codes/get": {
142
+ route: "/access_codes/get";
143
+ method: "GET" | "POST";
144
+ queryParams: {};
145
+ jsonBody: {};
146
+ commonParams: {
147
+ device_id?: string | undefined;
148
+ access_code_id?: string | undefined;
149
+ code?: string | undefined;
150
+ };
151
+ formData: {};
152
+ jsonResponse: {
153
+ access_code: {
154
+ common_code_key: string | null;
155
+ is_scheduled_on_device?: boolean | undefined;
156
+ type: "time_bound" | "ongoing";
157
+ is_waiting_for_code_assignment?: boolean | undefined;
158
+ access_code_id: string;
159
+ device_id: string;
160
+ name: string | null;
161
+ code: string | null;
162
+ created_at: string;
163
+ errors?: any;
164
+ warnings?: any;
165
+ is_managed: true;
166
+ starts_at?: string | undefined;
167
+ ends_at?: string | undefined;
168
+ status: "setting" | "set" | "unset" | "removing" | "unknown";
169
+ is_backup_access_code_available: boolean;
170
+ is_backup?: boolean | undefined;
171
+ pulled_backup_access_code_id?: (string | null) | undefined;
172
+ };
173
+ };
174
+ };
175
+ "/access_codes/list": {
176
+ route: "/access_codes/list";
177
+ method: "GET" | "POST";
178
+ queryParams: {};
179
+ jsonBody: {};
180
+ commonParams: {
181
+ device_id: string;
182
+ access_code_ids?: string[] | undefined;
183
+ };
184
+ formData: {};
185
+ jsonResponse: {
186
+ access_codes: Array<{
187
+ common_code_key: string | null;
188
+ is_scheduled_on_device?: boolean | undefined;
189
+ type: "time_bound" | "ongoing";
190
+ is_waiting_for_code_assignment?: boolean | undefined;
191
+ access_code_id: string;
192
+ device_id: string;
193
+ name: string | null;
194
+ code: string | null;
195
+ created_at: string;
196
+ errors?: any;
197
+ warnings?: any;
198
+ is_managed: true;
199
+ starts_at?: string | undefined;
200
+ ends_at?: string | undefined;
201
+ status: "setting" | "set" | "unset" | "removing" | "unknown";
202
+ is_backup_access_code_available: boolean;
203
+ is_backup?: boolean | undefined;
204
+ pulled_backup_access_code_id?: (string | null) | undefined;
205
+ }>;
206
+ };
207
+ };
208
+ "/access_codes/pull_backup_access_code": {
209
+ route: "/access_codes/pull_backup_access_code";
210
+ method: "POST";
211
+ queryParams: {};
212
+ jsonBody: {
213
+ access_code_id: string;
214
+ };
215
+ commonParams: {};
216
+ formData: {};
217
+ jsonResponse: {
218
+ backup_access_code: {
219
+ common_code_key: string | null;
220
+ is_scheduled_on_device?: boolean | undefined;
221
+ type: "time_bound" | "ongoing";
222
+ is_waiting_for_code_assignment?: boolean | undefined;
223
+ access_code_id: string;
224
+ device_id: string;
225
+ name: string | null;
226
+ code: string | null;
227
+ created_at: string;
228
+ errors?: any;
229
+ warnings?: any;
230
+ is_managed: true;
231
+ starts_at?: string | undefined;
232
+ ends_at?: string | undefined;
233
+ status: "setting" | "set" | "unset" | "removing" | "unknown";
234
+ is_backup_access_code_available: boolean;
235
+ is_backup?: boolean | undefined;
236
+ pulled_backup_access_code_id?: (string | null) | undefined;
237
+ };
238
+ };
239
+ };
240
+ "/access_codes/simulate/create_unmanaged_access_code": {
241
+ route: "/access_codes/simulate/create_unmanaged_access_code";
242
+ method: "POST";
243
+ queryParams: {};
244
+ jsonBody: {
245
+ device_id: string;
246
+ name: string;
247
+ code: string;
248
+ };
249
+ commonParams: {};
250
+ formData: {};
251
+ jsonResponse: {
252
+ access_code: {
253
+ access_code_id: string;
254
+ code: string | null;
255
+ status: "set";
256
+ created_at: string | Date;
257
+ is_managed: false;
258
+ type: "ongoing";
259
+ starts_at: null;
260
+ ends_at: null;
261
+ } | {
262
+ access_code_id: string;
263
+ code: string | null;
264
+ status: "set";
265
+ created_at: string | Date;
266
+ is_managed: false;
267
+ type: "time_bound";
268
+ starts_at: string | null;
269
+ ends_at: string | null;
270
+ };
271
+ };
272
+ };
273
+ "/access_codes/unmanaged/convert_to_managed": {
274
+ route: "/access_codes/unmanaged/convert_to_managed";
275
+ method: "POST" | "PATCH";
276
+ queryParams: {};
277
+ jsonBody: {};
278
+ commonParams: {
279
+ access_code_id: string;
280
+ force?: boolean | undefined;
281
+ sync?: boolean;
282
+ };
283
+ formData: {};
284
+ jsonResponse: {};
285
+ };
286
+ "/access_codes/unmanaged/delete": {
287
+ route: "/access_codes/unmanaged/delete";
288
+ method: "DELETE" | "POST";
289
+ queryParams: {};
290
+ jsonBody: {};
291
+ commonParams: {
292
+ access_code_id: string;
293
+ sync?: boolean;
294
+ };
295
+ formData: {};
296
+ jsonResponse: {
297
+ action_attempt: {
298
+ status: "success";
299
+ action_type: string;
300
+ action_attempt_id: string;
301
+ result?: any;
302
+ error: null;
303
+ } | {
304
+ status: "pending";
305
+ action_type: string;
306
+ action_attempt_id: string;
307
+ result: null;
308
+ error: null;
309
+ } | {
310
+ status: "error";
311
+ action_type: string;
312
+ action_attempt_id: string;
313
+ result: null;
314
+ error: {
315
+ type: string;
316
+ message: string;
317
+ };
318
+ };
319
+ };
320
+ };
321
+ "/access_codes/unmanaged/get": {
322
+ route: "/access_codes/unmanaged/get";
323
+ method: "GET" | "POST";
324
+ queryParams: {};
325
+ jsonBody: {};
326
+ commonParams: {
327
+ device_id?: string | undefined;
328
+ access_code_id?: string | undefined;
329
+ code?: string | undefined;
330
+ };
331
+ formData: {};
332
+ jsonResponse: {
333
+ access_code: {
334
+ type: "time_bound" | "ongoing";
335
+ access_code_id: string;
336
+ device_id: string;
337
+ name: string | null;
338
+ code: string | null;
339
+ created_at: string;
340
+ errors?: any;
341
+ warnings?: any;
342
+ is_managed: false;
343
+ starts_at: string | null;
344
+ ends_at: string | null;
345
+ status: "set";
346
+ };
347
+ };
348
+ };
349
+ "/access_codes/unmanaged/list": {
350
+ route: "/access_codes/unmanaged/list";
351
+ method: "GET" | "POST";
352
+ queryParams: {};
353
+ jsonBody: {};
354
+ commonParams: {
355
+ device_id: string;
356
+ };
357
+ formData: {};
358
+ jsonResponse: {
359
+ access_codes: Array<{
360
+ type: "time_bound" | "ongoing";
361
+ access_code_id: string;
362
+ device_id: string;
363
+ name: string | null;
364
+ code: string | null;
365
+ created_at: string;
366
+ errors?: any;
367
+ warnings?: any;
368
+ is_managed: false;
369
+ starts_at: string | null;
370
+ ends_at: string | null;
371
+ status: "set";
372
+ }>;
373
+ };
374
+ };
375
+ "/access_codes/unmanaged/update": {
376
+ route: "/access_codes/unmanaged/update";
377
+ method: "POST" | "PATCH";
378
+ queryParams: {};
379
+ jsonBody: {};
380
+ commonParams: {
381
+ access_code_id: string;
382
+ is_managed: boolean;
383
+ force?: boolean | undefined;
384
+ };
385
+ formData: {};
386
+ jsonResponse: {};
387
+ };
388
+ "/access_codes/update": {
389
+ route: "/access_codes/update";
390
+ method: "POST" | "PUT";
391
+ queryParams: {};
392
+ jsonBody: {
393
+ name?: string | undefined;
394
+ starts_at?: string | undefined;
395
+ ends_at?: string | undefined;
396
+ code?: string | undefined;
397
+ sync?: boolean;
398
+ attempt_for_offline_device?: boolean;
399
+ prefer_native_scheduling?: boolean | undefined;
400
+ use_backup_access_code_pool?: boolean | undefined;
401
+ access_code_id: string;
402
+ device_id?: string | undefined;
403
+ type?: ("ongoing" | "time_bound") | undefined;
404
+ };
405
+ commonParams: {};
406
+ formData: {};
407
+ jsonResponse: {
408
+ action_attempt: {
409
+ status: "success";
410
+ action_type: string;
411
+ action_attempt_id: string;
412
+ result?: any;
413
+ error: null;
414
+ } | {
415
+ status: "pending";
416
+ action_type: string;
417
+ action_attempt_id: string;
418
+ result: null;
419
+ error: null;
420
+ } | {
421
+ status: "error";
422
+ action_type: string;
423
+ action_attempt_id: string;
424
+ result: null;
425
+ error: {
426
+ type: string;
427
+ message: string;
428
+ };
429
+ };
430
+ };
431
+ };
432
+ "/action_attempts/get": {
433
+ route: "/action_attempts/get";
434
+ method: "GET" | "POST";
435
+ queryParams: {};
436
+ jsonBody: {};
437
+ commonParams: {
438
+ action_attempt_id: string;
439
+ };
440
+ formData: {};
441
+ jsonResponse: {
442
+ action_attempt: {
443
+ status: "success";
444
+ action_type: string;
445
+ action_attempt_id: string;
446
+ result?: any;
447
+ error: null;
448
+ } | {
449
+ status: "pending";
450
+ action_type: string;
451
+ action_attempt_id: string;
452
+ result: null;
453
+ error: null;
454
+ } | {
455
+ status: "error";
456
+ action_type: string;
457
+ action_attempt_id: string;
458
+ result: null;
459
+ error: {
460
+ type: string;
461
+ message: string;
462
+ };
463
+ };
464
+ };
465
+ };
466
+ "/action_attempts/list": {
467
+ route: "/action_attempts/list";
468
+ method: "GET" | "POST";
469
+ queryParams: {};
470
+ jsonBody: {};
471
+ commonParams: {
472
+ action_attempt_ids: string[];
473
+ };
474
+ formData: {};
475
+ jsonResponse: {
476
+ action_attempts: Array<{
477
+ status: "success";
478
+ action_type: string;
479
+ action_attempt_id: string;
480
+ result?: any;
481
+ error: null;
482
+ } | {
483
+ status: "pending";
484
+ action_type: string;
485
+ action_attempt_id: string;
486
+ result: null;
487
+ error: null;
488
+ } | {
489
+ status: "error";
490
+ action_type: string;
491
+ action_attempt_id: string;
492
+ result: null;
493
+ error: {
494
+ type: string;
495
+ message: string;
496
+ };
497
+ }>;
498
+ };
499
+ };
500
+ "/client_sessions/create": {
501
+ route: "/client_sessions/create";
502
+ method: "POST" | "PUT";
503
+ queryParams: {};
504
+ jsonBody: any | {
505
+ user_identifier_key: string;
506
+ connect_webview_ids?: string[] | undefined;
507
+ connected_account_ids?: string[] | undefined;
508
+ };
509
+ commonParams: {};
510
+ formData: {};
511
+ jsonResponse: {
512
+ client_session: {
513
+ token: string;
514
+ client_session_id: string;
515
+ created_at: string;
516
+ };
517
+ };
518
+ };
519
+ "/client_sessions/delete": {
520
+ route: "/client_sessions/delete";
521
+ method: "POST" | "GET";
522
+ queryParams: {};
523
+ jsonBody: {};
524
+ commonParams: {
525
+ client_session_id: string;
526
+ };
527
+ formData: {};
528
+ jsonResponse: {};
529
+ };
530
+ "/client_sessions/list": {
531
+ route: "/client_sessions/list";
532
+ method: "POST" | "GET";
533
+ queryParams: {};
534
+ jsonBody: {};
535
+ commonParams: {};
536
+ formData: {};
537
+ jsonResponse: {
538
+ client_sessions: Array<{
539
+ user_identifier_key: string | null;
540
+ client_session_id: string;
541
+ created_at: string;
542
+ device_count: number;
543
+ token: string;
544
+ workspace_id: string;
545
+ }>;
546
+ };
547
+ };
548
+ "/connect_webviews/create": {
549
+ route: "/connect_webviews/create";
550
+ method: "POST";
551
+ queryParams: {};
552
+ jsonBody: {
553
+ device_selection_mode?: ("none" | "single" | "multiple") | undefined;
554
+ custom_redirect_url?: string | undefined;
555
+ custom_redirect_failure_url?: string | undefined;
556
+ accepted_providers?: Array<"akuvox" | "august" | "avigilon_alta" | "brivo" | "butterflymx" | "schlage" | "smartthings" | "yale" | "genie" | "doorking" | "salto" | "lockly" | "ttlock" | "linear" | "noiseaware" | "nuki" | "seam_relay_admin" | "igloo" | "kwikset" | "minut" | "my_2n" | "controlbyweb" | "nest" | "igloohome" | "ecobee" | "hubitat" | "yale_access"> | undefined;
557
+ provider_category?: ("stable" | "internal_beta") | undefined;
558
+ custom_metadata?: Record<string, string | number | null | boolean> | undefined;
559
+ };
560
+ commonParams: {};
561
+ formData: {};
562
+ jsonResponse: {
563
+ connect_webview: {
564
+ connect_webview_id: string;
565
+ connected_account_id?: string | undefined;
566
+ url: string;
567
+ workspace_id: string;
568
+ device_selection_mode: "none" | "single" | "multiple";
569
+ accepted_providers: string[];
570
+ accepted_devices: string[];
571
+ any_provider_allowed: boolean;
572
+ any_device_allowed: boolean;
573
+ created_at: string;
574
+ login_successful: boolean;
575
+ status: "pending" | "failed" | "authorized";
576
+ };
577
+ };
578
+ };
579
+ "/connect_webviews/delete": {
580
+ route: "/connect_webviews/delete";
581
+ method: "DELETE" | "POST";
582
+ queryParams: {};
583
+ jsonBody: {
584
+ connect_webview_id: string;
585
+ };
586
+ commonParams: {};
587
+ formData: {};
588
+ jsonResponse: {};
589
+ };
590
+ "/connect_webviews/get": {
591
+ route: "/connect_webviews/get";
592
+ method: "GET" | "POST";
593
+ queryParams: {};
594
+ jsonBody: {};
595
+ commonParams: {
596
+ connect_webview_id: string;
597
+ };
598
+ formData: {};
599
+ jsonResponse: {
600
+ connect_webview: {
601
+ connect_webview_id: string;
602
+ connected_account_id?: string | undefined;
603
+ url: string;
604
+ workspace_id: string;
605
+ device_selection_mode: "none" | "single" | "multiple";
606
+ accepted_providers: string[];
607
+ accepted_devices: string[];
608
+ any_provider_allowed: boolean;
609
+ any_device_allowed: boolean;
610
+ created_at: string;
611
+ login_successful: boolean;
612
+ status: "pending" | "failed" | "authorized";
613
+ };
614
+ };
615
+ };
616
+ "/connect_webviews/list": {
617
+ route: "/connect_webviews/list";
618
+ method: "GET" | "POST";
619
+ queryParams: {};
620
+ jsonBody: {};
621
+ commonParams: {};
622
+ formData: {};
623
+ jsonResponse: {
624
+ connect_webviews: Array<{
625
+ connect_webview_id: string;
626
+ connected_account_id?: string | undefined;
627
+ url: string;
628
+ workspace_id: string;
629
+ device_selection_mode: "none" | "single" | "multiple";
630
+ accepted_providers: string[];
631
+ accepted_devices: string[];
632
+ any_provider_allowed: boolean;
633
+ any_device_allowed: boolean;
634
+ created_at: string;
635
+ login_successful: boolean;
636
+ status: "pending" | "failed" | "authorized";
637
+ }>;
638
+ };
639
+ };
640
+ "/connect_webviews/view": {
641
+ route: "/connect_webviews/view";
642
+ method: "GET";
643
+ queryParams: {
644
+ connect_webview_id: string;
645
+ auth_token: string;
646
+ };
647
+ jsonBody: {};
648
+ commonParams: {};
649
+ formData: {};
650
+ jsonResponse: {};
651
+ };
652
+ "/connected_accounts/delete": {
653
+ route: "/connected_accounts/delete";
654
+ method: "DELETE" | "POST";
655
+ queryParams: {};
656
+ jsonBody: {
657
+ connected_account_id: string;
658
+ };
659
+ commonParams: {};
660
+ formData: {};
661
+ jsonResponse: {};
662
+ };
663
+ "/connected_accounts/get": {
664
+ route: "/connected_accounts/get";
665
+ method: "GET";
666
+ queryParams: {
667
+ connected_account_id: string;
668
+ } | {
669
+ email: string;
670
+ };
671
+ jsonBody: {};
672
+ commonParams: {};
673
+ formData: {};
674
+ jsonResponse: {
675
+ connected_account: {
676
+ connected_account_id?: string | undefined;
677
+ created_at?: string | undefined;
678
+ user_identifier?: {
679
+ username?: string | undefined;
680
+ api_url?: string | undefined;
681
+ email?: string | undefined;
682
+ phone?: string | undefined;
683
+ exclusive?: boolean | undefined;
684
+ } | undefined;
685
+ account_type?: string | undefined;
686
+ errors?: any;
687
+ warnings?: any;
688
+ custom_metadata?: Record<string, string | number | boolean | null> | undefined;
689
+ };
690
+ };
691
+ };
692
+ "/connected_accounts/list": {
693
+ route: "/connected_accounts/list";
694
+ method: "GET";
695
+ queryParams: {};
696
+ jsonBody: {};
697
+ commonParams: {};
698
+ formData: {};
699
+ jsonResponse: {
700
+ connected_accounts: Array<{
701
+ connected_account_id?: string | undefined;
702
+ created_at?: string | undefined;
703
+ user_identifier?: {
704
+ username?: string | undefined;
705
+ api_url?: string | undefined;
706
+ email?: string | undefined;
707
+ phone?: string | undefined;
708
+ exclusive?: boolean | undefined;
709
+ } | undefined;
710
+ account_type?: string | undefined;
711
+ errors?: any;
712
+ warnings?: any;
713
+ custom_metadata?: Record<string, string | number | boolean | null> | undefined;
714
+ }>;
715
+ };
716
+ };
717
+ "/devices/delete": {
718
+ route: "/devices/delete";
719
+ method: "DELETE" | "POST";
720
+ queryParams: {};
721
+ jsonBody: {};
722
+ commonParams: {
723
+ device_id: string;
724
+ };
725
+ formData: {};
726
+ jsonResponse: {};
727
+ };
728
+ "/devices/get": {
729
+ route: "/devices/get";
730
+ method: "GET";
731
+ queryParams: {
732
+ device_id?: string | undefined;
733
+ name?: string | undefined;
734
+ };
735
+ jsonBody: {};
736
+ commonParams: {};
737
+ formData: {};
738
+ jsonResponse: {
739
+ device: {
740
+ device_id: string;
741
+ device_type: "akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat";
742
+ capabilities_supported: string[];
743
+ properties: {
744
+ online: boolean;
745
+ name: string;
746
+ model: {
747
+ display_name: string;
748
+ };
749
+ } & Record<string, any>;
750
+ location?: any;
751
+ connected_account_id: string;
752
+ workspace_id: string;
753
+ errors: Array<{
754
+ error_code: string;
755
+ message: string;
756
+ }>;
757
+ warnings: Array<{
758
+ warning_code: string;
759
+ message: string;
760
+ }>;
761
+ created_at: string;
762
+ is_managed: true;
763
+ };
764
+ };
765
+ };
766
+ "/devices/list": {
767
+ route: "/devices/list";
768
+ method: "GET" | "POST";
769
+ queryParams: {};
770
+ jsonBody: {};
771
+ commonParams: {
772
+ connected_account_id?: string | undefined;
773
+ connected_account_ids?: string[] | undefined;
774
+ connect_webview_id?: string | undefined;
775
+ device_type?: ("akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat") | undefined;
776
+ device_types?: Array<"akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat"> | undefined;
777
+ manufacturer?: ("akuvox" | "august" | "brivo" | "butterflymx" | "doorking" | "genie" | "igloo" | "keywe" | "kwikset" | "linear" | "lockly" | "nuki" | "philia" | "salto" | "samsung" | "schlage" | "seam" | "unknown" | "yale" | "minut" | "two_n" | "ttlock" | "nest" | "igloohome" | "ecobee" | "hubitat") | undefined;
778
+ device_ids?: string[] | undefined;
779
+ };
780
+ formData: {};
781
+ jsonResponse: {
782
+ devices: Array<{
783
+ device_id: string;
784
+ device_type: "akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat";
785
+ capabilities_supported: string[];
786
+ properties: {
787
+ online: boolean;
788
+ name: string;
789
+ model: {
790
+ display_name: string;
791
+ };
792
+ } & Record<string, any>;
793
+ location?: any;
794
+ connected_account_id: string;
795
+ workspace_id: string;
796
+ errors: Array<{
797
+ error_code: string;
798
+ message: string;
799
+ }>;
800
+ warnings: Array<{
801
+ warning_code: string;
802
+ message: string;
803
+ }>;
804
+ created_at: string;
805
+ is_managed: true;
806
+ }>;
807
+ };
808
+ };
809
+ "/devices/list_device_providers": {
810
+ route: "/devices/list_device_providers";
811
+ method: "GET";
812
+ queryParams: {};
813
+ jsonBody: {};
814
+ commonParams: {
815
+ provider_category?: "stable" | undefined;
816
+ };
817
+ formData: {};
818
+ jsonResponse: {
819
+ device_providers: Array<{
820
+ device_provider_name: string;
821
+ display_name: string;
822
+ image_url: string;
823
+ provider_categories: Array<"stable">;
824
+ }>;
825
+ };
826
+ };
827
+ "/devices/unmanaged/list": {
828
+ route: "/devices/unmanaged/list";
829
+ method: "GET" | "POST";
830
+ queryParams: {};
831
+ jsonBody: {};
832
+ commonParams: {
833
+ connected_account_id?: string | undefined;
834
+ connected_account_ids?: string[] | undefined;
835
+ connect_webview_id?: string | undefined;
836
+ device_type?: ("akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat") | undefined;
837
+ device_types?: Array<"akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat"> | undefined;
838
+ manufacturer?: ("akuvox" | "august" | "brivo" | "butterflymx" | "doorking" | "genie" | "igloo" | "keywe" | "kwikset" | "linear" | "lockly" | "nuki" | "philia" | "salto" | "samsung" | "schlage" | "seam" | "unknown" | "yale" | "minut" | "two_n" | "ttlock" | "nest" | "igloohome" | "ecobee" | "hubitat") | undefined;
839
+ device_ids?: string[] | undefined;
840
+ };
841
+ formData: {};
842
+ jsonResponse: {
843
+ devices: Array<{
844
+ device_id: string;
845
+ device_type: "akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat";
846
+ connected_account_id: string;
847
+ capabilities_supported: string[];
848
+ workspace_id: string;
849
+ errors: Array<{
850
+ error_code: string;
851
+ message: string;
852
+ }>;
853
+ warnings: Array<{
854
+ warning_code: string;
855
+ message: string;
856
+ }>;
857
+ created_at: string;
858
+ is_managed: false;
859
+ properties: {
860
+ name: string;
861
+ online: boolean;
862
+ manufacturer?: string | undefined;
863
+ image_url?: string | undefined;
864
+ image_alt_text?: string | undefined;
865
+ model: {
866
+ display_name: string;
867
+ };
868
+ };
869
+ }>;
870
+ };
871
+ };
872
+ "/devices/unmanaged/update": {
873
+ route: "/devices/unmanaged/update";
874
+ method: "POST" | "PATCH";
875
+ queryParams: {};
876
+ jsonBody: {};
877
+ commonParams: {
878
+ device_id: string;
879
+ is_managed: true;
880
+ };
881
+ formData: {};
882
+ jsonResponse: {};
883
+ };
884
+ "/devices/update": {
885
+ route: "/devices/update";
886
+ method: "POST" | "PATCH";
887
+ queryParams: {};
888
+ jsonBody: {};
889
+ commonParams: {
890
+ device_id: string;
891
+ properties?: {
892
+ name?: (string | null) | undefined;
893
+ } | undefined;
894
+ name?: (string | null) | undefined;
895
+ location?: {} | undefined;
896
+ is_managed?: boolean;
897
+ };
898
+ formData: {};
899
+ jsonResponse: {};
900
+ };
901
+ "/events/get": {
902
+ route: "/events/get";
903
+ method: "GET";
904
+ queryParams: {};
905
+ jsonBody: {};
906
+ commonParams: {
907
+ event_id?: string | undefined;
908
+ event_type?: string | undefined;
909
+ device_id?: string | undefined;
910
+ };
911
+ formData: {};
912
+ jsonResponse: {
913
+ event?: {
914
+ event_id: string;
915
+ device_id?: string | undefined;
916
+ event_type: string;
917
+ workspace_id: string;
918
+ created_at: Date;
919
+ occurred_at: Date;
920
+ } | undefined;
921
+ message?: string | undefined;
922
+ };
923
+ };
924
+ "/events/list": {
925
+ route: "/events/list";
926
+ method: "GET" | "POST";
927
+ queryParams: {};
928
+ jsonBody: {};
929
+ commonParams: {
930
+ since?: string | undefined;
931
+ between?: Array<string | Date> | undefined;
932
+ device_id?: string | undefined;
933
+ device_ids?: string[] | undefined;
934
+ access_code_id?: string | undefined;
935
+ access_code_ids?: string[] | undefined;
936
+ event_type?: ("device.connected" | "device.unmanaged.connected" | "device.disconnected" | "device.unmanaged.disconnected" | "device.converted_to_unmanaged" | "device.unmanaged.converted_to_managed" | "device.removed" | "device.tampered" | "device.low_battery" | "device.battery_status_changed" | "access_code.created" | "access_code.changed" | "access_code.scheduled_on_device" | "access_code.set_on_device" | "access_code.removed_from_device" | "access_code.failed_to_set_on_device" | "access_code.delay_in_setting_on_device" | "access_code.failed_to_remove_from_device" | "access_code.delay_in_removing_from_device" | "access_code.unmanaged.converted_to_managed" | "access_code.unmanaged.failed_to_convert_to_managed" | "access_code.unmanaged.created" | "access_code.unmanaged.removed" | "lock.locked" | "lock.unlocked" | "connected_account.connected" | "connected_account.created" | "connected_account.disconnected" | "connected_account.completed_first_sync" | "noise_sensor.noise_threshold_triggered" | "access_code.backup_access_code_pulled") | undefined;
937
+ event_types?: Array<"device.connected" | "device.unmanaged.connected" | "device.disconnected" | "device.unmanaged.disconnected" | "device.converted_to_unmanaged" | "device.unmanaged.converted_to_managed" | "device.removed" | "device.tampered" | "device.low_battery" | "device.battery_status_changed" | "access_code.created" | "access_code.changed" | "access_code.scheduled_on_device" | "access_code.set_on_device" | "access_code.removed_from_device" | "access_code.failed_to_set_on_device" | "access_code.delay_in_setting_on_device" | "access_code.failed_to_remove_from_device" | "access_code.delay_in_removing_from_device" | "access_code.unmanaged.converted_to_managed" | "access_code.unmanaged.failed_to_convert_to_managed" | "access_code.unmanaged.created" | "access_code.unmanaged.removed" | "lock.locked" | "lock.unlocked" | "connected_account.connected" | "connected_account.created" | "connected_account.disconnected" | "connected_account.completed_first_sync" | "noise_sensor.noise_threshold_triggered" | "access_code.backup_access_code_pulled"> | undefined;
938
+ connected_account_id?: string | undefined;
939
+ };
940
+ formData: {};
941
+ jsonResponse: {
942
+ events?: Array<{
943
+ event_id: string;
944
+ device_id?: string | undefined;
945
+ event_type: string;
946
+ workspace_id: string;
947
+ created_at: Date;
948
+ occurred_at: Date;
949
+ }> | undefined;
950
+ message?: string | undefined;
951
+ };
952
+ };
953
+ "/health": {
954
+ route: "/health";
955
+ method: "GET";
956
+ queryParams: {};
957
+ jsonBody: {};
958
+ commonParams: {};
959
+ formData: {};
960
+ jsonResponse: {
961
+ ok: boolean;
962
+ msg: "I\u2019m one with the Force. The Force is with me.";
963
+ last_service_evaluation_at: string;
964
+ service_health_statuses: Array<{
965
+ service: string;
966
+ status: "healthy" | "degraded" | "down";
967
+ description: string;
968
+ }>;
969
+ };
970
+ };
971
+ "/health/get_health": {
972
+ route: "/health/get_health";
973
+ method: "GET";
974
+ queryParams: {};
975
+ jsonBody: {};
976
+ commonParams: {};
977
+ formData: {};
978
+ jsonResponse: {
979
+ ok: boolean;
980
+ msg: "I\u2019m one with the Force. The Force is with me.";
981
+ last_service_evaluation_at: string;
982
+ service_health_statuses: Array<{
983
+ service: string;
984
+ status: "healthy" | "degraded" | "down";
985
+ description: string;
986
+ }>;
987
+ };
988
+ };
989
+ "/health/get_service_health": {
990
+ route: "/health/get_service_health";
991
+ method: "GET";
992
+ queryParams: {};
993
+ jsonBody: {};
994
+ commonParams: {
995
+ service: string;
996
+ };
997
+ formData: {};
998
+ jsonResponse: {
999
+ ok: true;
1000
+ last_service_evaluation_at: string;
1001
+ service_health: {
1002
+ service: string;
1003
+ status: "healthy" | "degraded" | "down";
1004
+ description: string;
1005
+ };
1006
+ };
1007
+ };
1008
+ "/health/service/[service_name]": {
1009
+ route: "/health/service/[service_name]";
1010
+ method: "GET";
1011
+ queryParams: {
1012
+ service_name: string;
1013
+ };
1014
+ jsonBody: {};
1015
+ commonParams: {};
1016
+ formData: {};
1017
+ jsonResponse: {
1018
+ ok: true;
1019
+ last_service_evaluation_at: string;
1020
+ service_health: {
1021
+ service: string;
1022
+ status: "healthy" | "degraded" | "down";
1023
+ description: string;
1024
+ };
1025
+ };
1026
+ };
1027
+ "/locks/get": {
1028
+ route: "/locks/get";
1029
+ method: "GET" | "POST";
1030
+ queryParams: {};
1031
+ jsonBody: {};
1032
+ commonParams: {
1033
+ device_id?: string | undefined;
1034
+ name?: string | undefined;
1035
+ };
1036
+ formData: {};
1037
+ jsonResponse: {
1038
+ lock?: any;
1039
+ device?: any;
1040
+ };
1041
+ };
1042
+ "/locks/list": {
1043
+ route: "/locks/list";
1044
+ method: "GET" | "POST";
1045
+ queryParams: {};
1046
+ jsonBody: {};
1047
+ commonParams: {
1048
+ connected_account_id?: string | undefined;
1049
+ connected_account_ids?: string[] | undefined;
1050
+ connect_webview_id?: string | undefined;
1051
+ device_type?: ("akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat") | undefined;
1052
+ device_types?: Array<"akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat"> | undefined;
1053
+ manufacturer?: ("akuvox" | "august" | "brivo" | "butterflymx" | "doorking" | "genie" | "igloo" | "keywe" | "kwikset" | "linear" | "lockly" | "nuki" | "philia" | "salto" | "samsung" | "schlage" | "seam" | "unknown" | "yale" | "minut" | "two_n" | "ttlock" | "nest" | "igloohome" | "ecobee" | "hubitat") | undefined;
1054
+ device_ids?: string[] | undefined;
1055
+ };
1056
+ formData: {};
1057
+ jsonResponse: {
1058
+ locks?: any;
1059
+ devices?: any;
1060
+ };
1061
+ };
1062
+ "/locks/lock_door": {
1063
+ route: "/locks/lock_door";
1064
+ method: "POST";
1065
+ queryParams: {};
1066
+ jsonBody: {
1067
+ device_id: string;
1068
+ sync?: boolean;
1069
+ };
1070
+ commonParams: {};
1071
+ formData: {};
1072
+ jsonResponse: {
1073
+ action_attempt: {
1074
+ status: "success";
1075
+ action_type: string;
1076
+ action_attempt_id: string;
1077
+ result?: any;
1078
+ error: null;
1079
+ } | {
1080
+ status: "pending";
1081
+ action_type: string;
1082
+ action_attempt_id: string;
1083
+ result: null;
1084
+ error: null;
1085
+ } | {
1086
+ status: "error";
1087
+ action_type: string;
1088
+ action_attempt_id: string;
1089
+ result: null;
1090
+ error: {
1091
+ type: string;
1092
+ message: string;
1093
+ };
1094
+ };
1095
+ };
1096
+ };
1097
+ "/locks/unlock_door": {
1098
+ route: "/locks/unlock_door";
1099
+ method: "POST";
1100
+ queryParams: {};
1101
+ jsonBody: {
1102
+ device_id: string;
1103
+ sync?: boolean;
1104
+ };
1105
+ commonParams: {};
1106
+ formData: {};
1107
+ jsonResponse: {
1108
+ action_attempt: {
1109
+ status: "success";
1110
+ action_type: string;
1111
+ action_attempt_id: string;
1112
+ result?: any;
1113
+ error: null;
1114
+ } | {
1115
+ status: "pending";
1116
+ action_type: string;
1117
+ action_attempt_id: string;
1118
+ result: null;
1119
+ error: null;
1120
+ } | {
1121
+ status: "error";
1122
+ action_type: string;
1123
+ action_attempt_id: string;
1124
+ result: null;
1125
+ error: {
1126
+ type: string;
1127
+ message: string;
1128
+ };
1129
+ };
1130
+ };
1131
+ };
1132
+ "/noise_sensors/noise_thresholds/create": {
1133
+ route: "/noise_sensors/noise_thresholds/create";
1134
+ method: "POST";
1135
+ queryParams: {};
1136
+ jsonBody: {
1137
+ device_id: string;
1138
+ sync?: boolean;
1139
+ name?: string | undefined;
1140
+ starts_daily_at: string;
1141
+ ends_daily_at: string;
1142
+ noise_threshold_decibels?: number | undefined;
1143
+ noise_threshold_nrs?: number | undefined;
1144
+ };
1145
+ commonParams: {};
1146
+ formData: {};
1147
+ jsonResponse: {
1148
+ action_attempt: {
1149
+ status: "success";
1150
+ action_type: string;
1151
+ action_attempt_id: string;
1152
+ result?: any;
1153
+ error: null;
1154
+ } | {
1155
+ status: "pending";
1156
+ action_type: string;
1157
+ action_attempt_id: string;
1158
+ result: null;
1159
+ error: null;
1160
+ } | {
1161
+ status: "error";
1162
+ action_type: string;
1163
+ action_attempt_id: string;
1164
+ result: null;
1165
+ error: {
1166
+ type: string;
1167
+ message: string;
1168
+ };
1169
+ };
1170
+ };
1171
+ };
1172
+ "/noise_sensors/noise_thresholds/delete": {
1173
+ route: "/noise_sensors/noise_thresholds/delete";
1174
+ method: "DELETE" | "POST";
1175
+ queryParams: {};
1176
+ jsonBody: {
1177
+ noise_threshold_id: string;
1178
+ device_id: string;
1179
+ sync?: boolean;
1180
+ };
1181
+ commonParams: {};
1182
+ formData: {};
1183
+ jsonResponse: {
1184
+ action_attempt: {
1185
+ status: "success";
1186
+ action_type: string;
1187
+ action_attempt_id: string;
1188
+ result?: any;
1189
+ error: null;
1190
+ } | {
1191
+ status: "pending";
1192
+ action_type: string;
1193
+ action_attempt_id: string;
1194
+ result: null;
1195
+ error: null;
1196
+ } | {
1197
+ status: "error";
1198
+ action_type: string;
1199
+ action_attempt_id: string;
1200
+ result: null;
1201
+ error: {
1202
+ type: string;
1203
+ message: string;
1204
+ };
1205
+ };
1206
+ };
1207
+ };
1208
+ "/noise_sensors/noise_thresholds/get": {
1209
+ route: "/noise_sensors/noise_thresholds/get";
1210
+ method: "GET" | "POST";
1211
+ queryParams: {};
1212
+ jsonBody: {};
1213
+ commonParams: {
1214
+ noise_threshold_id: string;
1215
+ };
1216
+ formData: {};
1217
+ jsonResponse: {
1218
+ noise_threshold: {
1219
+ noise_threshold_id: string;
1220
+ device_id: string;
1221
+ name: string;
1222
+ noise_threshold_nrs?: number | undefined;
1223
+ starts_daily_at: string;
1224
+ ends_daily_at: string;
1225
+ noise_threshold_decibels: number;
1226
+ };
1227
+ };
1228
+ };
1229
+ "/noise_sensors/noise_thresholds/list": {
1230
+ route: "/noise_sensors/noise_thresholds/list";
1231
+ method: "GET" | "POST";
1232
+ queryParams: {};
1233
+ jsonBody: {};
1234
+ commonParams: {
1235
+ device_id: string;
1236
+ };
1237
+ formData: {};
1238
+ jsonResponse: {
1239
+ noise_thresholds: Array<{
1240
+ noise_threshold_id: string;
1241
+ device_id: string;
1242
+ name: string;
1243
+ noise_threshold_nrs?: number | undefined;
1244
+ starts_daily_at: string;
1245
+ ends_daily_at: string;
1246
+ noise_threshold_decibels: number;
1247
+ }>;
1248
+ };
1249
+ };
1250
+ "/noise_sensors/noise_thresholds/update": {
1251
+ route: "/noise_sensors/noise_thresholds/update";
1252
+ method: "PUT" | "POST";
1253
+ queryParams: {};
1254
+ jsonBody: {
1255
+ noise_threshold_id: string;
1256
+ device_id: string;
1257
+ sync?: boolean;
1258
+ name?: string | undefined;
1259
+ starts_daily_at?: string | undefined;
1260
+ ends_daily_at?: string | undefined;
1261
+ noise_threshold_decibels?: number | undefined;
1262
+ noise_threshold_nrs?: number | undefined;
1263
+ };
1264
+ commonParams: {};
1265
+ formData: {};
1266
+ jsonResponse: {
1267
+ action_attempt: {
1268
+ status: "success";
1269
+ action_type: string;
1270
+ action_attempt_id: string;
1271
+ result?: any;
1272
+ error: null;
1273
+ } | {
1274
+ status: "pending";
1275
+ action_type: string;
1276
+ action_attempt_id: string;
1277
+ result: null;
1278
+ error: null;
1279
+ } | {
1280
+ status: "error";
1281
+ action_type: string;
1282
+ action_attempt_id: string;
1283
+ result: null;
1284
+ error: {
1285
+ type: string;
1286
+ message: string;
1287
+ };
1288
+ };
1289
+ };
1290
+ };
1291
+ "/noise_sensors/simulate/trigger_noise_threshold": {
1292
+ route: "/noise_sensors/simulate/trigger_noise_threshold";
1293
+ method: "POST";
1294
+ queryParams: {};
1295
+ jsonBody: {
1296
+ device_id: string;
1297
+ };
1298
+ commonParams: {};
1299
+ formData: {};
1300
+ jsonResponse: {};
1301
+ };
1302
+ "/thermostats/climate_setting_schedules/create": {
1303
+ route: "/thermostats/climate_setting_schedules/create";
1304
+ method: "POST";
1305
+ queryParams: {};
1306
+ jsonBody: {
1307
+ schedule_type?: "time_bound";
1308
+ device_id: string;
1309
+ name?: string | undefined;
1310
+ schedule_starts_at: string;
1311
+ schedule_ends_at: string;
1312
+ automatic_heating_enabled?: boolean | undefined;
1313
+ automatic_cooling_enabled?: boolean | undefined;
1314
+ hvac_mode_setting?: ("off" | "heat" | "cool" | "heatcool") | undefined;
1315
+ cooling_set_point_celsius?: (number | undefined) | undefined;
1316
+ heating_set_point_celsius?: (number | undefined) | undefined;
1317
+ cooling_set_point_fahrenheit?: (number | undefined) | undefined;
1318
+ heating_set_point_fahrenheit?: (number | undefined) | undefined;
1319
+ manual_override_allowed?: boolean | undefined;
1320
+ };
1321
+ commonParams: {};
1322
+ formData: {};
1323
+ jsonResponse: {
1324
+ climate_setting_schedule: {
1325
+ climate_setting_schedule_id: string;
1326
+ schedule_type: "time_bound";
1327
+ device_id: string;
1328
+ name?: string | undefined;
1329
+ schedule_starts_at: string;
1330
+ schedule_ends_at: string;
1331
+ created_at: string;
1332
+ automatic_heating_enabled?: boolean | undefined;
1333
+ automatic_cooling_enabled?: boolean | undefined;
1334
+ hvac_mode_setting?: ("off" | "heat" | "cool" | "heatcool") | undefined;
1335
+ cooling_set_point_celsius?: (number | undefined) | undefined;
1336
+ heating_set_point_celsius?: (number | undefined) | undefined;
1337
+ cooling_set_point_fahrenheit?: (number | undefined) | undefined;
1338
+ heating_set_point_fahrenheit?: (number | undefined) | undefined;
1339
+ manual_override_allowed?: boolean | undefined;
1340
+ };
1341
+ };
1342
+ };
1343
+ "/thermostats/climate_setting_schedules/delete": {
1344
+ route: "/thermostats/climate_setting_schedules/delete";
1345
+ method: "PUT" | "POST" | "DELETE";
1346
+ queryParams: {};
1347
+ jsonBody: {};
1348
+ commonParams: {
1349
+ climate_setting_schedule_id: string;
1350
+ };
1351
+ formData: {};
1352
+ jsonResponse: {};
1353
+ };
1354
+ "/thermostats/climate_setting_schedules/get": {
1355
+ route: "/thermostats/climate_setting_schedules/get";
1356
+ method: "GET" | "POST";
1357
+ queryParams: {};
1358
+ jsonBody: {};
1359
+ commonParams: {
1360
+ climate_setting_schedule_id?: string | undefined;
1361
+ device_id?: string | undefined;
1362
+ };
1363
+ formData: {};
1364
+ jsonResponse: {
1365
+ climate_setting_schedule: {
1366
+ climate_setting_schedule_id: string;
1367
+ schedule_type: "time_bound";
1368
+ device_id: string;
1369
+ name?: string | undefined;
1370
+ schedule_starts_at: string;
1371
+ schedule_ends_at: string;
1372
+ created_at: string;
1373
+ automatic_heating_enabled?: boolean | undefined;
1374
+ automatic_cooling_enabled?: boolean | undefined;
1375
+ hvac_mode_setting?: ("off" | "heat" | "cool" | "heatcool") | undefined;
1376
+ cooling_set_point_celsius?: (number | undefined) | undefined;
1377
+ heating_set_point_celsius?: (number | undefined) | undefined;
1378
+ cooling_set_point_fahrenheit?: (number | undefined) | undefined;
1379
+ heating_set_point_fahrenheit?: (number | undefined) | undefined;
1380
+ manual_override_allowed?: boolean | undefined;
1381
+ };
1382
+ };
1383
+ };
1384
+ "/thermostats/climate_setting_schedules/list": {
1385
+ route: "/thermostats/climate_setting_schedules/list";
1386
+ method: "GET" | "POST";
1387
+ queryParams: {};
1388
+ jsonBody: {};
1389
+ commonParams: {
1390
+ device_id: string;
1391
+ };
1392
+ formData: {};
1393
+ jsonResponse: {
1394
+ climate_setting_schedules: Array<{
1395
+ climate_setting_schedule_id: string;
1396
+ schedule_type: "time_bound";
1397
+ device_id: string;
1398
+ name?: string | undefined;
1399
+ schedule_starts_at: string;
1400
+ schedule_ends_at: string;
1401
+ created_at: string;
1402
+ automatic_heating_enabled?: boolean | undefined;
1403
+ automatic_cooling_enabled?: boolean | undefined;
1404
+ hvac_mode_setting?: ("off" | "heat" | "cool" | "heatcool") | undefined;
1405
+ cooling_set_point_celsius?: (number | undefined) | undefined;
1406
+ heating_set_point_celsius?: (number | undefined) | undefined;
1407
+ cooling_set_point_fahrenheit?: (number | undefined) | undefined;
1408
+ heating_set_point_fahrenheit?: (number | undefined) | undefined;
1409
+ manual_override_allowed?: boolean | undefined;
1410
+ }>;
1411
+ };
1412
+ };
1413
+ "/thermostats/climate_setting_schedules/update": {
1414
+ route: "/thermostats/climate_setting_schedules/update";
1415
+ method: "PUT" | "POST";
1416
+ queryParams: {};
1417
+ jsonBody: {
1418
+ climate_setting_schedule_id: string;
1419
+ schedule_type?: "time_bound";
1420
+ name?: string | undefined;
1421
+ schedule_starts_at?: string | undefined;
1422
+ schedule_ends_at?: string | undefined;
1423
+ automatic_heating_enabled?: boolean | undefined;
1424
+ automatic_cooling_enabled?: boolean | undefined;
1425
+ hvac_mode_setting?: ("off" | "heat" | "cool" | "heatcool") | undefined;
1426
+ cooling_set_point_celsius?: (number | undefined) | undefined;
1427
+ heating_set_point_celsius?: (number | undefined) | undefined;
1428
+ cooling_set_point_fahrenheit?: (number | undefined) | undefined;
1429
+ heating_set_point_fahrenheit?: (number | undefined) | undefined;
1430
+ manual_override_allowed?: boolean | undefined;
1431
+ };
1432
+ commonParams: {};
1433
+ formData: {};
1434
+ jsonResponse: {
1435
+ climate_setting_schedule: {
1436
+ climate_setting_schedule_id: string;
1437
+ schedule_type: "time_bound";
1438
+ device_id: string;
1439
+ name?: string | undefined;
1440
+ schedule_starts_at: string;
1441
+ schedule_ends_at: string;
1442
+ created_at: string;
1443
+ automatic_heating_enabled?: boolean | undefined;
1444
+ automatic_cooling_enabled?: boolean | undefined;
1445
+ hvac_mode_setting?: ("off" | "heat" | "cool" | "heatcool") | undefined;
1446
+ cooling_set_point_celsius?: (number | undefined) | undefined;
1447
+ heating_set_point_celsius?: (number | undefined) | undefined;
1448
+ cooling_set_point_fahrenheit?: (number | undefined) | undefined;
1449
+ heating_set_point_fahrenheit?: (number | undefined) | undefined;
1450
+ manual_override_allowed?: boolean | undefined;
1451
+ };
1452
+ };
1453
+ };
1454
+ "/thermostats/get": {
1455
+ route: "/thermostats/get";
1456
+ method: "GET" | "POST";
1457
+ queryParams: {};
1458
+ jsonBody: {};
1459
+ commonParams: {
1460
+ device_id?: string | undefined;
1461
+ name?: string | undefined;
1462
+ };
1463
+ formData: {};
1464
+ jsonResponse: {
1465
+ thermostat: {
1466
+ device_id: string;
1467
+ device_type: "akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat";
1468
+ capabilities_supported: string[];
1469
+ properties: {
1470
+ online: boolean;
1471
+ name: string;
1472
+ model: {
1473
+ display_name: string;
1474
+ };
1475
+ } & Record<string, any>;
1476
+ location?: any;
1477
+ connected_account_id: string;
1478
+ workspace_id: string;
1479
+ errors: Array<{
1480
+ error_code: string;
1481
+ message: string;
1482
+ }>;
1483
+ warnings: Array<{
1484
+ warning_code: string;
1485
+ message: string;
1486
+ }>;
1487
+ created_at: string;
1488
+ is_managed: true;
1489
+ };
1490
+ };
1491
+ };
1492
+ "/thermostats/list": {
1493
+ route: "/thermostats/list";
1494
+ method: "GET" | "POST";
1495
+ queryParams: {};
1496
+ jsonBody: {};
1497
+ commonParams: {
1498
+ connected_account_id?: string | undefined;
1499
+ connected_account_ids?: string[] | undefined;
1500
+ connect_webview_id?: string | undefined;
1501
+ device_type?: ("akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat") | undefined;
1502
+ device_types?: Array<"akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat"> | undefined;
1503
+ manufacturer?: ("akuvox" | "august" | "brivo" | "butterflymx" | "doorking" | "genie" | "igloo" | "keywe" | "kwikset" | "linear" | "lockly" | "nuki" | "philia" | "salto" | "samsung" | "schlage" | "seam" | "unknown" | "yale" | "minut" | "two_n" | "ttlock" | "nest" | "igloohome" | "ecobee" | "hubitat") | undefined;
1504
+ device_ids?: string[] | undefined;
1505
+ };
1506
+ formData: {};
1507
+ jsonResponse: {
1508
+ thermostats: Array<{
1509
+ device_id: string;
1510
+ device_type: "akuvox_lock" | "august_lock" | "brivo_access_point" | "butterflymx_panel" | "doorking_lock" | "genie_door" | "igloo_lock" | "linear_lock" | "lockly_lock" | "kwikset_lock" | "nuki_lock" | "salto_lock" | "schlage_lock" | "seam_relay" | "smartthings_lock" | "yale_lock" | "two_n_intercom" | "controlbyweb_device" | "ttlock_lock" | "igloohome_lock" | "hubitat_lock" | "noiseaware_activity_zone" | "minut_sensor" | "ecobee_thermostat" | "nest_thermostat";
1511
+ capabilities_supported: string[];
1512
+ properties: {
1513
+ online: boolean;
1514
+ name: string;
1515
+ model: {
1516
+ display_name: string;
1517
+ };
1518
+ } & Record<string, any>;
1519
+ location?: any;
1520
+ connected_account_id: string;
1521
+ workspace_id: string;
1522
+ errors: Array<{
1523
+ error_code: string;
1524
+ message: string;
1525
+ }>;
1526
+ warnings: Array<{
1527
+ warning_code: string;
1528
+ message: string;
1529
+ }>;
1530
+ created_at: string;
1531
+ is_managed: true;
1532
+ }>;
1533
+ };
1534
+ };
1535
+ "/thermostats/set_cooling_set_point": {
1536
+ route: "/thermostats/set_cooling_set_point";
1537
+ method: "POST";
1538
+ queryParams: {};
1539
+ jsonBody: {
1540
+ device_id: string;
1541
+ cooling_set_point_celsius?: number | undefined;
1542
+ cooling_set_point_fahrenheit?: number | undefined;
1543
+ sync?: boolean;
1544
+ };
1545
+ commonParams: {};
1546
+ formData: {};
1547
+ jsonResponse: {};
1548
+ };
1549
+ "/thermostats/set_mode": {
1550
+ route: "/thermostats/set_mode";
1551
+ method: "POST";
1552
+ queryParams: {};
1553
+ jsonBody: {
1554
+ device_id: string;
1555
+ automatic_heating_enabled?: boolean | undefined;
1556
+ automatic_cooling_enabled?: boolean | undefined;
1557
+ hvac_mode_setting?: ("off" | "heat" | "cool" | "heatcool") | undefined;
1558
+ sync?: boolean;
1559
+ };
1560
+ commonParams: {};
1561
+ formData: {};
1562
+ jsonResponse: {};
1563
+ };
1564
+ "/thermostats/update": {
1565
+ route: "/thermostats/update";
1566
+ method: "POST";
1567
+ queryParams: {};
1568
+ jsonBody: {
1569
+ device_id: string;
1570
+ default_climate_setting: {
1571
+ automatic_heating_enabled?: boolean | undefined;
1572
+ automatic_cooling_enabled?: boolean | undefined;
1573
+ hvac_mode_setting?: ("off" | "heat" | "cool" | "heatcool") | undefined;
1574
+ cooling_set_point_celsius?: (number | undefined) | undefined;
1575
+ heating_set_point_celsius?: (number | undefined) | undefined;
1576
+ cooling_set_point_fahrenheit?: (number | undefined) | undefined;
1577
+ heating_set_point_fahrenheit?: (number | undefined) | undefined;
1578
+ manual_override_allowed?: boolean | undefined;
1579
+ };
1580
+ };
1581
+ commonParams: {};
1582
+ formData: {};
1583
+ jsonResponse: {};
1584
+ };
1585
+ "/webhooks/create": {
1586
+ route: "/webhooks/create";
1587
+ method: "POST";
1588
+ queryParams: {};
1589
+ jsonBody: {
1590
+ url: string;
1591
+ event_types?: string[];
1592
+ };
1593
+ commonParams: {};
1594
+ formData: {};
1595
+ jsonResponse: {
1596
+ webhook: {
1597
+ webhook_id: string;
1598
+ url: string;
1599
+ event_types?: string[] | undefined;
1600
+ secret?: string | undefined;
1601
+ };
1602
+ };
1603
+ };
1604
+ "/webhooks/delete": {
1605
+ route: "/webhooks/delete";
1606
+ method: "DELETE" | "POST";
1607
+ queryParams: {};
1608
+ jsonBody: {};
1609
+ commonParams: {
1610
+ webhook_id: string;
1611
+ };
1612
+ formData: {};
1613
+ jsonResponse: {};
1614
+ };
1615
+ "/webhooks/get": {
1616
+ route: "/webhooks/get";
1617
+ method: "GET";
1618
+ queryParams: {
1619
+ webhook_id: string;
1620
+ };
1621
+ jsonBody: {};
1622
+ commonParams: {};
1623
+ formData: {};
1624
+ jsonResponse: {
1625
+ webhook: {
1626
+ webhook_id: string;
1627
+ url: string;
1628
+ event_types?: string[] | undefined;
1629
+ secret?: string | undefined;
1630
+ };
1631
+ };
1632
+ };
1633
+ "/webhooks/list": {
1634
+ route: "/webhooks/list";
1635
+ method: "GET";
1636
+ queryParams: {};
1637
+ jsonBody: {};
1638
+ commonParams: {};
1639
+ formData: {};
1640
+ jsonResponse: {
1641
+ webhooks: Array<{
1642
+ webhook_id: string;
1643
+ url: string;
1644
+ event_types?: string[] | undefined;
1645
+ secret?: string | undefined;
1646
+ }>;
1647
+ };
1648
+ };
1649
+ "/workspaces/get": {
1650
+ route: "/workspaces/get";
1651
+ method: "GET";
1652
+ queryParams: {};
1653
+ jsonBody: {};
1654
+ commonParams: {};
1655
+ formData: {};
1656
+ jsonResponse: {
1657
+ workspace?: {
1658
+ workspace_id: string;
1659
+ name: string;
1660
+ is_sandbox: boolean;
1661
+ connect_partner_name: string | null;
1662
+ } | undefined;
1663
+ };
1664
+ };
1665
+ "/workspaces/list": {
1666
+ route: "/workspaces/list";
1667
+ method: "GET";
1668
+ queryParams: {};
1669
+ jsonBody: {};
1670
+ commonParams: {};
1671
+ formData: {};
1672
+ jsonResponse: {
1673
+ workspaces: Array<{
1674
+ workspace_id: string;
1675
+ name: string;
1676
+ is_sandbox: boolean;
1677
+ }>;
1678
+ };
1679
+ };
1680
+ "/workspaces/reset_sandbox": {
1681
+ route: "/workspaces/reset_sandbox";
1682
+ method: "POST";
1683
+ queryParams: {};
1684
+ jsonBody: {};
1685
+ commonParams: {};
1686
+ formData: {};
1687
+ jsonResponse: {
1688
+ message: string;
1689
+ };
1690
+ };
1691
+ }
1692
+ export type RouteResponse<Path extends keyof Routes> = Routes[Path]["jsonResponse"];
1693
+ export type RouteRequestBody<Path extends keyof Routes> = Routes[Path]["jsonBody"] & Routes[Path]["commonParams"];
1694
+ export type RouteRequestParams<Path extends keyof Routes> = Routes[Path]["queryParams"] & Routes[Path]["commonParams"];