@seamapi/http 0.13.0 → 0.14.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 (51) hide show
  1. package/README.md +3 -3
  2. package/dist/connect.cjs +296 -16
  3. package/dist/connect.cjs.map +1 -1
  4. package/dist/connect.d.cts +79 -12
  5. package/lib/seam/connect/parse-options.js +9 -0
  6. package/lib/seam/connect/parse-options.js.map +1 -1
  7. package/lib/seam/connect/routes/connected-accounts.d.ts +3 -3
  8. package/lib/seam/connect/routes/connected-accounts.js +3 -3
  9. package/lib/seam/connect/routes/connected-accounts.js.map +1 -1
  10. package/lib/seam/connect/routes/index.d.ts +3 -0
  11. package/lib/seam/connect/routes/index.js +3 -0
  12. package/lib/seam/connect/routes/index.js.map +1 -1
  13. package/lib/seam/connect/routes/networks.d.ts +23 -0
  14. package/lib/seam/connect/routes/networks.js +81 -0
  15. package/lib/seam/connect/routes/networks.js.map +1 -0
  16. package/lib/seam/connect/routes/noise-sensors-noise-thresholds.d.ts +1 -1
  17. package/lib/seam/connect/routes/noise-sensors-noise-thresholds.js +2 -1
  18. package/lib/seam/connect/routes/noise-sensors-noise-thresholds.js.map +1 -1
  19. package/lib/seam/connect/routes/phones.d.ts +19 -0
  20. package/lib/seam/connect/routes/phones.js +73 -0
  21. package/lib/seam/connect/routes/phones.js.map +1 -0
  22. package/lib/seam/connect/routes/user-identities-enrollment-automations.d.ts +27 -0
  23. package/lib/seam/connect/routes/user-identities-enrollment-automations.js +89 -0
  24. package/lib/seam/connect/routes/user-identities-enrollment-automations.js.map +1 -0
  25. package/lib/seam/connect/routes/user-identities.d.ts +9 -3
  26. package/lib/seam/connect/routes/user-identities.js +15 -3
  27. package/lib/seam/connect/routes/user-identities.js.map +1 -1
  28. package/lib/seam/connect/routes/webhooks.d.ts +3 -3
  29. package/lib/seam/connect/routes/webhooks.js +3 -3
  30. package/lib/seam/connect/routes/webhooks.js.map +1 -1
  31. package/lib/seam/connect/routes/workspaces.d.ts +5 -5
  32. package/lib/seam/connect/routes/workspaces.js +6 -6
  33. package/lib/seam/connect/routes/workspaces.js.map +1 -1
  34. package/lib/seam/connect/seam-http.d.ts +3 -1
  35. package/lib/seam/connect/seam-http.js +7 -1
  36. package/lib/seam/connect/seam-http.js.map +1 -1
  37. package/lib/version.d.ts +1 -1
  38. package/lib/version.js +1 -1
  39. package/package.json +3 -3
  40. package/src/lib/seam/connect/parse-options.ts +17 -0
  41. package/src/lib/seam/connect/routes/connected-accounts.ts +5 -9
  42. package/src/lib/seam/connect/routes/index.ts +3 -0
  43. package/src/lib/seam/connect/routes/networks.ts +171 -0
  44. package/src/lib/seam/connect/routes/noise-sensors-noise-thresholds.ts +11 -6
  45. package/src/lib/seam/connect/routes/phones.ts +151 -0
  46. package/src/lib/seam/connect/routes/user-identities-enrollment-automations.ts +214 -0
  47. package/src/lib/seam/connect/routes/user-identities.ts +35 -10
  48. package/src/lib/seam/connect/routes/webhooks.ts +5 -9
  49. package/src/lib/seam/connect/routes/workspaces.ts +9 -13
  50. package/src/lib/seam/connect/seam-http.ts +10 -0
  51. package/src/lib/version.ts +1 -1
package/README.md CHANGED
@@ -22,7 +22,6 @@ The underlying HTTP client is [Axios].
22
22
 
23
23
  [Seam]: https://www.seam.co/
24
24
  [Seam Docs]: https://docs.seam.co/latest/
25
- [seamapi]: https://www.npmjs.com/package/seamapi
26
25
  [@seamapi/types]: https://github.com/seamapi/types/
27
26
  [Axios]: https://axios-http.com/
28
27
 
@@ -30,7 +29,7 @@ The underlying HTTP client is [Axios].
30
29
 
31
30
  _This is a low-level package meant for applications and libraries with particular dependency requirements.
