@seamapi/http 2.5.0 → 2.6.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 (164) hide show
  1. package/README.md +47 -0
  2. package/index.d.ts +0 -1
  3. package/index.js +0 -1
  4. package/index.js.map +1 -1
  5. package/lib/client.js +1 -1
  6. package/lib/client.js.map +1 -1
  7. package/lib/index.d.ts +1 -0
  8. package/lib/index.js +1 -0
  9. package/lib/index.js.map +1 -1
  10. package/lib/request-parameters.d.ts +1 -1
  11. package/lib/request-parameters.js.map +1 -1
  12. package/lib/routes/access-codes/access-codes.d.ts +1 -1
  13. package/lib/routes/access-codes/access-codes.js +30 -17
  14. package/lib/routes/access-codes/access-codes.js.map +1 -1
  15. package/lib/routes/access-codes/simulate/simulate.js +3 -2
  16. package/lib/routes/access-codes/simulate/simulate.js.map +1 -1
  17. package/lib/routes/access-codes/unmanaged/unmanaged.d.ts +1 -1
  18. package/lib/routes/access-codes/unmanaged/unmanaged.js +15 -6
  19. package/lib/routes/access-codes/unmanaged/unmanaged.js.map +1 -1
  20. package/lib/routes/access-grants/access-grants.d.ts +1 -1
  21. package/lib/routes/access-grants/access-grants.js +21 -12
  22. package/lib/routes/access-grants/access-grants.js.map +1 -1
  23. package/lib/routes/access-grants/unmanaged/unmanaged.js +9 -4
  24. package/lib/routes/access-grants/unmanaged/unmanaged.js.map +1 -1
  25. package/lib/routes/access-methods/access-methods.d.ts +1 -1
  26. package/lib/routes/access-methods/access-methods.js +21 -13
  27. package/lib/routes/access-methods/access-methods.js.map +1 -1
  28. package/lib/routes/access-methods/unmanaged/unmanaged.js +6 -3
  29. package/lib/routes/access-methods/unmanaged/unmanaged.js.map +1 -1
  30. package/lib/routes/acs/access-groups/access-groups.js +21 -10
  31. package/lib/routes/acs/access-groups/access-groups.js.map +1 -1
  32. package/lib/routes/acs/credentials/credentials.js +24 -19
  33. package/lib/routes/acs/credentials/credentials.js.map +1 -1
  34. package/lib/routes/acs/encoders/encoders.js +15 -8
  35. package/lib/routes/acs/encoders/encoders.js.map +1 -1
  36. package/lib/routes/acs/encoders/simulate/simulate.js +12 -5
  37. package/lib/routes/acs/encoders/simulate/simulate.js.map +1 -1
  38. package/lib/routes/acs/entrances/entrances.js +15 -11
  39. package/lib/routes/acs/entrances/entrances.js.map +1 -1
  40. package/lib/routes/acs/systems/systems.js +12 -7
  41. package/lib/routes/acs/systems/systems.js.map +1 -1
  42. package/lib/routes/acs/users/users.d.ts +1 -1
  43. package/lib/routes/acs/users/users.js +33 -15
  44. package/lib/routes/acs/users/users.js.map +1 -1
  45. package/lib/routes/action-attempts/action-attempts.js +6 -5
  46. package/lib/routes/action-attempts/action-attempts.js.map +1 -1
  47. package/lib/routes/client-sessions/client-sessions.d.ts +1 -1
  48. package/lib/routes/client-sessions/client-sessions.js +21 -12
  49. package/lib/routes/client-sessions/client-sessions.js.map +1 -1
  50. package/lib/routes/connect-webviews/connect-webviews.js +12 -9
  51. package/lib/routes/connect-webviews/connect-webviews.js.map +1 -1
  52. package/lib/routes/connected-accounts/connected-accounts.d.ts +1 -1
  53. package/lib/routes/connected-accounts/connected-accounts.js +15 -8
  54. package/lib/routes/connected-accounts/connected-accounts.js.map +1 -1
  55. package/lib/routes/connected-accounts/simulate/simulate.js +3 -2
  56. package/lib/routes/connected-accounts/simulate/simulate.js.map +1 -1
  57. package/lib/routes/customers/customers.js +9 -6
  58. package/lib/routes/customers/customers.js.map +1 -1
  59. package/lib/routes/devices/devices.d.ts +1 -1
  60. package/lib/routes/devices/devices.js +15 -8
  61. package/lib/routes/devices/devices.js.map +1 -1
  62. package/lib/routes/devices/simulate/simulate.js +18 -9
  63. package/lib/routes/devices/simulate/simulate.js.map +1 -1
  64. package/lib/routes/devices/unmanaged/unmanaged.d.ts +1 -1
  65. package/lib/routes/devices/unmanaged/unmanaged.js +9 -4
  66. package/lib/routes/devices/unmanaged/unmanaged.js.map +1 -1
  67. package/lib/routes/events/events.d.ts +1 -1
  68. package/lib/routes/events/events.js +6 -3
  69. package/lib/routes/events/events.js.map +1 -1
  70. package/lib/routes/instant-keys/instant-keys.d.ts +1 -1
  71. package/lib/routes/instant-keys/instant-keys.js +9 -6
  72. package/lib/routes/instant-keys/instant-keys.js.map +1 -1
  73. package/lib/routes/locks/locks.d.ts +1 -1
  74. package/lib/routes/locks/locks.js +15 -10
  75. package/lib/routes/locks/locks.js.map +1 -1
  76. package/lib/routes/locks/simulate/simulate.js +6 -3
  77. package/lib/routes/locks/simulate/simulate.js.map +1 -1
  78. package/lib/routes/noise-sensors/noise-sensors.js +3 -2
  79. package/lib/routes/noise-sensors/noise-sensors.js.map +1 -1
  80. package/lib/routes/noise-sensors/noise-thresholds/noise-thresholds.js +15 -6
  81. package/lib/routes/noise-sensors/noise-thresholds/noise-thresholds.js.map +1 -1
  82. package/lib/routes/noise-sensors/simulate/simulate.js +3 -2
  83. package/lib/routes/noise-sensors/simulate/simulate.js.map +1 -1
  84. package/lib/routes/phones/phones.js +9 -6
  85. package/lib/routes/phones/phones.js.map +1 -1
  86. package/lib/routes/phones/simulate/simulate.js +3 -2
  87. package/lib/routes/phones/simulate/simulate.js.map +1 -1
  88. package/lib/routes/spaces/spaces.d.ts +1 -1
  89. package/lib/routes/spaces/spaces.js +36 -21
  90. package/lib/routes/spaces/spaces.js.map +1 -1
  91. package/lib/routes/thermostats/daily-programs/daily-programs.js +13 -4
  92. package/lib/routes/thermostats/daily-programs/daily-programs.js.map +1 -1
  93. package/lib/routes/thermostats/schedules/schedules.js +20 -6
  94. package/lib/routes/thermostats/schedules/schedules.js.map +1 -1
  95. package/lib/routes/thermostats/simulate/simulate.js +6 -3
  96. package/lib/routes/thermostats/simulate/simulate.js.map +1 -1
  97. package/lib/routes/thermostats/thermostats.js +42 -23
  98. package/lib/routes/thermostats/thermostats.js.map +1 -1
  99. package/lib/routes/user-identities/unmanaged/unmanaged.js +9 -4
  100. package/lib/routes/user-identities/unmanaged/unmanaged.js.map +1 -1
  101. package/lib/routes/user-identities/user-identities.d.ts +1 -1
  102. package/lib/routes/user-identities/user-identities.js +42 -19
  103. package/lib/routes/user-identities/user-identities.js.map +1 -1
  104. package/lib/routes/webhooks/webhooks.js +15 -13
  105. package/lib/routes/webhooks/webhooks.js.map +1 -1
  106. package/lib/routes/workspaces/workspaces.js +15 -8
  107. package/lib/routes/workspaces/workspaces.js.map +1 -1
  108. package/lib/seam-http-request.d.ts +3 -0
  109. package/lib/seam-http-request.js +3 -1
  110. package/lib/seam-http-request.js.map +1 -1
  111. package/lib/url-search-params-serializer.d.ts +4 -0
  112. package/lib/url-search-params-serializer.js +17 -0
  113. package/lib/url-search-params-serializer.js.map +1 -0
  114. package/lib/version.d.ts +1 -1
  115. package/lib/version.js +1 -1
  116. package/package.json +2 -2
  117. package/src/index.ts +0 -1
  118. package/src/lib/client.ts +1 -1
  119. package/src/lib/index.ts +1 -0
  120. package/src/lib/request-parameters.ts +1 -1
  121. package/src/lib/routes/access-codes/access-codes.ts +31 -55
  122. package/src/lib/routes/access-codes/simulate/simulate.ts +3 -8
  123. package/src/lib/routes/access-codes/unmanaged/unmanaged.ts +16 -39
  124. package/src/lib/routes/access-grants/access-grants.ts +22 -32
  125. package/src/lib/routes/access-grants/unmanaged/unmanaged.ts +9 -22
  126. package/src/lib/routes/access-methods/access-methods.ts +22 -38
  127. package/src/lib/routes/access-methods/unmanaged/unmanaged.ts +6 -15
  128. package/src/lib/routes/acs/access-groups/access-groups.ts +21 -47
  129. package/src/lib/routes/acs/credentials/credentials.ts +24 -37
  130. package/src/lib/routes/acs/encoders/encoders.ts +15 -28
  131. package/src/lib/routes/acs/encoders/simulate/simulate.ts +12 -29
  132. package/src/lib/routes/acs/entrances/entrances.ts +15 -26
  133. package/src/lib/routes/acs/systems/systems.ts +12 -21
  134. package/src/lib/routes/acs/users/users.ts +34 -49
  135. package/src/lib/routes/action-attempts/action-attempts.ts +6 -7
  136. package/src/lib/routes/client-sessions/client-sessions.ts +22 -37
  137. package/src/lib/routes/connect-webviews/connect-webviews.ts +12 -23
  138. package/src/lib/routes/connected-accounts/connected-accounts.ts +16 -36
  139. package/src/lib/routes/connected-accounts/simulate/simulate.ts +3 -8
  140. package/src/lib/routes/customers/customers.ts +9 -19
  141. package/src/lib/routes/devices/devices.ts +16 -26
  142. package/src/lib/routes/devices/simulate/simulate.ts +18 -40
  143. package/src/lib/routes/devices/unmanaged/unmanaged.ts +10 -20
  144. package/src/lib/routes/events/events.ts +7 -8
  145. package/src/lib/routes/instant-keys/instant-keys.ts +10 -12
  146. package/src/lib/routes/locks/locks.ts +16 -23
  147. package/src/lib/routes/locks/simulate/simulate.ts +6 -15
  148. package/src/lib/routes/noise-sensors/noise-sensors.ts +3 -3
  149. package/src/lib/routes/noise-sensors/noise-thresholds/noise-thresholds.ts +15 -36
  150. package/src/lib/routes/noise-sensors/simulate/simulate.ts +3 -8
  151. package/src/lib/routes/phones/phones.ts +9 -9
  152. package/src/lib/routes/phones/simulate/simulate.ts +3 -8
  153. package/src/lib/routes/spaces/spaces.ts +37 -56
  154. package/src/lib/routes/thermostats/daily-programs/daily-programs.ts +13 -22
  155. package/src/lib/routes/thermostats/schedules/schedules.ts +20 -36
  156. package/src/lib/routes/thermostats/simulate/simulate.ts +6 -15
  157. package/src/lib/routes/thermostats/thermostats.ts +42 -82
  158. package/src/lib/routes/user-identities/unmanaged/unmanaged.ts +9 -22
  159. package/src/lib/routes/user-identities/user-identities.ts +43 -86
  160. package/src/lib/routes/webhooks/webhooks.ts +15 -18
  161. package/src/lib/routes/workspaces/workspaces.ts +15 -18
  162. package/src/lib/seam-http-request.ts +12 -1
  163. package/src/lib/url-search-params-serializer.ts +28 -0
  164. package/src/lib/version.ts +1 -1
