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