32
31
  Before using this package, ensure you understand the installation and updating instructions.
33
- This SDK is entirely contained in the [seamapi] package. Seam recommends using that package instead
32
+ This SDK is entirely contained in the [seam package]. Seam recommends using that package instead
34
33
  for simpler dependency management._
35
34
 
36
35
  Add this as a dependency to your project using [npm] with
@@ -40,6 +39,7 @@ $ npm install @seamapi/http
40
39
  ```
41
40
 
42
41
  [npm]: https://www.npmjs.com/
42
+ [seam package]: https://www.npmjs.com/package/seam
43
43
 
44
44
  ### Optional Peer Dependencies for TypeScript
45
45
 
@@ -68,7 +68,7 @@ $ npm install -D @seamapi/types
68
68
  and update them when consuming new API features with
69
69
 
70
70
  ```
71
- $ npm install -D @seamapi/http@latest
71
+ $ npm install -D @seamapi/types
72
72
  ```
73
73
 
74
74
  ## Usage
package/dist/connect.cjs CHANGED
@@ -75,6 +75,16 @@ var getApiKeyFromEnv = (options) => {
75
75
  return globalThis.process?.env?.SEAM_API_KEY;
76
76
  };
77
77
  var getEndpointFromEnv = () => {
78
+ if (globalThis.process?.env?.SEAM_API_URL != null) {
79
+ console.warn(
80
+ "Using the SEAM_API_URL environment variable is deprecated. Support will be remove in a later major version. Use SEAM_ENDPOINT instead."
81
+ );
82
+ }
83
+ if (globalThis.process?.env?.SEAM_API_URL != null && globalThis.process?.env?.SEAM_ENDPOINT != null) {
84
+ console.warn(
85
+ "Detected both the SEAM_API_URL and SEAM_ENDPOINT environment variables. Using SEAM_ENDPOINT."
86
+ );
87
+ }
78
88
  return globalThis.process?.env?.SEAM_ENDPOINT ?? globalThis.process?.env?.SEAM_API_URL;
79
89
  };
80
90
  var limitToSeamHttpRequestOptions = (options) => {
@@ -1992,11 +2002,11 @@ var SeamHttpConnectedAccounts = class _SeamHttpConnectedAccounts {
1992
2002
  });
1993
2003
  return data.connected_account;
1994
2004
  }
1995
- async list(params) {
2005
+ async list(body) {
1996
2006
  const { data } = await this.client.request({
1997
2007
  url: "/connected_accounts/list",
1998
- method: "get",
1999
- params
2008
+ method: "post",
2009
+ data: body
2000
2010
  });
2001
2011
  return data.connected_accounts;
2002
2012
  }
@@ -2398,6 +2408,85 @@ var SeamHttpLocks = class _SeamHttpLocks {
2398
2408
  }
2399
2409
  };
2400
2410
 
2411
+ // src/lib/seam/connect/routes/networks.ts
2412
+ var SeamHttpNetworks = class _SeamHttpNetworks {
2413
+ constructor(apiKeyOrOptions = {}) {
2414
+ const options = parseOptions(apiKeyOrOptions);
2415
+ this.client = "client" in options ? options.client : createClient(options);
2416
+ this.defaults = limitToSeamHttpRequestOptions(options);
2417
+ }
2418
+ static fromClient(client, options = {}) {
2419
+ const constructorOptions = { ...options, client };
2420
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
2421
+ throw new SeamHttpInvalidOptionsError("Missing client");
2422
+ }
2423
+ return new _SeamHttpNetworks(constructorOptions);
2424
+ }
2425
+ static fromApiKey(apiKey, options = {}) {
2426
+ const constructorOptions = { ...options, apiKey };
2427
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
2428
+ throw new SeamHttpInvalidOptionsError("Missing apiKey");
2429
+ }
2430
+ return new _SeamHttpNetworks(constructorOptions);
2431
+ }
2432
+ static fromClientSessionToken(clientSessionToken, options = {}) {
2433
+ const constructorOptions = { ...options, clientSessionToken };
2434
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
2435
+ throw new SeamHttpInvalidOptionsError("Missing clientSessionToken");
2436
+ }
2437
+ return new _SeamHttpNetworks(constructorOptions);
2438
+ }
2439
+ static async fromPublishableKey(publishableKey, userIdentifierKey, options = {}) {
2440
+ warnOnInsecureuserIdentifierKey(userIdentifierKey);
2441
+ const clientOptions = parseOptions({ ...options, publishableKey });
2442
+ if (isSeamHttpOptionsWithClient(clientOptions)) {
2443
+ throw new SeamHttpInvalidOptionsError(
2444
+ "The client option cannot be used with SeamHttp.fromPublishableKey"
2445
+ );
2446
+ }
2447
+ const client = createClient(clientOptions);
2448
+ const clientSessions = SeamHttpClientSessions.fromClient(client);
2449
+ const { token } = await clientSessions.getOrCreate({
2450
+ user_identifier_key: userIdentifierKey
2451
+ });
2452
+ return _SeamHttpNetworks.fromClientSessionToken(token, options);
2453
+ }
2454
+ static fromConsoleSessionToken(consoleSessionToken, workspaceId, options = {}) {
2455
+ const constructorOptions = { ...options, consoleSessionToken, workspaceId };
2456
+ if (!isSeamHttpOptionsWithConsoleSessionToken(constructorOptions)) {
2457
+ throw new SeamHttpInvalidOptionsError(
2458
+ "Missing consoleSessionToken or workspaceId"
2459
+ );
2460
+ }
2461
+ return new _SeamHttpNetworks(constructorOptions);
2462
+ }
2463
+ static fromPersonalAccessToken(personalAccessToken, workspaceId, options = {}) {
2464
+ const constructorOptions = { ...options, personalAccessToken, workspaceId };
2465
+ if (!isSeamHttpOptionsWithPersonalAccessToken(constructorOptions)) {
2466
+ throw new SeamHttpInvalidOptionsError(
2467
+ "Missing personalAccessToken or workspaceId"
2468
+ );
2469
+ }
2470
+ return new _SeamHttpNetworks(constructorOptions);
2471
+ }
2472
+ async get(body) {
2473
+ const { data } = await this.client.request({
2474
+ url: "/networks/get",
2475
+ method: "post",
2476
+ data: body
2477
+ });
2478
+ return data.network;
2479
+ }
2480
+ async list(body) {
2481
+ const { data } = await this.client.request({
2482
+ url: "/networks/list",
2483
+ method: "post",
2484
+ data: body
2485
+ });
2486
+ return data.networks;
2487
+ }
2488
+ };
2489
+
2401
2490
  // src/lib/seam/connect/routes/noise-sensors-noise-thresholds.ts
2402
2491
  var SeamHttpNoiseSensorsNoiseThresholds = class _SeamHttpNoiseSensorsNoiseThresholds {
2403
2492
  constructor(apiKeyOrOptions = {}) {
@@ -2463,11 +2552,12 @@ var SeamHttpNoiseSensorsNoiseThresholds = class _SeamHttpNoiseSensorsNoiseThresh
2463
2552
  return new _SeamHttpNoiseSensorsNoiseThresholds(constructorOptions);
2464
2553
  }
2465
2554
  async create(body) {
2466
- await this.client.request({
2555
+ const { data } = await this.client.request({
2467
2556
  url: "/noise_sensors/noise_thresholds/create",
2468
2557
  method: "post",
2469
2558
  data: body
2470
2559
  });
2560
+ return data.noise_threshold;
2471
2561
  }
2472
2562
  async delete(body) {
2473
2563
  await this.client.request({
@@ -2570,6 +2660,77 @@ var SeamHttpNoiseSensors = class _SeamHttpNoiseSensors {
2570
2660
  }
2571
2661
  };
2572
2662
 
2663
+ // src/lib/seam/connect/routes/phones.ts
2664
+ var SeamHttpPhones = class _SeamHttpPhones {
2665
+ constructor(apiKeyOrOptions = {}) {
2666
+ const options = parseOptions(apiKeyOrOptions);
2667
+ this.client = "client" in options ? options.client : createClient(options);
2668
+ this.defaults = limitToSeamHttpRequestOptions(options);
2669
+ }
2670
+ static fromClient(client, options = {}) {
2671
+ const constructorOptions = { ...options, client };
2672
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
2673
+ throw new SeamHttpInvalidOptionsError("Missing client");
2674
+ }
2675
+ return new _SeamHttpPhones(constructorOptions);
2676
+ }
2677
+ static fromApiKey(apiKey, options = {}) {
2678
+ const constructorOptions = { ...options, apiKey };
2679
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
2680
+ throw new SeamHttpInvalidOptionsError("Missing apiKey");
2681
+ }
2682
+ return new _SeamHttpPhones(constructorOptions);
2683
+ }
2684
+ static fromClientSessionToken(clientSessionToken, options = {}) {
2685
+ const constructorOptions = { ...options, clientSessionToken };
2686
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
2687
+ throw new SeamHttpInvalidOptionsError("Missing clientSessionToken");
2688
+ }
2689
+ return new _SeamHttpPhones(constructorOptions);
2690
+ }
2691
+ static async fromPublishableKey(publishableKey, userIdentifierKey, options = {}) {
2692
+ warnOnInsecureuserIdentifierKey(userIdentifierKey);
2693
+ const clientOptions = parseOptions({ ...options, publishableKey });
2694
+ if (isSeamHttpOptionsWithClient(clientOptions)) {
2695
+ throw new SeamHttpInvalidOptionsError(
2696
+ "The client option cannot be used with SeamHttp.fromPublishableKey"
2697
+ );
2698
+ }
2699
+ const client = createClient(clientOptions);
2700
+ const clientSessions = SeamHttpClientSessions.fromClient(client);
2701
+ const { token } = await clientSessions.getOrCreate({
2702
+ user_identifier_key: userIdentifierKey
2703
+ });
2704
+ return _SeamHttpPhones.fromClientSessionToken(token, options);
2705
+ }
2706
+ static fromConsoleSessionToken(consoleSessionToken, workspaceId, options = {}) {
2707
+ const constructorOptions = { ...options, consoleSessionToken, workspaceId };
2708
+ if (!isSeamHttpOptionsWithConsoleSessionToken(constructorOptions)) {
2709
+ throw new SeamHttpInvalidOptionsError(
2710
+ "Missing consoleSessionToken or workspaceId"
2711
+ );
2712
+ }
2713
+ return new _SeamHttpPhones(constructorOptions);
2714
+ }
2715
+ static fromPersonalAccessToken(personalAccessToken, workspaceId, options = {}) {
2716
+ const constructorOptions = { ...options, personalAccessToken, workspaceId };
2717
+ if (!isSeamHttpOptionsWithPersonalAccessToken(constructorOptions)) {
2718
+ throw new SeamHttpInvalidOptionsError(
2719
+ "Missing personalAccessToken or workspaceId"
2720
+ );
2721
+ }
2722
+ return new _SeamHttpPhones(constructorOptions);
2723
+ }
2724
+ async list(body) {
2725
+ const { data } = await this.client.request({
2726
+ url: "/phones/list",
2727
+ method: "post",
2728
+ data: body
2729
+ });
2730
+ return data.phones;
2731
+ }
2732
+ };
2733
+
2573
2734
  // src/lib/seam/connect/routes/thermostats-climate-setting-schedules.ts
2574
2735
  var SeamHttpThermostatsClimateSettingSchedules = class _SeamHttpThermostatsClimateSettingSchedules {
2575
2736
  constructor(apiKeyOrOptions = {}) {
@@ -2809,6 +2970,102 @@ var SeamHttpThermostats = class _SeamHttpThermostats {
2809
2970
  }
2810
2971
  };
2811
2972
 
2973
+ // src/lib/seam/connect/routes/user-identities-enrollment-automations.ts
2974
+ var SeamHttpUserIdentitiesEnrollmentAutomations = class _SeamHttpUserIdentitiesEnrollmentAutomations {
2975
+ constructor(apiKeyOrOptions = {}) {
2976
+ const options = parseOptions(apiKeyOrOptions);
2977
+ this.client = "client" in options ? options.client : createClient(options);
2978
+ this.defaults = limitToSeamHttpRequestOptions(options);
2979
+ }
2980
+ static fromClient(client, options = {}) {
2981
+ const constructorOptions = { ...options, client };
2982
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
2983
+ throw new SeamHttpInvalidOptionsError("Missing client");
2984
+ }
2985
+ return new _SeamHttpUserIdentitiesEnrollmentAutomations(constructorOptions);
2986
+ }
2987
+ static fromApiKey(apiKey, options = {}) {
2988
+ const constructorOptions = { ...options, apiKey };
2989
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
2990
+ throw new SeamHttpInvalidOptionsError("Missing apiKey");
2991
+ }
2992
+ return new _SeamHttpUserIdentitiesEnrollmentAutomations(constructorOptions);
2993
+ }
2994
+ static fromClientSessionToken(clientSessionToken, options = {}) {
2995
+ const constructorOptions = { ...options, clientSessionToken };
2996
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
2997
+ throw new SeamHttpInvalidOptionsError("Missing clientSessionToken");
2998
+ }
2999
+ return new _SeamHttpUserIdentitiesEnrollmentAutomations(constructorOptions);
3000
+ }
3001
+ static async fromPublishableKey(publishableKey, userIdentifierKey, options = {}) {
3002
+ warnOnInsecureuserIdentifierKey(userIdentifierKey);
3003
+ const clientOptions = parseOptions({ ...options, publishableKey });
3004
+ if (isSeamHttpOptionsWithClient(clientOptions)) {
3005
+ throw new SeamHttpInvalidOptionsError(
3006
+ "The client option cannot be used with SeamHttp.fromPublishableKey"
3007
+ );
3008
+ }
3009
+ const client = createClient(clientOptions);
3010
+ const clientSessions = SeamHttpClientSessions.fromClient(client);
3011
+ const { token } = await clientSessions.getOrCreate({
3012
+ user_identifier_key: userIdentifierKey
3013
+ });
3014
+ return _SeamHttpUserIdentitiesEnrollmentAutomations.fromClientSessionToken(
3015
+ token,
3016
+ options
3017
+ );
3018
+ }
3019
+ static fromConsoleSessionToken(consoleSessionToken, workspaceId, options = {}) {
3020
+ const constructorOptions = { ...options, consoleSessionToken, workspaceId };
3021
+ if (!isSeamHttpOptionsWithConsoleSessionToken(constructorOptions)) {
3022
+ throw new SeamHttpInvalidOptionsError(
3023
+ "Missing consoleSessionToken or workspaceId"
3024
+ );
3025
+ }
3026
+ return new _SeamHttpUserIdentitiesEnrollmentAutomations(constructorOptions);
3027
+ }
3028
+ static fromPersonalAccessToken(personalAccessToken, workspaceId, options = {}) {
3029
+ const constructorOptions = { ...options, personalAccessToken, workspaceId };
3030
+ if (!isSeamHttpOptionsWithPersonalAccessToken(constructorOptions)) {
3031
+ throw new SeamHttpInvalidOptionsError(
3032
+ "Missing personalAccessToken or workspaceId"
3033
+ );
3034
+ }
3035
+ return new _SeamHttpUserIdentitiesEnrollmentAutomations(constructorOptions);
3036
+ }
3037
+ async get(body) {
3038
+ const { data } = await this.client.request(
3039
+ {
3040
+ url: "/user_identities/enrollment_automations/get",
3041
+ method: "post",
3042
+ data: body
3043
+ }
3044
+ );
3045
+ return data.enrollment_automation;
3046
+ }
3047
+ async launch(body) {
3048
+ const { data } = await this.client.request(
3049
+ {
3050
+ url: "/user_identities/enrollment_automations/launch",
3051
+ method: "post",
3052
+ data: body
3053
+ }
3054
+ );
3055
+ return data.enrollment_automation;
3056
+ }
3057
+ async list(body) {
3058
+ const { data } = await this.client.request(
3059
+ {
3060
+ url: "/user_identities/enrollment_automations/list",
3061
+ method: "post",
3062
+ data: body
3063
+ }
3064
+ );
3065
+ return data.enrollment_automations;
3066
+ }
3067
+ };
3068
+
2812
3069
  // src/lib/seam/connect/routes/user-identities.ts
2813
3070
  var SeamHttpUserIdentities = class _SeamHttpUserIdentities {
2814
3071
  constructor(apiKeyOrOptions = {}) {
@@ -2870,6 +3127,12 @@ var SeamHttpUserIdentities = class _SeamHttpUserIdentities {
2870
3127
  }
2871
3128
  return new _SeamHttpUserIdentities(constructorOptions);
2872
3129
  }
3130
+ get enrollmentAutomations() {
3131
+ return SeamHttpUserIdentitiesEnrollmentAutomations.fromClient(
3132
+ this.client,
3133
+ this.defaults
3134
+ );
3135
+ }
2873
3136
  async addAcsUser(body) {
2874
3137
  await this.client.request({
2875
3138
  url: "/user_identities/add_acs_user",
@@ -2900,11 +3163,11 @@ var SeamHttpUserIdentities = class _SeamHttpUserIdentities {
2900
3163
  data: body
2901
3164
  });
2902
3165
  }
2903
- async list(params) {
3166
+ async list(body) {
2904
3167
  const { data } = await this.client.request({
2905
3168
  url: "/user_identities/list",
2906
- method: "get",
2907
- params
3169
+ method: "post",
3170
+ data: body
2908
3171
  });
2909
3172
  return data.user_identities;
2910
3173
  }
@@ -2916,6 +3179,14 @@ var SeamHttpUserIdentities = class _SeamHttpUserIdentities {
2916
3179
  });
2917
3180
  return data.accessible_devices;
2918
3181
  }
3182
+ async listAcsSystems(body) {
3183
+ const { data } = await this.client.request({
3184
+ url: "/user_identities/list_acs_systems",
3185
+ method: "post",
3186
+ data: body
3187
+ });
3188
+ return data.acs_systems;
3189
+ }
2919
3190
  async listAcsUsers(body) {
2920
3191
  const { data } = await this.client.request({
2921
3192
  url: "/user_identities/list_acs_users",
@@ -3024,11 +3295,11 @@ var SeamHttpWebhooks = class _SeamHttpWebhooks {
3024
3295
  });
3025
3296
  return data.webhook;
3026
3297
  }
3027
- async list(params) {
3298
+ async list(body) {
3028
3299
  const { data } = await this.client.request({
3029
3300
  url: "/webhooks/list",
3030
- method: "get",
3031
- params
3301
+ method: "post",
3302
+ data: body
3032
3303
  });
3033
3304
  return data.webhooks;
3034
3305
  }
@@ -3103,19 +3374,19 @@ var SeamHttpWorkspaces = class _SeamHttpWorkspaces {
3103
3374
  });
3104
3375
  return data.workspace;
3105
3376
  }
3106
- async get(params) {
3377
+ async get(body) {
3107
3378
  const { data } = await this.client.request({
3108
3379
  url: "/workspaces/get",
3109
- method: "get",
3110
- params
3380
+ method: "post",
3381
+ data: body
3111
3382
  });
3112
3383
  return data.workspace;
3113
3384
  }
3114
- async list(params) {
3385
+ async list(body) {
3115
3386
  const { data } = await this.client.request({
3116
3387
  url: "/workspaces/list",
3117
- method: "get",
3118
- params
3388
+ method: "post",
3389
+ data: body
3119
3390
  });
3120
3391
  return data.workspaces;
3121
3392
  }
@@ -3216,9 +3487,15 @@ var SeamHttp = class _SeamHttp {
3216
3487
  get locks() {
3217
3488
  return SeamHttpLocks.fromClient(this.client, this.defaults);
3218
3489
  }
3490
+ get networks() {
3491
+ return SeamHttpNetworks.fromClient(this.client, this.defaults);
3492
+ }
3219
3493
  get noiseSensors() {
3220
3494
  return SeamHttpNoiseSensors.fromClient(this.client, this.defaults);
3221
3495
  }
3496
+ get phones() {
3497
+ return SeamHttpPhones.fromClient(this.client, this.defaults);
3498
+ }
3222
3499
  get thermostats() {
3223
3500
  return SeamHttpThermostats.fromClient(this.client, this.defaults);
3224
3501
  }
@@ -3302,12 +3579,15 @@ exports.SeamHttpInvalidTokenError = SeamHttpInvalidTokenError;
3302
3579
  exports.SeamHttpLocks = SeamHttpLocks;
3303
3580
  exports.SeamHttpMultiWorkspace = SeamHttpMultiWorkspace;
3304
3581
  exports.SeamHttpMultiWorkspaceInvalidOptionsError = SeamHttpMultiWorkspaceInvalidOptionsError;
3582
+ exports.SeamHttpNetworks = SeamHttpNetworks;
3305
3583
  exports.SeamHttpNoiseSensors = SeamHttpNoiseSensors;
3306
3584
  exports.SeamHttpNoiseSensorsNoiseThresholds = SeamHttpNoiseSensorsNoiseThresholds;
3585
+ exports.SeamHttpPhones = SeamHttpPhones;
3307
3586
  exports.SeamHttpThermostats = SeamHttpThermostats;
3308
3587
  exports.SeamHttpThermostatsClimateSettingSchedules = SeamHttpThermostatsClimateSettingSchedules;
3309
3588
  exports.SeamHttpUnauthorizedError = SeamHttpUnauthorizedError;
3310
3589
  exports.SeamHttpUserIdentities = SeamHttpUserIdentities;
3590
+ exports.SeamHttpUserIdentitiesEnrollmentAutomations = SeamHttpUserIdentitiesEnrollmentAutomations;
3311
3591
  exports.SeamHttpWebhooks = SeamHttpWebhooks;
3312
3592
  exports.SeamHttpWorkspaces = SeamHttpWorkspaces;
3313
3593
  exports.errorInterceptor = errorInterceptor;