@@ -28,7 +28,6 @@ import {
28
28
  limitToSeamHttpRequestOptions,
29
29
  parseOptions,
30
30
  } from 'lib/parse-options.js'
31
- import { assertValidRequestParameters } from 'lib/request-parameters.js'
32
31
  import type { AcsSystem } from 'lib/resources/acs-system.js'
33
32
  import { SeamHttpClientSessions } from 'lib/routes/client-sessions/index.js'
34
33
  import { SeamHttpRequest } from 'lib/seam-http-request.js'
@@ -166,14 +165,13 @@ export class SeamHttpAcsSystems {
166
165
  parameters: AcsSystemsGetParameters,
167
166
  options: AcsSystemsGetOptions = {},
168
167
  ): AcsSystemsGetRequest {
169
- assertValidRequestParameters(parameters, '/acs/systems/get', true, [
170
- 'acs_system_id',
171
- ])
172
-
173
168
  return new SeamHttpRequest(this, {
174
169
  pathname: '/acs/systems/get',
175
170
  method: 'GET',
176
171
  params: parameters,
172
+ parameters,
173
+ hasRequiredParameters: true,
174
+ requiredParameterNames: ['acs_system_id'],
177
175
  responseKey: 'acs_system',
178
176
  options,
179
177
  })
@@ -188,12 +186,13 @@ export class SeamHttpAcsSystems {
188
186
  parameters?: AcsSystemsListParameters,
189
187
  options: AcsSystemsListOptions = {},
190
188
  ): AcsSystemsListRequest {
191
- assertValidRequestParameters(parameters, '/acs/systems/list', false, [])
192
-
193
189
  return new SeamHttpRequest(this, {
194
190
  pathname: '/acs/systems/list',
195
191
  method: 'GET',
196
192
  params: parameters,
193
+ parameters,
194
+ hasRequiredParameters: false,
195
+ requiredParameterNames: [],
197
196
  responseKey: 'acs_systems',
198
197
  options,
199
198
  })
@@ -208,17 +207,13 @@ export class SeamHttpAcsSystems {
208
207
  parameters: AcsSystemsListCompatibleCredentialManagerAcsSystemsParameters,
209
208
  options: AcsSystemsListCompatibleCredentialManagerAcsSystemsOptions = {},
210
209
  ): AcsSystemsListCompatibleCredentialManagerAcsSystemsRequest {
211
- assertValidRequestParameters(
212
- parameters,
213
- '/acs/systems/list_compatible_credential_manager_acs_systems',
214
- true,
215
- ['acs_system_id'],
216
- )
217
-
218
210
  return new SeamHttpRequest(this, {
219
211
  pathname: '/acs/systems/list_compatible_credential_manager_acs_systems',
220
212
  method: 'GET',
221
213
  params: parameters,
214
+ parameters,
215
+ hasRequiredParameters: true,
216
+ requiredParameterNames: ['acs_system_id'],
222
217
  responseKey: 'acs_systems',
223
218
  options,
224
219
  })
@@ -231,17 +226,13 @@ export class SeamHttpAcsSystems {
231
226
  parameters: AcsSystemsReportDevicesParameters,
232
227
  options: AcsSystemsReportDevicesOptions = {},
233
228
  ): AcsSystemsReportDevicesRequest {
234
- assertValidRequestParameters(
235
- parameters,
236
- '/acs/systems/report_devices',
237
- true,
238
- ['acs_system_id'],
239
- )
240
-
241
229
  return new SeamHttpRequest(this, {
242
230
  pathname: '/acs/systems/report_devices',
243
231
  method: 'POST',
244
232
  body: parameters,
233
+ parameters,
234
+ hasRequiredParameters: true,
235
+ requiredParameterNames: ['acs_system_id'],
245
236
  responseKey: undefined,
246
237
  options,
247
238
  })
@@ -28,10 +28,7 @@ import {
28
28
  limitToSeamHttpRequestOptions,
29
29
  parseOptions,
30
30
  } from 'lib/parse-options.js'
31
- import {
32
- assertValidRequestParameters,
33
- type RequireAtLeastOne,
34
- } from 'lib/request-parameters.js'
31
+ import type { RequireAtLeastOne } from 'lib/request-parameters.js'
35
32
  import type { AcsEntrance } from 'lib/resources/acs-entrance.js'
36
33
  import type { AcsUser } from 'lib/resources/acs-user.js'
37
34
  import { SeamHttpClientSessions } from 'lib/routes/client-sessions/index.js'
@@ -170,17 +167,13 @@ export class SeamHttpAcsUsers {
170
167
  parameters: AcsUsersAddToAccessGroupParameters,
171
168
  options: AcsUsersAddToAccessGroupOptions = {},
172
169
  ): AcsUsersAddToAccessGroupRequest {
173
- assertValidRequestParameters(
174
- parameters,
175
- '/acs/users/add_to_access_group',
176
- true,
177
- ['acs_access_group_id', 'acs_user_id'],
178
- )
179
-
180
170
  return new SeamHttpRequest(this, {
181
171
  pathname: '/acs/users/add_to_access_group',
182
172
  method: 'PUT',
183
173
  body: parameters,
174
+ parameters,
175
+ hasRequiredParameters: true,
176
+ requiredParameterNames: ['acs_access_group_id', 'acs_user_id'],
184
177
  responseKey: undefined,
185
178
  options,
186
179
  })
@@ -193,15 +186,13 @@ export class SeamHttpAcsUsers {
193
186
  parameters: AcsUsersCreateParameters,
194
187
  options: AcsUsersCreateOptions = {},
195
188
  ): AcsUsersCreateRequest {
196
- assertValidRequestParameters(parameters, '/acs/users/create', true, [
197
- 'acs_system_id',
198
- 'full_name',
199
- ])
200
-
201
189
  return new SeamHttpRequest(this, {
202
190
  pathname: '/acs/users/create',
203
191
  method: 'POST',
204
192
  body: parameters,
193
+ parameters,
194
+ hasRequiredParameters: true,
195
+ requiredParameterNames: ['acs_system_id', 'full_name'],
205
196
  responseKey: 'acs_user',
206
197
  options,
207
198
  })
@@ -214,12 +205,13 @@ export class SeamHttpAcsUsers {
214
205
  parameters: AcsUsersDeleteParameters,
215
206
  options: AcsUsersDeleteOptions = {},
216
207
  ): AcsUsersDeleteRequest {
217
- assertValidRequestParameters(parameters, '/acs/users/delete', true, [])
218
-
219
208
  return new SeamHttpRequest(this, {
220
209
  pathname: '/acs/users/delete',
221
210
  method: 'DELETE',
222
211
  params: parameters,
212
+ parameters,
213
+ hasRequiredParameters: true,
214
+ requiredParameterNames: [],
223
215
  responseKey: undefined,
224
216
  options,
225
217
  })
@@ -232,12 +224,13 @@ export class SeamHttpAcsUsers {
232
224
  parameters: AcsUsersGetParameters,
233
225
  options: AcsUsersGetOptions = {},
234
226
  ): AcsUsersGetRequest {
235
- assertValidRequestParameters(parameters, '/acs/users/get', true, [])
236
-
237
227
  return new SeamHttpRequest(this, {
238
228
  pathname: '/acs/users/get',
239
229
  method: 'GET',
240
230
  params: parameters,
231
+ parameters,
232
+ hasRequiredParameters: true,
233
+ requiredParameterNames: [],
241
234
  responseKey: 'acs_user',
242
235
  options,
243
236
  })
@@ -250,12 +243,13 @@ export class SeamHttpAcsUsers {
250
243
  parameters?: AcsUsersListParameters,
251
244
  options: AcsUsersListOptions = {},
252
245
  ): AcsUsersListRequest {
253
- assertValidRequestParameters(parameters, '/acs/users/list', false, [])
254
-
255
246
  return new SeamHttpRequest(this, {
256
247
  pathname: '/acs/users/list',
257
248
  method: 'GET',
258
249
  params: parameters,
250
+ parameters,
251
+ hasRequiredParameters: false,
252
+ requiredParameterNames: [],
259
253
  responseKey: 'acs_users',
260
254
  options,
261
255
  })
@@ -268,17 +262,13 @@ export class SeamHttpAcsUsers {
268
262
  parameters: AcsUsersListAccessibleEntrancesParameters,
269
263
  options: AcsUsersListAccessibleEntrancesOptions = {},
270
264
  ): AcsUsersListAccessibleEntrancesRequest {
271
- assertValidRequestParameters(
272
- parameters,
273
- '/acs/users/list_accessible_entrances',
274
- true,
275
- [],
276
- )
277
-
278
265
  return new SeamHttpRequest(this, {
279
266
  pathname: '/acs/users/list_accessible_entrances',
280
267
  method: 'GET',
281
268
  params: parameters,
269
+ parameters,
270
+ hasRequiredParameters: true,
271
+ requiredParameterNames: [],
282
272
  responseKey: 'acs_entrances',
283
273
  options,
284
274
  })
@@ -291,17 +281,13 @@ export class SeamHttpAcsUsers {
291
281
  parameters: AcsUsersRemoveFromAccessGroupParameters,
292
282
  options: AcsUsersRemoveFromAccessGroupOptions = {},
293
283
  ): AcsUsersRemoveFromAccessGroupRequest {
294
- assertValidRequestParameters(
295
- parameters,
296
- '/acs/users/remove_from_access_group',
297
- true,
298
- ['acs_access_group_id'],
299
- )
300
-
301
284
  return new SeamHttpRequest(this, {
302
285
  pathname: '/acs/users/remove_from_access_group',
303
286
  method: 'DELETE',
304
287
  params: parameters,
288
+ parameters,
289
+ hasRequiredParameters: true,
290
+ requiredParameterNames: ['acs_access_group_id'],
305
291
  responseKey: undefined,
306
292
  options,
307
293
  })
@@ -314,17 +300,13 @@ export class SeamHttpAcsUsers {
314
300
  parameters: AcsUsersRevokeAccessToAllEntrancesParameters,
315
301
  options: AcsUsersRevokeAccessToAllEntrancesOptions = {},
316
302
  ): AcsUsersRevokeAccessToAllEntrancesRequest {
317
- assertValidRequestParameters(
318
- parameters,
319
- '/acs/users/revoke_access_to_all_entrances',
320
- true,
321
- [],
322
- )
323
-
324
303
  return new SeamHttpRequest(this, {
325
304
  pathname: '/acs/users/revoke_access_to_all_entrances',
326
305
  method: 'POST',
327
306
  body: parameters,
307
+ parameters,
308
+ hasRequiredParameters: true,
309
+ requiredParameterNames: [],
328
310
  responseKey: undefined,
329
311
  options,
330
312
  })
@@ -337,12 +319,13 @@ export class SeamHttpAcsUsers {
337
319
  parameters: AcsUsersSuspendParameters,
338
320
  options: AcsUsersSuspendOptions = {},
339
321
  ): AcsUsersSuspendRequest {
340
- assertValidRequestParameters(parameters, '/acs/users/suspend', true, [])
341
-
342
322
  return new SeamHttpRequest(this, {
343
323
  pathname: '/acs/users/suspend',
344
324
  method: 'POST',
345
325
  body: parameters,
326
+ parameters,
327
+ hasRequiredParameters: true,
328
+ requiredParameterNames: [],
346
329
  responseKey: undefined,
347
330
  options,
348
331
  })
@@ -355,12 +338,13 @@ export class SeamHttpAcsUsers {
355
338
  parameters: AcsUsersUnsuspendParameters,
356
339
  options: AcsUsersUnsuspendOptions = {},
357
340
  ): AcsUsersUnsuspendRequest {
358
- assertValidRequestParameters(parameters, '/acs/users/unsuspend', true, [])
359
-
360
341
  return new SeamHttpRequest(this, {
361
342
  pathname: '/acs/users/unsuspend',
362
343
  method: 'POST',
363
344
  body: parameters,
345
+ parameters,
346
+ hasRequiredParameters: true,
347
+ requiredParameterNames: [],
364
348
  responseKey: undefined,
365
349
  options,
366
350
  })
@@ -373,12 +357,13 @@ export class SeamHttpAcsUsers {
373
357
  parameters: AcsUsersUpdateParameters,
374
358
  options: AcsUsersUpdateOptions = {},
375
359
  ): AcsUsersUpdateRequest {
376
- assertValidRequestParameters(parameters, '/acs/users/update', true, [])
377
-
378
360
  return new SeamHttpRequest(this, {
379
361
  pathname: '/acs/users/update',
380
362
  method: 'PATCH',
381
363
  body: parameters,
364
+ parameters,
365
+ hasRequiredParameters: true,
366
+ requiredParameterNames: [],
382
367
  responseKey: undefined,
383
368
  options,
384
369
  })
@@ -28,7 +28,6 @@ import {
28
28
  limitToSeamHttpRequestOptions,
29
29
  parseOptions,
30
30
  } from 'lib/parse-options.js'
31
- import { assertValidRequestParameters } from 'lib/request-parameters.js'
32
31
  import type { ActionAttempt } from 'lib/resources/action-attempt.js'
33
32
  import { SeamHttpClientSessions } from 'lib/routes/client-sessions/index.js'
34
33
  import { SeamHttpRequest } from 'lib/seam-http-request.js'
@@ -166,14 +165,13 @@ export class SeamHttpActionAttempts {
166
165
  parameters: ActionAttemptsGetParameters,
167
166
  options: ActionAttemptsGetOptions = {},
168
167
  ): ActionAttemptsGetRequest {
169
- assertValidRequestParameters(parameters, '/action_attempts/get', true, [
170
- 'action_attempt_id',
171
- ])
172
-
173
168
  return new SeamHttpRequest(this, {
174
169
  pathname: '/action_attempts/get',
175
170
  method: 'GET',
176
171
  params: parameters,
172
+ parameters,
173
+ hasRequiredParameters: true,
174
+ requiredParameterNames: ['action_attempt_id'],
177
175
  responseKey: 'action_attempt',
178
176
  options,
179
177
  actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
@@ -190,12 +188,13 @@ export class SeamHttpActionAttempts {
190
188
  parameters?: ActionAttemptsListParameters,
191
189
  options: ActionAttemptsListOptions = {},
192
190
  ): ActionAttemptsListRequest {
193
- assertValidRequestParameters(parameters, '/action_attempts/list', false, [])
194
-
195
191
  return new SeamHttpRequest(this, {
196
192
  pathname: '/action_attempts/list',
197
193
  method: 'POST',
198
194
  body: parameters,
195
+ parameters,
196
+ hasRequiredParameters: false,
197
+ requiredParameterNames: [],
199
198
  responseKey: 'action_attempts',
200
199
  options,
201
200
  })
@@ -28,10 +28,7 @@ import {
28
28
  limitToSeamHttpRequestOptions,
29
29
  parseOptions,
30
30
  } from 'lib/parse-options.js'
31
- import {
32
- assertValidRequestParameters,
33
- type RequireAtLeastOne,
34
- } from 'lib/request-parameters.js'
31
+ import type { RequireAtLeastOne } from 'lib/request-parameters.js'
35
32
  import type { ClientSession } from 'lib/resources/client-session.js'
36
33
  import { SeamHttpRequest } from 'lib/seam-http-request.js'
37
34
  import { SeamPaginator } from 'lib/seam-paginator.js'
@@ -168,17 +165,13 @@ export class SeamHttpClientSessions {
168
165
  parameters?: ClientSessionsCreateParameters,
169
166
  options: ClientSessionsCreateOptions = {},
170
167
  ): ClientSessionsCreateRequest {
171
- assertValidRequestParameters(
172
- parameters,
173
- '/client_sessions/create',
174
- false,
175
- [],
176
- )
177
-
178
168
  return new SeamHttpRequest(this, {
179
169
  pathname: '/client_sessions/create',
180
170
  method: 'PUT',
181
171
  body: parameters,
172
+ parameters,
173
+ hasRequiredParameters: false,
174
+ requiredParameterNames: [],
182
175
  responseKey: 'client_session',
183
176
  options,
184
177
  })
@@ -191,14 +184,13 @@ export class SeamHttpClientSessions {
191
184
  parameters: ClientSessionsDeleteParameters,
192
185
  options: ClientSessionsDeleteOptions = {},
193
186
  ): ClientSessionsDeleteRequest {
194
- assertValidRequestParameters(parameters, '/client_sessions/delete', true, [
195
- 'client_session_id',
196
- ])
197
-
198
187
  return new SeamHttpRequest(this, {
199
188
  pathname: '/client_sessions/delete',
200
189
  method: 'DELETE',
201
190
  params: parameters,
191
+ parameters,
192
+ hasRequiredParameters: true,
193
+ requiredParameterNames: ['client_session_id'],
202
194
  responseKey: undefined,
203
195
  options,
204
196
  })
@@ -211,12 +203,13 @@ export class SeamHttpClientSessions {
211
203
  parameters?: ClientSessionsGetParameters,
212
204
  options: ClientSessionsGetOptions = {},
213
205
  ): ClientSessionsGetRequest {
214
- assertValidRequestParameters(parameters, '/client_sessions/get', false, [])
215
-
216
206
  return new SeamHttpRequest(this, {
217
207
  pathname: '/client_sessions/get',
218
208
  method: 'GET',
219
209
  params: parameters,
210
+ parameters,
211
+ hasRequiredParameters: false,
212
+ requiredParameterNames: [],
220
213
  responseKey: 'client_session',
221
214
  options,
222
215
  })
@@ -229,17 +222,13 @@ export class SeamHttpClientSessions {
229
222
  parameters?: ClientSessionsGetOrCreateParameters,
230
223
  options: ClientSessionsGetOrCreateOptions = {},
231
224
  ): ClientSessionsGetOrCreateRequest {
232
- assertValidRequestParameters(
233
- parameters,
234
- '/client_sessions/get_or_create',
235
- false,
236
- [],
237
- )
238
-
239
225
  return new SeamHttpRequest(this, {
240
226
  pathname: '/client_sessions/get_or_create',
241
227
  method: 'POST',
242
228
  body: parameters,
229
+ parameters,
230
+ hasRequiredParameters: false,
231
+ requiredParameterNames: [],
243
232
  responseKey: 'client_session',
244
233
  options,
245
234
  })
@@ -252,17 +241,13 @@ export class SeamHttpClientSessions {
252
241
  parameters: ClientSessionsGrantAccessParameters,
253
242
  options: ClientSessionsGrantAccessOptions = {},
254
243
  ): ClientSessionsGrantAccessRequest {
255
- assertValidRequestParameters(
256
- parameters,
257
- '/client_sessions/grant_access',
258
- true,
259
- [],
260
- )
261
-
262
244
  return new SeamHttpRequest(this, {
263
245
  pathname: '/client_sessions/grant_access',
264
246
  method: 'PATCH',
265
247
  body: parameters,
248
+ parameters,
249
+ hasRequiredParameters: true,
250
+ requiredParameterNames: [],
266
251
  responseKey: undefined,
267
252
  options,
268
253
  })
@@ -275,12 +260,13 @@ export class SeamHttpClientSessions {
275
260
  parameters?: ClientSessionsListParameters,
276
261
  options: ClientSessionsListOptions = {},
277
262
  ): ClientSessionsListRequest {
278
- assertValidRequestParameters(parameters, '/client_sessions/list', false, [])
279
-
280
263
  return new SeamHttpRequest(this, {
281
264
  pathname: '/client_sessions/list',
282
265
  method: 'GET',
283
266
  params: parameters,
267
+ parameters,
268
+ hasRequiredParameters: false,
269
+ requiredParameterNames: [],
284
270
  responseKey: 'client_sessions',
285
271
  options,
286
272
  })
@@ -295,14 +281,13 @@ export class SeamHttpClientSessions {
295
281
  parameters: ClientSessionsRevokeParameters,
296
282
  options: ClientSessionsRevokeOptions = {},
297
283
  ): ClientSessionsRevokeRequest {
298
- assertValidRequestParameters(parameters, '/client_sessions/revoke', true, [
299
- 'client_session_id',
300
- ])
301
-
302
284
  return new SeamHttpRequest(this, {
303
285
  pathname: '/client_sessions/revoke',
304
286
  method: 'POST',
305
287
  body: parameters,
288
+ parameters,
289
+ hasRequiredParameters: true,
290
+ requiredParameterNames: ['client_session_id'],
306
291
  responseKey: undefined,
307
292
  options,
308
293
  })
@@ -28,7 +28,6 @@ import {
28
28
  limitToSeamHttpRequestOptions,
29
29
  parseOptions,
30
30
  } from 'lib/parse-options.js'
31
- import { assertValidRequestParameters } from 'lib/request-parameters.js'
32
31
  import type { ConnectWebview } from 'lib/resources/connect-webview.js'
33
32
  import { SeamHttpClientSessions } from 'lib/routes/client-sessions/index.js'
34
33
  import { SeamHttpRequest } from 'lib/seam-http-request.js'
@@ -172,17 +171,13 @@ export class SeamHttpConnectWebviews {
172
171
  parameters?: ConnectWebviewsCreateParameters,
173
172
  options: ConnectWebviewsCreateOptions = {},
174
173
  ): ConnectWebviewsCreateRequest {
175
- assertValidRequestParameters(
176
- parameters,
177
- '/connect_webviews/create',
178
- false,
179
- [],
180
- )
181
-
182
174
  return new SeamHttpRequest(this, {
183
175
  pathname: '/connect_webviews/create',
184
176
  method: 'POST',
185
177
  body: parameters,
178
+ parameters,
179
+ hasRequiredParameters: false,
180
+ requiredParameterNames: [],
186
181
  responseKey: 'connect_webview',
187
182
  options,
188
183
  })
@@ -197,14 +192,13 @@ export class SeamHttpConnectWebviews {
197
192
  parameters: ConnectWebviewsDeleteParameters,
198
193
  options: ConnectWebviewsDeleteOptions = {},
199
194
  ): ConnectWebviewsDeleteRequest {
200
- assertValidRequestParameters(parameters, '/connect_webviews/delete', true, [
201
- 'connect_webview_id',
202
- ])
203
-
204
195
  return new SeamHttpRequest(this, {
205
196
  pathname: '/connect_webviews/delete',
206
197
  method: 'DELETE',
207
198
  params: parameters,
199
+ parameters,
200
+ hasRequiredParameters: true,
201
+ requiredParameterNames: ['connect_webview_id'],
208
202
  responseKey: undefined,
209
203
  options,
210
204
  })
@@ -219,14 +213,13 @@ export class SeamHttpConnectWebviews {
219
213
  parameters: ConnectWebviewsGetParameters,
220
214
  options: ConnectWebviewsGetOptions = {},
221
215
  ): ConnectWebviewsGetRequest {
222
- assertValidRequestParameters(parameters, '/connect_webviews/get', true, [
223
- 'connect_webview_id',
224
- ])
225
-
226
216
  return new SeamHttpRequest(this, {
227
217
  pathname: '/connect_webviews/get',
228
218
  method: 'GET',
229
219
  params: parameters,
220
+ parameters,
221
+ hasRequiredParameters: true,
222
+ requiredParameterNames: ['connect_webview_id'],
230
223
  responseKey: 'connect_webview',
231
224
  options,
232
225
  })
@@ -239,17 +232,13 @@ export class SeamHttpConnectWebviews {
239
232
  parameters?: ConnectWebviewsListParameters,
240
233
  options: ConnectWebviewsListOptions = {},
241
234
  ): ConnectWebviewsListRequest {
242
- assertValidRequestParameters(
243
- parameters,
244
- '/connect_webviews/list',
245
- false,
246
- [],
247
- )
248
-
249
235
  return new SeamHttpRequest(this, {
250
236
  pathname: '/connect_webviews/list',
251
237
  method: 'POST',
252
238
  body: parameters,
239
+ parameters,
240
+ hasRequiredParameters: false,
241
+ requiredParameterNames: [],
253
242
  responseKey: 'connect_webviews',
254
243
  options,
255
244
  })
@@ -28,10 +28,7 @@ import {
28
28
  limitToSeamHttpRequestOptions,
29
29
  parseOptions,
30
30
  } from 'lib/parse-options.js'
31
- import {
32
- assertValidRequestParameters,
33
- type RequireAtLeastOne,
34
- } from 'lib/request-parameters.js'
31
+ import type { RequireAtLeastOne } from 'lib/request-parameters.js'
35
32
  import type { ConnectedAccount } from 'lib/resources/connected-account.js'
36
33
  import { SeamHttpClientSessions } from 'lib/routes/client-sessions/index.js'
37
34
  import { SeamHttpRequest } from 'lib/seam-http-request.js'
@@ -182,17 +179,13 @@ export class SeamHttpConnectedAccounts {
182
179
  parameters: ConnectedAccountsDeleteParameters,
183
180
  options: ConnectedAccountsDeleteOptions = {},
184
181
  ): ConnectedAccountsDeleteRequest {
185
- assertValidRequestParameters(
186
- parameters,
187
- '/connected_accounts/delete',
188
- true,
189
- ['connected_account_id'],
190
- )
191
-
192
182
  return new SeamHttpRequest(this, {
193
183
  pathname: '/connected_accounts/delete',
194
184
  method: 'DELETE',
195
185
  params: parameters,
186
+ parameters,
187
+ hasRequiredParameters: true,
188
+ requiredParameterNames: ['connected_account_id'],
196
189
  responseKey: undefined,
197
190
  options,
198
191
  })
@@ -205,17 +198,13 @@ export class SeamHttpConnectedAccounts {
205
198
  parameters: ConnectedAccountsGetParameters,
206
199
  options: ConnectedAccountsGetOptions = {},
207
200
  ): ConnectedAccountsGetRequest {
208
- assertValidRequestParameters(
209
- parameters,
210
- '/connected_accounts/get',
211
- true,
212
- [],
213
- )
214
-
215
201
  return new SeamHttpRequest(this, {
216
202
  pathname: '/connected_accounts/get',
217
203
  method: 'GET',
218
204
  params: parameters,
205
+ parameters,
206
+ hasRequiredParameters: true,
207
+ requiredParameterNames: [],
219
208
  responseKey: 'connected_account',
220
209
  options,
221
210
  })
@@ -228,17 +217,13 @@ export class SeamHttpConnectedAccounts {
228
217
  parameters?: ConnectedAccountsListParameters,
229
218
  options: ConnectedAccountsListOptions = {},
230
219
  ): ConnectedAccountsListRequest {
231
- assertValidRequestParameters(
232
- parameters,
233
- '/connected_accounts/list',
234
- false,
235
- [],
236
- )
237
-
238
220
  return new SeamHttpRequest(this, {
239
221
  pathname: '/connected_accounts/list',
240
222
  method: 'POST',
241
223
  body: parameters,
224
+ parameters,
225
+ hasRequiredParameters: false,
226
+ requiredParameterNames: [],
242
227
  responseKey: 'connected_accounts',
243
228
  options,
244
229
  })
@@ -251,14 +236,13 @@ export class SeamHttpConnectedAccounts {
251
236
  parameters: ConnectedAccountsSyncParameters,
252
237
  options: ConnectedAccountsSyncOptions = {},
253
238
  ): ConnectedAccountsSyncRequest {
254
- assertValidRequestParameters(parameters, '/connected_accounts/sync', true, [
255
- 'connected_account_id',
256
- ])
257
-
258
239
  return new SeamHttpRequest(this, {
259
240
  pathname: '/connected_accounts/sync',
260
241
  method: 'POST',
261
242
  body: parameters,
243
+ parameters,
244
+ hasRequiredParameters: true,
245
+ requiredParameterNames: ['connected_account_id'],
262
246
  responseKey: undefined,
263
247
  options,
264
248
  })
@@ -271,17 +255,13 @@ export class SeamHttpConnectedAccounts {
271
255
  parameters: ConnectedAccountsUpdateParameters,
272
256
  options: ConnectedAccountsUpdateOptions = {},
273
257
  ): ConnectedAccountsUpdateRequest {
274
- assertValidRequestParameters(
275
- parameters,
276
- '/connected_accounts/update',
277
- true,
278
- ['connected_account_id'],
279
- )
280
-
281
258
  return new SeamHttpRequest(this, {
282
259
  pathname: '/connected_accounts/update',
283
260
  method: 'PATCH',
284
261
  body: parameters,
262
+ parameters,
263
+ hasRequiredParameters: true,
264
+ requiredParameterNames: ['connected_account_id'],
285
265
  responseKey: undefined,
286
266
  options,
287
267
  })
@@ -28,7 +28,6 @@ import {
28
28
  limitToSeamHttpRequestOptions,
29
29
  parseOptions,
30
30
  } from 'lib/parse-options.js'
31
- import { assertValidRequestParameters } from 'lib/request-parameters.js'
32
31
  import { SeamHttpClientSessions } from 'lib/routes/client-sessions/index.js'
33
32
  import { SeamHttpRequest } from 'lib/seam-http-request.js'
34
33
  import { SeamPaginator } from 'lib/seam-paginator.js'
@@ -168,17 +167,13 @@ export class SeamHttpConnectedAccountsSimulate {
168
167
  parameters: ConnectedAccountsSimulateDisconnectParameters,
169
168
  options: ConnectedAccountsSimulateDisconnectOptions = {},
170
169
  ): ConnectedAccountsSimulateDisconnectRequest {
171
- assertValidRequestParameters(
172
- parameters,
173
- '/connected_accounts/simulate/disconnect',
174
- true,
175
- ['connected_account_id'],
176
- )
177
-
178
170
  return new SeamHttpRequest(this, {
179
171
  pathname: '/connected_accounts/simulate/disconnect',
180
172
  method: 'POST',
181
173
  body: parameters,
174
+ parameters,
175
+ hasRequiredParameters: true,
176
+ requiredParameterNames: ['connected_account_id'],
182
177
  responseKey: undefined,
183
178
  options,
184
179
  })