@seamapi/types 1.23.2 → 1.25.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.
@@ -6255,6 +6255,130 @@ declare const _default: {
6255
6255
  'x-fern-sdk-return-value': string;
6256
6256
  };
6257
6257
  };
6258
+ '/client_sessions/get_or_create': {
6259
+ post: {
6260
+ operationId: string;
6261
+ requestBody: {
6262
+ content: {
6263
+ 'application/json': {
6264
+ schema: {
6265
+ properties: {
6266
+ connect_webview_ids: {
6267
+ items: {
6268
+ type: string;
6269
+ };
6270
+ type: string;
6271
+ };
6272
+ connected_account_ids: {
6273
+ items: {
6274
+ type: string;
6275
+ };
6276
+ type: string;
6277
+ };
6278
+ user_identifier_key: {
6279
+ minLength: number;
6280
+ type: string;
6281
+ };
6282
+ };
6283
+ type: string;
6284
+ };
6285
+ };
6286
+ };
6287
+ };
6288
+ responses: {
6289
+ 200: {
6290
+ content: {
6291
+ 'application/json': {
6292
+ schema: {
6293
+ properties: {
6294
+ client_session: {
6295
+ $ref: string;
6296
+ };
6297
+ ok: {
6298
+ type: string;
6299
+ };
6300
+ };
6301
+ required: string[];
6302
+ type: string;
6303
+ };
6304
+ };
6305
+ };
6306
+ description: string;
6307
+ };
6308
+ 400: {
6309
+ description: string;
6310
+ };
6311
+ 401: {
6312
+ description: string;
6313
+ };
6314
+ };
6315
+ summary: string;
6316
+ tags: string[];
6317
+ 'x-fern-sdk-group-name': string[];
6318
+ 'x-fern-sdk-method-name': string;
6319
+ 'x-fern-sdk-return-value': string;
6320
+ };
6321
+ put: {
6322
+ operationId: string;
6323
+ requestBody: {
6324
+ content: {
6325
+ 'application/json': {
6326
+ schema: {
6327
+ properties: {
6328
+ connect_webview_ids: {
6329
+ items: {
6330
+ type: string;
6331
+ };
6332
+ type: string;
6333
+ };
6334
+ connected_account_ids: {
6335
+ items: {
6336
+ type: string;
6337
+ };
6338
+ type: string;
6339
+ };
6340
+ user_identifier_key: {
6341
+ minLength: number;
6342
+ type: string;
6343
+ };
6344
+ };
6345
+ type: string;
6346
+ };
6347
+ };
6348
+ };
6349
+ };
6350
+ responses: {
6351
+ 200: {
6352
+ content: {
6353
+ 'application/json': {
6354
+ schema: {
6355
+ properties: {
6356
+ client_session: {
6357
+ $ref: string;
6358
+ };
6359
+ ok: {
6360
+ type: string;
6361
+ };
6362
+ };
6363
+ required: string[];
6364
+ type: string;
6365
+ };
6366
+ };
6367
+ };
6368
+ description: string;
6369
+ };
6370
+ 400: {
6371
+ description: string;
6372
+ };
6373
+ 401: {
6374
+ description: string;
6375
+ };
6376
+ };
6377
+ summary: string;
6378
+ tags: string[];
6379
+ 'x-fern-ignore': boolean;
6380
+ };
6381
+ };
6258
6382
  '/client_sessions/grant_access': {
6259
6383
  patch: {
6260
6384
  operationId: string;
@@ -12378,6 +12502,27 @@ interface Routes {
12378
12502
  };
12379
12503
  };
12380
12504
  };
