@thinkai/tai-api-contract 2.149.0 → 2.151.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/generated/openapi.d.ts +1191 -323
- package/dist/generated/openapi.d.ts.map +1 -1
- package/openapi/openapi.yaml +583 -1
- package/package.json +1 -1
- package/src/generated/openapi.ts +1191 -323
|
@@ -3700,6 +3700,114 @@ export interface paths {
|
|
|
3700
3700
|
patch?: never;
|
|
3701
3701
|
trace?: never;
|
|
3702
3702
|
};
|
|
3703
|
+
"/notifications/email/unsubscribe": {
|
|
3704
|
+
parameters: {
|
|
3705
|
+
query?: never;
|
|
3706
|
+
header?: never;
|
|
3707
|
+
path?: never;
|
|
3708
|
+
cookie?: never;
|
|
3709
|
+
};
|
|
3710
|
+
/**
|
|
3711
|
+
* Confirm a Message Center email unsubscribe (public)
|
|
3712
|
+
* @description **Unauthenticated.** Mail scanners prefetch GET, so this page does not change preferences. Status email cannot be turned off; the page says so. Other categories show a button that POSTs the same token. An unknown or expired token is `400` HTML.
|
|
3713
|
+
*/
|
|
3714
|
+
get: operations["getNotificationEmailUnsubscribe"];
|
|
3715
|
+
put?: never;
|
|
3716
|
+
/**
|
|
3717
|
+
* Apply a Message Center email unsubscribe (public)
|
|
3718
|
+
* @description **Unauthenticated.** Sets that category's email cell to `off` when the category allows off. A status token leaves status email unchanged. Redirects `303` to `{spa}/settings?tab=preferences`. An unknown or expired token is `400` HTML and does not change preferences.
|
|
3719
|
+
*/
|
|
3720
|
+
post: operations["postNotificationEmailUnsubscribe"];
|
|
3721
|
+
delete?: never;
|
|
3722
|
+
options?: never;
|
|
3723
|
+
head?: never;
|
|
3724
|
+
patch?: never;
|
|
3725
|
+
trace?: never;
|
|
3726
|
+
};
|
|
3727
|
+
"/workspaces/{workspaceId}/integrations/slack/install-url": {
|
|
3728
|
+
parameters: {
|
|
3729
|
+
query?: never;
|
|
3730
|
+
header?: never;
|
|
3731
|
+
path?: never;
|
|
3732
|
+
cookie?: never;
|
|
3733
|
+
};
|
|
3734
|
+
/**
|
|
3735
|
+
* Slack install URL for Message Center
|
|
3736
|
+
* @description Workspace admin only. Returns the Slack OAuth authorize URL. State is stored server-side and names this workspace and the signed-in admin. Editor or viewer is `403` with `code` `workspace_admin_required`. Missing Slack app settings are `503` with `code` `slack_not_configured`.
|
|
3737
|
+
*/
|
|
3738
|
+
get: operations["getSlackInstallUrl"];
|
|
3739
|
+
put?: never;
|
|
3740
|
+
post?: never;
|
|
3741
|
+
delete?: never;
|
|
3742
|
+
options?: never;
|
|
3743
|
+
head?: never;
|
|
3744
|
+
patch?: never;
|
|
3745
|
+
trace?: never;
|
|
3746
|
+
};
|
|
3747
|
+
"/integrations/slack/callback": {
|
|
3748
|
+
parameters: {
|
|
3749
|
+
query?: never;
|
|
3750
|
+
header?: never;
|
|
3751
|
+
path?: never;
|
|
3752
|
+
cookie?: never;
|
|
3753
|
+
};
|
|
3754
|
+
/**
|
|
3755
|
+
* Slack OAuth callback
|
|
3756
|
+
* @description Browser return from Slack. The provider redirect does not include the API bearer token. `state` was issued by `getSlackInstallUrl` to a signed-in admin and is single-use. The bot token is stored encrypted only when that user is still a workspace admin. Success redirects to `{spa}/settings?tab=preferences&chat=slack`. Failures redirect to the same page with `slack=error`. The token is never in the redirect.
|
|
3757
|
+
*/
|
|
3758
|
+
get: operations["getSlackOauthCallback"];
|
|
3759
|
+
put?: never;
|
|
3760
|
+
post?: never;
|
|
3761
|
+
delete?: never;
|
|
3762
|
+
options?: never;
|
|
3763
|
+
head?: never;
|
|
3764
|
+
patch?: never;
|
|
3765
|
+
trace?: never;
|
|
3766
|
+
};
|
|
3767
|
+
"/workspaces/{workspaceId}/integrations/slack": {
|
|
3768
|
+
parameters: {
|
|
3769
|
+
query?: never;
|
|
3770
|
+
header?: never;
|
|
3771
|
+
path?: never;
|
|
3772
|
+
cookie?: never;
|
|
3773
|
+
};
|
|
3774
|
+
/**
|
|
3775
|
+
* Slack connection status
|
|
3776
|
+
* @description Any workspace member. `{ connected, channelName }`. `channelName` is null until an admin saves a channel. The bot token is never returned.
|
|
3777
|
+
*/
|
|
3778
|
+
get: operations["getSlackIntegration"];
|
|
3779
|
+
put?: never;
|
|
3780
|
+
post?: never;
|
|
3781
|
+
/**
|
|
3782
|
+
* Disconnect Slack
|
|
3783
|
+
* @description Workspace admin only. Removes the bot token and saved channel. Later Message Center delivery does not post to Slack.
|
|
3784
|
+
*/
|
|
3785
|
+
delete: operations["deleteSlackIntegration"];
|
|
3786
|
+
options?: never;
|
|
3787
|
+
head?: never;
|
|
3788
|
+
patch?: never;
|
|
3789
|
+
trace?: never;
|
|
3790
|
+
};
|
|
3791
|
+
"/workspaces/{workspaceId}/integrations/slack/channel": {
|
|
3792
|
+
parameters: {
|
|
3793
|
+
query?: never;
|
|
3794
|
+
header?: never;
|
|
3795
|
+
path?: never;
|
|
3796
|
+
cookie?: never;
|
|
3797
|
+
};
|
|
3798
|
+
get?: never;
|
|
3799
|
+
/**
|
|
3800
|
+
* Save the Slack channel for Message Center
|
|
3801
|
+
* @description Workspace admin only. Body `{ channelId }`. Slack must already be connected. The response is the same status object as `getSlackIntegration`, with the channel name Slack returned. Unknown or malformed `channelId` is `400` `invalid_slack_channel`. Not connected is `409` `slack_not_connected`.
|
|
3802
|
+
*/
|
|
3803
|
+
put: operations["putSlackChannel"];
|
|
3804
|
+
post?: never;
|
|
3805
|
+
delete?: never;
|
|
3806
|
+
options?: never;
|
|
3807
|
+
head?: never;
|
|
3808
|
+
patch?: never;
|
|
3809
|
+
trace?: never;
|
|
3810
|
+
};
|
|
3703
3811
|
"/workspaces/{workspaceId}/notifications": {
|
|
3704
3812
|
parameters: {
|
|
3705
3813
|
query?: never;
|
|
@@ -4098,6 +4206,90 @@ export interface paths {
|
|
|
4098
4206
|
patch?: never;
|
|
4099
4207
|
trace?: never;
|
|
4100
4208
|
};
|
|
4209
|
+
"/workspaces/{workspaceId}/integrations/teams/install-url": {
|
|
4210
|
+
parameters: {
|
|
4211
|
+
query?: never;
|
|
4212
|
+
header?: never;
|
|
4213
|
+
path?: never;
|
|
4214
|
+
cookie?: never;
|
|
4215
|
+
};
|
|
4216
|
+
/**
|
|
4217
|
+
* Microsoft sign-in URL for Teams notification delivery
|
|
4218
|
+
* @description Workspace **admin** only. Returns the Microsoft authorize URL. State carries the workspace and the signed-in admin. Editor or viewer is `403` `workspace_admin_required`.
|
|
4219
|
+
*/
|
|
4220
|
+
get: operations["getWorkspaceTeamsInstallUrl"];
|
|
4221
|
+
put?: never;
|
|
4222
|
+
post?: never;
|
|
4223
|
+
delete?: never;
|
|
4224
|
+
options?: never;
|
|
4225
|
+
head?: never;
|
|
4226
|
+
patch?: never;
|
|
4227
|
+
trace?: never;
|
|
4228
|
+
};
|
|
4229
|
+
"/integrations/teams/callback": {
|
|
4230
|
+
parameters: {
|
|
4231
|
+
query?: never;
|
|
4232
|
+
header?: never;
|
|
4233
|
+
path?: never;
|
|
4234
|
+
cookie?: never;
|
|
4235
|
+
};
|
|
4236
|
+
/**
|
|
4237
|
+
* Finish Teams Microsoft sign-in
|
|
4238
|
+
* @description Public redirect target. The one-time state was minted by a signed-in admin and still requires that user to be a workspace admin. Stores the bot token encrypted and redirects to `{spa}/settings?tab=preferences&chat=teams`.
|
|
4239
|
+
*/
|
|
4240
|
+
get: operations["getTeamsIntegrationCallback"];
|
|
4241
|
+
put?: never;
|
|
4242
|
+
post?: never;
|
|
4243
|
+
delete?: never;
|
|
4244
|
+
options?: never;
|
|
4245
|
+
head?: never;
|
|
4246
|
+
patch?: never;
|
|
4247
|
+
trace?: never;
|
|
4248
|
+
};
|
|
4249
|
+
"/workspaces/{workspaceId}/integrations/teams": {
|
|
4250
|
+
parameters: {
|
|
4251
|
+
query?: never;
|
|
4252
|
+
header?: never;
|
|
4253
|
+
path?: never;
|
|
4254
|
+
cookie?: never;
|
|
4255
|
+
};
|
|
4256
|
+
/**
|
|
4257
|
+
* Teams connection status
|
|
4258
|
+
* @description Any workspace member. `{ connected, channelName }`. Never returns the bot token. `channelName` is null until an admin saves a channel.
|
|
4259
|
+
*/
|
|
4260
|
+
get: operations["getWorkspaceTeamsConnection"];
|
|
4261
|
+
put?: never;
|
|
4262
|
+
post?: never;
|
|
4263
|
+
/**
|
|
4264
|
+
* Disconnect Teams
|
|
4265
|
+
* @description Workspace **admin** only. Later Message Center posts do not go to Teams. Member chat cells stay unchanged.
|
|
4266
|
+
*/
|
|
4267
|
+
delete: operations["deleteWorkspaceTeamsConnection"];
|
|
4268
|
+
options?: never;
|
|
4269
|
+
head?: never;
|
|
4270
|
+
patch?: never;
|
|
4271
|
+
trace?: never;
|
|
4272
|
+
};
|
|
4273
|
+
"/workspaces/{workspaceId}/integrations/teams/channel": {
|
|
4274
|
+
parameters: {
|
|
4275
|
+
query?: never;
|
|
4276
|
+
header?: never;
|
|
4277
|
+
path?: never;
|
|
4278
|
+
cookie?: never;
|
|
4279
|
+
};
|
|
4280
|
+
get?: never;
|
|
4281
|
+
/**
|
|
4282
|
+
* Save the Teams channel for notification posts
|
|
4283
|
+
* @description Workspace **admin** only. Body `{ channelId }`. The channel must be visible to the connected Microsoft account. Until a channel is saved, channel-mode delivery is skipped with `chat_channel_unset`.
|
|
4284
|
+
*/
|
|
4285
|
+
put: operations["putWorkspaceTeamsChannel"];
|
|
4286
|
+
post?: never;
|
|
4287
|
+
delete?: never;
|
|
4288
|
+
options?: never;
|
|
4289
|
+
head?: never;
|
|
4290
|
+
patch?: never;
|
|
4291
|
+
trace?: never;
|
|
4292
|
+
};
|
|
4101
4293
|
"/workspaces/{workspaceId}/integrations/zelt/authorize-url": {
|
|
4102
4294
|
parameters: {
|
|
4103
4295
|
query?: never;
|
|
@@ -4362,6 +4554,19 @@ export interface paths {
|
|
|
4362
4554
|
export type webhooks = Record<string, never>;
|
|
4363
4555
|
export interface components {
|
|
4364
4556
|
schemas: {
|
|
4557
|
+
TeamsInstallUrlDto: {
|
|
4558
|
+
/** Format: uri */
|
|
4559
|
+
url: string;
|
|
4560
|
+
};
|
|
4561
|
+
TeamsConnectionDto: {
|
|
4562
|
+
/** @description True after an admin completes Microsoft sign-in. */
|
|
4563
|
+
connected: boolean;
|
|
4564
|
+
/** @description Selected channel display name. Null until an admin saves a channel. */
|
|
4565
|
+
channelName: string | null;
|
|
4566
|
+
};
|
|
4567
|
+
TeamsChannelBodyDto: {
|
|
4568
|
+
channelId: string;
|
|
4569
|
+
};
|
|
4365
4570
|
ErrorMessageDto: {
|
|
4366
4571
|
error: string;
|
|
4367
4572
|
/** @description Machine-readable error code when present (for example `last_admin`). */
|
|
@@ -8017,6 +8222,18 @@ export interface components {
|
|
|
8017
8222
|
slack: components["schemas"]["NotificationChatChannelsDto"];
|
|
8018
8223
|
teams: components["schemas"]["NotificationChatChannelsDto"];
|
|
8019
8224
|
};
|
|
8225
|
+
SlackInstallUrlDto: {
|
|
8226
|
+
/** @description Slack OAuth authorize URL. The bot token is not included. */
|
|
8227
|
+
url: string;
|
|
8228
|
+
};
|
|
8229
|
+
SlackIntegrationStatusDto: {
|
|
8230
|
+
connected: boolean;
|
|
8231
|
+
/** @description Saved channel name. Null until an admin saves a channel, and when disconnected. */
|
|
8232
|
+
channelName: string | null;
|
|
8233
|
+
};
|
|
8234
|
+
SlackChannelBodyDto: {
|
|
8235
|
+
channelId: string;
|
|
8236
|
+
};
|
|
8020
8237
|
/** @description Partial email cells. Omitted keys are filled with defaults on save (`status` = `digest`, other keys = `off`). */
|
|
8021
8238
|
PutNotificationEmailChannelsDto: {
|
|
8022
8239
|
status?: components["schemas"]["NotificationEmailStatusMode"];
|
|
@@ -10483,6 +10700,9 @@ export interface components {
|
|
|
10483
10700
|
headers: never;
|
|
10484
10701
|
pathItems: never;
|
|
10485
10702
|
}
|
|
10703
|
+
export type TeamsInstallUrlDto = components['schemas']['TeamsInstallUrlDto'];
|
|
10704
|
+
export type TeamsConnectionDto = components['schemas']['TeamsConnectionDto'];
|
|
10705
|
+
export type TeamsChannelBodyDto = components['schemas']['TeamsChannelBodyDto'];
|
|
10486
10706
|
export type ErrorMessageDto = components['schemas']['ErrorMessageDto'];
|
|
10487
10707
|
export type TeamMemberDto = components['schemas']['TeamMemberDto'];
|
|
10488
10708
|
export type TeamMemberListDto = components['schemas']['TeamMemberListDto'];
|
|
@@ -10806,6 +11026,9 @@ export type NotificationChatDeliveryMode = components['schemas']['NotificationCh
|
|
|
10806
11026
|
export type NotificationEmailChannelsDto = components['schemas']['NotificationEmailChannelsDto'];
|
|
10807
11027
|
export type NotificationChatChannelsDto = components['schemas']['NotificationChatChannelsDto'];
|
|
10808
11028
|
export type NotificationChannelsDto = components['schemas']['NotificationChannelsDto'];
|
|
11029
|
+
export type SlackInstallUrlDto = components['schemas']['SlackInstallUrlDto'];
|
|
11030
|
+
export type SlackIntegrationStatusDto = components['schemas']['SlackIntegrationStatusDto'];
|
|
11031
|
+
export type SlackChannelBodyDto = components['schemas']['SlackChannelBodyDto'];
|
|
10809
11032
|
export type PutNotificationEmailChannelsDto = components['schemas']['PutNotificationEmailChannelsDto'];
|
|
10810
11033
|
export type PutNotificationChatChannelsDto = components['schemas']['PutNotificationChatChannelsDto'];
|
|
10811
11034
|
export type PutNotificationChannelsDto = components['schemas']['PutNotificationChannelsDto'];
|
|
@@ -20678,139 +20901,80 @@ export interface operations {
|
|
|
20678
20901
|
};
|
|
20679
20902
|
};
|
|
20680
20903
|
};
|
|
20681
|
-
|
|
20904
|
+
getNotificationEmailUnsubscribe: {
|
|
20682
20905
|
parameters: {
|
|
20683
|
-
query
|
|
20684
|
-
|
|
20685
|
-
|
|
20686
|
-
/** @description `all` returns every severity. `needs_action` returns only `warning` and `destructive`. Omitted is `all`. */
|
|
20687
|
-
view?: "all" | "needs_action";
|
|
20688
|
-
/** @description Omit to include read and unread rows. `true` is unread only. `false` is read only. */
|
|
20689
|
-
unread?: boolean;
|
|
20906
|
+
query: {
|
|
20907
|
+
/** @description Opaque unsubscribe token from the email. Only its SHA-256 hash is stored. */
|
|
20908
|
+
token: string;
|
|
20690
20909
|
};
|
|
20691
20910
|
header?: never;
|
|
20692
|
-
path
|
|
20693
|
-
workspaceId: components["parameters"]["WorkspaceId"];
|
|
20694
|
-
};
|
|
20911
|
+
path?: never;
|
|
20695
20912
|
cookie?: never;
|
|
20696
20913
|
};
|
|
20697
20914
|
requestBody?: never;
|
|
20698
20915
|
responses: {
|
|
20699
|
-
/** @description
|
|
20916
|
+
/** @description Confirm page. Preferences are unchanged. */
|
|
20700
20917
|
200: {
|
|
20701
20918
|
headers: {
|
|
20702
20919
|
[name: string]: unknown;
|
|
20703
20920
|
};
|
|
20704
20921
|
content: {
|
|
20705
|
-
"
|
|
20922
|
+
"text/html": string;
|
|
20706
20923
|
};
|
|
20707
20924
|
};
|
|
20708
|
-
/** @description
|
|
20925
|
+
/** @description Unknown or expired token */
|
|
20709
20926
|
400: {
|
|
20710
20927
|
headers: {
|
|
20711
20928
|
[name: string]: unknown;
|
|
20712
20929
|
};
|
|
20713
20930
|
content: {
|
|
20714
|
-
"
|
|
20931
|
+
"text/html": string;
|
|
20715
20932
|
};
|
|
20716
20933
|
};
|
|
20717
|
-
401: components["responses"]["Unauthorized"];
|
|
20718
20934
|
};
|
|
20719
20935
|
};
|
|
20720
|
-
|
|
20936
|
+
postNotificationEmailUnsubscribe: {
|
|
20721
20937
|
parameters: {
|
|
20722
|
-
query
|
|
20723
|
-
|
|
20724
|
-
|
|
20725
|
-
workspaceId: components["parameters"]["WorkspaceId"];
|
|
20938
|
+
query: {
|
|
20939
|
+
/** @description Opaque unsubscribe token from the email. Only its SHA-256 hash is stored. */
|
|
20940
|
+
token: string;
|
|
20726
20941
|
};
|
|
20942
|
+
header?: never;
|
|
20943
|
+
path?: never;
|
|
20727
20944
|
cookie?: never;
|
|
20728
20945
|
};
|
|
20729
20946
|
requestBody?: never;
|
|
20730
20947
|
responses: {
|
|
20731
|
-
/** @description
|
|
20948
|
+
/** @description Preference updated when no SPA origin is configured. */
|
|
20732
20949
|
200: {
|
|
20733
20950
|
headers: {
|
|
20734
20951
|
[name: string]: unknown;
|
|
20735
20952
|
};
|
|
20736
20953
|
content: {
|
|
20737
|
-
"
|
|
20738
|
-
};
|
|
20739
|
-
};
|
|
20740
|
-
401: components["responses"]["Unauthorized"];
|
|
20741
|
-
};
|
|
20742
|
-
};
|
|
20743
|
-
postNotificationRead: {
|
|
20744
|
-
parameters: {
|
|
20745
|
-
query?: never;
|
|
20746
|
-
header?: never;
|
|
20747
|
-
path: {
|
|
20748
|
-
workspaceId: components["parameters"]["WorkspaceId"];
|
|
20749
|
-
id: components["parameters"]["NotificationId"];
|
|
20750
|
-
};
|
|
20751
|
-
cookie?: never;
|
|
20752
|
-
};
|
|
20753
|
-
requestBody?: never;
|
|
20754
|
-
responses: {
|
|
20755
|
-
/** @description Updated */
|
|
20756
|
-
204: {
|
|
20757
|
-
headers: {
|
|
20758
|
-
[name: string]: unknown;
|
|
20954
|
+
"text/html": string;
|
|
20759
20955
|
};
|
|
20760
|
-
content?: never;
|
|
20761
20956
|
};
|
|
20762
|
-
|
|
20763
|
-
|
|
20764
|
-
};
|
|
20765
|
-
postNotificationsReadAll: {
|
|
20766
|
-
parameters: {
|
|
20767
|
-
query?: never;
|
|
20768
|
-
header?: never;
|
|
20769
|
-
path: {
|
|
20770
|
-
workspaceId: components["parameters"]["WorkspaceId"];
|
|
20771
|
-
};
|
|
20772
|
-
cookie?: never;
|
|
20773
|
-
};
|
|
20774
|
-
requestBody?: never;
|
|
20775
|
-
responses: {
|
|
20776
|
-
/** @description Updated */
|
|
20777
|
-
204: {
|
|
20957
|
+
/** @description Preference updated, or left unchanged for status email. */
|
|
20958
|
+
303: {
|
|
20778
20959
|
headers: {
|
|
20960
|
+
/** @description `{spa}/settings?tab=preferences` */
|
|
20961
|
+
Location?: string;
|
|
20779
20962
|
[name: string]: unknown;
|
|
20780
20963
|
};
|
|
20781
20964
|
content?: never;
|
|
20782
20965
|
};
|
|
20783
|
-
|
|
20784
|
-
|
|
20785
|
-
};
|
|
20786
|
-
postAiStrategyRecommend: {
|
|
20787
|
-
parameters: {
|
|
20788
|
-
query?: never;
|
|
20789
|
-
header?: never;
|
|
20790
|
-
path: {
|
|
20791
|
-
workspaceId: components["parameters"]["WorkspaceId"];
|
|
20792
|
-
};
|
|
20793
|
-
cookie?: never;
|
|
20794
|
-
};
|
|
20795
|
-
requestBody: {
|
|
20796
|
-
content: {
|
|
20797
|
-
"application/json": components["schemas"]["AiStrategyRecommendBodyDto"];
|
|
20798
|
-
};
|
|
20799
|
-
};
|
|
20800
|
-
responses: {
|
|
20801
|
-
/** @description Plan */
|
|
20802
|
-
200: {
|
|
20966
|
+
/** @description Unknown or expired token */
|
|
20967
|
+
400: {
|
|
20803
20968
|
headers: {
|
|
20804
20969
|
[name: string]: unknown;
|
|
20805
20970
|
};
|
|
20806
20971
|
content: {
|
|
20807
|
-
"
|
|
20972
|
+
"text/html": string;
|
|
20808
20973
|
};
|
|
20809
20974
|
};
|
|
20810
|
-
401: components["responses"]["Unauthorized"];
|
|
20811
20975
|
};
|
|
20812
20976
|
};
|
|
20813
|
-
|
|
20977
|
+
getSlackInstallUrl: {
|
|
20814
20978
|
parameters: {
|
|
20815
20979
|
query?: never;
|
|
20816
20980
|
header?: never;
|
|
@@ -20821,63 +20985,33 @@ export interface operations {
|
|
|
20821
20985
|
};
|
|
20822
20986
|
requestBody?: never;
|
|
20823
20987
|
responses: {
|
|
20824
|
-
/** @description
|
|
20988
|
+
/** @description Slack authorize URL */
|
|
20825
20989
|
200: {
|
|
20826
20990
|
headers: {
|
|
20827
20991
|
[name: string]: unknown;
|
|
20828
20992
|
};
|
|
20829
20993
|
content: {
|
|
20830
|
-
"application/json": components["schemas"]["
|
|
20994
|
+
"application/json": components["schemas"]["SlackInstallUrlDto"];
|
|
20831
20995
|
};
|
|
20832
20996
|
};
|
|
20833
|
-
|
|
20834
|
-
|
|
20835
|
-
|
|
20836
|
-
[name: string]: unknown;
|
|
20837
|
-
};
|
|
20838
|
-
content: {
|
|
20839
|
-
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
20840
|
-
};
|
|
20841
|
-
};
|
|
20842
|
-
401: components["responses"]["Unauthorized"];
|
|
20843
|
-
403: components["responses"]["Forbidden"];
|
|
20844
|
-
/** @description Workspace does not exist */
|
|
20845
|
-
404: {
|
|
20997
|
+
401: components["responses"]["Unauthorized"];
|
|
20998
|
+
/** @description Caller is not a workspace admin */
|
|
20999
|
+
403: {
|
|
20846
21000
|
headers: {
|
|
20847
21001
|
[name: string]: unknown;
|
|
20848
21002
|
};
|
|
20849
21003
|
content: {
|
|
21004
|
+
/**
|
|
21005
|
+
* @example {
|
|
21006
|
+
* "error": "Forbidden",
|
|
21007
|
+
* "code": "workspace_admin_required"
|
|
21008
|
+
* }
|
|
21009
|
+
*/
|
|
20850
21010
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
20851
21011
|
};
|
|
20852
21012
|
};
|
|
20853
|
-
|
|
20854
|
-
|
|
20855
|
-
putJourneyProgress: {
|
|
20856
|
-
parameters: {
|
|
20857
|
-
query?: never;
|
|
20858
|
-
header?: never;
|
|
20859
|
-
path: {
|
|
20860
|
-
workspaceId: components["parameters"]["WorkspaceId"];
|
|
20861
|
-
};
|
|
20862
|
-
cookie?: never;
|
|
20863
|
-
};
|
|
20864
|
-
requestBody: {
|
|
20865
|
-
content: {
|
|
20866
|
-
"application/json": components["schemas"]["JourneyProgressUpdateDto"];
|
|
20867
|
-
};
|
|
20868
|
-
};
|
|
20869
|
-
responses: {
|
|
20870
|
-
/** @description Saved progress */
|
|
20871
|
-
200: {
|
|
20872
|
-
headers: {
|
|
20873
|
-
[name: string]: unknown;
|
|
20874
|
-
};
|
|
20875
|
-
content: {
|
|
20876
|
-
"application/json": components["schemas"]["JourneyProgressDto"];
|
|
20877
|
-
};
|
|
20878
|
-
};
|
|
20879
|
-
/** @description Body fails validation (non-array, invalid entries, too many steps) */
|
|
20880
|
-
400: {
|
|
21013
|
+
/** @description Workspace does not exist or malformed workspaceId */
|
|
21014
|
+
404: {
|
|
20881
21015
|
headers: {
|
|
20882
21016
|
[name: string]: unknown;
|
|
20883
21017
|
};
|
|
@@ -20885,94 +21019,78 @@ export interface operations {
|
|
|
20885
21019
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
20886
21020
|
};
|
|
20887
21021
|
};
|
|
20888
|
-
|
|
20889
|
-
|
|
20890
|
-
/** @description Workspace does not exist */
|
|
20891
|
-
404: {
|
|
21022
|
+
/** @description Slack app client id, secret, API origin, or SPA origin is unset */
|
|
21023
|
+
503: {
|
|
20892
21024
|
headers: {
|
|
20893
21025
|
[name: string]: unknown;
|
|
20894
21026
|
};
|
|
20895
21027
|
content: {
|
|
21028
|
+
/**
|
|
21029
|
+
* @example {
|
|
21030
|
+
* "error": "Slack is not configured",
|
|
21031
|
+
* "code": "slack_not_configured"
|
|
21032
|
+
* }
|
|
21033
|
+
*/
|
|
20896
21034
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
20897
21035
|
};
|
|
20898
21036
|
};
|
|
20899
21037
|
};
|
|
20900
21038
|
};
|
|
20901
|
-
|
|
21039
|
+
getSlackOauthCallback: {
|
|
20902
21040
|
parameters: {
|
|
20903
|
-
query
|
|
20904
|
-
|
|
20905
|
-
|
|
20906
|
-
|
|
20907
|
-
};
|
|
20908
|
-
requestBody?: never;
|
|
20909
|
-
responses: {
|
|
20910
|
-
/** @description Preferences */
|
|
20911
|
-
200: {
|
|
20912
|
-
headers: {
|
|
20913
|
-
[name: string]: unknown;
|
|
20914
|
-
};
|
|
20915
|
-
content: {
|
|
20916
|
-
"application/json": components["schemas"]["PreferencesDto"];
|
|
20917
|
-
};
|
|
21041
|
+
query: {
|
|
21042
|
+
code?: string;
|
|
21043
|
+
state: string;
|
|
21044
|
+
error?: string;
|
|
20918
21045
|
};
|
|
20919
|
-
401: components["responses"]["Unauthorized"];
|
|
20920
|
-
};
|
|
20921
|
-
};
|
|
20922
|
-
putMyPreferences: {
|
|
20923
|
-
parameters: {
|
|
20924
|
-
query?: never;
|
|
20925
21046
|
header?: never;
|
|
20926
21047
|
path?: never;
|
|
20927
21048
|
cookie?: never;
|
|
20928
21049
|
};
|
|
20929
|
-
requestBody
|
|
20930
|
-
content: {
|
|
20931
|
-
"application/json": components["schemas"]["PutPreferencesBodyDto"];
|
|
20932
|
-
};
|
|
20933
|
-
};
|
|
21050
|
+
requestBody?: never;
|
|
20934
21051
|
responses: {
|
|
20935
|
-
/** @description
|
|
20936
|
-
|
|
21052
|
+
/** @description Redirect to Settings → Preferences */
|
|
21053
|
+
302: {
|
|
20937
21054
|
headers: {
|
|
21055
|
+
Location?: string;
|
|
20938
21056
|
[name: string]: unknown;
|
|
20939
21057
|
};
|
|
20940
|
-
content
|
|
20941
|
-
"application/json": components["schemas"]["PreferencesDto"];
|
|
20942
|
-
};
|
|
21058
|
+
content?: never;
|
|
20943
21059
|
};
|
|
20944
|
-
/** @description
|
|
20945
|
-
|
|
21060
|
+
/** @description Slack app settings are unset and no SPA origin is available */
|
|
21061
|
+
503: {
|
|
20946
21062
|
headers: {
|
|
20947
21063
|
[name: string]: unknown;
|
|
20948
21064
|
};
|
|
20949
21065
|
content: {
|
|
20950
|
-
"application/json": components["schemas"]["
|
|
21066
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
20951
21067
|
};
|
|
20952
21068
|
};
|
|
20953
|
-
401: components["responses"]["Unauthorized"];
|
|
20954
21069
|
};
|
|
20955
21070
|
};
|
|
20956
|
-
|
|
21071
|
+
getSlackIntegration: {
|
|
20957
21072
|
parameters: {
|
|
20958
21073
|
query?: never;
|
|
20959
21074
|
header?: never;
|
|
20960
|
-
path
|
|
21075
|
+
path: {
|
|
21076
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21077
|
+
};
|
|
20961
21078
|
cookie?: never;
|
|
20962
21079
|
};
|
|
20963
21080
|
requestBody?: never;
|
|
20964
21081
|
responses: {
|
|
20965
|
-
/** @description
|
|
21082
|
+
/** @description Slack connection status */
|
|
20966
21083
|
200: {
|
|
20967
21084
|
headers: {
|
|
20968
21085
|
[name: string]: unknown;
|
|
20969
21086
|
};
|
|
20970
21087
|
content: {
|
|
20971
|
-
"application/json": components["schemas"]["
|
|
21088
|
+
"application/json": components["schemas"]["SlackIntegrationStatusDto"];
|
|
20972
21089
|
};
|
|
20973
21090
|
};
|
|
20974
21091
|
401: components["responses"]["Unauthorized"];
|
|
20975
|
-
|
|
21092
|
+
403: components["responses"]["Forbidden"];
|
|
21093
|
+
/** @description Workspace does not exist or malformed workspaceId */
|
|
20976
21094
|
404: {
|
|
20977
21095
|
headers: {
|
|
20978
21096
|
[name: string]: unknown;
|
|
@@ -20983,65 +21101,52 @@ export interface operations {
|
|
|
20983
21101
|
};
|
|
20984
21102
|
};
|
|
20985
21103
|
};
|
|
20986
|
-
|
|
21104
|
+
deleteSlackIntegration: {
|
|
20987
21105
|
parameters: {
|
|
20988
21106
|
query?: never;
|
|
20989
21107
|
header?: never;
|
|
20990
|
-
path
|
|
20991
|
-
|
|
20992
|
-
};
|
|
20993
|
-
requestBody: {
|
|
20994
|
-
content: {
|
|
20995
|
-
"application/json": components["schemas"]["PutConsentBodyDto"];
|
|
21108
|
+
path: {
|
|
21109
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
20996
21110
|
};
|
|
21111
|
+
cookie?: never;
|
|
20997
21112
|
};
|
|
21113
|
+
requestBody?: never;
|
|
20998
21114
|
responses: {
|
|
20999
|
-
/** @description
|
|
21000
|
-
|
|
21115
|
+
/** @description Slack disconnected */
|
|
21116
|
+
204: {
|
|
21001
21117
|
headers: {
|
|
21002
21118
|
[name: string]: unknown;
|
|
21003
21119
|
};
|
|
21004
|
-
content
|
|
21005
|
-
"application/json": components["schemas"]["ConsentRecordDto"];
|
|
21006
|
-
};
|
|
21120
|
+
content?: never;
|
|
21007
21121
|
};
|
|
21008
|
-
|
|
21009
|
-
|
|
21122
|
+
401: components["responses"]["Unauthorized"];
|
|
21123
|
+
/** @description Caller is not a workspace admin */
|
|
21124
|
+
403: {
|
|
21010
21125
|
headers: {
|
|
21011
21126
|
[name: string]: unknown;
|
|
21012
21127
|
};
|
|
21013
21128
|
content: {
|
|
21014
|
-
|
|
21129
|
+
/**
|
|
21130
|
+
* @example {
|
|
21131
|
+
* "error": "Forbidden",
|
|
21132
|
+
* "code": "workspace_admin_required"
|
|
21133
|
+
* }
|
|
21134
|
+
*/
|
|
21135
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21015
21136
|
};
|
|
21016
21137
|
};
|
|
21017
|
-
|
|
21018
|
-
|
|
21019
|
-
};
|
|
21020
|
-
getAppShell: {
|
|
21021
|
-
parameters: {
|
|
21022
|
-
query?: {
|
|
21023
|
-
/** @description Optional workspace scope for banner, notifications, journey, and connectors. Omitted or unresolvable values yield the base shell without workspace extras. */
|
|
21024
|
-
workspaceId?: string;
|
|
21025
|
-
};
|
|
21026
|
-
header?: never;
|
|
21027
|
-
path?: never;
|
|
21028
|
-
cookie?: never;
|
|
21029
|
-
};
|
|
21030
|
-
requestBody?: never;
|
|
21031
|
-
responses: {
|
|
21032
|
-
/** @description App shell bootstrap payload. Workspace-scoped fields (`banner`, `unreadCount`, `journeyProgress`, `connectorsSnapshot`) appear only when `workspaceId` resolves to a workspace the caller belongs to. */
|
|
21033
|
-
200: {
|
|
21138
|
+
/** @description Workspace does not exist or malformed workspaceId */
|
|
21139
|
+
404: {
|
|
21034
21140
|
headers: {
|
|
21035
21141
|
[name: string]: unknown;
|
|
21036
21142
|
};
|
|
21037
21143
|
content: {
|
|
21038
|
-
"application/json": components["schemas"]["
|
|
21144
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21039
21145
|
};
|
|
21040
21146
|
};
|
|
21041
|
-
401: components["responses"]["Unauthorized"];
|
|
21042
21147
|
};
|
|
21043
21148
|
};
|
|
21044
|
-
|
|
21149
|
+
putSlackChannel: {
|
|
21045
21150
|
parameters: {
|
|
21046
21151
|
query?: never;
|
|
21047
21152
|
header?: never;
|
|
@@ -21052,31 +21157,51 @@ export interface operations {
|
|
|
21052
21157
|
};
|
|
21053
21158
|
requestBody: {
|
|
21054
21159
|
content: {
|
|
21055
|
-
"application/json": components["schemas"]["
|
|
21160
|
+
"application/json": components["schemas"]["SlackChannelBodyDto"];
|
|
21056
21161
|
};
|
|
21057
21162
|
};
|
|
21058
21163
|
responses: {
|
|
21059
|
-
/** @description
|
|
21164
|
+
/** @description Channel saved */
|
|
21060
21165
|
200: {
|
|
21061
21166
|
headers: {
|
|
21062
21167
|
[name: string]: unknown;
|
|
21063
21168
|
};
|
|
21064
21169
|
content: {
|
|
21065
|
-
"application/json": components["schemas"]["
|
|
21170
|
+
"application/json": components["schemas"]["SlackIntegrationStatusDto"];
|
|
21066
21171
|
};
|
|
21067
21172
|
};
|
|
21068
|
-
/** @description
|
|
21173
|
+
/** @description channelId is missing, malformed, or unknown to Slack */
|
|
21069
21174
|
400: {
|
|
21070
21175
|
headers: {
|
|
21071
21176
|
[name: string]: unknown;
|
|
21072
21177
|
};
|
|
21073
21178
|
content: {
|
|
21179
|
+
/**
|
|
21180
|
+
* @example {
|
|
21181
|
+
* "error": "Slack channel was not found",
|
|
21182
|
+
* "code": "invalid_slack_channel"
|
|
21183
|
+
* }
|
|
21184
|
+
*/
|
|
21074
21185
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21075
21186
|
};
|
|
21076
21187
|
};
|
|
21077
21188
|
401: components["responses"]["Unauthorized"];
|
|
21078
|
-
|
|
21079
|
-
|
|
21189
|
+
/** @description Caller is not a workspace admin */
|
|
21190
|
+
403: {
|
|
21191
|
+
headers: {
|
|
21192
|
+
[name: string]: unknown;
|
|
21193
|
+
};
|
|
21194
|
+
content: {
|
|
21195
|
+
/**
|
|
21196
|
+
* @example {
|
|
21197
|
+
* "error": "Forbidden",
|
|
21198
|
+
* "code": "workspace_admin_required"
|
|
21199
|
+
* }
|
|
21200
|
+
*/
|
|
21201
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21202
|
+
};
|
|
21203
|
+
};
|
|
21204
|
+
/** @description Workspace does not exist or malformed workspaceId */
|
|
21080
21205
|
404: {
|
|
21081
21206
|
headers: {
|
|
21082
21207
|
[name: string]: unknown;
|
|
@@ -21085,29 +21210,48 @@ export interface operations {
|
|
|
21085
21210
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21086
21211
|
};
|
|
21087
21212
|
};
|
|
21088
|
-
/** @description
|
|
21089
|
-
|
|
21213
|
+
/** @description Slack is not connected */
|
|
21214
|
+
409: {
|
|
21090
21215
|
headers: {
|
|
21091
21216
|
[name: string]: unknown;
|
|
21092
21217
|
};
|
|
21093
21218
|
content: {
|
|
21219
|
+
/**
|
|
21220
|
+
* @example {
|
|
21221
|
+
* "error": "Slack is not connected",
|
|
21222
|
+
* "code": "slack_not_connected"
|
|
21223
|
+
* }
|
|
21224
|
+
*/
|
|
21094
21225
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21095
21226
|
};
|
|
21096
21227
|
};
|
|
21097
|
-
/** @description
|
|
21098
|
-
|
|
21228
|
+
/** @description Slack rejected the lookup */
|
|
21229
|
+
502: {
|
|
21099
21230
|
headers: {
|
|
21100
21231
|
[name: string]: unknown;
|
|
21101
21232
|
};
|
|
21102
21233
|
content: {
|
|
21234
|
+
/**
|
|
21235
|
+
* @example {
|
|
21236
|
+
* "error": "Slack did not accept the channel",
|
|
21237
|
+
* "code": "slack_request_failed"
|
|
21238
|
+
* }
|
|
21239
|
+
*/
|
|
21103
21240
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21104
21241
|
};
|
|
21105
21242
|
};
|
|
21106
21243
|
};
|
|
21107
21244
|
};
|
|
21108
|
-
|
|
21245
|
+
listNotifications: {
|
|
21109
21246
|
parameters: {
|
|
21110
|
-
query?:
|
|
21247
|
+
query?: {
|
|
21248
|
+
limit?: number;
|
|
21249
|
+
offset?: number;
|
|
21250
|
+
/** @description `all` returns every severity. `needs_action` returns only `warning` and `destructive`. Omitted is `all`. */
|
|
21251
|
+
view?: "all" | "needs_action";
|
|
21252
|
+
/** @description Omit to include read and unread rows. `true` is unread only. `false` is read only. */
|
|
21253
|
+
unread?: boolean;
|
|
21254
|
+
};
|
|
21111
21255
|
header?: never;
|
|
21112
21256
|
path: {
|
|
21113
21257
|
workspaceId: components["parameters"]["WorkspaceId"];
|
|
@@ -21116,19 +21260,17 @@ export interface operations {
|
|
|
21116
21260
|
};
|
|
21117
21261
|
requestBody?: never;
|
|
21118
21262
|
responses: {
|
|
21119
|
-
/** @description
|
|
21263
|
+
/** @description Page of notifications */
|
|
21120
21264
|
200: {
|
|
21121
21265
|
headers: {
|
|
21122
21266
|
[name: string]: unknown;
|
|
21123
21267
|
};
|
|
21124
21268
|
content: {
|
|
21125
|
-
"application/json": components["schemas"]["
|
|
21269
|
+
"application/json": components["schemas"]["NotificationListDto"];
|
|
21126
21270
|
};
|
|
21127
21271
|
};
|
|
21128
|
-
|
|
21129
|
-
|
|
21130
|
-
/** @description Workspace does not exist */
|
|
21131
|
-
404: {
|
|
21272
|
+
/** @description Invalid `view` or `unread` */
|
|
21273
|
+
400: {
|
|
21132
21274
|
headers: {
|
|
21133
21275
|
[name: string]: unknown;
|
|
21134
21276
|
};
|
|
@@ -21136,9 +21278,10 @@ export interface operations {
|
|
|
21136
21278
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21137
21279
|
};
|
|
21138
21280
|
};
|
|
21281
|
+
401: components["responses"]["Unauthorized"];
|
|
21139
21282
|
};
|
|
21140
21283
|
};
|
|
21141
|
-
|
|
21284
|
+
getNotificationUnreadCount: {
|
|
21142
21285
|
parameters: {
|
|
21143
21286
|
query?: never;
|
|
21144
21287
|
header?: never;
|
|
@@ -21149,67 +21292,91 @@ export interface operations {
|
|
|
21149
21292
|
};
|
|
21150
21293
|
requestBody?: never;
|
|
21151
21294
|
responses: {
|
|
21152
|
-
/** @description
|
|
21295
|
+
/** @description Unread count for the current user in this workspace (respecting notification preferences) */
|
|
21153
21296
|
200: {
|
|
21154
21297
|
headers: {
|
|
21155
21298
|
[name: string]: unknown;
|
|
21156
21299
|
};
|
|
21157
21300
|
content: {
|
|
21158
|
-
"application/json": components["schemas"]["
|
|
21301
|
+
"application/json": components["schemas"]["NotificationUnreadCountDto"];
|
|
21159
21302
|
};
|
|
21160
21303
|
};
|
|
21161
21304
|
401: components["responses"]["Unauthorized"];
|
|
21162
|
-
403: components["responses"]["Forbidden"];
|
|
21163
|
-
/** @description Workspace does not exist */
|
|
21164
|
-
404: {
|
|
21165
|
-
headers: {
|
|
21166
|
-
[name: string]: unknown;
|
|
21167
|
-
};
|
|
21168
|
-
content: {
|
|
21169
|
-
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21170
|
-
};
|
|
21171
|
-
};
|
|
21172
21305
|
};
|
|
21173
21306
|
};
|
|
21174
|
-
|
|
21307
|
+
postNotificationRead: {
|
|
21175
21308
|
parameters: {
|
|
21176
21309
|
query?: never;
|
|
21177
21310
|
header?: never;
|
|
21178
21311
|
path: {
|
|
21179
21312
|
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21313
|
+
id: components["parameters"]["NotificationId"];
|
|
21180
21314
|
};
|
|
21181
21315
|
cookie?: never;
|
|
21182
21316
|
};
|
|
21183
21317
|
requestBody?: never;
|
|
21184
21318
|
responses: {
|
|
21185
|
-
/** @description
|
|
21186
|
-
|
|
21319
|
+
/** @description Updated */
|
|
21320
|
+
204: {
|
|
21187
21321
|
headers: {
|
|
21188
21322
|
[name: string]: unknown;
|
|
21189
21323
|
};
|
|
21190
|
-
content
|
|
21191
|
-
"application/json": components["schemas"]["YourAiJourneyAnalyticsDto"];
|
|
21192
|
-
};
|
|
21324
|
+
content?: never;
|
|
21193
21325
|
};
|
|
21194
21326
|
401: components["responses"]["Unauthorized"];
|
|
21195
|
-
|
|
21196
|
-
|
|
21197
|
-
|
|
21198
|
-
|
|
21199
|
-
|
|
21200
|
-
|
|
21201
|
-
|
|
21202
|
-
|
|
21327
|
+
};
|
|
21328
|
+
};
|
|
21329
|
+
postNotificationsReadAll: {
|
|
21330
|
+
parameters: {
|
|
21331
|
+
query?: never;
|
|
21332
|
+
header?: never;
|
|
21333
|
+
path: {
|
|
21334
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21335
|
+
};
|
|
21336
|
+
cookie?: never;
|
|
21337
|
+
};
|
|
21338
|
+
requestBody?: never;
|
|
21339
|
+
responses: {
|
|
21340
|
+
/** @description Updated */
|
|
21341
|
+
204: {
|
|
21342
|
+
headers: {
|
|
21343
|
+
[name: string]: unknown;
|
|
21203
21344
|
};
|
|
21345
|
+
content?: never;
|
|
21204
21346
|
};
|
|
21347
|
+
401: components["responses"]["Unauthorized"];
|
|
21205
21348
|
};
|
|
21206
21349
|
};
|
|
21207
|
-
|
|
21350
|
+
postAiStrategyRecommend: {
|
|
21208
21351
|
parameters: {
|
|
21209
|
-
query?:
|
|
21210
|
-
|
|
21211
|
-
|
|
21352
|
+
query?: never;
|
|
21353
|
+
header?: never;
|
|
21354
|
+
path: {
|
|
21355
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21356
|
+
};
|
|
21357
|
+
cookie?: never;
|
|
21358
|
+
};
|
|
21359
|
+
requestBody: {
|
|
21360
|
+
content: {
|
|
21361
|
+
"application/json": components["schemas"]["AiStrategyRecommendBodyDto"];
|
|
21362
|
+
};
|
|
21363
|
+
};
|
|
21364
|
+
responses: {
|
|
21365
|
+
/** @description Plan */
|
|
21366
|
+
200: {
|
|
21367
|
+
headers: {
|
|
21368
|
+
[name: string]: unknown;
|
|
21369
|
+
};
|
|
21370
|
+
content: {
|
|
21371
|
+
"application/json": components["schemas"]["AiStrategyPlanDto"];
|
|
21372
|
+
};
|
|
21212
21373
|
};
|
|
21374
|
+
401: components["responses"]["Unauthorized"];
|
|
21375
|
+
};
|
|
21376
|
+
};
|
|
21377
|
+
getJourneyProgress: {
|
|
21378
|
+
parameters: {
|
|
21379
|
+
query?: never;
|
|
21213
21380
|
header?: never;
|
|
21214
21381
|
path: {
|
|
21215
21382
|
workspaceId: components["parameters"]["WorkspaceId"];
|
|
@@ -21218,16 +21385,16 @@ export interface operations {
|
|
|
21218
21385
|
};
|
|
21219
21386
|
requestBody?: never;
|
|
21220
21387
|
responses: {
|
|
21221
|
-
/** @description
|
|
21388
|
+
/** @description Progress (empty completedStepIds when no row exists yet; updatedAt is synthetic in that case) */
|
|
21222
21389
|
200: {
|
|
21223
21390
|
headers: {
|
|
21224
21391
|
[name: string]: unknown;
|
|
21225
21392
|
};
|
|
21226
21393
|
content: {
|
|
21227
|
-
"application/json": components["schemas"]["
|
|
21394
|
+
"application/json": components["schemas"]["JourneyProgressDto"];
|
|
21228
21395
|
};
|
|
21229
21396
|
};
|
|
21230
|
-
/** @description
|
|
21397
|
+
/** @description Malformed workspaceId */
|
|
21231
21398
|
400: {
|
|
21232
21399
|
headers: {
|
|
21233
21400
|
[name: string]: unknown;
|
|
@@ -21249,7 +21416,7 @@ export interface operations {
|
|
|
21249
21416
|
};
|
|
21250
21417
|
};
|
|
21251
21418
|
};
|
|
21252
|
-
|
|
21419
|
+
putJourneyProgress: {
|
|
21253
21420
|
parameters: {
|
|
21254
21421
|
query?: never;
|
|
21255
21422
|
header?: never;
|
|
@@ -21258,15 +21425,28 @@ export interface operations {
|
|
|
21258
21425
|
};
|
|
21259
21426
|
cookie?: never;
|
|
21260
21427
|
};
|
|
21261
|
-
requestBody
|
|
21428
|
+
requestBody: {
|
|
21429
|
+
content: {
|
|
21430
|
+
"application/json": components["schemas"]["JourneyProgressUpdateDto"];
|
|
21431
|
+
};
|
|
21432
|
+
};
|
|
21262
21433
|
responses: {
|
|
21263
|
-
/** @description
|
|
21434
|
+
/** @description Saved progress */
|
|
21264
21435
|
200: {
|
|
21265
21436
|
headers: {
|
|
21266
21437
|
[name: string]: unknown;
|
|
21267
21438
|
};
|
|
21268
21439
|
content: {
|
|
21269
|
-
"application/json": components["schemas"]["
|
|
21440
|
+
"application/json": components["schemas"]["JourneyProgressDto"];
|
|
21441
|
+
};
|
|
21442
|
+
};
|
|
21443
|
+
/** @description Body fails validation (non-array, invalid entries, too many steps) */
|
|
21444
|
+
400: {
|
|
21445
|
+
headers: {
|
|
21446
|
+
[name: string]: unknown;
|
|
21447
|
+
};
|
|
21448
|
+
content: {
|
|
21449
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21270
21450
|
};
|
|
21271
21451
|
};
|
|
21272
21452
|
401: components["responses"]["Unauthorized"];
|
|
@@ -21282,29 +21462,81 @@ export interface operations {
|
|
|
21282
21462
|
};
|
|
21283
21463
|
};
|
|
21284
21464
|
};
|
|
21285
|
-
|
|
21465
|
+
getMyPreferences: {
|
|
21286
21466
|
parameters: {
|
|
21287
21467
|
query?: never;
|
|
21288
21468
|
header?: never;
|
|
21289
|
-
path
|
|
21290
|
-
|
|
21469
|
+
path?: never;
|
|
21470
|
+
cookie?: never;
|
|
21471
|
+
};
|
|
21472
|
+
requestBody?: never;
|
|
21473
|
+
responses: {
|
|
21474
|
+
/** @description Preferences */
|
|
21475
|
+
200: {
|
|
21476
|
+
headers: {
|
|
21477
|
+
[name: string]: unknown;
|
|
21478
|
+
};
|
|
21479
|
+
content: {
|
|
21480
|
+
"application/json": components["schemas"]["PreferencesDto"];
|
|
21481
|
+
};
|
|
21482
|
+
};
|
|
21483
|
+
401: components["responses"]["Unauthorized"];
|
|
21484
|
+
};
|
|
21485
|
+
};
|
|
21486
|
+
putMyPreferences: {
|
|
21487
|
+
parameters: {
|
|
21488
|
+
query?: never;
|
|
21489
|
+
header?: never;
|
|
21490
|
+
path?: never;
|
|
21491
|
+
cookie?: never;
|
|
21492
|
+
};
|
|
21493
|
+
requestBody: {
|
|
21494
|
+
content: {
|
|
21495
|
+
"application/json": components["schemas"]["PutPreferencesBodyDto"];
|
|
21496
|
+
};
|
|
21497
|
+
};
|
|
21498
|
+
responses: {
|
|
21499
|
+
/** @description Saved preferences */
|
|
21500
|
+
200: {
|
|
21501
|
+
headers: {
|
|
21502
|
+
[name: string]: unknown;
|
|
21503
|
+
};
|
|
21504
|
+
content: {
|
|
21505
|
+
"application/json": components["schemas"]["PreferencesDto"];
|
|
21506
|
+
};
|
|
21507
|
+
};
|
|
21508
|
+
/** @description Validation failed, or Status email was set to off (`code` `notification_channel_required`). */
|
|
21509
|
+
400: {
|
|
21510
|
+
headers: {
|
|
21511
|
+
[name: string]: unknown;
|
|
21512
|
+
};
|
|
21513
|
+
content: {
|
|
21514
|
+
"application/json": components["schemas"]["PreferencesValidationErrorDto"] | components["schemas"]["NotificationChannelRequiredErrorDto"];
|
|
21515
|
+
};
|
|
21291
21516
|
};
|
|
21517
|
+
401: components["responses"]["Unauthorized"];
|
|
21518
|
+
};
|
|
21519
|
+
};
|
|
21520
|
+
getMyConsent: {
|
|
21521
|
+
parameters: {
|
|
21522
|
+
query?: never;
|
|
21523
|
+
header?: never;
|
|
21524
|
+
path?: never;
|
|
21292
21525
|
cookie?: never;
|
|
21293
21526
|
};
|
|
21294
21527
|
requestBody?: never;
|
|
21295
21528
|
responses: {
|
|
21296
|
-
/** @description
|
|
21529
|
+
/** @description Consent record */
|
|
21297
21530
|
200: {
|
|
21298
21531
|
headers: {
|
|
21299
21532
|
[name: string]: unknown;
|
|
21300
21533
|
};
|
|
21301
21534
|
content: {
|
|
21302
|
-
"application/json": components["schemas"]["
|
|
21535
|
+
"application/json": components["schemas"]["ConsentRecordDto"];
|
|
21303
21536
|
};
|
|
21304
21537
|
};
|
|
21305
21538
|
401: components["responses"]["Unauthorized"];
|
|
21306
|
-
|
|
21307
|
-
/** @description Workspace does not exist */
|
|
21539
|
+
/** @description No consent record stored yet */
|
|
21308
21540
|
404: {
|
|
21309
21541
|
headers: {
|
|
21310
21542
|
[name: string]: unknown;
|
|
@@ -21315,53 +21547,65 @@ export interface operations {
|
|
|
21315
21547
|
};
|
|
21316
21548
|
};
|
|
21317
21549
|
};
|
|
21318
|
-
|
|
21550
|
+
putMyConsent: {
|
|
21319
21551
|
parameters: {
|
|
21320
21552
|
query?: never;
|
|
21321
21553
|
header?: never;
|
|
21322
|
-
path
|
|
21323
|
-
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21324
|
-
};
|
|
21554
|
+
path?: never;
|
|
21325
21555
|
cookie?: never;
|
|
21326
21556
|
};
|
|
21327
21557
|
requestBody: {
|
|
21328
21558
|
content: {
|
|
21329
|
-
"application/json": components["schemas"]["
|
|
21559
|
+
"application/json": components["schemas"]["PutConsentBodyDto"];
|
|
21330
21560
|
};
|
|
21331
21561
|
};
|
|
21332
21562
|
responses: {
|
|
21333
|
-
/** @description Saved
|
|
21563
|
+
/** @description Saved consent record */
|
|
21334
21564
|
200: {
|
|
21335
21565
|
headers: {
|
|
21336
21566
|
[name: string]: unknown;
|
|
21337
21567
|
};
|
|
21338
21568
|
content: {
|
|
21339
|
-
"application/json": components["schemas"]["
|
|
21569
|
+
"application/json": components["schemas"]["ConsentRecordDto"];
|
|
21340
21570
|
};
|
|
21341
21571
|
};
|
|
21342
|
-
/** @description
|
|
21572
|
+
/** @description Validation failed */
|
|
21343
21573
|
400: {
|
|
21344
21574
|
headers: {
|
|
21345
21575
|
[name: string]: unknown;
|
|
21346
21576
|
};
|
|
21347
21577
|
content: {
|
|
21348
|
-
"application/json": components["schemas"]["
|
|
21578
|
+
"application/json": components["schemas"]["ConsentValidationErrorDto"];
|
|
21349
21579
|
};
|
|
21350
21580
|
};
|
|
21351
21581
|
401: components["responses"]["Unauthorized"];
|
|
21352
|
-
|
|
21353
|
-
|
|
21354
|
-
|
|
21582
|
+
};
|
|
21583
|
+
};
|
|
21584
|
+
getAppShell: {
|
|
21585
|
+
parameters: {
|
|
21586
|
+
query?: {
|
|
21587
|
+
/** @description Optional workspace scope for banner, notifications, journey, and connectors. Omitted or unresolvable values yield the base shell without workspace extras. */
|
|
21588
|
+
workspaceId?: string;
|
|
21589
|
+
};
|
|
21590
|
+
header?: never;
|
|
21591
|
+
path?: never;
|
|
21592
|
+
cookie?: never;
|
|
21593
|
+
};
|
|
21594
|
+
requestBody?: never;
|
|
21595
|
+
responses: {
|
|
21596
|
+
/** @description App shell bootstrap payload. Workspace-scoped fields (`banner`, `unreadCount`, `journeyProgress`, `connectorsSnapshot`) appear only when `workspaceId` resolves to a workspace the caller belongs to. */
|
|
21597
|
+
200: {
|
|
21355
21598
|
headers: {
|
|
21356
21599
|
[name: string]: unknown;
|
|
21357
21600
|
};
|
|
21358
21601
|
content: {
|
|
21359
|
-
"application/json": components["schemas"]["
|
|
21602
|
+
"application/json": components["schemas"]["AppShellDto"];
|
|
21360
21603
|
};
|
|
21361
21604
|
};
|
|
21605
|
+
401: components["responses"]["Unauthorized"];
|
|
21362
21606
|
};
|
|
21363
21607
|
};
|
|
21364
|
-
|
|
21608
|
+
postOrgChartImport: {
|
|
21365
21609
|
parameters: {
|
|
21366
21610
|
query?: never;
|
|
21367
21611
|
header?: never;
|
|
@@ -21370,20 +21614,33 @@ export interface operations {
|
|
|
21370
21614
|
};
|
|
21371
21615
|
cookie?: never;
|
|
21372
21616
|
};
|
|
21373
|
-
requestBody
|
|
21617
|
+
requestBody: {
|
|
21618
|
+
content: {
|
|
21619
|
+
"application/json": components["schemas"]["OrgChartImportBodyDto"];
|
|
21620
|
+
};
|
|
21621
|
+
};
|
|
21374
21622
|
responses: {
|
|
21375
|
-
/** @description
|
|
21623
|
+
/** @description Parsed persons from uploaded CSV (not persisted server-side) */
|
|
21376
21624
|
200: {
|
|
21377
21625
|
headers: {
|
|
21378
21626
|
[name: string]: unknown;
|
|
21379
21627
|
};
|
|
21380
21628
|
content: {
|
|
21381
|
-
"application/json": components["schemas"]["
|
|
21629
|
+
"application/json": components["schemas"]["OrgChartImportResultDto"];
|
|
21630
|
+
};
|
|
21631
|
+
};
|
|
21632
|
+
/** @description Invalid body or storage path */
|
|
21633
|
+
400: {
|
|
21634
|
+
headers: {
|
|
21635
|
+
[name: string]: unknown;
|
|
21636
|
+
};
|
|
21637
|
+
content: {
|
|
21638
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21382
21639
|
};
|
|
21383
21640
|
};
|
|
21384
21641
|
401: components["responses"]["Unauthorized"];
|
|
21385
21642
|
403: components["responses"]["Forbidden"];
|
|
21386
|
-
/** @description
|
|
21643
|
+
/** @description Storage object not found */
|
|
21387
21644
|
404: {
|
|
21388
21645
|
headers: {
|
|
21389
21646
|
[name: string]: unknown;
|
|
@@ -21392,14 +21649,29 @@ export interface operations {
|
|
|
21392
21649
|
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21393
21650
|
};
|
|
21394
21651
|
};
|
|
21652
|
+
/** @description Failed to download file from storage */
|
|
21653
|
+
502: {
|
|
21654
|
+
headers: {
|
|
21655
|
+
[name: string]: unknown;
|
|
21656
|
+
};
|
|
21657
|
+
content: {
|
|
21658
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21659
|
+
};
|
|
21660
|
+
};
|
|
21661
|
+
/** @description Storage import not configured or service unavailable */
|
|
21662
|
+
503: {
|
|
21663
|
+
headers: {
|
|
21664
|
+
[name: string]: unknown;
|
|
21665
|
+
};
|
|
21666
|
+
content: {
|
|
21667
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21668
|
+
};
|
|
21669
|
+
};
|
|
21395
21670
|
};
|
|
21396
21671
|
};
|
|
21397
|
-
|
|
21672
|
+
getYourAiJourneyHero: {
|
|
21398
21673
|
parameters: {
|
|
21399
|
-
query?:
|
|
21400
|
-
/** @description Upper bound of the requested window (ISO 8601; defaults to now). */
|
|
21401
|
-
windowEnd?: string;
|
|
21402
|
-
};
|
|
21674
|
+
query?: never;
|
|
21403
21675
|
header?: never;
|
|
21404
21676
|
path: {
|
|
21405
21677
|
workspaceId: components["parameters"]["WorkspaceId"];
|
|
@@ -21408,13 +21680,13 @@ export interface operations {
|
|
|
21408
21680
|
};
|
|
21409
21681
|
requestBody?: never;
|
|
21410
21682
|
responses: {
|
|
21411
|
-
/** @description
|
|
21683
|
+
/** @description Hero bootstrap payload */
|
|
21412
21684
|
200: {
|
|
21413
21685
|
headers: {
|
|
21414
21686
|
[name: string]: unknown;
|
|
21415
21687
|
};
|
|
21416
21688
|
content: {
|
|
21417
|
-
"application/json": components["schemas"]["
|
|
21689
|
+
"application/json": components["schemas"]["YourAiJourneyHeroDto"];
|
|
21418
21690
|
};
|
|
21419
21691
|
};
|
|
21420
21692
|
401: components["responses"]["Unauthorized"];
|
|
@@ -21430,12 +21702,9 @@ export interface operations {
|
|
|
21430
21702
|
};
|
|
21431
21703
|
};
|
|
21432
21704
|
};
|
|
21433
|
-
|
|
21705
|
+
getYourAiJourneyDashboardSecondary: {
|
|
21434
21706
|
parameters: {
|
|
21435
|
-
query?:
|
|
21436
|
-
/** @description Time range — `4w` (4 weeks), `8w` (8 weeks), or `q` (quarter, 12 weeks). */
|
|
21437
|
-
rangeId?: "4w" | "8w" | "q";
|
|
21438
|
-
};
|
|
21707
|
+
query?: never;
|
|
21439
21708
|
header?: never;
|
|
21440
21709
|
path: {
|
|
21441
21710
|
workspaceId: components["parameters"]["WorkspaceId"];
|
|
@@ -21444,13 +21713,13 @@ export interface operations {
|
|
|
21444
21713
|
};
|
|
21445
21714
|
requestBody?: never;
|
|
21446
21715
|
responses: {
|
|
21447
|
-
/** @description
|
|
21716
|
+
/** @description Secondary dashboard bootstrap payload */
|
|
21448
21717
|
200: {
|
|
21449
21718
|
headers: {
|
|
21450
21719
|
[name: string]: unknown;
|
|
21451
21720
|
};
|
|
21452
21721
|
content: {
|
|
21453
|
-
"application/json": components["schemas"]["
|
|
21722
|
+
"application/json": components["schemas"]["DashboardSecondaryDto"];
|
|
21454
21723
|
};
|
|
21455
21724
|
};
|
|
21456
21725
|
401: components["responses"]["Unauthorized"];
|
|
@@ -21466,14 +21735,309 @@ export interface operations {
|
|
|
21466
21735
|
};
|
|
21467
21736
|
};
|
|
21468
21737
|
};
|
|
21469
|
-
|
|
21738
|
+
getYourAiJourneyAnalytics: {
|
|
21470
21739
|
parameters: {
|
|
21471
|
-
query?:
|
|
21472
|
-
|
|
21473
|
-
|
|
21474
|
-
|
|
21475
|
-
|
|
21476
|
-
|
|
21740
|
+
query?: never;
|
|
21741
|
+
header?: never;
|
|
21742
|
+
path: {
|
|
21743
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21744
|
+
};
|
|
21745
|
+
cookie?: never;
|
|
21746
|
+
};
|
|
21747
|
+
requestBody?: never;
|
|
21748
|
+
responses: {
|
|
21749
|
+
/** @description Analytics summary */
|
|
21750
|
+
200: {
|
|
21751
|
+
headers: {
|
|
21752
|
+
[name: string]: unknown;
|
|
21753
|
+
};
|
|
21754
|
+
content: {
|
|
21755
|
+
"application/json": components["schemas"]["YourAiJourneyAnalyticsDto"];
|
|
21756
|
+
};
|
|
21757
|
+
};
|
|
21758
|
+
401: components["responses"]["Unauthorized"];
|
|
21759
|
+
403: components["responses"]["Forbidden"];
|
|
21760
|
+
/** @description Workspace does not exist */
|
|
21761
|
+
404: {
|
|
21762
|
+
headers: {
|
|
21763
|
+
[name: string]: unknown;
|
|
21764
|
+
};
|
|
21765
|
+
content: {
|
|
21766
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21767
|
+
};
|
|
21768
|
+
};
|
|
21769
|
+
};
|
|
21770
|
+
};
|
|
21771
|
+
getYourAiJourneyPrSignals: {
|
|
21772
|
+
parameters: {
|
|
21773
|
+
query?: {
|
|
21774
|
+
/** @description Number of weekly buckets to return (1–52; default 8). */
|
|
21775
|
+
limit?: number;
|
|
21776
|
+
};
|
|
21777
|
+
header?: never;
|
|
21778
|
+
path: {
|
|
21779
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21780
|
+
};
|
|
21781
|
+
cookie?: never;
|
|
21782
|
+
};
|
|
21783
|
+
requestBody?: never;
|
|
21784
|
+
responses: {
|
|
21785
|
+
/** @description Weekly PR signals */
|
|
21786
|
+
200: {
|
|
21787
|
+
headers: {
|
|
21788
|
+
[name: string]: unknown;
|
|
21789
|
+
};
|
|
21790
|
+
content: {
|
|
21791
|
+
"application/json": components["schemas"]["YourAiJourneyPrSignalsDto"];
|
|
21792
|
+
};
|
|
21793
|
+
};
|
|
21794
|
+
/** @description Invalid query parameter (limit out of range) */
|
|
21795
|
+
400: {
|
|
21796
|
+
headers: {
|
|
21797
|
+
[name: string]: unknown;
|
|
21798
|
+
};
|
|
21799
|
+
content: {
|
|
21800
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21801
|
+
};
|
|
21802
|
+
};
|
|
21803
|
+
401: components["responses"]["Unauthorized"];
|
|
21804
|
+
403: components["responses"]["Forbidden"];
|
|
21805
|
+
/** @description Workspace does not exist */
|
|
21806
|
+
404: {
|
|
21807
|
+
headers: {
|
|
21808
|
+
[name: string]: unknown;
|
|
21809
|
+
};
|
|
21810
|
+
content: {
|
|
21811
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21812
|
+
};
|
|
21813
|
+
};
|
|
21814
|
+
};
|
|
21815
|
+
};
|
|
21816
|
+
getYourAiJourneyReadinessAggregate: {
|
|
21817
|
+
parameters: {
|
|
21818
|
+
query?: never;
|
|
21819
|
+
header?: never;
|
|
21820
|
+
path: {
|
|
21821
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21822
|
+
};
|
|
21823
|
+
cookie?: never;
|
|
21824
|
+
};
|
|
21825
|
+
requestBody?: never;
|
|
21826
|
+
responses: {
|
|
21827
|
+
/** @description Readiness aggregate */
|
|
21828
|
+
200: {
|
|
21829
|
+
headers: {
|
|
21830
|
+
[name: string]: unknown;
|
|
21831
|
+
};
|
|
21832
|
+
content: {
|
|
21833
|
+
"application/json": components["schemas"]["YourAiJourneyReadinessAggregateDto"];
|
|
21834
|
+
};
|
|
21835
|
+
};
|
|
21836
|
+
401: components["responses"]["Unauthorized"];
|
|
21837
|
+
403: components["responses"]["Forbidden"];
|
|
21838
|
+
/** @description Workspace does not exist */
|
|
21839
|
+
404: {
|
|
21840
|
+
headers: {
|
|
21841
|
+
[name: string]: unknown;
|
|
21842
|
+
};
|
|
21843
|
+
content: {
|
|
21844
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21845
|
+
};
|
|
21846
|
+
};
|
|
21847
|
+
};
|
|
21848
|
+
};
|
|
21849
|
+
getYourAiJourneyProgress: {
|
|
21850
|
+
parameters: {
|
|
21851
|
+
query?: never;
|
|
21852
|
+
header?: never;
|
|
21853
|
+
path: {
|
|
21854
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21855
|
+
};
|
|
21856
|
+
cookie?: never;
|
|
21857
|
+
};
|
|
21858
|
+
requestBody?: never;
|
|
21859
|
+
responses: {
|
|
21860
|
+
/** @description Journey progress */
|
|
21861
|
+
200: {
|
|
21862
|
+
headers: {
|
|
21863
|
+
[name: string]: unknown;
|
|
21864
|
+
};
|
|
21865
|
+
content: {
|
|
21866
|
+
"application/json": components["schemas"]["JourneyProgressDto"];
|
|
21867
|
+
};
|
|
21868
|
+
};
|
|
21869
|
+
401: components["responses"]["Unauthorized"];
|
|
21870
|
+
403: components["responses"]["Forbidden"];
|
|
21871
|
+
/** @description Workspace does not exist */
|
|
21872
|
+
404: {
|
|
21873
|
+
headers: {
|
|
21874
|
+
[name: string]: unknown;
|
|
21875
|
+
};
|
|
21876
|
+
content: {
|
|
21877
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21878
|
+
};
|
|
21879
|
+
};
|
|
21880
|
+
};
|
|
21881
|
+
};
|
|
21882
|
+
putYourAiJourneyProgress: {
|
|
21883
|
+
parameters: {
|
|
21884
|
+
query?: never;
|
|
21885
|
+
header?: never;
|
|
21886
|
+
path: {
|
|
21887
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21888
|
+
};
|
|
21889
|
+
cookie?: never;
|
|
21890
|
+
};
|
|
21891
|
+
requestBody: {
|
|
21892
|
+
content: {
|
|
21893
|
+
"application/json": components["schemas"]["JourneyProgressUpdateDto"];
|
|
21894
|
+
};
|
|
21895
|
+
};
|
|
21896
|
+
responses: {
|
|
21897
|
+
/** @description Saved progress */
|
|
21898
|
+
200: {
|
|
21899
|
+
headers: {
|
|
21900
|
+
[name: string]: unknown;
|
|
21901
|
+
};
|
|
21902
|
+
content: {
|
|
21903
|
+
"application/json": components["schemas"]["JourneyProgressDto"];
|
|
21904
|
+
};
|
|
21905
|
+
};
|
|
21906
|
+
/** @description Body fails validation (non-array, invalid entries, too many steps) */
|
|
21907
|
+
400: {
|
|
21908
|
+
headers: {
|
|
21909
|
+
[name: string]: unknown;
|
|
21910
|
+
};
|
|
21911
|
+
content: {
|
|
21912
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21913
|
+
};
|
|
21914
|
+
};
|
|
21915
|
+
401: components["responses"]["Unauthorized"];
|
|
21916
|
+
403: components["responses"]["Forbidden"];
|
|
21917
|
+
/** @description Workspace does not exist */
|
|
21918
|
+
404: {
|
|
21919
|
+
headers: {
|
|
21920
|
+
[name: string]: unknown;
|
|
21921
|
+
};
|
|
21922
|
+
content: {
|
|
21923
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21924
|
+
};
|
|
21925
|
+
};
|
|
21926
|
+
};
|
|
21927
|
+
};
|
|
21928
|
+
getYourAiJourneyAgenticFoundation: {
|
|
21929
|
+
parameters: {
|
|
21930
|
+
query?: never;
|
|
21931
|
+
header?: never;
|
|
21932
|
+
path: {
|
|
21933
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21934
|
+
};
|
|
21935
|
+
cookie?: never;
|
|
21936
|
+
};
|
|
21937
|
+
requestBody?: never;
|
|
21938
|
+
responses: {
|
|
21939
|
+
/** @description Agentic foundation dashboard */
|
|
21940
|
+
200: {
|
|
21941
|
+
headers: {
|
|
21942
|
+
[name: string]: unknown;
|
|
21943
|
+
};
|
|
21944
|
+
content: {
|
|
21945
|
+
"application/json": components["schemas"]["AgenticFoundationDashboardDto"];
|
|
21946
|
+
};
|
|
21947
|
+
};
|
|
21948
|
+
401: components["responses"]["Unauthorized"];
|
|
21949
|
+
403: components["responses"]["Forbidden"];
|
|
21950
|
+
/** @description Workspace does not exist */
|
|
21951
|
+
404: {
|
|
21952
|
+
headers: {
|
|
21953
|
+
[name: string]: unknown;
|
|
21954
|
+
};
|
|
21955
|
+
content: {
|
|
21956
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21957
|
+
};
|
|
21958
|
+
};
|
|
21959
|
+
};
|
|
21960
|
+
};
|
|
21961
|
+
getYourAiJourneyProductivity: {
|
|
21962
|
+
parameters: {
|
|
21963
|
+
query?: {
|
|
21964
|
+
/** @description Upper bound of the requested window (ISO 8601; defaults to now). */
|
|
21965
|
+
windowEnd?: string;
|
|
21966
|
+
};
|
|
21967
|
+
header?: never;
|
|
21968
|
+
path: {
|
|
21969
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
21970
|
+
};
|
|
21971
|
+
cookie?: never;
|
|
21972
|
+
};
|
|
21973
|
+
requestBody?: never;
|
|
21974
|
+
responses: {
|
|
21975
|
+
/** @description Productivity metrics snapshot */
|
|
21976
|
+
200: {
|
|
21977
|
+
headers: {
|
|
21978
|
+
[name: string]: unknown;
|
|
21979
|
+
};
|
|
21980
|
+
content: {
|
|
21981
|
+
"application/json": components["schemas"]["DashboardProductivityDto"];
|
|
21982
|
+
};
|
|
21983
|
+
};
|
|
21984
|
+
401: components["responses"]["Unauthorized"];
|
|
21985
|
+
403: components["responses"]["Forbidden"];
|
|
21986
|
+
/** @description Workspace does not exist */
|
|
21987
|
+
404: {
|
|
21988
|
+
headers: {
|
|
21989
|
+
[name: string]: unknown;
|
|
21990
|
+
};
|
|
21991
|
+
content: {
|
|
21992
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
21993
|
+
};
|
|
21994
|
+
};
|
|
21995
|
+
};
|
|
21996
|
+
};
|
|
21997
|
+
getYourAiJourneyAiSpend: {
|
|
21998
|
+
parameters: {
|
|
21999
|
+
query?: {
|
|
22000
|
+
/** @description Time range — `4w` (4 weeks), `8w` (8 weeks), or `q` (quarter, 12 weeks). */
|
|
22001
|
+
rangeId?: "4w" | "8w" | "q";
|
|
22002
|
+
};
|
|
22003
|
+
header?: never;
|
|
22004
|
+
path: {
|
|
22005
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
22006
|
+
};
|
|
22007
|
+
cookie?: never;
|
|
22008
|
+
};
|
|
22009
|
+
requestBody?: never;
|
|
22010
|
+
responses: {
|
|
22011
|
+
/** @description AI spend aggregation */
|
|
22012
|
+
200: {
|
|
22013
|
+
headers: {
|
|
22014
|
+
[name: string]: unknown;
|
|
22015
|
+
};
|
|
22016
|
+
content: {
|
|
22017
|
+
"application/json": components["schemas"]["YourAiJourneyAiSpendDto"];
|
|
22018
|
+
};
|
|
22019
|
+
};
|
|
22020
|
+
401: components["responses"]["Unauthorized"];
|
|
22021
|
+
403: components["responses"]["Forbidden"];
|
|
22022
|
+
/** @description Workspace does not exist */
|
|
22023
|
+
404: {
|
|
22024
|
+
headers: {
|
|
22025
|
+
[name: string]: unknown;
|
|
22026
|
+
};
|
|
22027
|
+
content: {
|
|
22028
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22029
|
+
};
|
|
22030
|
+
};
|
|
22031
|
+
};
|
|
22032
|
+
};
|
|
22033
|
+
listWorkspaceAbsences: {
|
|
22034
|
+
parameters: {
|
|
22035
|
+
query?: {
|
|
22036
|
+
/** @description Start of date window (ISO YYYY-MM-DD). Defaults to today. */
|
|
22037
|
+
from?: string;
|
|
22038
|
+
/** @description End of date window (ISO YYYY-MM-DD). Defaults to 90 days from today. */
|
|
22039
|
+
to?: string;
|
|
22040
|
+
};
|
|
21477
22041
|
header?: never;
|
|
21478
22042
|
path: {
|
|
21479
22043
|
workspaceId: components["parameters"]["WorkspaceId"];
|
|
@@ -21490,26 +22054,330 @@ export interface operations {
|
|
|
21490
22054
|
content: {
|
|
21491
22055
|
/**
|
|
21492
22056
|
* @example {
|
|
21493
|
-
* "absences": [
|
|
21494
|
-
* {
|
|
21495
|
-
* "source": "personio",
|
|
21496
|
-
* "employeeEmail": "alice@example.com",
|
|
21497
|
-
* "absenceType": "Vacation",
|
|
21498
|
-
* "startDate": "2025-07-01",
|
|
21499
|
-
* "endDate": "2025-07-05",
|
|
21500
|
-
* "halfDayStart": false,
|
|
21501
|
-
* "halfDayEnd": false,
|
|
21502
|
-
* "status": "approved"
|
|
21503
|
-
* }
|
|
21504
|
-
* ],
|
|
21505
|
-
* "syncedAt": "2025-06-30T08:00:00.000Z"
|
|
22057
|
+
* "absences": [
|
|
22058
|
+
* {
|
|
22059
|
+
* "source": "personio",
|
|
22060
|
+
* "employeeEmail": "alice@example.com",
|
|
22061
|
+
* "absenceType": "Vacation",
|
|
22062
|
+
* "startDate": "2025-07-01",
|
|
22063
|
+
* "endDate": "2025-07-05",
|
|
22064
|
+
* "halfDayStart": false,
|
|
22065
|
+
* "halfDayEnd": false,
|
|
22066
|
+
* "status": "approved"
|
|
22067
|
+
* }
|
|
22068
|
+
* ],
|
|
22069
|
+
* "syncedAt": "2025-06-30T08:00:00.000Z"
|
|
22070
|
+
* }
|
|
22071
|
+
*/
|
|
22072
|
+
"application/json": components["schemas"]["WorkspaceAbsenceListDto"];
|
|
22073
|
+
};
|
|
22074
|
+
};
|
|
22075
|
+
401: components["responses"]["Unauthorized"];
|
|
22076
|
+
403: components["responses"]["Forbidden"];
|
|
22077
|
+
};
|
|
22078
|
+
};
|
|
22079
|
+
getWorkspaceTeamsInstallUrl: {
|
|
22080
|
+
parameters: {
|
|
22081
|
+
query?: never;
|
|
22082
|
+
header?: never;
|
|
22083
|
+
path: {
|
|
22084
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
22085
|
+
};
|
|
22086
|
+
cookie?: never;
|
|
22087
|
+
};
|
|
22088
|
+
requestBody?: never;
|
|
22089
|
+
responses: {
|
|
22090
|
+
/** @description Authorize URL */
|
|
22091
|
+
200: {
|
|
22092
|
+
headers: {
|
|
22093
|
+
[name: string]: unknown;
|
|
22094
|
+
};
|
|
22095
|
+
content: {
|
|
22096
|
+
/**
|
|
22097
|
+
* @example {
|
|
22098
|
+
* "url": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=example&state=example-state"
|
|
21506
22099
|
* }
|
|
21507
22100
|
*/
|
|
21508
|
-
"application/json": components["schemas"]["
|
|
22101
|
+
"application/json": components["schemas"]["TeamsInstallUrlDto"];
|
|
22102
|
+
};
|
|
22103
|
+
};
|
|
22104
|
+
401: components["responses"]["Unauthorized"];
|
|
22105
|
+
/** @description Editor or viewer */
|
|
22106
|
+
403: {
|
|
22107
|
+
headers: {
|
|
22108
|
+
[name: string]: unknown;
|
|
22109
|
+
};
|
|
22110
|
+
content: {
|
|
22111
|
+
/**
|
|
22112
|
+
* @example {
|
|
22113
|
+
* "error": "Forbidden",
|
|
22114
|
+
* "code": "workspace_admin_required"
|
|
22115
|
+
* }
|
|
22116
|
+
*/
|
|
22117
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22118
|
+
};
|
|
22119
|
+
};
|
|
22120
|
+
/** @description Workspace not found */
|
|
22121
|
+
404: {
|
|
22122
|
+
headers: {
|
|
22123
|
+
[name: string]: unknown;
|
|
22124
|
+
};
|
|
22125
|
+
content: {
|
|
22126
|
+
/**
|
|
22127
|
+
* @example {
|
|
22128
|
+
* "error": "Not found"
|
|
22129
|
+
* }
|
|
22130
|
+
*/
|
|
22131
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22132
|
+
};
|
|
22133
|
+
};
|
|
22134
|
+
/** @description Teams app credentials are not configured */
|
|
22135
|
+
503: {
|
|
22136
|
+
headers: {
|
|
22137
|
+
[name: string]: unknown;
|
|
22138
|
+
};
|
|
22139
|
+
content: {
|
|
22140
|
+
/**
|
|
22141
|
+
* @example {
|
|
22142
|
+
* "error": "Teams sign-in is not configured",
|
|
22143
|
+
* "code": "teams_not_configured"
|
|
22144
|
+
* }
|
|
22145
|
+
*/
|
|
22146
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22147
|
+
};
|
|
22148
|
+
};
|
|
22149
|
+
};
|
|
22150
|
+
};
|
|
22151
|
+
getTeamsIntegrationCallback: {
|
|
22152
|
+
parameters: {
|
|
22153
|
+
query: {
|
|
22154
|
+
code?: string;
|
|
22155
|
+
state: string;
|
|
22156
|
+
error?: string;
|
|
22157
|
+
};
|
|
22158
|
+
header?: never;
|
|
22159
|
+
path?: never;
|
|
22160
|
+
cookie?: never;
|
|
22161
|
+
};
|
|
22162
|
+
requestBody?: never;
|
|
22163
|
+
responses: {
|
|
22164
|
+
/** @description Redirect to Settings → Preferences */
|
|
22165
|
+
302: {
|
|
22166
|
+
headers: {
|
|
22167
|
+
Location?: string;
|
|
22168
|
+
[name: string]: unknown;
|
|
22169
|
+
};
|
|
22170
|
+
content?: never;
|
|
22171
|
+
};
|
|
22172
|
+
/** @description SPA origin is not configured */
|
|
22173
|
+
503: {
|
|
22174
|
+
headers: {
|
|
22175
|
+
[name: string]: unknown;
|
|
22176
|
+
};
|
|
22177
|
+
content: {
|
|
22178
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22179
|
+
};
|
|
22180
|
+
};
|
|
22181
|
+
};
|
|
22182
|
+
};
|
|
22183
|
+
getWorkspaceTeamsConnection: {
|
|
22184
|
+
parameters: {
|
|
22185
|
+
query?: never;
|
|
22186
|
+
header?: never;
|
|
22187
|
+
path: {
|
|
22188
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
22189
|
+
};
|
|
22190
|
+
cookie?: never;
|
|
22191
|
+
};
|
|
22192
|
+
requestBody?: never;
|
|
22193
|
+
responses: {
|
|
22194
|
+
/** @description Connection status */
|
|
22195
|
+
200: {
|
|
22196
|
+
headers: {
|
|
22197
|
+
[name: string]: unknown;
|
|
22198
|
+
};
|
|
22199
|
+
content: {
|
|
22200
|
+
/**
|
|
22201
|
+
* @example {
|
|
22202
|
+
* "connected": true,
|
|
22203
|
+
* "channelName": "General"
|
|
22204
|
+
* }
|
|
22205
|
+
*/
|
|
22206
|
+
"application/json": components["schemas"]["TeamsConnectionDto"];
|
|
21509
22207
|
};
|
|
21510
22208
|
};
|
|
21511
22209
|
401: components["responses"]["Unauthorized"];
|
|
21512
22210
|
403: components["responses"]["Forbidden"];
|
|
22211
|
+
/** @description Workspace not found */
|
|
22212
|
+
404: {
|
|
22213
|
+
headers: {
|
|
22214
|
+
[name: string]: unknown;
|
|
22215
|
+
};
|
|
22216
|
+
content: {
|
|
22217
|
+
/**
|
|
22218
|
+
* @example {
|
|
22219
|
+
* "error": "Not found"
|
|
22220
|
+
* }
|
|
22221
|
+
*/
|
|
22222
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22223
|
+
};
|
|
22224
|
+
};
|
|
22225
|
+
};
|
|
22226
|
+
};
|
|
22227
|
+
deleteWorkspaceTeamsConnection: {
|
|
22228
|
+
parameters: {
|
|
22229
|
+
query?: never;
|
|
22230
|
+
header?: never;
|
|
22231
|
+
path: {
|
|
22232
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
22233
|
+
};
|
|
22234
|
+
cookie?: never;
|
|
22235
|
+
};
|
|
22236
|
+
requestBody?: never;
|
|
22237
|
+
responses: {
|
|
22238
|
+
/** @description Disconnected */
|
|
22239
|
+
204: {
|
|
22240
|
+
headers: {
|
|
22241
|
+
[name: string]: unknown;
|
|
22242
|
+
};
|
|
22243
|
+
content?: never;
|
|
22244
|
+
};
|
|
22245
|
+
401: components["responses"]["Unauthorized"];
|
|
22246
|
+
/** @description Editor or viewer */
|
|
22247
|
+
403: {
|
|
22248
|
+
headers: {
|
|
22249
|
+
[name: string]: unknown;
|
|
22250
|
+
};
|
|
22251
|
+
content: {
|
|
22252
|
+
/**
|
|
22253
|
+
* @example {
|
|
22254
|
+
* "error": "Forbidden",
|
|
22255
|
+
* "code": "workspace_admin_required"
|
|
22256
|
+
* }
|
|
22257
|
+
*/
|
|
22258
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22259
|
+
};
|
|
22260
|
+
};
|
|
22261
|
+
/** @description Workspace not found */
|
|
22262
|
+
404: {
|
|
22263
|
+
headers: {
|
|
22264
|
+
[name: string]: unknown;
|
|
22265
|
+
};
|
|
22266
|
+
content: {
|
|
22267
|
+
/**
|
|
22268
|
+
* @example {
|
|
22269
|
+
* "error": "Not found"
|
|
22270
|
+
* }
|
|
22271
|
+
*/
|
|
22272
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22273
|
+
};
|
|
22274
|
+
};
|
|
22275
|
+
};
|
|
22276
|
+
};
|
|
22277
|
+
putWorkspaceTeamsChannel: {
|
|
22278
|
+
parameters: {
|
|
22279
|
+
query?: never;
|
|
22280
|
+
header?: never;
|
|
22281
|
+
path: {
|
|
22282
|
+
workspaceId: components["parameters"]["WorkspaceId"];
|
|
22283
|
+
};
|
|
22284
|
+
cookie?: never;
|
|
22285
|
+
};
|
|
22286
|
+
requestBody: {
|
|
22287
|
+
content: {
|
|
22288
|
+
/**
|
|
22289
|
+
* @example {
|
|
22290
|
+
* "channelId": "19:example@thread.tacv2"
|
|
22291
|
+
* }
|
|
22292
|
+
*/
|
|
22293
|
+
"application/json": components["schemas"]["TeamsChannelBodyDto"];
|
|
22294
|
+
};
|
|
22295
|
+
};
|
|
22296
|
+
responses: {
|
|
22297
|
+
/** @description Channel saved */
|
|
22298
|
+
200: {
|
|
22299
|
+
headers: {
|
|
22300
|
+
[name: string]: unknown;
|
|
22301
|
+
};
|
|
22302
|
+
content: {
|
|
22303
|
+
/**
|
|
22304
|
+
* @example {
|
|
22305
|
+
* "connected": true,
|
|
22306
|
+
* "channelName": "General"
|
|
22307
|
+
* }
|
|
22308
|
+
*/
|
|
22309
|
+
"application/json": components["schemas"]["TeamsConnectionDto"];
|
|
22310
|
+
};
|
|
22311
|
+
};
|
|
22312
|
+
/** @description Missing channelId, or the channel was not found */
|
|
22313
|
+
400: {
|
|
22314
|
+
headers: {
|
|
22315
|
+
[name: string]: unknown;
|
|
22316
|
+
};
|
|
22317
|
+
content: {
|
|
22318
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22319
|
+
};
|
|
22320
|
+
};
|
|
22321
|
+
401: components["responses"]["Unauthorized"];
|
|
22322
|
+
/** @description Editor or viewer */
|
|
22323
|
+
403: {
|
|
22324
|
+
headers: {
|
|
22325
|
+
[name: string]: unknown;
|
|
22326
|
+
};
|
|
22327
|
+
content: {
|
|
22328
|
+
/**
|
|
22329
|
+
* @example {
|
|
22330
|
+
* "error": "Forbidden",
|
|
22331
|
+
* "code": "workspace_admin_required"
|
|
22332
|
+
* }
|
|
22333
|
+
*/
|
|
22334
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22335
|
+
};
|
|
22336
|
+
};
|
|
22337
|
+
/** @description Workspace not found */
|
|
22338
|
+
404: {
|
|
22339
|
+
headers: {
|
|
22340
|
+
[name: string]: unknown;
|
|
22341
|
+
};
|
|
22342
|
+
content: {
|
|
22343
|
+
/**
|
|
22344
|
+
* @example {
|
|
22345
|
+
* "error": "Not found"
|
|
22346
|
+
* }
|
|
22347
|
+
*/
|
|
22348
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22349
|
+
};
|
|
22350
|
+
};
|
|
22351
|
+
/** @description Teams is not connected */
|
|
22352
|
+
409: {
|
|
22353
|
+
headers: {
|
|
22354
|
+
[name: string]: unknown;
|
|
22355
|
+
};
|
|
22356
|
+
content: {
|
|
22357
|
+
/**
|
|
22358
|
+
* @example {
|
|
22359
|
+
* "error": "Teams is not connected",
|
|
22360
|
+
* "code": "teams_not_connected"
|
|
22361
|
+
* }
|
|
22362
|
+
*/
|
|
22363
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22364
|
+
};
|
|
22365
|
+
};
|
|
22366
|
+
/** @description Microsoft Graph rejected the channel lookup */
|
|
22367
|
+
502: {
|
|
22368
|
+
headers: {
|
|
22369
|
+
[name: string]: unknown;
|
|
22370
|
+
};
|
|
22371
|
+
content: {
|
|
22372
|
+
/**
|
|
22373
|
+
* @example {
|
|
22374
|
+
* "error": "Teams channel lookup failed",
|
|
22375
|
+
* "code": "teams_graph_failed"
|
|
22376
|
+
* }
|
|
22377
|
+
*/
|
|
22378
|
+
"application/json": components["schemas"]["ErrorMessageDto"];
|
|
22379
|
+
};
|
|
22380
|
+
};
|
|
21513
22381
|
};
|
|
21514
22382
|
};
|
|
21515
22383
|
postWorkspaceZeltAuthorizeUrl: {
|