@seamapi/types 1.770.0 → 1.772.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.
package/dist/index.cjs CHANGED
@@ -4355,8 +4355,8 @@ var encoder_not_online_error = zod.z.object({
4355
4355
  "Detailed description of the error. Provides insights into the issue and potentially how to rectify it."
4356
4356
  )
4357
4357
  }).describe("Error to indicate that the encoder is not online.");
4358
- var encoder_timeout_error = zod.z.object({
4359
- type: zod.z.literal("encoder_timeout_error").describe(
4358
+ var encoder_communication_timeout = zod.z.object({
4359
+ type: zod.z.literal("encoder_communication_timeout").describe(
4360
4360
  "Error type to indicate that communication with the encoder timed out."
4361
4361
  ),
4362
4362
  message: zod.z.string().describe(
@@ -4373,14 +4373,25 @@ var bridge_disconnected_error = zod.z.object({
4373
4373
  }).describe(
4374
4374
  "Error to indicate that the Seam Bridge is disconnected or cannot reach the access control system."
4375
4375
  );
4376
+ var encoding_interrupted_error = zod.z.object({
4377
+ type: zod.z.literal("encoding_interrupted").describe(
4378
+ "Error type to indicate that encoding was interrupted, for example, if the card was removed from the encoder before writing was complete."
4379
+ ),
4380
+ message: zod.z.string().describe(
4381
+ "Detailed description of the error. Provides insights into the issue and potentially how to rectify it."
4382
+ )
4383
+ }).describe(
4384
+ "Error to indicate that encoding was interrupted, for example, if the card was removed from the encoder before writing was complete."
4385
+ );
4376
4386
  var error4 = zod.z.union([
4377
4387
  ...common_action_attempt_errors,
4378
4388
  no_credential_on_encoder_error,
4379
4389
  incompatible_card_format_error,
4380
4390
  credential_cannot_be_reissued,
4381
4391
  encoder_not_online_error,
4382
- encoder_timeout_error,
4383
- bridge_disconnected_error
4392
+ encoder_communication_timeout,
4393
+ bridge_disconnected_error,
4394
+ encoding_interrupted_error
4384
4395
  ]);
4385
4396
  var result4 = acs_credential.or(unmanaged_acs_credential).describe(
4386
4397
  "Result of an encoding attempt. If the attempt was successful, includes the credential data that was encoded onto the card."
@@ -4487,8 +4498,8 @@ var encoder_not_online_error2 = zod.z.object({
4487
4498
  "Detailed description of the error. Provides insights into the issue and potentially how to rectify it."
4488
4499
  )
4489
4500
  }).describe("Error to indicate that the encoder is not online.");
4490
- var encoder_timeout_error2 = zod.z.object({
4491
- type: zod.z.literal("encoder_timeout_error").describe(
4501
+ var encoder_communication_timeout2 = zod.z.object({
4502
+ type: zod.z.literal("encoder_communication_timeout").describe(
4492
4503
  "Error type to indicate that communication with the encoder timed out."
4493
4504
  ),
4494
4505
  message: zod.z.string().describe(
@@ -4509,7 +4520,7 @@ var error8 = zod.z.union([
4509
4520
  ...common_action_attempt_errors,
4510
4521
  no_credential_on_encoder_error2,
4511
4522
  encoder_not_online_error2,
4512
- encoder_timeout_error2,
4523
+ encoder_communication_timeout2,
4513
4524
  bridge_disconnected_error2
4514
4525
  ]);
4515
4526
  var warning = zod.z.object({
@@ -12715,7 +12726,7 @@ var openapi_default = {
12715
12726
  },
12716
12727
  type: {
12717
12728
  description: "Error type to indicate that communication with the encoder timed out.",
12718
- enum: ["encoder_timeout_error"],
12729
+ enum: ["encoder_communication_timeout"],
12719
12730
  type: "string"
12720
12731
  }
12721
12732
  },
@@ -13719,7 +13730,7 @@ var openapi_default = {
13719
13730
  },
13720
13731
  type: {
13721
13732
  description: "Error type to indicate that communication with the encoder timed out.",
13722
- enum: ["encoder_timeout_error"],
13733
+ enum: ["encoder_communication_timeout"],
13723
13734
  type: "string"
13724
13735
  }
13725
13736
  },
@@ -13741,6 +13752,22 @@ var openapi_default = {
13741
13752
  },
13742
13753
  required: ["type", "message"],
13743
13754
  type: "object"
13755
+ },
13756
+ {
13757
+ description: "Error to indicate that encoding was interrupted, for example, if the card was removed from the encoder before writing was complete.",
13758
+ properties: {
13759
+ message: {
13760
+ description: "Detailed description of the error. Provides insights into the issue and potentially how to rectify it.",
13761
+ type: "string"
13762
+ },
13763
+ type: {
13764
+ description: "Error type to indicate that encoding was interrupted, for example, if the card was removed from the encoder before writing was complete.",
13765
+ enum: ["encoding_interrupted"],
13766
+ type: "string"
13767
+ }
13768
+ },
13769
+ required: ["type", "message"],
13770
+ type: "object"
13744
13771
  }
13745
13772
  ]
13746
13773
  },
@@ -46205,7 +46232,10 @@ var openapi_default = {
46205
46232
  error_code: {
46206
46233
  default: "no_credential_on_encoder",
46207
46234
  description: "Code of the error to simulate.",
46208
- enum: ["no_credential_on_encoder"],
46235
+ enum: [
46236
+ "no_credential_on_encoder",
46237
+ "encoding_interrupted"
46238
+ ],
46209
46239
  type: "string"
46210
46240
  }
46211
46241
  },
@@ -68333,6 +68363,698 @@ var openapi_default = {
68333
68363
  "x-undocumented": "Internal endpoint for customer portals."
68334
68364
  }
68335
68365
  },
68366
+ "/seam/customer/v1/portals/update": {
68367
+ patch: {
68368
+ description: "Updates the configuration for a customer portal.",
68369
+ operationId: "seamCustomerV1PortalsUpdatePatch",
68370
+ requestBody: {
68371
+ content: {
68372
+ "application/json": {
68373
+ schema: {
68374
+ properties: {
68375
+ customer_portal_id: {
68376
+ description: "ID of the customer portal to update.",
68377
+ format: "uuid",
68378
+ type: "string"
68379
+ },
68380
+ portal_configuration: {
68381
+ description: "Partial portal configuration to merge with the existing configuration.",
68382
+ properties: {
68383
+ customer_resources_filters: {
68384
+ description: "Filter configuration for resources based on their custom_metadata. Each filter specifies a field, operation, and value to match against resource custom_metadata.",
68385
+ items: {
68386
+ properties: {
68387
+ field: {
68388
+ description: "The custom_metadata field name to filter on.",
68389
+ pattern: "^[a-zA-Z_]\\w*$",
68390
+ type: "string"
68391
+ },
68392
+ operation: {
68393
+ description: "The comparison operation. Currently only '=' is supported.",
68394
+ enum: ["="],
68395
+ type: "string"
68396
+ },
68397
+ value: {
68398
+ description: "The value to compare against.",
68399
+ oneOf: [{ type: "string" }, { type: "boolean" }]
68400
+ }
68401
+ },
68402
+ required: ["field", "operation", "value"],
68403
+ type: "object"
68404
+ },
68405
+ type: "array"
68406
+ },
68407
+ customization_profile_id: {
68408
+ description: "The ID of the customization profile to use for the portal.",
68409
+ format: "uuid",
68410
+ type: "string"
68411
+ },
68412
+ deep_link: {
68413
+ description: "Deep link target resource for initial redirect. When set, the portal will navigate directly to the specified resource.",
68414
+ properties: {
68415
+ resource_key: { type: "string" },
68416
+ resource_type: {
68417
+ enum: ["reservation", "space"],
68418
+ type: "string"
68419
+ }
68420
+ },
68421
+ required: ["resource_type", "resource_key"],
68422
+ type: "object",
68423
+ "x-undocumented": "Internal endpoint for customer portals."
68424
+ },
68425
+ exclude_locale_picker: {
68426
+ default: false,
68427
+ description: "Whether to exclude the option to select a locale within the portal UI.",
68428
+ type: "boolean"
68429
+ },
68430
+ features: {
68431
+ default: {},
68432
+ properties: {
68433
+ configure: {
68434
+ default: {},
68435
+ description: "Configuration for the configure feature.",
68436
+ properties: {
68437
+ allow_access_automation_rule_customization: {
68438
+ default: false,
68439
+ description: "Indicates whether the customer can customize the access automation rules for their properties.",
68440
+ type: "boolean"
68441
+ },
68442
+ allow_climate_automation_rule_customization: {
68443
+ default: false,
68444
+ description: "Indicates whether the customer can customize the climate automation rules for their properties.",
68445
+ type: "boolean"
68446
+ },
68447
+ allow_instant_key_customization: {
68448
+ default: false,
68449
+ description: "Indicates whether the customer can customize the Instant Key profile for their properties.",
68450
+ type: "boolean"
68451
+ },
68452
+ exclude: {
68453
+ default: false,
68454
+ description: "Whether to exclude this feature from the portal.",
68455
+ type: "boolean"
68456
+ }
68457
+ },
68458
+ type: "object"
68459
+ },
68460
+ connect: {
68461
+ default: {},
68462
+ description: "Configuration for the connect accounts feature.",
68463
+ properties: {
68464
+ accepted_providers: {
68465
+ description: "List of provider keys to allow for the connect feature. These providers will be shown when the customer tries to connect an account.",
68466
+ items: { type: "string" },
68467
+ type: "array"
68468
+ },
68469
+ exclude: {
68470
+ default: false,
68471
+ description: "Whether to exclude this feature from the portal.",
68472
+ type: "boolean"
68473
+ },
68474
+ excluded_providers: {
68475
+ description: "List of provider keys to exclude from the connect feature. These providers will not be shown when the customer tries to connect an account.",
68476
+ items: { type: "string" },
68477
+ type: "array"
68478
+ }
68479
+ },
68480
+ type: "object"
68481
+ },
68482
+ manage: {
68483
+ default: {},
68484
+ description: "Configuration for the manage feature.",
68485
+ properties: {
68486
+ events: {
68487
+ description: "Configuration for event type filtering in the manage feature.",
68488
+ properties: {
68489
+ allowed_events: {
68490
+ description: "List of event types to show in the events filter. When set, only these event types will be available. Leave empty to show all events.",
68491
+ items: { type: "string" },
68492
+ type: "array"
68493
+ },
68494
+ default_events: {
68495
+ description: "List of event types that are pre-selected in the events filter when the user first loads the events tab.",
68496
+ items: { type: "string" },
68497
+ type: "array"
68498
+ }
68499
+ },
68500
+ type: "object"
68501
+ },
68502
+ exclude: {
68503
+ default: false,
68504
+ description: "Whether to exclude this feature from the portal.",
68505
+ type: "boolean"
68506
+ },
68507
+ exclude_reservation_management: {
68508
+ default: false,
68509
+ description: "Indicates whether the customer can manage reservations for their properties.",
68510
+ type: "boolean"
68511
+ },
68512
+ exclude_reservation_technical_details: {
68513
+ default: false,
68514
+ description: "Indicates whether to exclude technical details from reservation views.",
68515
+ type: "boolean"
68516
+ },
68517
+ exclude_staff_management: {
68518
+ default: false,
68519
+ description: "Indicates whether the customer can manage staff for their properties.",
68520
+ type: "boolean"
68521
+ }
68522
+ },
68523
+ type: "object"
68524
+ },
68525
+ manage_devices: {
68526
+ default: {},
68527
+ description: "Configuration for the manage devices feature.\n---\ndeprecated: Use `manage` instead.\n---",
68528
+ properties: {
68529
+ exclude: {
68530
+ default: false,
68531
+ description: "Whether to exclude this feature from the portal.",
68532
+ type: "boolean"
68533
+ }
68534
+ },
68535
+ type: "object"
68536
+ },
68537
+ organize: {
68538
+ default: {},
68539
+ description: "Configuration for the organize feature.",
68540
+ properties: {
68541
+ exclude: {
68542
+ default: false,
68543
+ description: "Whether to exclude this feature from the portal.",
68544
+ type: "boolean"
68545
+ }
68546
+ },
68547
+ type: "object"
68548
+ }
68549
+ },
68550
+ type: "object"
68551
+ },
68552
+ is_embedded: {
68553
+ default: false,
68554
+ description: "Whether the portal is embedded in another application.",
68555
+ type: "boolean"
68556
+ },
68557
+ landing_page: {
68558
+ description: "Configuration for the landing page when the portal loads.",
68559
+ properties: {
68560
+ manage: {
68561
+ oneOf: [
68562
+ {
68563
+ oneOf: [
68564
+ {
68565
+ properties: {
68566
+ space_key: { type: "string" }
68567
+ },
68568
+ required: ["space_key"],
68569
+ type: "object"
68570
+ },
68571
+ {
68572
+ properties: {
68573
+ property_key: { type: "string" }
68574
+ },
68575
+ required: ["property_key"],
68576
+ type: "object"
68577
+ },
68578
+ {
68579
+ properties: {
68580
+ room_key: { type: "string" }
68581
+ },
68582
+ required: ["room_key"],
68583
+ type: "object"
68584
+ },
68585
+ {
68586
+ properties: {
68587
+ common_area_key: { type: "string" }
68588
+ },
68589
+ required: ["common_area_key"],
68590
+ type: "object"
68591
+ },
68592
+ {
68593
+ properties: {
68594
+ unit_key: { type: "string" }
68595
+ },
68596
+ required: ["unit_key"],
68597
+ type: "object"
68598
+ },
68599
+ {
68600
+ properties: {
68601
+ facility_key: { type: "string" }
68602
+ },
68603
+ required: ["facility_key"],
68604
+ type: "object"
68605
+ },
68606
+ {
68607
+ properties: {
68608
+ building_key: { type: "string" }
68609
+ },
68610
+ required: ["building_key"],
68611
+ type: "object"
68612
+ },
68613
+ {
68614
+ properties: {
68615
+ listing_key: { type: "string" }
68616
+ },
68617
+ required: ["listing_key"],
68618
+ type: "object"
68619
+ },
68620
+ {
68621
+ properties: {
68622
+ property_listing_key: { type: "string" }
68623
+ },
68624
+ required: ["property_listing_key"],
68625
+ type: "object"
68626
+ },
68627
+ {
68628
+ properties: {
68629
+ site_key: { type: "string" }
68630
+ },
68631
+ required: ["site_key"],
68632
+ type: "object"
68633
+ }
68634
+ ]
68635
+ },
68636
+ {
68637
+ oneOf: [
68638
+ {
68639
+ properties: {
68640
+ reservation_key: { type: "string" }
68641
+ },
68642
+ required: ["reservation_key"],
68643
+ type: "object"
68644
+ },
68645
+ {
68646
+ properties: {
68647
+ booking_key: { type: "string" }
68648
+ },
68649
+ required: ["booking_key"],
68650
+ type: "object"
68651
+ },
68652
+ {
68653
+ properties: {
68654
+ access_grant_key: { type: "string" }
68655
+ },
68656
+ required: ["access_grant_key"],
68657
+ type: "object"
68658
+ }
68659
+ ]
68660
+ }
68661
+ ]
68662
+ }
68663
+ },
68664
+ type: "object"
68665
+ },
68666
+ locale: {
68667
+ description: "The locale to use for the portal.",
68668
+ enum: ["en-US", "pt-PT", "fr-FR", "it-IT", "es-ES"],
68669
+ type: "string"
68670
+ },
68671
+ navigation_mode: {
68672
+ default: "full",
68673
+ description: "Navigation mode for the portal. 'restricted' tells frontend to hide navigation UI, typically used for embedded deep links.",
68674
+ enum: ["full", "restricted"],
68675
+ type: "string"
68676
+ }
68677
+ },
68678
+ type: "object"
68679
+ }
68680
+ },
68681
+ required: ["customer_portal_id", "portal_configuration"],
68682
+ type: "object"
68683
+ }
68684
+ }
68685
+ }
68686
+ },
68687
+ responses: {
68688
+ 200: {
68689
+ content: {
68690
+ "application/json": {
68691
+ schema: {
68692
+ properties: { ok: { type: "boolean" } },
68693
+ required: ["ok"],
68694
+ type: "object"
68695
+ }
68696
+ }
68697
+ },
68698
+ description: "OK"
68699
+ },
68700
+ 400: { description: "Bad Request" },
68701
+ 401: { description: "Unauthorized" }
68702
+ },
68703
+ security: [{ console_session_with_workspace: [] }, { api_key: [] }],
68704
+ summary: "/seam/customer/v1/portals/update",
68705
+ tags: [],
68706
+ "x-fern-sdk-group-name": ["seam", "customer", "v1", "portals"],
68707
+ "x-fern-sdk-method-name": "update",
68708
+ "x-response-key": null,
68709
+ "x-title": "Update Customer Portal Configuration",
68710
+ "x-undocumented": "Internal endpoint for customer portals."
68711
+ },
68712
+ post: {
68713
+ description: "Updates the configuration for a customer portal.",
68714
+ operationId: "seamCustomerV1PortalsUpdatePost",
68715
+ requestBody: {
68716
+ content: {
68717
+ "application/json": {
68718
+ schema: {
68719
+ properties: {
68720
+ customer_portal_id: {
68721
+ description: "ID of the customer portal to update.",
68722
+ format: "uuid",
68723
+ type: "string"
68724
+ },
68725
+ portal_configuration: {
68726
+ description: "Partial portal configuration to merge with the existing configuration.",
68727
+ properties: {
68728
+ customer_resources_filters: {
68729
+ description: "Filter configuration for resources based on their custom_metadata. Each filter specifies a field, operation, and value to match against resource custom_metadata.",
68730
+ items: {
68731
+ properties: {
68732
+ field: {
68733
+ description: "The custom_metadata field name to filter on.",
68734
+ pattern: "^[a-zA-Z_]\\w*$",
68735
+ type: "string"
68736
+ },
68737
+ operation: {
68738
+ description: "The comparison operation. Currently only '=' is supported.",
68739
+ enum: ["="],
68740
+ type: "string"
68741
+ },
68742
+ value: {
68743
+ description: "The value to compare against.",
68744
+ oneOf: [{ type: "string" }, { type: "boolean" }]
68745
+ }
68746
+ },
68747
+ required: ["field", "operation", "value"],
68748
+ type: "object"
68749
+ },
68750
+ type: "array"
68751
+ },
68752
+ customization_profile_id: {
68753
+ description: "The ID of the customization profile to use for the portal.",
68754
+ format: "uuid",
68755
+ type: "string"
68756
+ },
68757
+ deep_link: {
68758
+ description: "Deep link target resource for initial redirect. When set, the portal will navigate directly to the specified resource.",
68759
+ properties: {
68760
+ resource_key: { type: "string" },
68761
+ resource_type: {
68762
+ enum: ["reservation", "space"],
68763
+ type: "string"
68764
+ }
68765
+ },
68766
+ required: ["resource_type", "resource_key"],
68767
+ type: "object",
68768
+ "x-undocumented": "Internal endpoint for customer portals."
68769
+ },
68770
+ exclude_locale_picker: {
68771
+ default: false,
68772
+ description: "Whether to exclude the option to select a locale within the portal UI.",
68773
+ type: "boolean"
68774
+ },
68775
+ features: {
68776
+ default: {},
68777
+ properties: {
68778
+ configure: {
68779
+ default: {},
68780
+ description: "Configuration for the configure feature.",
68781
+ properties: {
68782
+ allow_access_automation_rule_customization: {
68783
+ default: false,
68784
+ description: "Indicates whether the customer can customize the access automation rules for their properties.",
68785
+ type: "boolean"
68786
+ },
68787
+ allow_climate_automation_rule_customization: {
68788
+ default: false,
68789
+ description: "Indicates whether the customer can customize the climate automation rules for their properties.",
68790
+ type: "boolean"
68791
+ },
68792
+ allow_instant_key_customization: {
68793
+ default: false,
68794
+ description: "Indicates whether the customer can customize the Instant Key profile for their properties.",
68795
+ type: "boolean"
68796
+ },
68797
+ exclude: {
68798
+ default: false,
68799
+ description: "Whether to exclude this feature from the portal.",
68800
+ type: "boolean"
68801
+ }
68802
+ },
68803
+ type: "object"
68804
+ },
68805
+ connect: {
68806
+ default: {},
68807
+ description: "Configuration for the connect accounts feature.",
68808
+ properties: {
68809
+ accepted_providers: {
68810
+ description: "List of provider keys to allow for the connect feature. These providers will be shown when the customer tries to connect an account.",
68811
+ items: { type: "string" },
68812
+ type: "array"
68813
+ },
68814
+ exclude: {
68815
+ default: false,
68816
+ description: "Whether to exclude this feature from the portal.",
68817
+ type: "boolean"
68818
+ },
68819
+ excluded_providers: {
68820
+ description: "List of provider keys to exclude from the connect feature. These providers will not be shown when the customer tries to connect an account.",
68821
+ items: { type: "string" },
68822
+ type: "array"
68823
+ }
68824
+ },
68825
+ type: "object"
68826
+ },
68827
+ manage: {
68828
+ default: {},
68829
+ description: "Configuration for the manage feature.",
68830
+ properties: {
68831
+ events: {
68832
+ description: "Configuration for event type filtering in the manage feature.",
68833
+ properties: {
68834
+ allowed_events: {
68835
+ description: "List of event types to show in the events filter. When set, only these event types will be available. Leave empty to show all events.",
68836
+ items: { type: "string" },
68837
+ type: "array"
68838
+ },
68839
+ default_events: {
68840
+ description: "List of event types that are pre-selected in the events filter when the user first loads the events tab.",
68841
+ items: { type: "string" },
68842
+ type: "array"
68843
+ }
68844
+ },
68845
+ type: "object"
68846
+ },
68847
+ exclude: {
68848
+ default: false,
68849
+ description: "Whether to exclude this feature from the portal.",
68850
+ type: "boolean"
68851
+ },
68852
+ exclude_reservation_management: {
68853
+ default: false,
68854
+ description: "Indicates whether the customer can manage reservations for their properties.",
68855
+ type: "boolean"
68856
+ },
68857
+ exclude_reservation_technical_details: {
68858
+ default: false,
68859
+ description: "Indicates whether to exclude technical details from reservation views.",
68860
+ type: "boolean"
68861
+ },
68862
+ exclude_staff_management: {
68863
+ default: false,
68864
+ description: "Indicates whether the customer can manage staff for their properties.",
68865
+ type: "boolean"
68866
+ }
68867
+ },
68868
+ type: "object"
68869
+ },
68870
+ manage_devices: {
68871
+ default: {},
68872
+ description: "Configuration for the manage devices feature.\n---\ndeprecated: Use `manage` instead.\n---",
68873
+ properties: {
68874
+ exclude: {
68875
+ default: false,
68876
+ description: "Whether to exclude this feature from the portal.",
68877
+ type: "boolean"
68878
+ }
68879
+ },
68880
+ type: "object"
68881
+ },
68882
+ organize: {
68883
+ default: {},
68884
+ description: "Configuration for the organize feature.",
68885
+ properties: {
68886
+ exclude: {
68887
+ default: false,
68888
+ description: "Whether to exclude this feature from the portal.",
68889
+ type: "boolean"
68890
+ }
68891
+ },
68892
+ type: "object"
68893
+ }
68894
+ },
68895
+ type: "object"
68896
+ },
68897
+ is_embedded: {
68898
+ default: false,
68899
+ description: "Whether the portal is embedded in another application.",
68900
+ type: "boolean"
68901
+ },
68902
+ landing_page: {
68903
+ description: "Configuration for the landing page when the portal loads.",
68904
+ properties: {
68905
+ manage: {
68906
+ oneOf: [
68907
+ {
68908
+ oneOf: [
68909
+ {
68910
+ properties: {
68911
+ space_key: { type: "string" }
68912
+ },
68913
+ required: ["space_key"],
68914
+ type: "object"
68915
+ },
68916
+ {
68917
+ properties: {
68918
+ property_key: { type: "string" }
68919
+ },
68920
+ required: ["property_key"],
68921
+ type: "object"
68922
+ },
68923
+ {
68924
+ properties: {
68925
+ room_key: { type: "string" }
68926
+ },
68927
+ required: ["room_key"],
68928
+ type: "object"
68929
+ },
68930
+ {
68931
+ properties: {
68932
+ common_area_key: { type: "string" }
68933
+ },
68934
+ required: ["common_area_key"],
68935
+ type: "object"
68936
+ },
68937
+ {
68938
+ properties: {
68939
+ unit_key: { type: "string" }
68940
+ },
68941
+ required: ["unit_key"],
68942
+ type: "object"
68943
+ },
68944
+ {
68945
+ properties: {
68946
+ facility_key: { type: "string" }
68947
+ },
68948
+ required: ["facility_key"],
68949
+ type: "object"
68950
+ },
68951
+ {
68952
+ properties: {
68953
+ building_key: { type: "string" }
68954
+ },
68955
+ required: ["building_key"],
68956
+ type: "object"
68957
+ },
68958
+ {
68959
+ properties: {
68960
+ listing_key: { type: "string" }
68961
+ },
68962
+ required: ["listing_key"],
68963
+ type: "object"
68964
+ },
68965
+ {
68966
+ properties: {
68967
+ property_listing_key: { type: "string" }
68968
+ },
68969
+ required: ["property_listing_key"],
68970
+ type: "object"
68971
+ },
68972
+ {
68973
+ properties: {
68974
+ site_key: { type: "string" }
68975
+ },
68976
+ required: ["site_key"],
68977
+ type: "object"
68978
+ }
68979
+ ]
68980
+ },
68981
+ {
68982
+ oneOf: [
68983
+ {
68984
+ properties: {
68985
+ reservation_key: { type: "string" }
68986
+ },
68987
+ required: ["reservation_key"],
68988
+ type: "object"
68989
+ },
68990
+ {
68991
+ properties: {
68992
+ booking_key: { type: "string" }
68993
+ },
68994
+ required: ["booking_key"],
68995
+ type: "object"
68996
+ },
68997
+ {
68998
+ properties: {
68999
+ access_grant_key: { type: "string" }
69000
+ },
69001
+ required: ["access_grant_key"],
69002
+ type: "object"
69003
+ }
69004
+ ]
69005
+ }
69006
+ ]
69007
+ }
69008
+ },
69009
+ type: "object"
69010
+ },
69011
+ locale: {
69012
+ description: "The locale to use for the portal.",
69013
+ enum: ["en-US", "pt-PT", "fr-FR", "it-IT", "es-ES"],
69014
+ type: "string"
69015
+ },
69016
+ navigation_mode: {
69017
+ default: "full",
69018
+ description: "Navigation mode for the portal. 'restricted' tells frontend to hide navigation UI, typically used for embedded deep links.",
69019
+ enum: ["full", "restricted"],
69020
+ type: "string"
69021
+ }
69022
+ },
69023
+ type: "object"
69024
+ }
69025
+ },
69026
+ required: ["customer_portal_id", "portal_configuration"],
69027
+ type: "object"
69028
+ }
69029
+ }
69030
+ }
69031
+ },
69032
+ responses: {
69033
+ 200: {
69034
+ content: {
69035
+ "application/json": {
69036
+ schema: {
69037
+ properties: { ok: { type: "boolean" } },
69038
+ required: ["ok"],
69039
+ type: "object"
69040
+ }
69041
+ }
69042
+ },
69043
+ description: "OK"
69044
+ },
69045
+ 400: { description: "Bad Request" },
69046
+ 401: { description: "Unauthorized" }
69047
+ },
69048
+ security: [{ console_session_with_workspace: [] }, { api_key: [] }],
69049
+ summary: "/seam/customer/v1/portals/update",
69050
+ tags: [],
69051
+ "x-fern-sdk-group-name": ["seam", "customer", "v1", "portals"],
69052
+ "x-fern-sdk-method-name": "update",
69053
+ "x-response-key": null,
69054
+ "x-title": "Update Customer Portal Configuration",
69055
+ "x-undocumented": "Internal endpoint for customer portals."
69056
+ }
69057
+ },
68336
69058
  "/seam/customer/v1/reservations/get": {
68337
69059
  get: {
68338
69060
  description: "Returns a single reservation for a specific customer by reservation ID.",