windmill-client 1.811.0 → 1.812.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/core/OpenAPI.mjs +1 -1
- package/dist/index.js +265 -1
- package/dist/index.mjs +2 -2
- package/dist/services.gen.d.ts +138 -1
- package/dist/services.gen.mjs +264 -1
- package/dist/types.gen.d.ts +521 -5
- package/package.json +1 -1
package/dist/types.gen.d.ts
CHANGED
|
@@ -937,6 +937,18 @@ export type AiAgent = {
|
|
|
937
937
|
*
|
|
938
938
|
*/
|
|
939
939
|
user_attachments?: InputTransform;
|
|
940
|
+
/**
|
|
941
|
+
* Array of strings naming which of the tools configured in `tools` the agent may call
|
|
942
|
+
* this run. Leaving it unset carries every one of them; an empty array carries none.
|
|
943
|
+
* A tool is named as the model is shown it. An entry the model is shown nothing of is
|
|
944
|
+
* named by what identifies it instead: an MCP server by its resource path, carrying
|
|
945
|
+
* every tool it exposes (which of them stays that entry's include_tools/exclude_tools),
|
|
946
|
+
* and a websearch entry by the reserved name '__wm_web_search', whatever summary it carries
|
|
947
|
+
* (no tool may take that name).
|
|
948
|
+
* Example: ['get_user', 'u/admin/github_mcp', '__wm_web_search']
|
|
949
|
+
*
|
|
950
|
+
*/
|
|
951
|
+
enabled_tools?: InputTransform;
|
|
940
952
|
/**
|
|
941
953
|
* Integer. Maximum number of tokens the AI will generate in its response.
|
|
942
954
|
* Range: 1 to 4,294,967,295. Typical values: 256-4096 for most use cases.
|
|
@@ -1011,7 +1023,7 @@ export type AiAgent = {
|
|
|
1011
1023
|
* Path of a reusable `ai_agent` resource (hybrid linking). When set, the agent brain
|
|
1012
1024
|
* config (provider/model/system prompt/etc.) and tool set are resolved at runtime from
|
|
1013
1025
|
* that resource; the module's input_transforms then only carry the flow-local inputs
|
|
1014
|
-
* (user_message/user_attachments).
|
|
1026
|
+
* (user_message/user_attachments/enabled_tools).
|
|
1015
1027
|
*
|
|
1016
1028
|
*/
|
|
1017
1029
|
agent?: string;
|
|
@@ -1946,6 +1958,15 @@ export type AITokenUsageBucket = {
|
|
|
1946
1958
|
reported_cost_nano_usd?: number;
|
|
1947
1959
|
requests: number;
|
|
1948
1960
|
};
|
|
1961
|
+
export type SharedAiArtifactInfo = {
|
|
1962
|
+
id: string;
|
|
1963
|
+
name: string;
|
|
1964
|
+
kind: 'md' | 'html';
|
|
1965
|
+
version: number;
|
|
1966
|
+
created_by: string;
|
|
1967
|
+
shared_at: string;
|
|
1968
|
+
expires_at: string;
|
|
1969
|
+
};
|
|
1949
1970
|
export type InstanceAIProviderSummary = {
|
|
1950
1971
|
provider: AIProvider;
|
|
1951
1972
|
models: Array<(string)>;
|
|
@@ -2792,6 +2813,30 @@ export type AuditLog = {
|
|
|
2792
2813
|
};
|
|
2793
2814
|
span?: string;
|
|
2794
2815
|
};
|
|
2816
|
+
export type TrashItem = {
|
|
2817
|
+
id: number;
|
|
2818
|
+
workspace_id: string;
|
|
2819
|
+
/**
|
|
2820
|
+
* script, flow, app, schedule, variable, resource, or a trigger kind such as http_trigger
|
|
2821
|
+
*/
|
|
2822
|
+
item_kind: string;
|
|
2823
|
+
item_path: string;
|
|
2824
|
+
deleted_by: string;
|
|
2825
|
+
deleted_at: string;
|
|
2826
|
+
/**
|
|
2827
|
+
* when the item is permanently deleted unless restored first
|
|
2828
|
+
*/
|
|
2829
|
+
expires_at: string;
|
|
2830
|
+
};
|
|
2831
|
+
export type TrashItemWithData = TrashItem & {
|
|
2832
|
+
/**
|
|
2833
|
+
* the deleted rows as they were stored; the shape depends on the kind, and a secret variable's value stays encrypted
|
|
2834
|
+
*
|
|
2835
|
+
*/
|
|
2836
|
+
item_data: {
|
|
2837
|
+
[key: string]: unknown;
|
|
2838
|
+
};
|
|
2839
|
+
};
|
|
2795
2840
|
export type MainArgSignature = {
|
|
2796
2841
|
type: 'Valid' | 'Invalid';
|
|
2797
2842
|
error: string;
|
|
@@ -3008,6 +3053,10 @@ export type ResourceType = {
|
|
|
3008
3053
|
edited_at?: string;
|
|
3009
3054
|
format_extension?: string;
|
|
3010
3055
|
is_fileset?: boolean;
|
|
3056
|
+
/**
|
|
3057
|
+
* The name the product goes by, e.g. "Google Sheets" for gsheets. Absent where nobody named the type.
|
|
3058
|
+
*/
|
|
3059
|
+
display_name?: string;
|
|
3011
3060
|
};
|
|
3012
3061
|
export type EditResourceType = {
|
|
3013
3062
|
schema?: unknown;
|
|
@@ -3017,6 +3066,10 @@ export type EditResourceType = {
|
|
|
3017
3066
|
* File extension for a type whose value is one file rather than a set of fields. Omit to leave it unchanged; send null to clear it.
|
|
3018
3067
|
*/
|
|
3019
3068
|
format_extension?: string | null;
|
|
3069
|
+
/**
|
|
3070
|
+
* The name the product goes by. Omit to leave it unchanged; send null to clear it.
|
|
3071
|
+
*/
|
|
3072
|
+
display_name?: string | null;
|
|
3020
3073
|
};
|
|
3021
3074
|
export type TriggerHistoryEntry = {
|
|
3022
3075
|
id: number;
|
|
@@ -3523,6 +3576,10 @@ export type HttpTrigger = TriggerExtraProperty & {
|
|
|
3523
3576
|
* If true, passes the request body as a raw string instead of parsing as JSON
|
|
3524
3577
|
*/
|
|
3525
3578
|
raw_string: boolean;
|
|
3579
|
+
/**
|
|
3580
|
+
* Origins allowed to call this route cross-origin, matched against the request's Origin header (ignoring case) and echoed back on a match. When set, the list governs both the preflight and the response, overriding any Access-Control-Allow-Origin the runnable returns via wm_headers. Use ['*'] to opt out of any restriction, including the http_route_default_allowed_origins instance setting. An empty list is not a configuration and resolves exactly as null does. When null, the instance setting applies, or Access-Control-Allow-Origin: * if it is unset. Ignored on a static website, which has no authentication of its own and so hands out public files: restricting which browsers may read them protects nothing while breaking cross-origin webfonts and fetches. A single-file static asset is not exempt, since it can carry an authentication_method.
|
|
3581
|
+
*/
|
|
3582
|
+
allowed_origins?: Array<(string)> | null;
|
|
3526
3583
|
/**
|
|
3527
3584
|
* Path to a script to run when the triggered job fails. A bare path, without the script/ or flow/ prefix a schedule error handler takes; it cannot be a flow.
|
|
3528
3585
|
*/
|
|
@@ -3615,6 +3672,10 @@ export type NewHttpTrigger = {
|
|
|
3615
3672
|
* If true, passes the request body as a raw string instead of parsing as JSON
|
|
3616
3673
|
*/
|
|
3617
3674
|
raw_string?: boolean;
|
|
3675
|
+
/**
|
|
3676
|
+
* Origins allowed to call this route cross-origin, matched against the request's Origin header (ignoring case) and echoed back on a match. When set, the list governs both the preflight and the response, overriding any Access-Control-Allow-Origin the runnable returns via wm_headers. Use ['*'] to opt out of any restriction, including the http_route_default_allowed_origins instance setting. An empty list is not a configuration and resolves exactly as null does. When null, the instance setting applies, or Access-Control-Allow-Origin: * if it is unset. Ignored on a static website, which has no authentication of its own and so hands out public files: restricting which browsers may read them protects nothing while breaking cross-origin webfonts and fetches. A single-file static asset is not exempt, since it can carry an authentication_method.
|
|
3677
|
+
*/
|
|
3678
|
+
allowed_origins?: Array<(string)> | null;
|
|
3618
3679
|
/**
|
|
3619
3680
|
* Path to a script to run when the triggered job fails. A bare path, without the script/ or flow/ prefix a schedule error handler takes; it cannot be a flow.
|
|
3620
3681
|
*/
|
|
@@ -3715,6 +3776,10 @@ export type EditHttpTrigger = {
|
|
|
3715
3776
|
* If true, passes the request body as a raw string instead of parsing as JSON
|
|
3716
3777
|
*/
|
|
3717
3778
|
raw_string?: boolean;
|
|
3779
|
+
/**
|
|
3780
|
+
* Origins allowed to call this route cross-origin, matched against the request's Origin header (ignoring case) and echoed back on a match. When set, the list governs both the preflight and the response, overriding any Access-Control-Allow-Origin the runnable returns via wm_headers. Use ['*'] to opt out of any restriction, including the http_route_default_allowed_origins instance setting. An empty list is not a configuration and resolves exactly as null does. When null, the instance setting applies, or Access-Control-Allow-Origin: * if it is unset. Ignored on a static website, which has no authentication of its own and so hands out public files: restricting which browsers may read them protects nothing while breaking cross-origin webfonts and fetches. A single-file static asset is not exempt, since it can carry an authentication_method.
|
|
3781
|
+
*/
|
|
3782
|
+
allowed_origins?: Array<(string)> | null;
|
|
3718
3783
|
/**
|
|
3719
3784
|
* Path to a script to run when the triggered job fails. A bare path, without the script/ or flow/ prefix a schedule error handler takes; it cannot be a flow.
|
|
3720
3785
|
*/
|
|
@@ -5489,7 +5554,7 @@ export type WorkspaceInvite = {
|
|
|
5489
5554
|
};
|
|
5490
5555
|
export type GlobalUserInfo = {
|
|
5491
5556
|
email: string;
|
|
5492
|
-
login_type: 'password' | 'github' | 'service_account';
|
|
5557
|
+
login_type: 'password' | 'github' | 'service_account' | 'pending_oauth';
|
|
5493
5558
|
super_admin: boolean;
|
|
5494
5559
|
devops?: boolean;
|
|
5495
5560
|
verified: boolean;
|
|
@@ -5647,7 +5712,7 @@ export type Policy = {
|
|
|
5647
5712
|
*/
|
|
5648
5713
|
sandbox?: boolean;
|
|
5649
5714
|
/**
|
|
5650
|
-
* Raw apps: author-declared scopes for the frontend SDK token. Takes effect only when `sandbox` is also true — an unsandboxed bundle runs with the viewer's own session, so no token is advertised or minted for it and this list stays inert. On a sandboxed app a non-empty list lets viewers mint (after consenting) a short-lived token carrying their own identity restricted to these scopes, handed to the app bundle so `windmill-client` calls run as the viewer. Must be a subset of the server's curated allowlist (jobs:run, jobs:read, users:read, resources:read, variables:read).
|
|
5715
|
+
* Raw apps: author-declared scopes for the frontend SDK token. Takes effect only when `sandbox` is also true — an unsandboxed bundle runs with the viewer's own session, so no token is advertised or minted for it and this list stays inert. On a sandboxed app a non-empty list lets viewers mint (after consenting) a short-lived token carrying their own identity restricted to these scopes, handed to the app bundle so `windmill-client` calls run as the viewer. Must be a subset of the server's curated allowlist (jobs:run, jobs:read, users:read, resources:read, variables:read, flow_conversations:read, flow_conversations:write).
|
|
5651
5716
|
*
|
|
5652
5717
|
*/
|
|
5653
5718
|
frontend_sdk_scopes?: Array<(string)>;
|
|
@@ -6118,6 +6183,10 @@ export type AutoPullSettings = {
|
|
|
6118
6183
|
[key: string]: (string);
|
|
6119
6184
|
};
|
|
6120
6185
|
last_pull_status?: AutoPullStatus;
|
|
6186
|
+
/**
|
|
6187
|
+
* Email of the admin automatic pulls apply changes as. Set by the server when the settings are saved.
|
|
6188
|
+
*/
|
|
6189
|
+
enabled_by?: string;
|
|
6121
6190
|
};
|
|
6122
6191
|
export type MetricMetadata = {
|
|
6123
6192
|
id: string;
|
|
@@ -7416,6 +7485,42 @@ export type ListAuditLogsData = {
|
|
|
7416
7485
|
workspace: string;
|
|
7417
7486
|
};
|
|
7418
7487
|
export type ListAuditLogsResponse = Array<AuditLog>;
|
|
7488
|
+
export type ListTrashData = {
|
|
7489
|
+
/**
|
|
7490
|
+
* only return items of this kind: script, flow, app, schedule, variable, resource, or a trigger kind such as http_trigger
|
|
7491
|
+
*
|
|
7492
|
+
*/
|
|
7493
|
+
itemKind?: string;
|
|
7494
|
+
/**
|
|
7495
|
+
* which page to return (starts at 0, default 0)
|
|
7496
|
+
*/
|
|
7497
|
+
page?: number;
|
|
7498
|
+
/**
|
|
7499
|
+
* number of items to return for a given page (default 100, max 1000)
|
|
7500
|
+
*/
|
|
7501
|
+
perPage?: number;
|
|
7502
|
+
workspace: string;
|
|
7503
|
+
};
|
|
7504
|
+
export type ListTrashResponse = Array<TrashItem>;
|
|
7505
|
+
export type GetTrashItemData = {
|
|
7506
|
+
id: number;
|
|
7507
|
+
workspace: string;
|
|
7508
|
+
};
|
|
7509
|
+
export type GetTrashItemResponse = TrashItemWithData;
|
|
7510
|
+
export type RestoreTrashItemData = {
|
|
7511
|
+
id: number;
|
|
7512
|
+
workspace: string;
|
|
7513
|
+
};
|
|
7514
|
+
export type RestoreTrashItemResponse = string;
|
|
7515
|
+
export type PermanentlyDeleteTrashItemData = {
|
|
7516
|
+
id: number;
|
|
7517
|
+
workspace: string;
|
|
7518
|
+
};
|
|
7519
|
+
export type PermanentlyDeleteTrashItemResponse = string;
|
|
7520
|
+
export type EmptyTrashData = {
|
|
7521
|
+
workspace: string;
|
|
7522
|
+
};
|
|
7523
|
+
export type EmptyTrashResponse = string;
|
|
7419
7524
|
export type LoginData = {
|
|
7420
7525
|
/**
|
|
7421
7526
|
* credentials
|
|
@@ -7435,6 +7540,10 @@ export type RequestPasswordResetData = {
|
|
|
7435
7540
|
};
|
|
7436
7541
|
};
|
|
7437
7542
|
export type RequestPasswordResetResponse = PasswordResetResponse;
|
|
7543
|
+
export type ConsumeLoginLinkData = {
|
|
7544
|
+
rd?: string;
|
|
7545
|
+
token: string;
|
|
7546
|
+
};
|
|
7438
7547
|
export type ResetPasswordData = {
|
|
7439
7548
|
/**
|
|
7440
7549
|
* token and new password
|
|
@@ -7499,7 +7608,7 @@ export type CreateUserGloballyData = {
|
|
|
7499
7608
|
*/
|
|
7500
7609
|
requestBody: {
|
|
7501
7610
|
email: string;
|
|
7502
|
-
password
|
|
7611
|
+
password?: string;
|
|
7503
7612
|
super_admin: boolean;
|
|
7504
7613
|
name?: string;
|
|
7505
7614
|
company?: string;
|
|
@@ -7507,6 +7616,10 @@ export type CreateUserGloballyData = {
|
|
|
7507
7616
|
* Skip sending email notifications to the user
|
|
7508
7617
|
*/
|
|
7509
7618
|
skip_email?: boolean;
|
|
7619
|
+
/**
|
|
7620
|
+
* password (default, requires `password`), pending_oauth (no credential until the first OAuth login proving the address adopts the account), or a configured OAuth login client key
|
|
7621
|
+
*/
|
|
7622
|
+
login_type?: string;
|
|
7510
7623
|
};
|
|
7511
7624
|
};
|
|
7512
7625
|
export type CreateUserGloballyResponse = string;
|
|
@@ -7754,6 +7867,67 @@ export type CreateTokenImpersonateData = {
|
|
|
7754
7867
|
requestBody: NewTokenImpersonate;
|
|
7755
7868
|
};
|
|
7756
7869
|
export type CreateTokenImpersonateResponse = string;
|
|
7870
|
+
export type CreateLoginLinkData = {
|
|
7871
|
+
/**
|
|
7872
|
+
* target account and link options
|
|
7873
|
+
*/
|
|
7874
|
+
requestBody: {
|
|
7875
|
+
email: string;
|
|
7876
|
+
/**
|
|
7877
|
+
* link lifetime in seconds, at most 900 (default 600)
|
|
7878
|
+
*/
|
|
7879
|
+
expires_in_s?: number;
|
|
7880
|
+
/**
|
|
7881
|
+
* same-origin path the browser lands on after login (default /user/workspaces)
|
|
7882
|
+
*/
|
|
7883
|
+
rd?: string;
|
|
7884
|
+
/**
|
|
7885
|
+
* mint only while the account still has this login type (for example pending_oauth), so a link stops working once the owner has set a password or signed in with a provider
|
|
7886
|
+
*/
|
|
7887
|
+
require_login_type?: string;
|
|
7888
|
+
};
|
|
7889
|
+
};
|
|
7890
|
+
export type CreateLoginLinkResponse = {
|
|
7891
|
+
url: string;
|
|
7892
|
+
expires_at: string;
|
|
7893
|
+
};
|
|
7894
|
+
export type SetCloudTrialOfferData = {
|
|
7895
|
+
requestBody: {
|
|
7896
|
+
email: string;
|
|
7897
|
+
/**
|
|
7898
|
+
* mark the offer used (a trial or subscription now exists) instead of recording it
|
|
7899
|
+
*/
|
|
7900
|
+
consumed?: boolean;
|
|
7901
|
+
};
|
|
7902
|
+
};
|
|
7903
|
+
export type SetCloudTrialOfferResponse = string;
|
|
7904
|
+
export type GetCloudTrialOfferResponse = {
|
|
7905
|
+
offered: boolean;
|
|
7906
|
+
};
|
|
7907
|
+
export type GoCloudTrialOfferResponse = {
|
|
7908
|
+
location: string;
|
|
7909
|
+
/**
|
|
7910
|
+
* present when the portal refused (e.g. the account already has a subscription); the offer is then spent
|
|
7911
|
+
*/
|
|
7912
|
+
reason?: string;
|
|
7913
|
+
};
|
|
7914
|
+
export type SetOnboardingProfileData = {
|
|
7915
|
+
requestBody: {
|
|
7916
|
+
email: string;
|
|
7917
|
+
/**
|
|
7918
|
+
* free-form context from the invite, every key optional. The frontend reads `touch_point` (answers onboarding's source question), `company` and `workspace_name` (prefill the first workspace's name), `hub_projects` (slugs surfaced first on an empty workspace), `tools` (integrations, used to pick hub projects when none are named) and `starter_prompts` (`[{label, prompt}]`, replacing the home page's example prompts); unknown keys are kept and ignored
|
|
7919
|
+
*/
|
|
7920
|
+
profile: {
|
|
7921
|
+
[key: string]: unknown;
|
|
7922
|
+
};
|
|
7923
|
+
};
|
|
7924
|
+
};
|
|
7925
|
+
export type SetOnboardingProfileResponse = string;
|
|
7926
|
+
export type GetOnboardingProfileResponse = {
|
|
7927
|
+
profile?: {
|
|
7928
|
+
[key: string]: unknown;
|
|
7929
|
+
} | null;
|
|
7930
|
+
};
|
|
7757
7931
|
export type DeleteTokenData = {
|
|
7758
7932
|
tokenPrefix: string;
|
|
7759
7933
|
};
|
|
@@ -10381,6 +10555,10 @@ export type ListHubIntegrationsResponse = Array<{
|
|
|
10381
10555
|
* how often the integration has been picked, absent on a hub that does not count picks
|
|
10382
10556
|
*/
|
|
10383
10557
|
picks?: number;
|
|
10558
|
+
/**
|
|
10559
|
+
* the label the hub curates for the integration, null or absent where it names none
|
|
10560
|
+
*/
|
|
10561
|
+
display_name?: string | null;
|
|
10384
10562
|
}>;
|
|
10385
10563
|
export type ListHubFlowsResponse = {
|
|
10386
10564
|
flows?: Array<{
|
|
@@ -14796,6 +14974,44 @@ export type ListAiUsageResponse = {
|
|
|
14796
14974
|
*/
|
|
14797
14975
|
truncated: boolean;
|
|
14798
14976
|
};
|
|
14977
|
+
export type ShareAiArtifactData = {
|
|
14978
|
+
requestBody: {
|
|
14979
|
+
/**
|
|
14980
|
+
* the artifact's id in the author's session
|
|
14981
|
+
*/
|
|
14982
|
+
artifact_id: string;
|
|
14983
|
+
name: string;
|
|
14984
|
+
kind: 'md' | 'html';
|
|
14985
|
+
version: number;
|
|
14986
|
+
content: string;
|
|
14987
|
+
};
|
|
14988
|
+
workspace: string;
|
|
14989
|
+
};
|
|
14990
|
+
export type ShareAiArtifactResponse = SharedAiArtifactInfo;
|
|
14991
|
+
export type GetAiArtifactShareStatusData = {
|
|
14992
|
+
artifactId: string;
|
|
14993
|
+
workspace: string;
|
|
14994
|
+
};
|
|
14995
|
+
export type GetAiArtifactShareStatusResponse = {
|
|
14996
|
+
retention_secs: number;
|
|
14997
|
+
share?: SharedAiArtifactInfo;
|
|
14998
|
+
};
|
|
14999
|
+
export type GetSharedAiArtifactData = {
|
|
15000
|
+
id: string;
|
|
15001
|
+
workspace: string;
|
|
15002
|
+
};
|
|
15003
|
+
export type GetSharedAiArtifactResponse = SharedAiArtifactInfo & {
|
|
15004
|
+
content: string;
|
|
15005
|
+
/**
|
|
15006
|
+
* whether the caller authored the share or is a workspace admin
|
|
15007
|
+
*/
|
|
15008
|
+
can_unshare: boolean;
|
|
15009
|
+
};
|
|
15010
|
+
export type UnshareAiArtifactData = {
|
|
15011
|
+
id: string;
|
|
15012
|
+
workspace: string;
|
|
15013
|
+
};
|
|
15014
|
+
export type UnshareAiArtifactResponse = string;
|
|
14799
15015
|
export type ResumeSuspendedTriggerJobsData = {
|
|
14800
15016
|
/**
|
|
14801
15017
|
* Optional list of job IDs to reassign
|
|
@@ -18281,6 +18497,87 @@ export type $OpenApiTs = {
|
|
|
18281
18497
|
};
|
|
18282
18498
|
};
|
|
18283
18499
|
};
|
|
18500
|
+
'/w/{workspace}/trash/list': {
|
|
18501
|
+
get: {
|
|
18502
|
+
req: {
|
|
18503
|
+
/**
|
|
18504
|
+
* only return items of this kind: script, flow, app, schedule, variable, resource, or a trigger kind such as http_trigger
|
|
18505
|
+
*
|
|
18506
|
+
*/
|
|
18507
|
+
itemKind?: string;
|
|
18508
|
+
/**
|
|
18509
|
+
* which page to return (starts at 0, default 0)
|
|
18510
|
+
*/
|
|
18511
|
+
page?: number;
|
|
18512
|
+
/**
|
|
18513
|
+
* number of items to return for a given page (default 100, max 1000)
|
|
18514
|
+
*/
|
|
18515
|
+
perPage?: number;
|
|
18516
|
+
workspace: string;
|
|
18517
|
+
};
|
|
18518
|
+
res: {
|
|
18519
|
+
/**
|
|
18520
|
+
* the trashed items, most recently deleted first
|
|
18521
|
+
*/
|
|
18522
|
+
200: Array<TrashItem>;
|
|
18523
|
+
};
|
|
18524
|
+
};
|
|
18525
|
+
};
|
|
18526
|
+
'/w/{workspace}/trash/get/{id}': {
|
|
18527
|
+
get: {
|
|
18528
|
+
req: {
|
|
18529
|
+
id: number;
|
|
18530
|
+
workspace: string;
|
|
18531
|
+
};
|
|
18532
|
+
res: {
|
|
18533
|
+
/**
|
|
18534
|
+
* the trashed item
|
|
18535
|
+
*/
|
|
18536
|
+
200: TrashItemWithData;
|
|
18537
|
+
};
|
|
18538
|
+
};
|
|
18539
|
+
};
|
|
18540
|
+
'/w/{workspace}/trash/restore/{id}': {
|
|
18541
|
+
post: {
|
|
18542
|
+
req: {
|
|
18543
|
+
id: number;
|
|
18544
|
+
workspace: string;
|
|
18545
|
+
};
|
|
18546
|
+
res: {
|
|
18547
|
+
/**
|
|
18548
|
+
* item restored
|
|
18549
|
+
*/
|
|
18550
|
+
200: string;
|
|
18551
|
+
};
|
|
18552
|
+
};
|
|
18553
|
+
};
|
|
18554
|
+
'/w/{workspace}/trash/delete/{id}': {
|
|
18555
|
+
delete: {
|
|
18556
|
+
req: {
|
|
18557
|
+
id: number;
|
|
18558
|
+
workspace: string;
|
|
18559
|
+
};
|
|
18560
|
+
res: {
|
|
18561
|
+
/**
|
|
18562
|
+
* item permanently deleted
|
|
18563
|
+
*/
|
|
18564
|
+
200: string;
|
|
18565
|
+
};
|
|
18566
|
+
};
|
|
18567
|
+
};
|
|
18568
|
+
'/w/{workspace}/trash/empty': {
|
|
18569
|
+
post: {
|
|
18570
|
+
req: {
|
|
18571
|
+
workspace: string;
|
|
18572
|
+
};
|
|
18573
|
+
res: {
|
|
18574
|
+
/**
|
|
18575
|
+
* trashbin emptied
|
|
18576
|
+
*/
|
|
18577
|
+
200: string;
|
|
18578
|
+
};
|
|
18579
|
+
};
|
|
18580
|
+
};
|
|
18284
18581
|
'/auth/login': {
|
|
18285
18582
|
post: {
|
|
18286
18583
|
req: {
|
|
@@ -18350,6 +18647,20 @@ export type $OpenApiTs = {
|
|
|
18350
18647
|
};
|
|
18351
18648
|
};
|
|
18352
18649
|
};
|
|
18650
|
+
'/auth/login_link/{token}': {
|
|
18651
|
+
get: {
|
|
18652
|
+
req: {
|
|
18653
|
+
rd?: string;
|
|
18654
|
+
token: string;
|
|
18655
|
+
};
|
|
18656
|
+
res: {
|
|
18657
|
+
/**
|
|
18658
|
+
* redirected to the post-login destination, or to /user/login_link_expired when the link is used, expired or unknown
|
|
18659
|
+
*/
|
|
18660
|
+
302: unknown;
|
|
18661
|
+
};
|
|
18662
|
+
};
|
|
18663
|
+
};
|
|
18353
18664
|
'/auth/reset_password': {
|
|
18354
18665
|
post: {
|
|
18355
18666
|
req: {
|
|
@@ -18483,7 +18794,7 @@ export type $OpenApiTs = {
|
|
|
18483
18794
|
*/
|
|
18484
18795
|
requestBody: {
|
|
18485
18796
|
email: string;
|
|
18486
|
-
password
|
|
18797
|
+
password?: string;
|
|
18487
18798
|
super_admin: boolean;
|
|
18488
18799
|
name?: string;
|
|
18489
18800
|
company?: string;
|
|
@@ -18491,6 +18802,10 @@ export type $OpenApiTs = {
|
|
|
18491
18802
|
* Skip sending email notifications to the user
|
|
18492
18803
|
*/
|
|
18493
18804
|
skip_email?: boolean;
|
|
18805
|
+
/**
|
|
18806
|
+
* password (default, requires `password`), pending_oauth (no credential until the first OAuth login proving the address adopts the account), or a configured OAuth login client key
|
|
18807
|
+
*/
|
|
18808
|
+
login_type?: string;
|
|
18494
18809
|
};
|
|
18495
18810
|
};
|
|
18496
18811
|
res: {
|
|
@@ -19103,6 +19418,129 @@ export type $OpenApiTs = {
|
|
|
19103
19418
|
};
|
|
19104
19419
|
};
|
|
19105
19420
|
};
|
|
19421
|
+
'/users/login_links': {
|
|
19422
|
+
post: {
|
|
19423
|
+
req: {
|
|
19424
|
+
/**
|
|
19425
|
+
* target account and link options
|
|
19426
|
+
*/
|
|
19427
|
+
requestBody: {
|
|
19428
|
+
email: string;
|
|
19429
|
+
/**
|
|
19430
|
+
* link lifetime in seconds, at most 900 (default 600)
|
|
19431
|
+
*/
|
|
19432
|
+
expires_in_s?: number;
|
|
19433
|
+
/**
|
|
19434
|
+
* same-origin path the browser lands on after login (default /user/workspaces)
|
|
19435
|
+
*/
|
|
19436
|
+
rd?: string;
|
|
19437
|
+
/**
|
|
19438
|
+
* mint only while the account still has this login type (for example pending_oauth), so a link stops working once the owner has set a password or signed in with a provider
|
|
19439
|
+
*/
|
|
19440
|
+
require_login_type?: string;
|
|
19441
|
+
};
|
|
19442
|
+
};
|
|
19443
|
+
res: {
|
|
19444
|
+
/**
|
|
19445
|
+
* login link minted
|
|
19446
|
+
*/
|
|
19447
|
+
201: {
|
|
19448
|
+
url: string;
|
|
19449
|
+
expires_at: string;
|
|
19450
|
+
};
|
|
19451
|
+
/**
|
|
19452
|
+
* the account does not have the required login type
|
|
19453
|
+
*/
|
|
19454
|
+
409: unknown;
|
|
19455
|
+
};
|
|
19456
|
+
};
|
|
19457
|
+
};
|
|
19458
|
+
'/users/cloud_trial_offer': {
|
|
19459
|
+
post: {
|
|
19460
|
+
req: {
|
|
19461
|
+
requestBody: {
|
|
19462
|
+
email: string;
|
|
19463
|
+
/**
|
|
19464
|
+
* mark the offer used (a trial or subscription now exists) instead of recording it
|
|
19465
|
+
*/
|
|
19466
|
+
consumed?: boolean;
|
|
19467
|
+
};
|
|
19468
|
+
};
|
|
19469
|
+
res: {
|
|
19470
|
+
/**
|
|
19471
|
+
* offer recorded or consumed
|
|
19472
|
+
*/
|
|
19473
|
+
200: string;
|
|
19474
|
+
};
|
|
19475
|
+
};
|
|
19476
|
+
get: {
|
|
19477
|
+
res: {
|
|
19478
|
+
/**
|
|
19479
|
+
* offer state
|
|
19480
|
+
*/
|
|
19481
|
+
200: {
|
|
19482
|
+
offered: boolean;
|
|
19483
|
+
};
|
|
19484
|
+
};
|
|
19485
|
+
};
|
|
19486
|
+
};
|
|
19487
|
+
'/users/cloud_trial_offer/go': {
|
|
19488
|
+
post: {
|
|
19489
|
+
res: {
|
|
19490
|
+
/**
|
|
19491
|
+
* where to go — the customer portal signed in with the trial being started, or the portal home with the reason the offer could not be used
|
|
19492
|
+
*/
|
|
19493
|
+
200: {
|
|
19494
|
+
location: string;
|
|
19495
|
+
/**
|
|
19496
|
+
* present when the portal refused (e.g. the account already has a subscription); the offer is then spent
|
|
19497
|
+
*/
|
|
19498
|
+
reason?: string;
|
|
19499
|
+
};
|
|
19500
|
+
/**
|
|
19501
|
+
* called with a job token
|
|
19502
|
+
*/
|
|
19503
|
+
403: unknown;
|
|
19504
|
+
/**
|
|
19505
|
+
* no offer for this account
|
|
19506
|
+
*/
|
|
19507
|
+
404: unknown;
|
|
19508
|
+
};
|
|
19509
|
+
};
|
|
19510
|
+
};
|
|
19511
|
+
'/users/onboarding_profile': {
|
|
19512
|
+
post: {
|
|
19513
|
+
req: {
|
|
19514
|
+
requestBody: {
|
|
19515
|
+
email: string;
|
|
19516
|
+
/**
|
|
19517
|
+
* free-form context from the invite, every key optional. The frontend reads `touch_point` (answers onboarding's source question), `company` and `workspace_name` (prefill the first workspace's name), `hub_projects` (slugs surfaced first on an empty workspace), `tools` (integrations, used to pick hub projects when none are named) and `starter_prompts` (`[{label, prompt}]`, replacing the home page's example prompts); unknown keys are kept and ignored
|
|
19518
|
+
*/
|
|
19519
|
+
profile: {
|
|
19520
|
+
[key: string]: unknown;
|
|
19521
|
+
};
|
|
19522
|
+
};
|
|
19523
|
+
};
|
|
19524
|
+
res: {
|
|
19525
|
+
/**
|
|
19526
|
+
* profile recorded
|
|
19527
|
+
*/
|
|
19528
|
+
200: string;
|
|
19529
|
+
};
|
|
19530
|
+
};
|
|
19531
|
+
get: {
|
|
19532
|
+
res: {
|
|
19533
|
+
/**
|
|
19534
|
+
* the profile, or null when none was recorded
|
|
19535
|
+
*/
|
|
19536
|
+
200: {
|
|
19537
|
+
profile?: {
|
|
19538
|
+
[key: string]: unknown;
|
|
19539
|
+
} | null;
|
|
19540
|
+
};
|
|
19541
|
+
};
|
|
19542
|
+
};
|
|
19543
|
+
};
|
|
19106
19544
|
'/users/tokens/delete/{token_prefix}': {
|
|
19107
19545
|
delete: {
|
|
19108
19546
|
req: {
|
|
@@ -24135,6 +24573,10 @@ export type $OpenApiTs = {
|
|
|
24135
24573
|
* how often the integration has been picked, absent on a hub that does not count picks
|
|
24136
24574
|
*/
|
|
24137
24575
|
picks?: number;
|
|
24576
|
+
/**
|
|
24577
|
+
* the label the hub curates for the integration, null or absent where it names none
|
|
24578
|
+
*/
|
|
24579
|
+
display_name?: string | null;
|
|
24138
24580
|
}>;
|
|
24139
24581
|
};
|
|
24140
24582
|
};
|
|
@@ -30734,6 +31176,80 @@ export type $OpenApiTs = {
|
|
|
30734
31176
|
};
|
|
30735
31177
|
};
|
|
30736
31178
|
};
|
|
31179
|
+
'/w/{workspace}/ai/shared_artifacts/share': {
|
|
31180
|
+
post: {
|
|
31181
|
+
req: {
|
|
31182
|
+
requestBody: {
|
|
31183
|
+
/**
|
|
31184
|
+
* the artifact's id in the author's session
|
|
31185
|
+
*/
|
|
31186
|
+
artifact_id: string;
|
|
31187
|
+
name: string;
|
|
31188
|
+
kind: 'md' | 'html';
|
|
31189
|
+
version: number;
|
|
31190
|
+
content: string;
|
|
31191
|
+
};
|
|
31192
|
+
workspace: string;
|
|
31193
|
+
};
|
|
31194
|
+
res: {
|
|
31195
|
+
/**
|
|
31196
|
+
* the shared copy
|
|
31197
|
+
*/
|
|
31198
|
+
200: SharedAiArtifactInfo;
|
|
31199
|
+
};
|
|
31200
|
+
};
|
|
31201
|
+
};
|
|
31202
|
+
'/w/{workspace}/ai/shared_artifacts/status': {
|
|
31203
|
+
get: {
|
|
31204
|
+
req: {
|
|
31205
|
+
artifactId: string;
|
|
31206
|
+
workspace: string;
|
|
31207
|
+
};
|
|
31208
|
+
res: {
|
|
31209
|
+
/**
|
|
31210
|
+
* the live share, if any, and how long shares last
|
|
31211
|
+
*/
|
|
31212
|
+
200: {
|
|
31213
|
+
retention_secs: number;
|
|
31214
|
+
share?: SharedAiArtifactInfo;
|
|
31215
|
+
};
|
|
31216
|
+
};
|
|
31217
|
+
};
|
|
31218
|
+
};
|
|
31219
|
+
'/w/{workspace}/ai/shared_artifacts/get/{id}': {
|
|
31220
|
+
get: {
|
|
31221
|
+
req: {
|
|
31222
|
+
id: string;
|
|
31223
|
+
workspace: string;
|
|
31224
|
+
};
|
|
31225
|
+
res: {
|
|
31226
|
+
/**
|
|
31227
|
+
* the shared artifact
|
|
31228
|
+
*/
|
|
31229
|
+
200: SharedAiArtifactInfo & {
|
|
31230
|
+
content: string;
|
|
31231
|
+
/**
|
|
31232
|
+
* whether the caller authored the share or is a workspace admin
|
|
31233
|
+
*/
|
|
31234
|
+
can_unshare: boolean;
|
|
31235
|
+
};
|
|
31236
|
+
};
|
|
31237
|
+
};
|
|
31238
|
+
};
|
|
31239
|
+
'/w/{workspace}/ai/shared_artifacts/delete/{id}': {
|
|
31240
|
+
delete: {
|
|
31241
|
+
req: {
|
|
31242
|
+
id: string;
|
|
31243
|
+
workspace: string;
|
|
31244
|
+
};
|
|
31245
|
+
res: {
|
|
31246
|
+
/**
|
|
31247
|
+
* share deleted
|
|
31248
|
+
*/
|
|
31249
|
+
200: string;
|
|
31250
|
+
};
|
|
31251
|
+
};
|
|
31252
|
+
};
|
|
30737
31253
|
'/w/{workspace}/trigger/{trigger_kind}/resume_suspended_trigger_jobs/{trigger_path}': {
|
|
30738
31254
|
post: {
|
|
30739
31255
|
req: {
|