@seamapi/types 1.938.0 → 1.940.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.
@@ -13734,6 +13734,11 @@ const openapi = {
13734
13734
  type: 'boolean',
13735
13735
  'x-property-group-key': 'locks',
13736
13736
  },
13737
+ backup_access_code_pool_enabled: {
13738
+ description: 'Indicates whether the [backup access code pool](https://docs.seam.co/low-level-apis/smart-locks/access-codes/backup-access-codes) is currently enabled for the device. To disable it, set this to `false` using [/devices/update](https://docs.seam.co/api/devices/update).',
13739
+ type: 'boolean',
13740
+ 'x-property-group-key': 'access_codes',
13741
+ },
13737
13742
  code_constraints: {
13738
13743
  description: 'Constraints on access codes for the device. Seam represents each constraint as an object with a `constraint_type` property. Depending on the constraint type, there may also be additional properties. Note that some constraints are manufacturer- or device-specific.',
13739
13744
  items: {
@@ -55202,6 +55207,10 @@ const openapi = {
55202
55207
  'application/json': {
55203
55208
  schema: {
55204
55209
  properties: {
55210
+ backup_access_code_pool_enabled: {
55211
+ description: "Indicates whether the device's [backup access code pool](https://docs.seam.co/low-level-apis/smart-locks/access-codes/backup-access-codes) is enabled. Set to `false` to disable the pool: Seam stops refilling it and removes any backup codes that have not yet been pulled into active use.",
55212
+ type: 'boolean',
55213
+ },
55205
55214
  custom_metadata: {
55206
55215
  additionalProperties: {
55207
55216
  nullable: true,
@@ -55283,6 +55292,10 @@ const openapi = {
55283
55292
  'application/json': {
55284
55293
  schema: {
55285
55294
  properties: {
55295
+ backup_access_code_pool_enabled: {
55296
+ description: "Indicates whether the device's [backup access code pool](https://docs.seam.co/low-level-apis/smart-locks/access-codes/backup-access-codes) is enabled. Set to `false` to disable the pool: Seam stops refilling it and removes any backup codes that have not yet been pulled into active use.",
55297
+ type: 'boolean',
55298
+ },
55286
55299
  custom_metadata: {
55287
55300
  additionalProperties: {
55288
55301
  nullable: true,
@@ -60183,6 +60196,577 @@ const openapi = {
60183
60196
  'x-undocumented': 'Internal endpoint for Console',
60184
60197
  },
60185
60198
  },
60199
+ '/seam/console/v1/lynx_migration/get_property_migration_status': {
60200
+ get: {
60201
+ description: 'Returns the most recent Lynx cutover run for a property (space), including a\nrollup of its per-reservation child runs by status. Returns a null run when the\nproperty has never been migrated.',
60202
+ operationId: 'seamConsoleV1LynxMigrationGetPropertyMigrationStatusGet',
60203
+ parameters: [
60204
+ {
60205
+ in: 'query',
60206
+ name: 'space_id',
60207
+ required: true,
60208
+ schema: {
60209
+ description: 'ID of the space (property) to get the migration status for.',
60210
+ format: 'uuid',
60211
+ type: 'string',
60212
+ },
60213
+ },
60214
+ ],
60215
+ responses: {
60216
+ 200: {
60217
+ content: {
60218
+ 'application/json': {
60219
+ schema: {
60220
+ properties: {
60221
+ lynx_migration_property_run: {
60222
+ nullable: true,
60223
+ properties: {
60224
+ child_status_counts: {
60225
+ additionalProperties: {
60226
+ format: 'float',
60227
+ type: 'number',
60228
+ },
60229
+ type: 'object',
60230
+ },
60231
+ created_at: { type: 'string' },
60232
+ lynx_migration_property_run_id: {
60233
+ format: 'uuid',
60234
+ type: 'string',
60235
+ },
60236
+ space_id: { format: 'uuid', type: 'string' },
60237
+ status: { type: 'string' },
60238
+ updated_at: { type: 'string' },
60239
+ },
60240
+ required: [
60241
+ 'lynx_migration_property_run_id',
60242
+ 'space_id',
60243
+ 'status',
60244
+ 'created_at',
60245
+ 'updated_at',
60246
+ 'child_status_counts',
60247
+ ],
60248
+ type: 'object',
60249
+ },
60250
+ ok: { type: 'boolean' },
60251
+ },
60252
+ required: ['lynx_migration_property_run', 'ok'],
60253
+ type: 'object',
60254
+ },
60255
+ },
60256
+ },
60257
+ description: 'OK',
60258
+ },
60259
+ 400: { description: 'Bad Request' },
60260
+ 401: { description: 'Unauthorized' },
60261
+ },
60262
+ security: [
60263
+ { pat_with_workspace: [] },
60264
+ { console_session_with_workspace: [] },
60265
+ { api_key: [] },
60266
+ ],
60267
+ summary: '/seam/console/v1/lynx_migration/get_property_migration_status',
60268
+ tags: [],
60269
+ 'x-fern-sdk-group-name': ['seam', 'console', 'v1', 'lynx_migration'],
60270
+ 'x-fern-sdk-method-name': 'get_property_migration_status',
60271
+ 'x-fern-sdk-return-value': 'lynx_migration_property_run',
60272
+ 'x-response-key': 'lynx_migration_property_run',
60273
+ 'x-title': 'Get Lynx Migration Property Status',
60274
+ 'x-undocumented': 'Internal endpoint for Console',
60275
+ },
60276
+ post: {
60277
+ description: 'Returns the most recent Lynx cutover run for a property (space), including a\nrollup of its per-reservation child runs by status. Returns a null run when the\nproperty has never been migrated.',
60278
+ operationId: 'seamConsoleV1LynxMigrationGetPropertyMigrationStatusPost',
60279
+ requestBody: {
60280
+ content: {
60281
+ 'application/json': {
60282
+ schema: {
60283
+ properties: {
60284
+ space_id: {
60285
+ description: 'ID of the space (property) to get the migration status for.',
60286
+ format: 'uuid',
60287
+ type: 'string',
60288
+ },
60289
+ },
60290
+ required: ['space_id'],
60291
+ type: 'object',
60292
+ },
60293
+ },
60294
+ },
60295
+ },
60296
+ responses: {
60297
+ 200: {
60298
+ content: {
60299
+ 'application/json': {
60300
+ schema: {
60301
+ properties: {
60302
+ lynx_migration_property_run: {
60303
+ nullable: true,
60304
+ properties: {
60305
+ child_status_counts: {
60306
+ additionalProperties: {
60307
+ format: 'float',
60308
+ type: 'number',
60309
+ },
60310
+ type: 'object',
60311
+ },
60312
+ created_at: { type: 'string' },
60313
+ lynx_migration_property_run_id: {
60314
+ format: 'uuid',
60315
+ type: 'string',
60316
+ },
60317
+ space_id: { format: 'uuid', type: 'string' },
60318
+ status: { type: 'string' },
60319
+ updated_at: { type: 'string' },
60320
+ },
60321
+ required: [
60322
+ 'lynx_migration_property_run_id',
60323
+ 'space_id',
60324
+ 'status',
60325
+ 'created_at',
60326
+ 'updated_at',
60327
+ 'child_status_counts',
60328
+ ],
60329
+ type: 'object',
60330
+ },
60331
+ ok: { type: 'boolean' },
60332
+ },
60333
+ required: ['lynx_migration_property_run', 'ok'],
60334
+ type: 'object',
60335
+ },
60336
+ },
60337
+ },
60338
+ description: 'OK',
60339
+ },
60340
+ 400: { description: 'Bad Request' },
60341
+ 401: { description: 'Unauthorized' },
60342
+ },
60343
+ security: [
60344
+ { pat_with_workspace: [] },
60345
+ { console_session_with_workspace: [] },
60346
+ { api_key: [] },
60347
+ ],
60348
+ summary: '/seam/console/v1/lynx_migration/get_property_migration_status',
60349
+ tags: [],
60350
+ 'x-fern-sdk-group-name': ['seam', 'console', 'v1', 'lynx_migration'],
60351
+ 'x-fern-sdk-method-name': 'get_property_migration_status',
60352
+ 'x-fern-sdk-return-value': 'lynx_migration_property_run',
60353
+ 'x-response-key': 'lynx_migration_property_run',
60354
+ 'x-title': 'Get Lynx Migration Property Status',
60355
+ 'x-undocumented': 'Internal endpoint for Console',
60356
+ },
60357
+ },
60358
+ '/seam/console/v1/lynx_migration/get_reservation_migration_status': {
60359
+ get: {
60360
+ description: 'Returns the most recent per-reservation Lynx cutover run for an access grant.\nReturns a null run when the reservation has never been migrated. Keyed by\naccess_grant_id — a successful cutover deletes the access grant, but the run\nrecord outlives it, so status remains available after the migration completes.',
60361
+ operationId: 'seamConsoleV1LynxMigrationGetReservationMigrationStatusGet',
60362
+ parameters: [
60363
+ {
60364
+ in: 'query',
60365
+ name: 'access_grant_id',
60366
+ required: true,
60367
+ schema: {
60368
+ description: 'ID of the access grant (reservation) to get the migration status for.',
60369
+ format: 'uuid',
60370
+ type: 'string',
60371
+ },
60372
+ },
60373
+ ],
60374
+ responses: {
60375
+ 200: {
60376
+ content: {
60377
+ 'application/json': {
60378
+ schema: {
60379
+ properties: {
60380
+ lynx_migration_reservation_run: {
60381
+ nullable: true,
60382
+ properties: {
60383
+ access_grant_id: { format: 'uuid', type: 'string' },
60384
+ created_at: { type: 'string' },
60385
+ lynx_migration_run_id: {
60386
+ format: 'uuid',
60387
+ type: 'string',
60388
+ },
60389
+ status: { type: 'string' },
60390
+ updated_at: { type: 'string' },
60391
+ },
60392
+ required: [
60393
+ 'lynx_migration_run_id',
60394
+ 'access_grant_id',
60395
+ 'status',
60396
+ 'created_at',
60397
+ 'updated_at',
60398
+ ],
60399
+ type: 'object',
60400
+ },
60401
+ ok: { type: 'boolean' },
60402
+ },
60403
+ required: ['lynx_migration_reservation_run', 'ok'],
60404
+ type: 'object',
60405
+ },
60406
+ },
60407
+ },
60408
+ description: 'OK',
60409
+ },
60410
+ 400: { description: 'Bad Request' },
60411
+ 401: { description: 'Unauthorized' },
60412
+ },
60413
+ security: [
60414
+ { pat_with_workspace: [] },
60415
+ { console_session_with_workspace: [] },
60416
+ { api_key: [] },
60417
+ ],
60418
+ summary: '/seam/console/v1/lynx_migration/get_reservation_migration_status',
60419
+ tags: [],
60420
+ 'x-fern-sdk-group-name': ['seam', 'console', 'v1', 'lynx_migration'],
60421
+ 'x-fern-sdk-method-name': 'get_reservation_migration_status',
60422
+ 'x-fern-sdk-return-value': 'lynx_migration_reservation_run',
60423
+ 'x-response-key': 'lynx_migration_reservation_run',
60424
+ 'x-title': 'Get Lynx Migration Reservation Status',
60425
+ 'x-undocumented': 'Internal endpoint for Console',
60426
+ },
60427
+ post: {
60428
+ description: 'Returns the most recent per-reservation Lynx cutover run for an access grant.\nReturns a null run when the reservation has never been migrated. Keyed by\naccess_grant_id — a successful cutover deletes the access grant, but the run\nrecord outlives it, so status remains available after the migration completes.',
60429
+ operationId: 'seamConsoleV1LynxMigrationGetReservationMigrationStatusPost',
60430
+ requestBody: {
60431
+ content: {
60432
+ 'application/json': {
60433
+ schema: {
60434
+ properties: {
60435
+ access_grant_id: {
60436
+ description: 'ID of the access grant (reservation) to get the migration status for.',
60437
+ format: 'uuid',
60438
+ type: 'string',
60439
+ },
60440
+ },
60441
+ required: ['access_grant_id'],
60442
+ type: 'object',
60443
+ },
60444
+ },
60445
+ },
60446
+ },
60447
+ responses: {
60448
+ 200: {
60449
+ content: {
60450
+ 'application/json': {
60451
+ schema: {
60452
+ properties: {
60453
+ lynx_migration_reservation_run: {
60454
+ nullable: true,
60455
+ properties: {
60456
+ access_grant_id: { format: 'uuid', type: 'string' },
60457
+ created_at: { type: 'string' },
60458
+ lynx_migration_run_id: {
60459
+ format: 'uuid',
60460
+ type: 'string',
60461
+ },
60462
+ status: { type: 'string' },
60463
+ updated_at: { type: 'string' },
60464
+ },
60465
+ required: [
60466
+ 'lynx_migration_run_id',
60467
+ 'access_grant_id',
60468
+ 'status',
60469
+ 'created_at',
60470
+ 'updated_at',
60471
+ ],
60472
+ type: 'object',
60473
+ },
60474
+ ok: { type: 'boolean' },
60475
+ },
60476
+ required: ['lynx_migration_reservation_run', 'ok'],
60477
+ type: 'object',
60478
+ },
60479
+ },
60480
+ },
60481
+ description: 'OK',
60482
+ },
60483
+ 400: { description: 'Bad Request' },
60484
+ 401: { description: 'Unauthorized' },
60485
+ },
60486
+ security: [
60487
+ { pat_with_workspace: [] },
60488
+ { console_session_with_workspace: [] },
60489
+ { api_key: [] },
60490
+ ],
60491
+ summary: '/seam/console/v1/lynx_migration/get_reservation_migration_status',
60492
+ tags: [],
60493
+ 'x-fern-sdk-group-name': ['seam', 'console', 'v1', 'lynx_migration'],
60494
+ 'x-fern-sdk-method-name': 'get_reservation_migration_status',
60495
+ 'x-fern-sdk-return-value': 'lynx_migration_reservation_run',
60496
+ 'x-response-key': 'lynx_migration_reservation_run',
60497
+ 'x-title': 'Get Lynx Migration Reservation Status',
60498
+ 'x-undocumented': 'Internal endpoint for Console',
60499
+ },
60500
+ },
60501
+ '/seam/console/v1/lynx_migration/list_property_reservations': {
60502
+ get: {
60503
+ description: 'Lists the reservations in a property (space) and classifies each for a Lynx\ncutover: which are eligible to migrate to Seam-managed access, and which are\nskipped (with a reason). Read-only — does not start a migration.',
60504
+ operationId: 'seamConsoleV1LynxMigrationListPropertyReservationsGet',
60505
+ parameters: [
60506
+ {
60507
+ in: 'query',
60508
+ name: 'space_id',
60509
+ required: true,
60510
+ schema: {
60511
+ description: 'ID of the space (property) to plan a Lynx migration for.',
60512
+ format: 'uuid',
60513
+ type: 'string',
60514
+ },
60515
+ },
60516
+ ],
60517
+ responses: {
60518
+ 200: {
60519
+ content: {
60520
+ 'application/json': {
60521
+ schema: {
60522
+ properties: {
60523
+ lynx_migration_property_plan: {
60524
+ properties: {
60525
+ eligible: {
60526
+ items: {
60527
+ properties: {
60528
+ access_grant_id: {
60529
+ format: 'uuid',
60530
+ type: 'string',
60531
+ },
60532
+ guest_name: { nullable: true, type: 'string' },
60533
+ },
60534
+ required: ['access_grant_id', 'guest_name'],
60535
+ type: 'object',
60536
+ },
60537
+ type: 'array',
60538
+ },
60539
+ eligible_count: { format: 'float', type: 'number' },
60540
+ skipped: {
60541
+ items: {
60542
+ properties: {
60543
+ access_grant_id: {
60544
+ format: 'uuid',
60545
+ type: 'string',
60546
+ },
60547
+ guest_name: { nullable: true, type: 'string' },
60548
+ reason: { nullable: true, type: 'string' },
60549
+ },
60550
+ required: [
60551
+ 'access_grant_id',
60552
+ 'guest_name',
60553
+ 'reason',
60554
+ ],
60555
+ type: 'object',
60556
+ },
60557
+ type: 'array',
60558
+ },
60559
+ space_id: { format: 'uuid', type: 'string' },
60560
+ total: { format: 'float', type: 'number' },
60561
+ },
60562
+ required: [
60563
+ 'space_id',
60564
+ 'total',
60565
+ 'eligible_count',
60566
+ 'eligible',
60567
+ 'skipped',
60568
+ ],
60569
+ type: 'object',
60570
+ },
60571
+ ok: { type: 'boolean' },
60572
+ },
60573
+ required: ['lynx_migration_property_plan', 'ok'],
60574
+ type: 'object',
60575
+ },
60576
+ },
60577
+ },
60578
+ description: 'OK',
60579
+ },
60580
+ 400: { description: 'Bad Request' },
60581
+ 401: { description: 'Unauthorized' },
60582
+ },
60583
+ security: [
60584
+ { pat_with_workspace: [] },
60585
+ { console_session_with_workspace: [] },
60586
+ { api_key: [] },
60587
+ ],
60588
+ summary: '/seam/console/v1/lynx_migration/list_property_reservations',
60589
+ tags: [],
60590
+ 'x-fern-sdk-group-name': ['seam', 'console', 'v1', 'lynx_migration'],
60591
+ 'x-fern-sdk-method-name': 'list_property_reservations',
60592
+ 'x-fern-sdk-return-value': 'lynx_migration_property_plan',
60593
+ 'x-response-key': 'lynx_migration_property_plan',
60594
+ 'x-title': 'List Lynx Migration Property Reservations',
60595
+ 'x-undocumented': 'Internal endpoint for Console',
60596
+ },
60597
+ post: {
60598
+ description: 'Lists the reservations in a property (space) and classifies each for a Lynx\ncutover: which are eligible to migrate to Seam-managed access, and which are\nskipped (with a reason). Read-only — does not start a migration.',
60599
+ operationId: 'seamConsoleV1LynxMigrationListPropertyReservationsPost',
60600
+ requestBody: {
60601
+ content: {
60602
+ 'application/json': {
60603
+ schema: {
60604
+ properties: {
60605
+ space_id: {
60606
+ description: 'ID of the space (property) to plan a Lynx migration for.',
60607
+ format: 'uuid',
60608
+ type: 'string',
60609
+ },
60610
+ },
60611
+ required: ['space_id'],
60612
+ type: 'object',
60613
+ },
60614
+ },
60615
+ },
60616
+ },
60617
+ responses: {
60618
+ 200: {
60619
+ content: {
60620
+ 'application/json': {
60621
+ schema: {
60622
+ properties: {
60623
+ lynx_migration_property_plan: {
60624
+ properties: {
60625
+ eligible: {
60626
+ items: {
60627
+ properties: {
60628
+ access_grant_id: {
60629
+ format: 'uuid',
60630
+ type: 'string',
60631
+ },
60632
+ guest_name: { nullable: true, type: 'string' },
60633
+ },
60634
+ required: ['access_grant_id', 'guest_name'],
60635
+ type: 'object',
60636
+ },
60637
+ type: 'array',
60638
+ },
60639
+ eligible_count: { format: 'float', type: 'number' },
60640
+ skipped: {
60641
+ items: {
60642
+ properties: {
60643
+ access_grant_id: {
60644
+ format: 'uuid',
60645
+ type: 'string',
60646
+ },
60647
+ guest_name: { nullable: true, type: 'string' },
60648
+ reason: { nullable: true, type: 'string' },
60649
+ },
60650
+ required: [
60651
+ 'access_grant_id',
60652
+ 'guest_name',
60653
+ 'reason',
60654
+ ],
60655
+ type: 'object',
60656
+ },
60657
+ type: 'array',
60658
+ },
60659
+ space_id: { format: 'uuid', type: 'string' },
60660
+ total: { format: 'float', type: 'number' },
60661
+ },
60662
+ required: [
60663
+ 'space_id',
60664
+ 'total',
60665
+ 'eligible_count',
60666
+ 'eligible',
60667
+ 'skipped',
60668
+ ],
60669
+ type: 'object',
60670
+ },
60671
+ ok: { type: 'boolean' },
60672
+ },
60673
+ required: ['lynx_migration_property_plan', 'ok'],
60674
+ type: 'object',
60675
+ },
60676
+ },
60677
+ },
60678
+ description: 'OK',
60679
+ },
60680
+ 400: { description: 'Bad Request' },
60681
+ 401: { description: 'Unauthorized' },
60682
+ },
60683
+ security: [
60684
+ { pat_with_workspace: [] },
60685
+ { console_session_with_workspace: [] },
60686
+ { api_key: [] },
60687
+ ],
60688
+ summary: '/seam/console/v1/lynx_migration/list_property_reservations',
60689
+ tags: [],
60690
+ 'x-fern-sdk-group-name': ['seam', 'console', 'v1', 'lynx_migration'],
60691
+ 'x-fern-sdk-method-name': 'list_property_reservations',
60692
+ 'x-fern-sdk-return-value': 'lynx_migration_property_plan',
60693
+ 'x-response-key': 'lynx_migration_property_plan',
60694
+ 'x-title': 'List Lynx Migration Property Reservations',
60695
+ 'x-undocumented': 'Internal endpoint for Console',
60696
+ },
60697
+ },
60698
+ '/seam/console/v1/lynx_migration/migrate_property': {
60699
+ post: {
60700
+ description: 'Starts a Lynx cutover for a property (space): schedules a background task that\nplans the eligible reservations and migrates them to Seam-managed access a\nbounded number at a time. Idempotent — if a migration is already running for\nthe property, returns that run with `already_running: true`. Poll\n`/seam/console/v1/lynx_migration/get_property_migration_status` for progress.',
60701
+ operationId: 'seamConsoleV1LynxMigrationMigratePropertyPost',
60702
+ requestBody: {
60703
+ content: {
60704
+ 'application/json': {
60705
+ schema: {
60706
+ properties: {
60707
+ space_id: {
60708
+ description: 'ID of the space (property) to migrate.',
60709
+ format: 'uuid',
60710
+ type: 'string',
60711
+ },
60712
+ },
60713
+ required: ['space_id'],
60714
+ type: 'object',
60715
+ },
60716
+ },
60717
+ },
60718
+ },
60719
+ responses: {
60720
+ 200: {
60721
+ content: {
60722
+ 'application/json': {
60723
+ schema: {
60724
+ properties: {
60725
+ lynx_migration_property_run: {
60726
+ properties: {
60727
+ already_running: { type: 'boolean' },
60728
+ lynx_migration_property_run_id: {
60729
+ format: 'uuid',
60730
+ type: 'string',
60731
+ },
60732
+ space_id: { format: 'uuid', type: 'string' },
60733
+ status: { type: 'string' },
60734
+ },
60735
+ required: [
60736
+ 'lynx_migration_property_run_id',
60737
+ 'space_id',
60738
+ 'status',
60739
+ 'already_running',
60740
+ ],
60741
+ type: 'object',
60742
+ },
60743
+ ok: { type: 'boolean' },
60744
+ },
60745
+ required: ['lynx_migration_property_run', 'ok'],
60746
+ type: 'object',
60747
+ },
60748
+ },
60749
+ },
60750
+ description: 'OK',
60751
+ },
60752
+ 400: { description: 'Bad Request' },
60753
+ 401: { description: 'Unauthorized' },
60754
+ },
60755
+ security: [
60756
+ { pat_with_workspace: [] },
60757
+ { console_session_with_workspace: [] },
60758
+ { api_key: [] },
60759
+ ],
60760
+ summary: '/seam/console/v1/lynx_migration/migrate_property',
60761
+ tags: [],
60762
+ 'x-fern-sdk-group-name': ['seam', 'console', 'v1', 'lynx_migration'],
60763
+ 'x-fern-sdk-method-name': 'migrate_property',
60764
+ 'x-fern-sdk-return-value': 'lynx_migration_property_run',
60765
+ 'x-response-key': 'lynx_migration_property_run',
60766
+ 'x-title': 'Migrate a Property to Seam-Managed Access',
60767
+ 'x-undocumented': 'Internal endpoint for Console',
60768
+ },
60769
+ },
60186
60770
  '/seam/console/v1/sites/create': {
60187
60771
  post: {
60188
60772
  description: 'Creates a new site, a top-level space in the property hierarchy.',