@thinkai/tai-api-contract 2.12.0 → 2.14.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.
@@ -585,6 +585,66 @@ export interface paths {
585
585
  patch?: never;
586
586
  trace?: never;
587
587
  };
588
+ "/workspaces/{workspaceId}/integrations/github/user-authorize-url": {
589
+ parameters: {
590
+ query?: never;
591
+ header?: never;
592
+ path?: never;
593
+ cookie?: never;
594
+ };
595
+ get?: never;
596
+ put?: never;
597
+ /**
598
+ * Create GitHub user OAuth authorize URL
599
+ * @description Starts GitHub user OAuth for org/account picker. Workspace admin only. After callback, SPA opens account picker with `?gh=account_picker&session=…`.
600
+ */
601
+ post: operations["postGithubUserAuthorizeUrl"];
602
+ delete?: never;
603
+ options?: never;
604
+ head?: never;
605
+ patch?: never;
606
+ trace?: never;
607
+ };
608
+ "/workspaces/{workspaceId}/integrations/github/connectable-accounts": {
609
+ parameters: {
610
+ query?: never;
611
+ header?: never;
612
+ path?: never;
613
+ cookie?: never;
614
+ };
615
+ /**
616
+ * List connectable GitHub accounts from user OAuth session
617
+ * @description Returns org/user accounts from a completed user OAuth picker session. Session must belong to the caller and workspace.
618
+ */
619
+ get: operations["getGithubConnectableAccounts"];
620
+ put?: never;
621
+ post?: never;
622
+ delete?: never;
623
+ options?: never;
624
+ head?: never;
625
+ patch?: never;
626
+ trace?: never;
627
+ };
628
+ "/workspaces/{workspaceId}/integrations/github/connect-by-org": {
629
+ parameters: {
630
+ query?: never;
631
+ header?: never;
632
+ path?: never;
633
+ cookie?: never;
634
+ };
635
+ get?: never;
636
+ put?: never;
637
+ /**
638
+ * Link GitHub App installation by org or user account
639
+ * @description Server-side link when the ThinkAI GitHub App is already installed on the selected account. Returns `needs_oauth` when install redirect is required. Workspace admin only.
640
+ */
641
+ post: operations["postGithubConnectByOrg"];
642
+ delete?: never;
643
+ options?: never;
644
+ head?: never;
645
+ patch?: never;
646
+ trace?: never;
647
+ };
588
648
  "/workspaces/{workspaceId}/integrations/ai-tool/{provider}/refresh": {
589
649
  parameters: {
590
650
  query?: never;
@@ -710,6 +770,26 @@ export interface paths {
710
770
  patch?: never;
711
771
  trace?: never;
712
772
  };
773
+ "/integrations/github/user-oauth/callback": {
774
+ parameters: {
775
+ query?: never;
776
+ header?: never;
777
+ path?: never;
778
+ cookie?: never;
779
+ };
780
+ /**
781
+ * GitHub user OAuth callback
782
+ * @description Public callback for GitHub user OAuth (org/account picker flow). Exchanges code, builds connectable-accounts snapshot, redirects SPA with `?gh=account_picker&session=…`.
783
+ */
784
+ get: operations["getGithubUserOauthCallback"];
785
+ put?: never;
786
+ post?: never;
787
+ delete?: never;
788
+ options?: never;
789
+ head?: never;
790
+ patch?: never;
791
+ trace?: never;
792
+ };
713
793
  "/integrations/github/webhook": {
714
794
  parameters: {
715
795
  query?: never;
@@ -1664,6 +1744,66 @@ export interface paths {
1664
1744
  patch?: never;
1665
1745
  trace?: never;
1666
1746
  };
1747
+ "/workspaces/{workspaceId}/absences": {
1748
+ parameters: {
1749
+ query?: never;
1750
+ header?: never;
1751
+ path?: never;
1752
+ cookie?: never;
1753
+ };
1754
+ /**
1755
+ * List absence records
1756
+ * @description Returns time-off/absence records sourced from connected HRIS providers (e.g. Personio) for the given date window. Requires workspace membership.
1757
+ */
1758
+ get: operations["listWorkspaceAbsences"];
1759
+ put?: never;
1760
+ post?: never;
1761
+ delete?: never;
1762
+ options?: never;
1763
+ head?: never;
1764
+ patch?: never;
1765
+ trace?: never;
1766
+ };
1767
+ "/workspaces/{workspaceId}/hris/status": {
1768
+ parameters: {
1769
+ query?: never;
1770
+ header?: never;
1771
+ path?: never;
1772
+ cookie?: never;
1773
+ };
1774
+ /**
1775
+ * HRIS sync status
1776
+ * @description Returns the last sync status for every HRIS provider connected to the workspace. Returns an empty `statuses` array when no HRIS source has been synced yet. Requires workspace membership.
1777
+ */
1778
+ get: operations["getHrisSyncStatus"];
1779
+ put?: never;
1780
+ post?: never;
1781
+ delete?: never;
1782
+ options?: never;
1783
+ head?: never;
1784
+ patch?: never;
1785
+ trace?: never;
1786
+ };
1787
+ "/workspaces/{workspaceId}/hris/sync": {
1788
+ parameters: {
1789
+ query?: never;
1790
+ header?: never;
1791
+ path?: never;
1792
+ cookie?: never;
1793
+ };
1794
+ get?: never;
1795
+ put?: never;
1796
+ /**
1797
+ * Trigger manual HRIS sync
1798
+ * @description Manually triggers an HRIS sync for the workspace. Runs synchronously and returns the result. Requires editor role (same permission level as org-chart writes). Returns 422 when no HRIS source is configured.
1799
+ */
1800
+ post: operations["triggerHrisSync"];
1801
+ delete?: never;
1802
+ options?: never;
1803
+ head?: never;
1804
+ patch?: never;
1805
+ trace?: never;
1806
+ };
1667
1807
  }
1668
1808
  export type webhooks = Record<string, never>;
1669
1809
  export interface components {
@@ -2461,6 +2601,48 @@ export interface components {
2461
2601
  url: string;
2462
2602
  state: string;
2463
2603
  };
2604
+ GithubUserAuthorizeUrlRequestDto: {
2605
+ returnPath?: string;
2606
+ };
2607
+ GithubUserAuthorizeUrlResponseDto: {
2608
+ /** Format: uri */
2609
+ url: string;
2610
+ state: string;
2611
+ };
2612
+ GithubConnectableAccountDto: {
2613
+ login: string;
2614
+ /** @enum {string} */
2615
+ type: "Organization" | "User";
2616
+ /** Format: uri */
2617
+ avatarUrl?: string | null;
2618
+ /** @description Whether the ThinkAI GitHub App is already installed on this account. */
2619
+ appInstalled: boolean;
2620
+ };
2621
+ GithubConnectableAccountsResponseDto: {
2622
+ accounts: components["schemas"]["GithubConnectableAccountDto"][];
2623
+ };
2624
+ GithubConnectByOrgRequestDto: {
2625
+ accountLogin: string;
2626
+ /** @enum {string} */
2627
+ accountType: "Organization" | "User";
2628
+ session: string;
2629
+ };
2630
+ GithubConnectByOrgConnectedDto: {
2631
+ /**
2632
+ * @description discriminator enum property added by openapi-typescript
2633
+ * @enum {string}
2634
+ */
2635
+ outcome: "connected";
2636
+ status: components["schemas"]["GithubInstallationStatusDto"];
2637
+ };
2638
+ GithubConnectByOrgNeedsOAuthDto: {
2639
+ /**
2640
+ * @description discriminator enum property added by openapi-typescript
2641
+ * @enum {string}
2642
+ */
2643
+ outcome: "needs_oauth";
2644
+ };
2645
+ GithubConnectByOrgResponseDto: components["schemas"]["GithubConnectByOrgConnectedDto"] | components["schemas"]["GithubConnectByOrgNeedsOAuthDto"];
2464
2646
  AIReadinessDto: {
2465
2647
  currentUsage: string;
2466
2648
  tools: string[];
@@ -3214,6 +3396,57 @@ export interface components {
3214
3396
  [key: string]: unknown;
3215
3397
  } | null;
3216
3398
  };
3399
+ WorkspaceAbsenceDto: {
3400
+ /** @description HRIS provider that sourced this record (e.g. 'personio', 'zenhr'). */
3401
+ source: string;
3402
+ /** Format: email */
3403
+ employeeEmail: string;
3404
+ absenceType: string;
3405
+ /** Format: date */
3406
+ startDate: string;
3407
+ /** Format: date */
3408
+ endDate: string;
3409
+ halfDayStart: boolean;
3410
+ halfDayEnd: boolean;
3411
+ /** @enum {string} */
3412
+ status: "approved" | "pending" | "rejected";
3413
+ };
3414
+ WorkspaceAbsenceListDto: {
3415
+ absences: components["schemas"]["WorkspaceAbsenceDto"][];
3416
+ /**
3417
+ * Format: date-time
3418
+ * @description ISO timestamp of the most recent successful HRIS sync, or null if never synced.
3419
+ */
3420
+ syncedAt: string | null;
3421
+ };
3422
+ HrisSyncStatusDto: {
3423
+ /** @description Provider identifier (e.g. 'personio', 'zenhr'). */
3424
+ provider: string;
3425
+ /** Format: date-time */
3426
+ lastSyncAt: string | null;
3427
+ /** @enum {string} */
3428
+ status: "ok" | "error" | "never";
3429
+ lastError?: string | null;
3430
+ };
3431
+ HrisSyncStatusListDto: {
3432
+ statuses: components["schemas"]["HrisSyncStatusDto"][];
3433
+ };
3434
+ HrisTriggerSyncResultDto: {
3435
+ /** @enum {string} */
3436
+ status: "ok" | "skipped" | "error";
3437
+ /** @description Stable machine-readable code (e.g. 'no_personio_source', 'hris_sync_failed'). */
3438
+ code?: string;
3439
+ /** @description Number of employees synced (present when status = 'ok'). */
3440
+ employeeCount?: number;
3441
+ /** @description Number of absence records synced (present when status = 'ok'). */
3442
+ absenceCount?: number;
3443
+ /** @description Wall-clock duration of the sync in milliseconds (present when status = 'ok'). */
3444
+ durationMs?: number;
3445
+ /** @description Machine-readable reason for a skipped sync (e.g. 'no_personio_source'). */
3446
+ reason?: string;
3447
+ /** @description Error message when status = 'error'. */
3448
+ error?: string;
3449
+ };
3217
3450
  ActivityLogPageDto: components["schemas"]["PageMetaDto"] & {
3218
3451
  items: components["schemas"]["ActivityLogEntryDto"][];
3219
3452
  };
@@ -3361,6 +3594,14 @@ export type GithubPendingApprovalDto = components['schemas']['GithubPendingAppro
3361
3594
  export type GithubInstallationStatusDto = components['schemas']['GithubInstallationStatusDto'];
3362
3595
  export type GithubInstallUrlRequestDto = components['schemas']['GithubInstallUrlRequestDto'];
3363
3596
  export type GithubInstallUrlResponseDto = components['schemas']['GithubInstallUrlResponseDto'];
3597
+ export type GithubUserAuthorizeUrlRequestDto = components['schemas']['GithubUserAuthorizeUrlRequestDto'];
3598
+ export type GithubUserAuthorizeUrlResponseDto = components['schemas']['GithubUserAuthorizeUrlResponseDto'];
3599
+ export type GithubConnectableAccountDto = components['schemas']['GithubConnectableAccountDto'];
3600
+ export type GithubConnectableAccountsResponseDto = components['schemas']['GithubConnectableAccountsResponseDto'];
3601
+ export type GithubConnectByOrgRequestDto = components['schemas']['GithubConnectByOrgRequestDto'];
3602
+ export type GithubConnectByOrgConnectedDto = components['schemas']['GithubConnectByOrgConnectedDto'];
3603
+ export type GithubConnectByOrgNeedsOAuthDto = components['schemas']['GithubConnectByOrgNeedsOAuthDto'];
3604
+ export type GithubConnectByOrgResponseDto = components['schemas']['GithubConnectByOrgResponseDto'];
3364
3605
  export type AiReadinessDto = components['schemas']['AIReadinessDto'];
3365
3606
  export type AiMaturityResultDto = components['schemas']['AiMaturityResultDto'];
3366
3607
  export type TechCategoryDto = components['schemas']['TechCategoryDto'];
@@ -3443,6 +3684,11 @@ export type PatchRepoArchiveResponseDto = components['schemas']['PatchRepoArchiv
3443
3684
  export type ActivityLogEventTypeDto = components['schemas']['ActivityLogEventTypeDto'];
3444
3685
  export type ActivityLogActorDto = components['schemas']['ActivityLogActorDto'];
3445
3686
  export type ActivityLogEntryDto = components['schemas']['ActivityLogEntryDto'];
3687
+ export type WorkspaceAbsenceDto = components['schemas']['WorkspaceAbsenceDto'];
3688
+ export type WorkspaceAbsenceListDto = components['schemas']['WorkspaceAbsenceListDto'];
3689
+ export type HrisSyncStatusDto = components['schemas']['HrisSyncStatusDto'];
3690
+ export type HrisSyncStatusListDto = components['schemas']['HrisSyncStatusListDto'];
3691
+ export type HrisTriggerSyncResultDto = components['schemas']['HrisTriggerSyncResultDto'];
3446
3692
  export type ActivityLogPageDto = components['schemas']['ActivityLogPageDto'];
3447
3693
  export type ResponseUnauthorized = components['responses']['Unauthorized'];
3448
3694
  export type ResponseForbidden = components['responses']['Forbidden'];
@@ -5044,6 +5290,174 @@ export interface operations {
5044
5290
  };
5045
5291
  };
5046
5292
  };
5293
+ postGithubUserAuthorizeUrl: {
5294
+ parameters: {
5295
+ query?: never;
5296
+ header?: never;
5297
+ path: {
5298
+ workspaceId: components["parameters"]["WorkspaceId"];
5299
+ };
5300
+ cookie?: never;
5301
+ };
5302
+ requestBody?: {
5303
+ content: {
5304
+ "application/json": components["schemas"]["GithubUserAuthorizeUrlRequestDto"];
5305
+ };
5306
+ };
5307
+ responses: {
5308
+ /** @description User OAuth authorize URL + signed state */
5309
+ 200: {
5310
+ headers: {
5311
+ [name: string]: unknown;
5312
+ };
5313
+ content: {
5314
+ "application/json": components["schemas"]["GithubUserAuthorizeUrlResponseDto"];
5315
+ };
5316
+ };
5317
+ /** @description Request validation failed */
5318
+ 400: {
5319
+ headers: {
5320
+ [name: string]: unknown;
5321
+ };
5322
+ content: {
5323
+ "application/json": components["schemas"]["ErrorMessageDto"];
5324
+ };
5325
+ };
5326
+ 401: components["responses"]["Unauthorized"];
5327
+ 403: components["responses"]["Forbidden"];
5328
+ /** @description Workspace does not exist or malformed workspaceId */
5329
+ 404: {
5330
+ headers: {
5331
+ [name: string]: unknown;
5332
+ };
5333
+ content: {
5334
+ "application/json": components["schemas"]["ErrorMessageDto"];
5335
+ };
5336
+ };
5337
+ /** @description GitHub user OAuth not configured */
5338
+ 500: {
5339
+ headers: {
5340
+ [name: string]: unknown;
5341
+ };
5342
+ content: {
5343
+ "application/json": components["schemas"]["ErrorMessageDto"];
5344
+ };
5345
+ };
5346
+ };
5347
+ };
5348
+ getGithubConnectableAccounts: {
5349
+ parameters: {
5350
+ query: {
5351
+ session: string;
5352
+ };
5353
+ header?: never;
5354
+ path: {
5355
+ workspaceId: components["parameters"]["WorkspaceId"];
5356
+ };
5357
+ cookie?: never;
5358
+ };
5359
+ requestBody?: never;
5360
+ responses: {
5361
+ /** @description Connectable accounts snapshot */
5362
+ 200: {
5363
+ headers: {
5364
+ [name: string]: unknown;
5365
+ };
5366
+ content: {
5367
+ "application/json": components["schemas"]["GithubConnectableAccountsResponseDto"];
5368
+ };
5369
+ };
5370
+ /** @description Missing or invalid session */
5371
+ 400: {
5372
+ headers: {
5373
+ [name: string]: unknown;
5374
+ };
5375
+ content: {
5376
+ "application/json": components["schemas"]["ErrorMessageDto"];
5377
+ };
5378
+ };
5379
+ 401: components["responses"]["Unauthorized"];
5380
+ 403: components["responses"]["Forbidden"];
5381
+ /** @description Workspace or session not found */
5382
+ 404: {
5383
+ headers: {
5384
+ [name: string]: unknown;
5385
+ };
5386
+ content: {
5387
+ "application/json": components["schemas"]["ErrorMessageDto"];
5388
+ };
5389
+ };
5390
+ };
5391
+ };
5392
+ postGithubConnectByOrg: {
5393
+ parameters: {
5394
+ query?: never;
5395
+ header?: never;
5396
+ path: {
5397
+ workspaceId: components["parameters"]["WorkspaceId"];
5398
+ };
5399
+ cookie?: never;
5400
+ };
5401
+ requestBody: {
5402
+ content: {
5403
+ "application/json": components["schemas"]["GithubConnectByOrgRequestDto"];
5404
+ };
5405
+ };
5406
+ responses: {
5407
+ /** @description Connect result */
5408
+ 200: {
5409
+ headers: {
5410
+ [name: string]: unknown;
5411
+ };
5412
+ content: {
5413
+ "application/json": components["schemas"]["GithubConnectByOrgResponseDto"];
5414
+ };
5415
+ };
5416
+ /** @description Invalid session or account */
5417
+ 400: {
5418
+ headers: {
5419
+ [name: string]: unknown;
5420
+ };
5421
+ content: {
5422
+ "application/json": components["schemas"]["ErrorMessageDto"];
5423
+ };
5424
+ };
5425
+ 401: components["responses"]["Unauthorized"];
5426
+ 403: components["responses"]["Forbidden"];
5427
+ /** @description Workspace or session not found */
5428
+ 404: {
5429
+ headers: {
5430
+ [name: string]: unknown;
5431
+ };
5432
+ content: {
5433
+ "application/json": components["schemas"]["ErrorMessageDto"];
5434
+ };
5435
+ };
5436
+ /** @description GitHub installation already linked to another workspace */
5437
+ 409: {
5438
+ headers: {
5439
+ [name: string]: unknown;
5440
+ };
5441
+ content: {
5442
+ /**
5443
+ * @example {
5444
+ * "error": "installation_already_linked"
5445
+ * }
5446
+ */
5447
+ "application/json": components["schemas"]["ErrorMessageDto"];
5448
+ };
5449
+ };
5450
+ /** @description GitHub API error */
5451
+ 503: {
5452
+ headers: {
5453
+ [name: string]: unknown;
5454
+ };
5455
+ content: {
5456
+ "application/json": components["schemas"]["ErrorMessageDto"];
5457
+ };
5458
+ };
5459
+ };
5460
+ };
5047
5461
  refreshWorkspaceAiTool: {
5048
5462
  parameters: {
5049
5463
  query?: never;
@@ -5301,6 +5715,47 @@ export interface operations {
5301
5715
  };
5302
5716
  };
5303
5717
  };
5718
+ getGithubUserOauthCallback: {
5719
+ parameters: {
5720
+ query: {
5721
+ state: string;
5722
+ code?: string;
5723
+ error?: string;
5724
+ error_description?: string;
5725
+ };
5726
+ header?: never;
5727
+ path?: never;
5728
+ cookie?: never;
5729
+ };
5730
+ requestBody?: never;
5731
+ responses: {
5732
+ /** @description Redirect to ThinkAI SPA with account picker session or error */
5733
+ 302: {
5734
+ headers: {
5735
+ [name: string]: unknown;
5736
+ };
5737
+ content?: never;
5738
+ };
5739
+ /** @description Workspace store not configured */
5740
+ 501: {
5741
+ headers: {
5742
+ [name: string]: unknown;
5743
+ };
5744
+ content: {
5745
+ "application/json": components["schemas"]["ErrorMessageDto"];
5746
+ };
5747
+ };
5748
+ /** @description SPA origin or GitHub OAuth configuration missing */
5749
+ 503: {
5750
+ headers: {
5751
+ [name: string]: unknown;
5752
+ };
5753
+ content: {
5754
+ "application/json": components["schemas"]["ErrorMessageDto"];
5755
+ };
5756
+ };
5757
+ };
5758
+ };
5304
5759
  postGithubWebhook: {
5305
5760
  parameters: {
5306
5761
  query?: never;
@@ -7619,5 +8074,150 @@ export interface operations {
7619
8074
  };
7620
8075
  };
7621
8076
  };
8077
+ listWorkspaceAbsences: {
8078
+ parameters: {
8079
+ query?: {
8080
+ /** @description Start of date window (ISO YYYY-MM-DD). Defaults to today. */
8081
+ from?: string;
8082
+ /** @description End of date window (ISO YYYY-MM-DD). Defaults to 90 days from today. */
8083
+ to?: string;
8084
+ };
8085
+ header?: never;
8086
+ path: {
8087
+ workspaceId: components["parameters"]["WorkspaceId"];
8088
+ };
8089
+ cookie?: never;
8090
+ };
8091
+ requestBody?: never;
8092
+ responses: {
8093
+ /** @description Absence list with last sync timestamp */
8094
+ 200: {
8095
+ headers: {
8096
+ [name: string]: unknown;
8097
+ };
8098
+ content: {
8099
+ /**
8100
+ * @example {
8101
+ * "absences": [
8102
+ * {
8103
+ * "source": "personio",
8104
+ * "employeeEmail": "alice@example.com",
8105
+ * "absenceType": "Vacation",
8106
+ * "startDate": "2025-07-01",
8107
+ * "endDate": "2025-07-05",
8108
+ * "halfDayStart": false,
8109
+ * "halfDayEnd": false,
8110
+ * "status": "approved"
8111
+ * }
8112
+ * ],
8113
+ * "syncedAt": "2025-06-30T08:00:00.000Z"
8114
+ * }
8115
+ */
8116
+ "application/json": components["schemas"]["WorkspaceAbsenceListDto"];
8117
+ };
8118
+ };
8119
+ 401: components["responses"]["Unauthorized"];
8120
+ 403: components["responses"]["Forbidden"];
8121
+ };
8122
+ };
8123
+ getHrisSyncStatus: {
8124
+ parameters: {
8125
+ query?: never;
8126
+ header?: never;
8127
+ path: {
8128
+ workspaceId: components["parameters"]["WorkspaceId"];
8129
+ };
8130
+ cookie?: never;
8131
+ };
8132
+ requestBody?: never;
8133
+ responses: {
8134
+ /** @description Sync status list */
8135
+ 200: {
8136
+ headers: {
8137
+ [name: string]: unknown;
8138
+ };
8139
+ content: {
8140
+ /**
8141
+ * @example {
8142
+ * "statuses": [
8143
+ * {
8144
+ * "provider": "personio",
8145
+ * "lastSyncAt": "2025-06-30T08:00:00.000Z",
8146
+ * "status": "ok"
8147
+ * }
8148
+ * ]
8149
+ * }
8150
+ */
8151
+ "application/json": components["schemas"]["HrisSyncStatusListDto"];
8152
+ };
8153
+ };
8154
+ 401: components["responses"]["Unauthorized"];
8155
+ 403: components["responses"]["Forbidden"];
8156
+ };
8157
+ };
8158
+ triggerHrisSync: {
8159
+ parameters: {
8160
+ query?: never;
8161
+ header?: never;
8162
+ path: {
8163
+ workspaceId: components["parameters"]["WorkspaceId"];
8164
+ };
8165
+ cookie?: never;
8166
+ };
8167
+ requestBody?: never;
8168
+ responses: {
8169
+ /** @description Sync completed successfully */
8170
+ 200: {
8171
+ headers: {
8172
+ [name: string]: unknown;
8173
+ };
8174
+ content: {
8175
+ /**
8176
+ * @example {
8177
+ * "status": "ok",
8178
+ * "employeeCount": 42,
8179
+ * "absenceCount": 7,
8180
+ * "durationMs": 1234
8181
+ * }
8182
+ */
8183
+ "application/json": components["schemas"]["HrisTriggerSyncResultDto"];
8184
+ };
8185
+ };
8186
+ 401: components["responses"]["Unauthorized"];
8187
+ 403: components["responses"]["Forbidden"];
8188
+ /** @description No HRIS source configured for this workspace */
8189
+ 422: {
8190
+ headers: {
8191
+ [name: string]: unknown;
8192
+ };
8193
+ content: {
8194
+ /**
8195
+ * @example {
8196
+ * "status": "skipped",
8197
+ * "code": "no_personio_source",
8198
+ * "reason": "no_personio_source"
8199
+ * }
8200
+ */
8201
+ "application/json": components["schemas"]["HrisTriggerSyncResultDto"];
8202
+ };
8203
+ };
8204
+ /** @description Sync failed (Personio API error, decryption failure, etc.) */
8205
+ 500: {
8206
+ headers: {
8207
+ [name: string]: unknown;
8208
+ };
8209
+ content: {
8210
+ /**
8211
+ * @example {
8212
+ * "status": "error",
8213
+ * "code": "hris_sync_failed",
8214
+ * "error": "Personio employees API 401"
8215
+ * }
8216
+ */
8217
+ "application/json": components["schemas"]["HrisTriggerSyncResultDto"];
8218
+ };
8219
+ };
8220
+ };
8221
+ };
7622
8222
  }
7623
8223
  //# sourceMappingURL=openapi.d.ts.map