@thinkai/tai-api-contract 2.60.0 → 2.61.0-pr.901.b553abc8

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.
@@ -1039,7 +1039,7 @@ export interface paths {
1039
1039
  put?: never;
1040
1040
  /**
1041
1041
  * Create GitHub App installation URL
1042
- * @description Creates a GitHub App installation URL scoped to the workspace and caller. Body is optional; when omitted, defaults to `/onboarding/integrations` return path. Optional `pickerSession` (from user OAuth org picker) recovers `returnPath` from the server-side picker snapshot when the multi-hop authorize→install flow should return to the page where OAuth started.
1042
+ * @description Creates a GitHub App installation URL scoped to the workspace and caller. Default intent `connect` installs ThinkAI Platform Insights (read). Intent `enable_fixes` installs ThinkAI Platform Automations (write) for the Insights installation identified by `installationId`. Body is optional; when omitted, defaults to `/onboarding/integrations` return path. Optional `pickerSession` (from user OAuth org picker) recovers `returnPath` from the server-side picker snapshot when the multi-hop authorize→install flow should return to the page where OAuth started.
1043
1043
  */
1044
1044
  post: operations["postGithubInstallUrl"];
1045
1045
  delete?: never;
@@ -1048,6 +1048,46 @@ export interface paths {
1048
1048
  patch?: never;
1049
1049
  trace?: never;
1050
1050
  };
1051
+ "/workspaces/{workspaceId}/integrations/github/installations/{installationId}/automated-fixes/enable": {
1052
+ parameters: {
1053
+ query?: never;
1054
+ header?: never;
1055
+ path?: never;
1056
+ cookie?: never;
1057
+ };
1058
+ get?: never;
1059
+ put?: never;
1060
+ /**
1061
+ * Enable automated fixes for a GitHub installation
1062
+ * @description Workspace-level enable for automated fixes on an Insights (read) installation. If an Automations (write) installation is already linked, flips `automatedFixesEnabled` without reinstalling. Otherwise returns `outcome: needs_install` so the client can call install-url with intent=enable_fixes.
1063
+ */
1064
+ post: operations["postGithubAutomatedFixesEnable"];
1065
+ delete?: never;
1066
+ options?: never;
1067
+ head?: never;
1068
+ patch?: never;
1069
+ trace?: never;
1070
+ };
1071
+ "/workspaces/{workspaceId}/integrations/github/installations/{installationId}/automated-fixes": {
1072
+ parameters: {
1073
+ query?: never;
1074
+ header?: never;
1075
+ path?: never;
1076
+ cookie?: never;
1077
+ };
1078
+ get?: never;
1079
+ put?: never;
1080
+ post?: never;
1081
+ /**
1082
+ * Disable automated fixes for a GitHub installation
1083
+ * @description Workspace-level disable. Clears `automatedFixesEnabled` but keeps the linked Automations write installation id so re-enable does not require reinstall. Does not uninstall the Automations app from GitHub.
1084
+ */
1085
+ delete: operations["deleteGithubAutomatedFixes"];
1086
+ options?: never;
1087
+ head?: never;
1088
+ patch?: never;
1089
+ trace?: never;
1090
+ };
1051
1091
  "/workspaces/{workspaceId}/integrations/github/user-authorize-url": {
1052
1092
  parameters: {
1053
1093
  query?: never;
@@ -2641,7 +2681,7 @@ export interface paths {
2641
2681
  put?: never;
2642
2682
  /**
2643
2683
  * Attempt silent ZenHR reconnect
2644
- * @description Attempts a silent token refresh and branch ping using stored ZenHR OAuth credentials. Returns `{ ok: true }` when the connection is restored without user interaction. Returns `{ ok: false, oauthRequired: true }` when stored credentials exist but refresh failed with an OAuth re-authorization error (e.g. `invalid_grant`); the SPA should start ZenHR OAuth next. Returns `502` for other upstream failures (same semantics as `GET .../integrations/zenhr/branches`).
2684
+ * @description Attempts a silent token refresh and branch ping using stored ZenHR OAuth credentials. Returns `{ ok: true }` when the connection is restored without user interaction. Returns `{ ok: false, oauthRequired: true }` when stored credentials exist but refresh failed with an OAuth re-authorization error (e.g. `invalid_grant`); the SPA should start ZenHR OAuth next. Returns `502` for other upstream failures (same semantics as `GET .../integrations/zenhr/branches`). Returns `503` with `zenhr_sync_in_progress` when an HRIS sync or OAuth refresh is already in progress for this workspace (retry shortly).
2645
2685
  */
2646
2686
  post: operations["reconnectWorkspaceZenHr"];
2647
2687
  delete?: never;
@@ -2650,6 +2690,46 @@ export interface paths {
2650
2690
  patch?: never;
2651
2691
  trace?: never;
2652
2692
  };
2693
+ "/workspaces/{workspaceId}/integrations/zenhr/branches": {
2694
+ parameters: {
2695
+ query?: never;
2696
+ header?: never;
2697
+ path?: never;
2698
+ cookie?: never;
2699
+ };
2700
+ /**
2701
+ * List ZenHR branches
2702
+ * @description Lists ZenHR branches for the connected OAuth app so a workspace admin can pick one. Requires workspace admin role. Returns `503` with `zenhr_sync_in_progress` when an HRIS sync or OAuth refresh is already in progress (retry shortly).
2703
+ */
2704
+ get: operations["listWorkspaceZenHrBranches"];
2705
+ put?: never;
2706
+ post?: never;
2707
+ delete?: never;
2708
+ options?: never;
2709
+ head?: never;
2710
+ patch?: never;
2711
+ trace?: never;
2712
+ };
2713
+ "/workspaces/{workspaceId}/integrations/zenhr/branch": {
2714
+ parameters: {
2715
+ query?: never;
2716
+ header?: never;
2717
+ path?: never;
2718
+ cookie?: never;
2719
+ };
2720
+ get?: never;
2721
+ put?: never;
2722
+ post?: never;
2723
+ delete?: never;
2724
+ options?: never;
2725
+ head?: never;
2726
+ /**
2727
+ * Save selected ZenHR branch
2728
+ * @description Validates and persists the admin-selected ZenHR branch id on the workspace source. Requires workspace admin role. Returns `503` with `zenhr_sync_in_progress` when an HRIS sync or OAuth refresh is already in progress (retry shortly).
2729
+ */
2730
+ patch: operations["patchWorkspaceZenHrBranch"];
2731
+ trace?: never;
2732
+ };
2653
2733
  "/workspaces/{workspaceId}/hris/status": {
2654
2734
  parameters: {
2655
2735
  query?: never;
@@ -3058,6 +3138,7 @@ export interface components {
3058
3138
  };
3059
3139
  TestConnectionResponseDto: {
3060
3140
  success: boolean;
3141
+ /** @description Machine-readable failure code when success=false (e.g. invalid_token, zenhr_sync_in_progress when ZenHR OAuth refresh is contended). */
3061
3142
  error?: string;
3062
3143
  /** @description Present when `executionToken` was included in the test request. `true` = key passed save-time validation (format + not-admin-key check). `false` = key failed validation (see `executionKeyError` for detail). `null` = `executionToken` was not provided. */
3063
3144
  executionKeyValid?: boolean | null;
@@ -4448,6 +4529,22 @@ export interface components {
4448
4529
  */
4449
4530
  granted?: "read" | "write" | "admin" | null;
4450
4531
  };
4532
+ GithubWritePermissionsRequiredErrorDto: {
4533
+ /** @enum {string} */
4534
+ error: "github_write_permissions_required";
4535
+ missingPermissions: components["schemas"]["GithubMissingPermissionDto"][];
4536
+ /** @description GitHub installation settings URL to approve write permissions. */
4537
+ manageUrl?: string | null;
4538
+ /** @description Human-readable summary of the write permission upgrade. */
4539
+ writeUpgradeMessage?: string | null;
4540
+ };
4541
+ GithubPermissionsCheckFailedErrorDto: {
4542
+ /**
4543
+ * @description GitHub installation permissions could not be verified (transient upstream failure).
4544
+ * @enum {string}
4545
+ */
4546
+ error: "github_permissions_check_failed";
4547
+ };
4451
4548
  GithubInstallationSummaryDto: {
4452
4549
  installationId: string;
4453
4550
  account: components["schemas"]["GithubAccountDto"];
@@ -4457,11 +4554,35 @@ export interface components {
4457
4554
  manageUrl?: string | null;
4458
4555
  /** Format: date-time */
4459
4556
  lastSyncedAt?: string | null;
4460
- /** @description True when this installation's granted permissions are below what the ThinkAI GitHub App currently requests. */
4557
+ /** @description True when this installation lacks core read permissions required for connect and analysis. Alias for `!corePermissionsOk`. */
4461
4558
  permissionsUpgradeRequired: boolean;
4559
+ /** @description True when installation grants read permissions for repository analysis (contents, metadata, pull requests, and members for org installs). */
4560
+ corePermissionsOk: boolean;
4561
+ /** @description True when automated fixes are enabled and the linked Automations (write) installation grants write permissions required for fix PRs. */
4562
+ writePermissionsOk: boolean;
4563
+ /** @description Alias for `!writePermissionsOk`. */
4564
+ writePermissionsUpgradeRequired: boolean;
4565
+ /** @description Core read permissions still needed for connect and analysis. */
4462
4566
  missingPermissions?: components["schemas"]["GithubMissingPermissionDto"][];
4463
- /** @description Human-readable summary for UI when permissionsUpgradeRequired is true. */
4567
+ /** @description Write permissions still needed for automated fix PRs. */
4568
+ missingWritePermissions?: components["schemas"]["GithubMissingPermissionDto"][];
4569
+ /** @description Human-readable summary for UI when core permissions are missing. */
4464
4570
  upgradeMessage?: string | null;
4571
+ /** @description Human-readable summary for UI when write permissions are missing. */
4572
+ writeUpgradeMessage?: string | null;
4573
+ /** @description True when this workspace has enabled automated fixes for this Insights (read) installation and linked a ThinkAI Platform Automations (write) installation. */
4574
+ automatedFixesEnabled: boolean;
4575
+ /** @description True when an Automations (write) GitHub App installation is linked. */
4576
+ writeAppInstalled: boolean;
4577
+ /** @description GitHub installation id for the Automations (write) app, when linked. */
4578
+ writeInstallationId?: string | null;
4579
+ /**
4580
+ * Format: uri
4581
+ * @description GitHub settings URL for the Automations (write) installation.
4582
+ */
4583
+ writeManageUrl?: string | null;
4584
+ /** @description True when the Automations app is configured and automated fixes are not yet enabled for this installation (UI may show Enable automated fixes). */
4585
+ canEnableAutomatedFixes: boolean;
4465
4586
  };
4466
4587
  GithubPendingApprovalDto: {
4467
4588
  /**
@@ -4617,8 +4738,18 @@ export interface components {
4617
4738
  GithubInstallationStatusDto: {
4618
4739
  installed: boolean;
4619
4740
  installations: components["schemas"]["GithubInstallationSummaryDto"][];
4620
- /** @description True if any connected installation is under-permissioned. */
4741
+ /** @description True if any connected installation lacks core read permissions. Alias for `!corePermissionsOk`. */
4621
4742
  permissionsUpgradeRequired: boolean;
4743
+ /** @description True when every connected installation grants core read permissions. */
4744
+ corePermissionsOk: boolean;
4745
+ /** @description True when every connected installation grants write permissions for automated fixes. */
4746
+ writePermissionsOk: boolean;
4747
+ /** @description True when any connected installation lacks write permissions for automated fixes. */
4748
+ writePermissionsUpgradeRequired: boolean;
4749
+ /** @description Aggregated write permissions missing on installations that lack write access. */
4750
+ missingWritePermissions?: components["schemas"]["GithubMissingPermissionDto"][];
4751
+ /** @description Human-readable summary when write permissions are missing. */
4752
+ writeUpgradeMessage?: string | null;
4622
4753
  /** @description Present when an org admin must approve the GitHub App install request. */
4623
4754
  pendingApproval?: components["schemas"]["GithubPendingApprovalDto"] | null;
4624
4755
  /** @description Present when GitHub connect was started but not completed (install OAuth state or account-picker session still active). Omitted when pendingApproval is set. */
@@ -4658,12 +4789,28 @@ export interface components {
4658
4789
  * @description SPA origin to redirect back to after OAuth; must match server spaOrigins allowlist.
4659
4790
  */
4660
4791
  spaOrigin?: string;
4792
+ /**
4793
+ * @description connect installs ThinkAI Platform Insights (read). enable_fixes installs ThinkAI Platform Automations (write) for the Insights installation identified by installationId.
4794
+ * @enum {string}
4795
+ */
4796
+ intent?: "connect" | "enable_fixes";
4797
+ /** @description Insights (read) installation id required when intent is enable_fixes. */
4798
+ installationId?: string;
4661
4799
  };
4662
4800
  GithubInstallUrlResponseDto: {
4663
4801
  /** Format: uri */
4664
4802
  url: string;
4665
4803
  state: string;
4666
4804
  };
4805
+ GithubAutomatedFixesEnableResponseDto: {
4806
+ /**
4807
+ * @description enabled — write app already linked and flag flipped; needs_install — client should call install-url with intent=enable_fixes.
4808
+ * @enum {string}
4809
+ */
4810
+ outcome: "enabled" | "needs_install";
4811
+ /** @description Present when outcome is enabled. */
4812
+ status?: components["schemas"]["GithubInstallationStatusDto"];
4813
+ };
4667
4814
  GithubUserAuthorizeUrlRequestDto: {
4668
4815
  returnPath?: string;
4669
4816
  /**
@@ -5782,6 +5929,19 @@ export interface components {
5782
5929
  */
5783
5930
  error?: "zenhr_oauth_required";
5784
5931
  };
5932
+ ZenHrBranchDto: {
5933
+ id: string;
5934
+ name: string;
5935
+ };
5936
+ ZenHrBranchesListDto: {
5937
+ branches: components["schemas"]["ZenHrBranchDto"][];
5938
+ };
5939
+ ZenHrBranchSelectionDto: {
5940
+ branchId: string;
5941
+ };
5942
+ ZenHrBranchSelectionResultDto: {
5943
+ branchId: string;
5944
+ };
5785
5945
  HrisTriggerSyncResultDto: {
5786
5946
  /** @enum {string} */
5787
5947
  status: "ok" | "skipped" | "error" | "partial";
@@ -5945,6 +6105,20 @@ export interface components {
5945
6105
  "application/json": components["schemas"]["ErrorMessageDto"];
5946
6106
  };
5947
6107
  };
6108
+ /** @description HRIS sync or ZenHR OAuth refresh already in progress for this workspace */
6109
+ ZenHrSyncInProgress: {
6110
+ headers: {
6111
+ [name: string]: unknown;
6112
+ };
6113
+ content: {
6114
+ /**
6115
+ * @example {
6116
+ * "error": "zenhr_sync_in_progress"
6117
+ * }
6118
+ */
6119
+ "application/json": components["schemas"]["ErrorMessageDto"];
6120
+ };
6121
+ };
5948
6122
  };
5949
6123
  parameters: {
5950
6124
  WorkspaceId: string;
@@ -6146,6 +6320,8 @@ export type RepoEligibilityOverridesDto = components['schemas']['RepoEligibility
6146
6320
  export type WorkspaceRepoEligibilityDto = components['schemas']['WorkspaceRepoEligibilityDto'];
6147
6321
  export type RepoEligibilityLimitsDto = components['schemas']['RepoEligibilityLimitsDto'];
6148
6322
  export type GithubMissingPermissionDto = components['schemas']['GithubMissingPermissionDto'];
6323
+ export type GithubWritePermissionsRequiredErrorDto = components['schemas']['GithubWritePermissionsRequiredErrorDto'];
6324
+ export type GithubPermissionsCheckFailedErrorDto = components['schemas']['GithubPermissionsCheckFailedErrorDto'];
6149
6325
  export type GithubInstallationSummaryDto = components['schemas']['GithubInstallationSummaryDto'];
6150
6326
  export type GithubPendingApprovalDto = components['schemas']['GithubPendingApprovalDto'];
6151
6327
  export type GithubSetupInProgressDto = components['schemas']['GithubSetupInProgressDto'];
@@ -6161,6 +6337,7 @@ export type GithubActionsEnableResponseDto = components['schemas']['GithubAction
6161
6337
  export type GithubInstallationStatusDto = components['schemas']['GithubInstallationStatusDto'];
6162
6338
  export type GithubInstallUrlRequestDto = components['schemas']['GithubInstallUrlRequestDto'];
6163
6339
  export type GithubInstallUrlResponseDto = components['schemas']['GithubInstallUrlResponseDto'];
6340
+ export type GithubAutomatedFixesEnableResponseDto = components['schemas']['GithubAutomatedFixesEnableResponseDto'];
6164
6341
  export type GithubUserAuthorizeUrlRequestDto = components['schemas']['GithubUserAuthorizeUrlRequestDto'];
6165
6342
  export type GithubUserAuthorizeUrlResponseDto = components['schemas']['GithubUserAuthorizeUrlResponseDto'];
6166
6343
  export type GithubConnectableAccountDto = components['schemas']['GithubConnectableAccountDto'];
@@ -6277,6 +6454,10 @@ export type WorkspaceAbsenceListDto = components['schemas']['WorkspaceAbsenceLis
6277
6454
  export type HrisSyncStatusDto = components['schemas']['HrisSyncStatusDto'];
6278
6455
  export type HrisSyncStatusListDto = components['schemas']['HrisSyncStatusListDto'];
6279
6456
  export type ZenHrReconnectResultDto = components['schemas']['ZenHrReconnectResultDto'];
6457
+ export type ZenHrBranchDto = components['schemas']['ZenHrBranchDto'];
6458
+ export type ZenHrBranchesListDto = components['schemas']['ZenHrBranchesListDto'];
6459
+ export type ZenHrBranchSelectionDto = components['schemas']['ZenHrBranchSelectionDto'];
6460
+ export type ZenHrBranchSelectionResultDto = components['schemas']['ZenHrBranchSelectionResultDto'];
6280
6461
  export type HrisTriggerSyncResultDto = components['schemas']['HrisTriggerSyncResultDto'];
6281
6462
  export type HrisProviderSyncResultDto = components['schemas']['HrisProviderSyncResultDto'];
6282
6463
  export type ActivityLogPageDto = components['schemas']['ActivityLogPageDto'];
@@ -6284,6 +6465,7 @@ export type ReadinessTokenUsageRowDto = components['schemas']['ReadinessTokenUsa
6284
6465
  export type ReadinessTokenUsageByDimensionRowDto = components['schemas']['ReadinessTokenUsageByDimensionRowDto'];
6285
6466
  export type ResponseUnauthorized = components['responses']['Unauthorized'];
6286
6467
  export type ResponseForbidden = components['responses']['Forbidden'];
6468
+ export type ResponseZenHrSyncInProgress = components['responses']['ZenHrSyncInProgress'];
6287
6469
  export type ParameterWorkspaceId = components['parameters']['WorkspaceId'];
6288
6470
  export type ParameterRepoId = components['parameters']['RepoId'];
6289
6471
  export type ParameterProviderSlug = components['parameters']['ProviderSlug'];
@@ -9259,6 +9441,90 @@ export interface operations {
9259
9441
  "application/json": components["schemas"]["ErrorMessageDto"];
9260
9442
  };
9261
9443
  };
9444
+ /** @description Requested GitHub App is not configured */
9445
+ 503: {
9446
+ headers: {
9447
+ [name: string]: unknown;
9448
+ };
9449
+ content: {
9450
+ "application/json": components["schemas"]["ErrorMessageDto"];
9451
+ };
9452
+ };
9453
+ };
9454
+ };
9455
+ postGithubAutomatedFixesEnable: {
9456
+ parameters: {
9457
+ query?: never;
9458
+ header?: never;
9459
+ path: {
9460
+ workspaceId: components["parameters"]["WorkspaceId"];
9461
+ installationId: string;
9462
+ };
9463
+ cookie?: never;
9464
+ };
9465
+ requestBody?: never;
9466
+ responses: {
9467
+ /** @description Enable result */
9468
+ 200: {
9469
+ headers: {
9470
+ [name: string]: unknown;
9471
+ };
9472
+ content: {
9473
+ "application/json": components["schemas"]["GithubAutomatedFixesEnableResponseDto"];
9474
+ };
9475
+ };
9476
+ 401: components["responses"]["Unauthorized"];
9477
+ 403: components["responses"]["Forbidden"];
9478
+ /** @description Workspace or installation not found */
9479
+ 404: {
9480
+ headers: {
9481
+ [name: string]: unknown;
9482
+ };
9483
+ content: {
9484
+ "application/json": components["schemas"]["ErrorMessageDto"];
9485
+ };
9486
+ };
9487
+ /** @description Automations GitHub App not configured */
9488
+ 503: {
9489
+ headers: {
9490
+ [name: string]: unknown;
9491
+ };
9492
+ content: {
9493
+ "application/json": components["schemas"]["ErrorMessageDto"];
9494
+ };
9495
+ };
9496
+ };
9497
+ };
9498
+ deleteGithubAutomatedFixes: {
9499
+ parameters: {
9500
+ query?: never;
9501
+ header?: never;
9502
+ path: {
9503
+ workspaceId: components["parameters"]["WorkspaceId"];
9504
+ installationId: string;
9505
+ };
9506
+ cookie?: never;
9507
+ };
9508
+ requestBody?: never;
9509
+ responses: {
9510
+ /** @description Automated fixes disabled (or already disabled) */
9511
+ 204: {
9512
+ headers: {
9513
+ [name: string]: unknown;
9514
+ };
9515
+ content?: never;
9516
+ };
9517
+ 401: components["responses"]["Unauthorized"];
9518
+ 403: components["responses"]["Forbidden"];
9519
+ /** @description Workspace or installation not found */
9520
+ 404: {
9521
+ headers: {
9522
+ [name: string]: unknown;
9523
+ };
9524
+ content: {
9525
+ "application/json": components["schemas"]["ErrorMessageDto"];
9526
+ };
9527
+ };
9262
9528
  };
9263
9529
  };
9264
9530
  postGithubUserAuthorizeUrl: {
@@ -11915,6 +12181,24 @@ export interface operations {
11915
12181
  "application/json": components["schemas"]["ErrorMessageDto"];
11916
12182
  };
11917
12183
  };
12184
+ /** @description GitHub installation lacks write permissions required for automated fix PRs */
12185
+ 422: {
12186
+ headers: {
12187
+ [name: string]: unknown;
12188
+ };
12189
+ content: {
12190
+ "application/json": components["schemas"]["GithubWritePermissionsRequiredErrorDto"];
12191
+ };
12192
+ };
12193
+ /** @description GitHub installation permissions could not be verified */
12194
+ 503: {
12195
+ headers: {
12196
+ [name: string]: unknown;
12197
+ };
12198
+ content: {
12199
+ "application/json": components["schemas"]["GithubPermissionsCheckFailedErrorDto"];
12200
+ };
12201
+ };
11918
12202
  };
11919
12203
  };
11920
12204
  postReadinessFixRetrigger: {
@@ -11958,6 +12242,24 @@ export interface operations {
11958
12242
  "application/json": components["schemas"]["ErrorMessageDto"];
11959
12243
  };
11960
12244
  };
12245
+ /** @description GitHub installation lacks write permissions required for automated fix PRs */
12246
+ 422: {
12247
+ headers: {
12248
+ [name: string]: unknown;
12249
+ };
12250
+ content: {
12251
+ "application/json": components["schemas"]["GithubWritePermissionsRequiredErrorDto"];
12252
+ };
12253
+ };
12254
+ /** @description GitHub installation permissions could not be verified */
12255
+ 503: {
12256
+ headers: {
12257
+ [name: string]: unknown;
12258
+ };
12259
+ content: {
12260
+ "application/json": components["schemas"]["GithubPermissionsCheckFailedErrorDto"];
12261
+ };
12262
+ };
11961
12263
  };
11962
12264
  };
11963
12265
  putCursorPlatformKeyConsent: {
@@ -13092,6 +13394,126 @@ export interface operations {
13092
13394
  "application/json": components["schemas"]["ErrorMessageDto"];
13093
13395
  };
13094
13396
  };
13397
+ 503: components["responses"]["ZenHrSyncInProgress"];
13398
+ };
13399
+ };
13400
+ listWorkspaceZenHrBranches: {
13401
+ parameters: {
13402
+ query?: never;
13403
+ header?: never;
13404
+ path: {
13405
+ workspaceId: components["parameters"]["WorkspaceId"];
13406
+ };
13407
+ cookie?: never;
13408
+ };
13409
+ requestBody?: never;
13410
+ responses: {
13411
+ /** @description Branch list */
13412
+ 200: {
13413
+ headers: {
13414
+ [name: string]: unknown;
13415
+ };
13416
+ content: {
13417
+ "application/json": components["schemas"]["ZenHrBranchesListDto"];
13418
+ };
13419
+ };
13420
+ 401: components["responses"]["Unauthorized"];
13421
+ 403: components["responses"]["Forbidden"];
13422
+ /** @description ZenHR is not connected for this workspace */
13423
+ 404: {
13424
+ headers: {
13425
+ [name: string]: unknown;
13426
+ };
13427
+ content: {
13428
+ /**
13429
+ * @example {
13430
+ * "error": "zenhr_not_connected"
13431
+ * }
13432
+ */
13433
+ "application/json": components["schemas"]["ErrorMessageDto"];
13434
+ };
13435
+ };
13436
+ /** @description ZenHR branch list unavailable */
13437
+ 502: {
13438
+ headers: {
13439
+ [name: string]: unknown;
13440
+ };
13441
+ content: {
13442
+ /**
13443
+ * @example {
13444
+ * "error": "zenhr_branches_unavailable"
13445
+ * }
13446
+ */
13447
+ "application/json": components["schemas"]["ErrorMessageDto"];
13448
+ };
13449
+ };
13450
+ 503: components["responses"]["ZenHrSyncInProgress"];
13451
+ };
13452
+ };
13453
+ patchWorkspaceZenHrBranch: {
13454
+ parameters: {
13455
+ query?: never;
13456
+ header?: never;
13457
+ path: {
13458
+ workspaceId: components["parameters"]["WorkspaceId"];
13459
+ };
13460
+ cookie?: never;
13461
+ };
13462
+ requestBody: {
13463
+ content: {
13464
+ "application/json": components["schemas"]["ZenHrBranchSelectionDto"];
13465
+ };
13466
+ };
13467
+ responses: {
13468
+ /** @description Branch saved */
13469
+ 200: {
13470
+ headers: {
13471
+ [name: string]: unknown;
13472
+ };
13473
+ content: {
13474
+ "application/json": components["schemas"]["ZenHrBranchSelectionResultDto"];
13475
+ };
13476
+ };
13477
+ /** @description Invalid body or unknown branch id */
13478
+ 400: {
13479
+ headers: {
13480
+ [name: string]: unknown;
13481
+ };
13482
+ content: {
13483
+ "application/json": components["schemas"]["ErrorMessageDto"];
13484
+ };
13485
+ };
13486
+ 401: components["responses"]["Unauthorized"];
13487
+ 403: components["responses"]["Forbidden"];
13488
+ /** @description ZenHR is not connected for this workspace */
13489
+ 404: {
13490
+ headers: {
13491
+ [name: string]: unknown;
13492
+ };
13493
+ content: {
13494
+ /**
13495
+ * @example {
13496
+ * "error": "zenhr_not_connected"
13497
+ * }
13498
+ */
13499
+ "application/json": components["schemas"]["ErrorMessageDto"];
13500
+ };
13501
+ };
13502
+ /** @description ZenHR branch validation unavailable */
13503
+ 502: {
13504
+ headers: {
13505
+ [name: string]: unknown;
13506
+ };
13507
+ content: {
13508
+ /**
13509
+ * @example {
13510
+ * "error": "zenhr_branches_unavailable"
13511
+ * }
13512
+ */
13513
+ "application/json": components["schemas"]["ErrorMessageDto"];
13514
+ };
13515
+ };
13516
+ 503: components["responses"]["ZenHrSyncInProgress"];
13095
13517
  };
13096
13518
  };
13097
13519
  getHrisSyncStatus: {