12505
+ '/client_sessions/get_or_create': {
12506
+ route: '/client_sessions/get_or_create';
12507
+ method: 'POST' | 'PUT';
12508
+ queryParams: {};
12509
+ jsonBody: {
12510
+ user_identifier_key?: string | undefined;
12511
+ connect_webview_ids?: string[] | undefined;
12512
+ connected_account_ids?: string[] | undefined;
12513
+ };
12514
+ commonParams: {};
12515
+ formData: {};
12516
+ jsonResponse: {
12517
+ client_session: {
12518
+ client_session_id: string;
12519
+ user_identifier_key: string | null;
12520
+ created_at: string;
12521
+ token: string;
12522
+ workspace_id: string;
12523
+ };
12524
+ };
12525
+ };
12381
12526
  '/client_sessions/grant_access': {
12382
12527
  route: '/client_sessions/grant_access';
12383
12528
  method: 'PATCH' | 'POST';
package/dist/devicedb.cjs CHANGED
@@ -124,7 +124,8 @@ var base_device_model_v1 = zod.z.object({
124
124
  primary_color_hex: zod.z.string().optional(),
125
125
  manufacturer_sku: zod.z.string().optional(),
126
126
  front_image: image_reference.optional(),
127
- back_image: image_reference.optional()
127
+ back_image: image_reference.optional(),
128
+ images: image_reference.array()
128
129
  }).array(),
129
130
  power_sources: zod.z.enum([
130
131
  "battery",
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/lib/seam/devicedb/public-models/index.ts","../src/lib/seam/devicedb/public-models/device-model-v0.ts","../src/lib/seam/devicedb/public-models/device-model-v1.ts","../src/lib/seam/devicedb/public-models/image-reference.ts","../src/lib/seam/devicedb/public-models/manufacturer.ts"],"names":["z"],"mappings":"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","sourcesContent":["export * from './device-model-v0.js'\nexport * from './device-model-v1.js'\nexport * from './image-reference.js'\nexport * from './manufacturer.js'\n","import { z } from 'zod'\n\nexport const device_model_v0 = z.object({\n main_category: z.string(),\n model_name: z.string(),\n manufacturer_model_id: z.string(),\n connection_type: z.enum(['wifi', 'zwave', 'zigbee', 'unknown']),\n support_level: z.enum(['live', 'beta', 'unsupported']),\n brand: z.string(),\n icon_url: z.string(),\n seam_device_model_page_url: z.string(),\n})\n\nexport type DeviceModelV0 = z.infer<typeof device_model_v0>\n","import { z } from 'zod'\n\nimport { image_reference } from './image-reference.js'\nimport { manufacturer } from './manufacturer.js'\n\nconst smartlock = z.object({\n main_category: z.literal('smartlock'),\n physical_properties: z.object({\n lock_type: z.enum([\n 'deadbolt',\n 'lever',\n 'mortise',\n 'lockbox',\n 'cylinder',\n 'padlock',\n 'locker',\n 'unknown',\n ]),\n has_physical_key: z.boolean(),\n has_camera: z.boolean(),\n }),\n software_features: z.object({\n can_remotely_unlock: z.boolean(),\n can_program_access_codes: z.boolean(),\n can_program_access_schedules: z.boolean(),\n can_program_access_codes_offline: z.boolean(),\n }),\n})\n\nconst sensor = z.object({\n main_category: z.literal('sensor'),\n physical_properties: z.object({\n has_noise_sensor: z.boolean(),\n has_humidity_sensor: z.boolean(),\n has_temperature_sensor: z.boolean(),\n has_occupancy_detection: z.boolean(),\n }),\n})\n\nconst thermostat = z.object({\n main_category: z.literal('thermostat'),\n physical_properties: z.object({\n available_modes: z.enum(['heat', 'cool', 'fan', 'eco']).array(),\n is_heat_pump_compatible: z.boolean(),\n has_occupancy_detection: z.boolean(),\n supports_demand_response: z.boolean(),\n has_humidity_sensor: z.boolean(),\n has_temperature_sensor: z.boolean(),\n supports_emergency_heating_mode: z.boolean(),\n }),\n software_features: z.object({\n can_program_climate_schedules: z.boolean(),\n }),\n})\n\nexport type ThermostatPropertiesV1 = z.infer<typeof thermostat>\n\nconst relay = z.object({\n main_category: z.literal('relay'),\n})\n\nconst intercom = z.object({\n main_category: z.literal('intercom'),\n physical_properties: z.object({\n has_camera: z.boolean(),\n }),\n software_features: z.object({\n can_remotely_unlock: z.boolean(),\n can_program_access_codes: z.boolean(),\n }),\n})\n\nconst accessory = z.object({\n main_category: z.literal('accessory'),\n})\n\nexport const device_model_category_specific_properties = z.discriminatedUnion(\n 'main_category',\n [smartlock, sensor, thermostat, relay, intercom, accessory],\n)\n\nexport const base_device_model_v1 = z.object({\n device_model_id: z.string().uuid(),\n manufacturer,\n is_device_supported: z.boolean(),\n display_name: z.string(),\n description: z.string(),\n product_url: z.string().optional(),\n main_connection_type: z.enum(['wifi', 'zwave', 'zigbee', 'unknown']),\n aesthetic_variants: z\n .object({\n slug: z.string(),\n display_name: z.string(),\n primary_color_hex: z.string().optional(),\n manufacturer_sku: z.string().optional(),\n front_image: image_reference.optional(),\n back_image: image_reference.optional(),\n })\n .array(),\n power_sources: z\n .enum([\n 'battery',\n 'hardwired',\n 'mechanical_harvesting',\n 'wireless',\n 'ethernet',\n ])\n .array(),\n})\n\nexport type BaseDeviceModelV1 = z.infer<typeof base_device_model_v1>\n\nexport const device_model_v1 = base_device_model_v1.and(\n device_model_category_specific_properties,\n)\n\nexport type DeviceModelV1 = z.infer<typeof device_model_v1>\n","import { z } from 'zod'\n\nexport const image_reference = z.object({\n url: z.string().url(),\n width: z.number(),\n height: z.number(),\n})\n\nexport type ImageReference = z.infer<typeof image_reference>\n","import { z } from 'zod'\n\nimport { image_reference } from './image-reference.js'\n\nexport const manufacturer = z.object({\n manufacturer_id: z.string().uuid(),\n display_name: z.string(),\n logo: image_reference.optional(),\n integration: z.enum(['stable', 'beta', 'planned', 'unsupported', 'inquire']),\n is_connect_webview_supported: z.boolean(),\n requires_seam_support_to_add_account: z.boolean(),\n})\n\nexport type Manufacturer = z.infer<typeof manufacturer>\n"]}
1
+ {"version":3,"sources":["../src/lib/seam/devicedb/public-models/index.ts","../src/lib/seam/devicedb/public-models/device-model-v0.ts","../src/lib/seam/devicedb/public-models/device-model-v1.ts","../src/lib/seam/devicedb/public-models/image-reference.ts","../src/lib/seam/devicedb/public-models/manufacturer.ts"],"names":["z"],"mappings":"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","sourcesContent":["export * from './device-model-v0.js'\nexport * from './device-model-v1.js'\nexport * from './image-reference.js'\nexport * from './manufacturer.js'\n","import { z } from 'zod'\n\nexport const device_model_v0 = z.object({\n main_category: z.string(),\n model_name: z.string(),\n manufacturer_model_id: z.string(),\n connection_type: z.enum(['wifi', 'zwave', 'zigbee', 'unknown']),\n support_level: z.enum(['live', 'beta', 'unsupported']),\n brand: z.string(),\n icon_url: z.string(),\n seam_device_model_page_url: z.string(),\n})\n\nexport type DeviceModelV0 = z.infer<typeof device_model_v0>\n","import { z } from 'zod'\n\nimport { image_reference } from './image-reference.js'\nimport { manufacturer } from './manufacturer.js'\n\nconst smartlock = z.object({\n main_category: z.literal('smartlock'),\n physical_properties: z.object({\n lock_type: z.enum([\n 'deadbolt',\n 'lever',\n 'mortise',\n 'lockbox',\n 'cylinder',\n 'padlock',\n 'locker',\n 'unknown',\n ]),\n has_physical_key: z.boolean(),\n has_camera: z.boolean(),\n }),\n software_features: z.object({\n can_remotely_unlock: z.boolean(),\n can_program_access_codes: z.boolean(),\n can_program_access_schedules: z.boolean(),\n can_program_access_codes_offline: z.boolean(),\n }),\n})\n\nconst sensor = z.object({\n main_category: z.literal('sensor'),\n physical_properties: z.object({\n has_noise_sensor: z.boolean(),\n has_humidity_sensor: z.boolean(),\n has_temperature_sensor: z.boolean(),\n has_occupancy_detection: z.boolean(),\n }),\n})\n\nconst thermostat = z.object({\n main_category: z.literal('thermostat'),\n physical_properties: z.object({\n available_modes: z.enum(['heat', 'cool', 'fan', 'eco']).array(),\n is_heat_pump_compatible: z.boolean(),\n has_occupancy_detection: z.boolean(),\n supports_demand_response: z.boolean(),\n has_humidity_sensor: z.boolean(),\n has_temperature_sensor: z.boolean(),\n supports_emergency_heating_mode: z.boolean(),\n }),\n software_features: z.object({\n can_program_climate_schedules: z.boolean(),\n }),\n})\n\nexport type ThermostatPropertiesV1 = z.infer<typeof thermostat>\n\nconst relay = z.object({\n main_category: z.literal('relay'),\n})\n\nconst intercom = z.object({\n main_category: z.literal('intercom'),\n physical_properties: z.object({\n has_camera: z.boolean(),\n }),\n software_features: z.object({\n can_remotely_unlock: z.boolean(),\n can_program_access_codes: z.boolean(),\n }),\n})\n\nconst accessory = z.object({\n main_category: z.literal('accessory'),\n})\n\nexport const device_model_category_specific_properties = z.discriminatedUnion(\n 'main_category',\n [smartlock, sensor, thermostat, relay, intercom, accessory],\n)\n\nexport const base_device_model_v1 = z.object({\n device_model_id: z.string().uuid(),\n manufacturer,\n is_device_supported: z.boolean(),\n display_name: z.string(),\n description: z.string(),\n product_url: z.string().optional(),\n main_connection_type: z.enum(['wifi', 'zwave', 'zigbee', 'unknown']),\n aesthetic_variants: z\n .object({\n slug: z.string(),\n display_name: z.string(),\n primary_color_hex: z.string().optional(),\n manufacturer_sku: z.string().optional(),\n front_image: image_reference.optional(),\n back_image: image_reference.optional(),\n images: image_reference.array(),\n })\n .array(),\n power_sources: z\n .enum([\n 'battery',\n 'hardwired',\n 'mechanical_harvesting',\n 'wireless',\n 'ethernet',\n ])\n .array(),\n})\n\nexport type BaseDeviceModelV1 = z.infer<typeof base_device_model_v1>\n\nexport const device_model_v1 = base_device_model_v1.and(\n device_model_category_specific_properties,\n)\n\nexport type DeviceModelV1 = z.infer<typeof device_model_v1>\n","import { z } from 'zod'\n\nexport const image_reference = z.object({\n url: z.string().url(),\n width: z.number(),\n height: z.number(),\n})\n\nexport type ImageReference = z.infer<typeof image_reference>\n","import { z } from 'zod'\n\nimport { image_reference } from './image-reference.js'\n\nexport const manufacturer = z.object({\n manufacturer_id: z.string().uuid(),\n display_name: z.string(),\n logo: image_reference.optional(),\n integration: z.enum(['stable', 'beta', 'planned', 'unsupported', 'inquire']),\n is_connect_webview_supported: z.boolean(),\n requires_seam_support_to_add_account: z.boolean(),\n})\n\nexport type Manufacturer = z.infer<typeof manufacturer>\n"]}
@@ -377,9 +377,27 @@ declare const base_device_model_v1: z.ZodObject<{
377
377
  width: number;
378
378
  height: number;
379
379
  }>>;
380
+ images: z.ZodArray<z.ZodObject<{
381
+ url: z.ZodString;
382
+ width: z.ZodNumber;
383
+ height: z.ZodNumber;
384
+ }, "strip", z.ZodTypeAny, {
385
+ url: string;
386
+ width: number;
387
+ height: number;
388
+ }, {
389
+ url: string;
390
+ width: number;
391
+ height: number;
392
+ }>, "many">;
380
393
  }, "strip", z.ZodTypeAny, {
381
394
  display_name: string;
382
395
  slug: string;
396
+ images: {
397
+ url: string;
398
+ width: number;
399
+ height: number;
400
+ }[];
383
401
  primary_color_hex?: string | undefined;
384
402
  manufacturer_sku?: string | undefined;
385
403
  front_image?: {
@@ -395,6 +413,11 @@ declare const base_device_model_v1: z.ZodObject<{
395
413
  }, {
396
414
  display_name: string;
397
415
  slug: string;
416
+ images: {
417
+ url: string;
418
+ width: number;
419
+ height: number;
420
+ }[];
398
421
  primary_color_hex?: string | undefined;
399
422
  manufacturer_sku?: string | undefined;
400
423
  front_image?: {
@@ -430,6 +453,11 @@ declare const base_device_model_v1: z.ZodObject<{
430
453
  aesthetic_variants: {
431
454
  display_name: string;
432
455
  slug: string;
456
+ images: {
457
+ url: string;
458
+ width: number;
459
+ height: number;
460
+ }[];
433
461
  primary_color_hex?: string | undefined;
434
462
  manufacturer_sku?: string | undefined;
435
463
  front_image?: {
@@ -466,6 +494,11 @@ declare const base_device_model_v1: z.ZodObject<{
466
494
  aesthetic_variants: {
467
495
  display_name: string;
468
496
  slug: string;
497
+ images: {
498
+ url: string;
499
+ width: number;
500
+ height: number;
501
+ }[];
469
502
  primary_color_hex?: string | undefined;
470
503
  manufacturer_sku?: string | undefined;
471
504
  front_image?: {
@@ -563,9 +596,27 @@ declare const device_model_v1: z.ZodIntersection<z.ZodObject<{
563
596
  width: number;
564
597
  height: number;
565
598
  }>>;
599
+ images: z.ZodArray<z.ZodObject<{
600
+ url: z.ZodString;
601
+ width: z.ZodNumber;
602
+ height: z.ZodNumber;
603
+ }, "strip", z.ZodTypeAny, {
604
+ url: string;
605
+ width: number;
606
+ height: number;
607
+ }, {
608
+ url: string;
609
+ width: number;
610
+ height: number;
611
+ }>, "many">;
566
612
  }, "strip", z.ZodTypeAny, {
567
613
  display_name: string;
568
614
  slug: string;
615
+ images: {
616
+ url: string;
617
+ width: number;
618
+ height: number;
619
+ }[];
569
620
  primary_color_hex?: string | undefined;
570
621
  manufacturer_sku?: string | undefined;
571
622
  front_image?: {
@@ -581,6 +632,11 @@ declare const device_model_v1: z.ZodIntersection<z.ZodObject<{
581
632
  }, {
582
633
  display_name: string;
583
634
  slug: string;
635
+ images: {
636
+ url: string;
637
+ width: number;
638
+ height: number;
639
+ }[];
584
640
  primary_color_hex?: string | undefined;
585
641
  manufacturer_sku?: string | undefined;
586
642
  front_image?: {
@@ -616,6 +672,11 @@ declare const device_model_v1: z.ZodIntersection<z.ZodObject<{
616
672
  aesthetic_variants: {
617
673
  display_name: string;
618
674
  slug: string;
675
+ images: {
676
+ url: string;
677
+ width: number;
678
+ height: number;
679
+ }[];
619
680
  primary_color_hex?: string | undefined;
620
681
  manufacturer_sku?: string | undefined;
621
682
  front_image?: {
@@ -652,6 +713,11 @@ declare const device_model_v1: z.ZodIntersection<z.ZodObject<{
652
713
  aesthetic_variants: {
653
714
  display_name: string;
654
715
  slug: string;
716
+ images: {
717
+ url: string;
718
+ width: number;
719
+ height: number;
720
+ }[];
655
721
  primary_color_hex?: string | undefined;
656
722
  manufacturer_sku?: string | undefined;
657
723
  front_image?: {
@@ -1005,6 +1071,11 @@ interface Routes {
1005
1071
  width: number;
1006
1072
  height: number;
1007
1073
  } | undefined;
1074
+ images: Array<{
1075
+ url: string;
1076
+ width: number;
1077
+ height: number;
1078
+ }>;
1008
1079
  }>;
1009
1080
  power_sources: Array<'battery' | 'hardwired' | 'mechanical_harvesting' | 'wireless' | 'ethernet'>;
1010
1081
  } & ({
@@ -1106,6 +1177,11 @@ interface Routes {
1106
1177
  width: number;
1107
1178
  height: number;
1108
1179
  } | undefined;
1180
+ images: Array<{
1181
+ url: string;
1182
+ width: number;
1183
+ height: number;
1184
+ }>;
1109
1185
  }>;
1110
1186
  power_sources: Array<'battery' | 'hardwired' | 'mechanical_harvesting' | 'wireless' | 'ethernet'>;
1111
1187
  } & ({
@@ -6204,6 +6204,130 @@ declare const _default: {
6204
6204
  'x-fern-sdk-return-value': string;
6205
6205
  };
6206
6206
  };
6207
+ '/client_sessions/get_or_create': {
6208
+ post: {
6209
+ operationId: string;
6210
+ requestBody: {
6211
+ content: {
6212
+ 'application/json': {
6213
+ schema: {
6214
+ properties: {
6215
+ connect_webview_ids: {
6216
+ items: {
6217
+ type: string;
6218
+ };
6219
+ type: string;
6220
+ };
6221
+ connected_account_ids: {
6222
+ items: {
6223
+ type: string;
6224
+ };
6225
+ type: string;
6226
+ };
6227
+ user_identifier_key: {
6228
+ minLength: number;
6229
+ type: string;
6230
+ };
6231
+ };
6232
+ type: string;
6233
+ };
6234
+ };
6235
+ };
6236
+ };
6237
+ responses: {
6238
+ 200: {
6239
+ content: {
6240
+ 'application/json': {
6241
+ schema: {
6242
+ properties: {
6243
+ client_session: {
6244
+ $ref: string;
6245
+ };
6246
+ ok: {
6247
+ type: string;
6248
+ };
6249
+ };
6250
+ required: string[];
6251
+ type: string;
6252
+ };
6253
+ };
6254
+ };
6255
+ description: string;
6256
+ };
6257
+ 400: {
6258
+ description: string;
6259
+ };
6260
+ 401: {
6261
+ description: string;
6262
+ };
6263
+ };
6264
+ summary: string;
6265
+ tags: string[];
6266
+ 'x-fern-sdk-group-name': string[];
6267
+ 'x-fern-sdk-method-name': string;
6268
+ 'x-fern-sdk-return-value': string;
6269
+ };
6270
+ put: {
6271
+ operationId: string;
6272
+ requestBody: {
6273
+ content: {
6274
+ 'application/json': {
6275
+ schema: {
6276
+ properties: {
6277
+ connect_webview_ids: {
6278
+ items: {
6279
+ type: string;
6280
+ };
6281
+ type: string;
6282
+ };
6283
+ connected_account_ids: {
6284
+ items: {
6285
+ type: string;
6286
+ };
6287
+ type: string;
6288
+ };
6289
+ user_identifier_key: {
6290
+ minLength: number;
6291
+ type: string;
6292
+ };
6293
+ };
6294
+ type: string;
6295
+ };
6296
+ };
6297
+ };
6298
+ };
6299
+ responses: {
6300
+ 200: {
6301
+ content: {
6302
+ 'application/json': {
6303
+ schema: {
6304
+ properties: {
6305
+ client_session: {
6306
+ $ref: string;
6307
+ };
6308
+ ok: {
6309
+ type: string;
6310
+ };
6311
+ };
6312
+ required: string[];
6313
+ type: string;
6314
+ };
6315
+ };
6316
+ };
6317
+ description: string;
6318
+ };
6319
+ 400: {
6320
+ description: string;
6321
+ };
6322
+ 401: {
6323
+ description: string;
6324
+ };
6325
+ };
6326
+ summary: string;
6327
+ tags: string[];
6328
+ 'x-fern-ignore': boolean;
6329
+ };
6330
+ };
6207
6331
  '/client_sessions/grant_access': {
6208
6332
  patch: {
6209
6333
  operationId: string;
@@ -4226,6 +4226,104 @@ export default {
4226
4226
  'x-fern-sdk-return-value': 'client_session',
4227
4227
  },
4228
4228
  },
4229
+ '/client_sessions/get_or_create': {
4230
+ post: {
4231
+ operationId: 'clientSessionsGetOrCreatePost',
4232
+ requestBody: {
4233
+ content: {
4234
+ 'application/json': {
4235
+ schema: {
4236
+ properties: {
4237
+ connect_webview_ids: {
4238
+ items: { type: 'string' },
4239
+ type: 'array',
4240
+ },
4241
+ connected_account_ids: {
4242
+ items: { type: 'string' },
4243
+ type: 'array',
4244
+ },
4245
+ user_identifier_key: { minLength: 1, type: 'string' },
4246
+ },
4247
+ type: 'object',
4248
+ },
4249
+ },
4250
+ },
4251
+ },
4252
+ responses: {
4253
+ 200: {
4254
+ content: {
4255
+ 'application/json': {
4256
+ schema: {
4257
+ properties: {
4258
+ client_session: {
4259
+ $ref: '#/components/schemas/client_session',
4260
+ },
4261
+ ok: { type: 'boolean' },
4262
+ },
4263
+ required: ['client_session', 'ok'],
4264
+ type: 'object',
4265
+ },
4266
+ },
4267
+ },
4268
+ description: 'OK',
4269
+ },
4270
+ 400: { description: 'Bad Request' },
4271
+ 401: { description: 'Unauthorized' },
4272
+ },
4273
+ summary: '/client_sessions/get_or_create',
4274
+ tags: ['/client_sessions'],
4275
+ 'x-fern-sdk-group-name': ['client_sessions'],
4276
+ 'x-fern-sdk-method-name': 'get_or_create',
4277
+ 'x-fern-sdk-return-value': 'client_session',
4278
+ },
4279
+ put: {
4280
+ operationId: 'clientSessionsGetOrCreatePut',
4281
+ requestBody: {
4282
+ content: {
4283
+ 'application/json': {
4284
+ schema: {
4285
+ properties: {
4286
+ connect_webview_ids: {
4287
+ items: { type: 'string' },
4288
+ type: 'array',
4289
+ },
4290
+ connected_account_ids: {
4291
+ items: { type: 'string' },
4292
+ type: 'array',
4293
+ },
4294
+ user_identifier_key: { minLength: 1, type: 'string' },
4295
+ },
4296
+ type: 'object',
4297
+ },
4298
+ },
4299
+ },
4300
+ },
4301
+ responses: {
4302
+ 200: {
4303
+ content: {
4304
+ 'application/json': {
4305
+ schema: {
4306
+ properties: {
4307
+ client_session: {
4308
+ $ref: '#/components/schemas/client_session',
4309
+ },
4310
+ ok: { type: 'boolean' },
4311
+ },
4312
+ required: ['client_session', 'ok'],
4313
+ type: 'object',
4314
+ },
4315
+ },
4316
+ },
4317
+ description: 'OK',
4318
+ },
4319
+ 400: { description: 'Bad Request' },
4320
+ 401: { description: 'Unauthorized' },
4321
+ },
4322
+ summary: '/client_sessions/get_or_create',
4323
+ tags: ['/client_sessions'],
4324
+ 'x-fern-ignore': true,
4325
+ },
4326
+ },
4229
4327
  '/client_sessions/grant_access': {
4230
4328
  patch: {
4231
4329
  operationId: 'clientSessionsGrantAccessPatch',