windmill-client 1.815.0 → 1.817.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.
@@ -189,6 +189,14 @@ export type DbtAssetProvenance = {
189
189
  export type UserDraftOverlay = {
190
190
  is_draft: boolean;
191
191
  draft_saved_at?: string;
192
+ /**
193
+ * The deployed version the draft forked from, as text whatever the
194
+ * kind (script hash, flow version id, app version id). Compare to the
195
+ * deployed head to tell a draft that is behind. Absent when there is
196
+ * no draft or it was never forked from a deploy.
197
+ *
198
+ */
199
+ draft_base?: string;
192
200
  no_deployed?: boolean;
193
201
  draft?: {
194
202
  [key: string]: unknown;
@@ -1964,6 +1972,12 @@ export type AIConfig = {
1964
1972
  model_pricing?: {
1965
1973
  [key: string]: ModelPriceOverride;
1966
1974
  };
1975
+ /**
1976
+ * Context window in tokens per `provider:model`, overriding the built-in table the AI chat uses to decide when to compact its history.
1977
+ */
1978
+ context_window_per_model?: {
1979
+ [key: string]: (number);
1980
+ };
1967
1981
  /**
1968
1982
  * Hides the Windmill AI assistant (chat, sessions, code generation, completion, fixes) from the workspace UI. Read from the workspace's own settings even when the providers served fall back to the instance config. AI agent steps and the AI sandbox in flows are unaffected.
1969
1983
  */
@@ -2350,6 +2364,8 @@ export type NewScript = {
2350
2364
  export type ScriptHistory = {
2351
2365
  script_hash: string;
2352
2366
  deployment_msg?: string;
2367
+ created_at?: string;
2368
+ created_by?: string;
2353
2369
  };
2354
2370
  /**
2355
2371
  * The arguments to pass to the script or flow
@@ -4846,6 +4862,7 @@ export type CustomInstanceDbLogs = {
4846
4862
  grant_permissions?: LoggedWizardStatus;
4847
4863
  replication_user?: LoggedWizardStatus;
4848
4864
  replication_user_error?: string;
4865
+ user_connect?: LoggedWizardStatus;
4849
4866
  };
4850
4867
  export type CustomInstanceDbTag = 'ducklake' | 'datatable';
4851
4868
  export type InstanceDatatableRole = {
@@ -4867,6 +4884,13 @@ export type DatatablePermissions = {
4867
4884
  default_role: string;
4868
4885
  roles: Array<DatatableRoleTenants>;
4869
4886
  governing_workspace_id?: string;
4887
+ /**
4888
+ * for a clone, the data table whose roles it takes
4889
+ */
4890
+ clone_of?: {
4891
+ workspace_id: string;
4892
+ datatable: string;
4893
+ };
4870
4894
  editable: boolean;
4871
4895
  available_roles: Array<InstanceDatatableRole>;
4872
4896
  ungoverned_reachers?: Array<{
@@ -4874,6 +4898,134 @@ export type DatatablePermissions = {
4874
4898
  datatable: string;
4875
4899
  }>;
4876
4900
  };
4901
+ /**
4902
+ * what access is read or changed on
4903
+ */
4904
+ export type AclTarget = AclTargetDatabase | AclTargetSchema | AclTargetTable;
4905
+ export type AclTargetDatabase = {
4906
+ kind: 'database';
4907
+ };
4908
+ export type AclTargetSchema = {
4909
+ kind: 'schema';
4910
+ schema: string;
4911
+ };
4912
+ export type AclTargetTable = {
4913
+ kind: 'table';
4914
+ schema: string;
4915
+ table: string;
4916
+ };
4917
+ /**
4918
+ * one change to plan or apply
4919
+ */
4920
+ export type AclChange = AclChangeSetOwner | AclChangeGrant | AclChangeRevoke;
4921
+ /**
4922
+ * hands the target to role — for a schema, with everything already in it but an extension's members, which stay with the extension
4923
+ */
4924
+ export type AclChangeSetOwner = {
4925
+ type: 'set_owner';
4926
+ /**
4927
+ * a data table role of the instance, or admin
4928
+ */
4929
+ role: string;
4930
+ };
4931
+ export type AclChangeGrant = {
4932
+ type: 'grant';
4933
+ /**
4934
+ * a data table role of the instance, or admin
4935
+ */
4936
+ role: string;
4937
+ privileges: Array<(string)>;
4938
+ scope: AclGrantScope;
4939
+ };
4940
+ export type AclChangeRevoke = {
4941
+ type: 'revoke';
4942
+ /**
4943
+ * a data table role of the instance, other than admin
4944
+ */
4945
+ role: string;
4946
+ privileges: Array<(string)>;
4947
+ scope: AclGrantScope;
4948
+ /**
4949
+ * objects inside the target the revoke covers, empty for the target itself. Only with the target scope; a revoke on all objects of a kind is refused, since it cannot say which grants it takes back.
4950
+ */
4951
+ objects?: Array<AclObject>;
4952
+ };
4953
+ export type AclGrantScope = 'target' | 'all_tables' | 'all_sequences' | 'all_functions' | 'future_tables' | 'future_sequences' | 'future_functions';
4954
+ export type AclChangeRequest = {
4955
+ target: AclTarget;
4956
+ change: AclChange;
4957
+ /**
4958
+ * The statements the plan showed. Required to apply, which plans again and refuses if the result differs.
4959
+ */
4960
+ statements?: Array<(string)>;
4961
+ };
4962
+ export type AclPlan = {
4963
+ statements: Array<(string)>;
4964
+ warnings: Array<(string)>;
4965
+ };
4966
+ export type AclObject = {
4967
+ name: string;
4968
+ /**
4969
+ * TABLE, SEQUENCE, FUNCTION, PROCEDURE or TYPE — what the object is. A revoke turns it into the keyword it takes, ROUTINE for both routine kinds; a type's grants are read only.
4970
+ */
4971
+ kind: string;
4972
+ /**
4973
+ * identity arguments of a routine, which is what tells two of the same name apart
4974
+ */
4975
+ args?: string;
4976
+ };
4977
+ export type AclGrant = {
4978
+ grantee: string;
4979
+ privileges: Array<(string)>;
4980
+ object?: AclObject;
4981
+ /**
4982
+ * set for a default privilege, naming the kind of object it covers (TABLES, SEQUENCES, FUNCTIONS, TYPES, or SCHEMAS). On a schema, the defaults set in that schema; on the database, the ones set database-wide, which apply in every schema and which no schema's own defaults take back.
4983
+ */
4984
+ future?: string;
4985
+ /**
4986
+ * the roles the grant comes from, each once — who granted it, or for a default privilege the role whose future objects it covers. A revoke of some of the grant's privileges takes them back from every source that gave them.
4987
+ */
4988
+ sources: Array<AclSource>;
4989
+ };
4990
+ export type AclSource = {
4991
+ role: string;
4992
+ /**
4993
+ * what role gave of the grant's privileges. A revoke is held back only by a source out of reach that gave some of what it takes back.
4994
+ */
4995
+ privileges: Array<(string)>;
4996
+ /**
4997
+ * whether the data table's connection can take back what role gave. On an object that is the owner, when the connection acts for the owner, and otherwise the connection itself; for a default privilege, a creating role the connection acts for. What a source out of reach gave is not revocable from here; privileges only other sources gave still are.
4998
+ */
4999
+ reachable: boolean;
5000
+ };
5001
+ export type DatatableAclInfo = {
5002
+ owner: string;
5003
+ /**
5004
+ * the roles a change may name; empty unless the caller may change anything
5005
+ */
5006
+ roles: Array<(string)>;
5007
+ /**
5008
+ * whether the caller may plan and apply changes
5009
+ */
5010
+ editable: boolean;
5011
+ /**
5012
+ * whether this is a clone, whose grants stay as they were copied
5013
+ */
5014
+ clone: boolean;
5015
+ /**
5016
+ * whether the server is Postgres 17+, which added the MAINTAIN table privilege
5017
+ */
5018
+ supports_maintain: boolean;
5019
+ /**
5020
+ * the database the target lives in
5021
+ */
5022
+ dbname: string;
5023
+ grants: Array<AclGrant>;
5024
+ /**
5025
+ * a database's schemas, or a schema's tables
5026
+ */
5027
+ children: Array<(string)>;
5028
+ };
4877
5029
  export type CustomInstanceDb = {
4878
5030
  logs: CustomInstanceDbLogs;
4879
5031
  /**
@@ -5672,6 +5824,10 @@ export type CreateWorkspaceFork = {
5672
5824
  * New database name for the fork
5673
5825
  */
5674
5826
  new_dbname: string;
5827
+ /**
5828
+ * What the fork request copies into `new_dbname`, which it creates — with the owners and grants of a data table under roles. This server refuses an entry without it; servers predating it expect `new_dbname` created and filled beforehand.
5829
+ */
5830
+ fork_behavior?: 'schema_only' | 'schema_and_data';
5675
5831
  }>;
5676
5832
  /**
5677
5833
  * Lake names the fork SHARES with the parent (reads and writes the parent's lake directly). Every lake not listed gets the default isolated fork namespace with read-defer to the parent.
@@ -5997,9 +6153,21 @@ export type AppWithLastVersion = {
5997
6153
  bundle_secret?: string;
5998
6154
  labels?: Array<(string)>;
5999
6155
  };
6156
+ /**
6157
+ * What a deploy of an existing app answers with. `version` is the one this call wrote, which is what an editor pins as the fork base of the draft it starts next: reading the head back afterwards cannot tell it from a deploy that landed beside it. A metadata-only update writes none and reports the head it kept.
6158
+ */
6159
+ export type AppDeployed = {
6160
+ /**
6161
+ * Where the app now lives, which differs from the request path on a rename.
6162
+ */
6163
+ path: string;
6164
+ version: number;
6165
+ };
6000
6166
  export type AppHistory = {
6001
6167
  version: number;
6002
6168
  deployment_msg?: string;
6169
+ created_at?: string;
6170
+ created_by?: string;
6003
6171
  };
6004
6172
  export type EmbedTokenResponse = {
6005
6173
  /**
@@ -6043,6 +6211,7 @@ export type FlowVersion = {
6043
6211
  id: number;
6044
6212
  created_at: string;
6045
6213
  deployment_msg?: string;
6214
+ created_by?: string;
6046
6215
  };
6047
6216
  export type SlackToken = {
6048
6217
  access_token: string;
@@ -6157,6 +6326,13 @@ export type DataTableSettings = {
6157
6326
  workspace_id: string;
6158
6327
  datatable: string;
6159
6328
  };
6329
+ /**
6330
+ * On a clone, the data table it was copied from, whose roles it takes. Server-owned like `reference`.
6331
+ */
6332
+ governed_by?: {
6333
+ workspace_id: string;
6334
+ datatable: string;
6335
+ };
6160
6336
  /**
6161
6337
  * Whether the SQL migrations feature is opted in for this data table
6162
6338
  */
@@ -6212,6 +6388,24 @@ export type DataTableTables = {
6212
6388
  [key: string]: Array<(string)>;
6213
6389
  };
6214
6390
  error?: string;
6391
+ /**
6392
+ * on the instance database, the only kind that can be under roles or have its access edited
6393
+ */
6394
+ instance: boolean;
6395
+ permissioned: boolean;
6396
+ /**
6397
+ * the roles the caller may connect as, by name; empty when not under roles
6398
+ */
6399
+ usable_roles: Array<(string)>;
6400
+ default_role: string;
6401
+ /**
6402
+ * whether the role the listing connected as may create schemas
6403
+ */
6404
+ can_create_schema: boolean;
6405
+ /**
6406
+ * the schemas the role the listing connected as may create in
6407
+ */
6408
+ creatable_schemas: Array<(string)>;
6215
6409
  };
6216
6410
  export type DataTableTableSchema = {
6217
6411
  datatable_name: string;
@@ -6298,6 +6492,31 @@ export type WorkspaceDeployUISettings = {
6298
6492
  include_path?: Array<(string)>;
6299
6493
  include_type?: Array<GitSyncObjectType>;
6300
6494
  };
6495
+ export type RemoteDeployTarget = {
6496
+ /**
6497
+ * root URL of the remote Windmill instance, without /api
6498
+ */
6499
+ base_url: string;
6500
+ /**
6501
+ * workspace on the remote instance that deploys land in
6502
+ */
6503
+ workspace_id: string;
6504
+ };
6505
+ export type RemoteDeployConnection = {
6506
+ /**
6507
+ * identity the stored token has on the remote instance
6508
+ */
6509
+ remote_email: string;
6510
+ /**
6511
+ * goes in every proxy URL, `/w/{workspace}/remote_deploy/proxy/{proxy_key}/{route}`
6512
+ */
6513
+ proxy_key: string;
6514
+ connected_at: string;
6515
+ };
6516
+ export type RemoteDeployStatus = {
6517
+ target?: RemoteDeployTarget;
6518
+ connection?: RemoteDeployConnection;
6519
+ };
6301
6520
  export type WorkspaceDefaultScripts = {
6302
6521
  order?: Array<(string)>;
6303
6522
  hidden?: Array<(string)>;
@@ -7740,12 +7959,6 @@ export type ConsumeLoginLinkData = {
7740
7959
  rd?: string;
7741
7960
  token: string;
7742
7961
  };
7743
- export type ConfirmLoginLinkData = {
7744
- token: string;
7745
- };
7746
- export type ConfirmLoginLinkResponse = {
7747
- location: string;
7748
- };
7749
7962
  export type ResetPasswordData = {
7750
7963
  /**
7751
7964
  * token and new password
@@ -8076,7 +8289,7 @@ export type CreateLoginLinkData = {
8076
8289
  requestBody: {
8077
8290
  email: string;
8078
8291
  /**
8079
- * link lifetime in seconds, at most 7200 (default 600)
8292
+ * link lifetime in seconds, at most 900 (default 600)
8080
8293
  */
8081
8294
  expires_in_s?: number;
8082
8295
  /**
@@ -8087,10 +8300,6 @@ export type CreateLoginLinkData = {
8087
8300
  * 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
8088
8301
  */
8089
8302
  require_login_type?: string;
8090
- /**
8091
- * return a /user/login_link page that signs in only when its button is clicked, instead of a link spent by opening it; set it for links sent by email, which mail scanners open on delivery (default false)
8092
- */
8093
- confirm?: boolean;
8094
8303
  };
8095
8304
  };
8096
8305
  export type CreateLoginLinkResponse = {
@@ -8656,6 +8865,29 @@ export type GetDeployToData = {
8656
8865
  export type GetDeployToResponse = {
8657
8866
  deploy_to?: string;
8658
8867
  };
8868
+ export type GetRemoteDeployTargetData = {
8869
+ workspace: string;
8870
+ };
8871
+ export type GetRemoteDeployTargetResponse = RemoteDeployStatus;
8872
+ export type SetRemoteDeployTargetData = {
8873
+ requestBody: {
8874
+ target?: RemoteDeployTarget;
8875
+ };
8876
+ workspace: string;
8877
+ };
8878
+ export type SetRemoteDeployTargetResponse = string;
8879
+ export type ConnectRemoteDeployData = {
8880
+ requestBody: {
8881
+ token: string;
8882
+ target: RemoteDeployTarget;
8883
+ };
8884
+ workspace: string;
8885
+ };
8886
+ export type ConnectRemoteDeployResponse = RemoteDeployConnection;
8887
+ export type DisconnectRemoteDeployData = {
8888
+ workspace: string;
8889
+ };
8890
+ export type DisconnectRemoteDeployResponse = string;
8659
8891
  export type GetIsPremiumData = {
8660
8892
  workspace: string;
8661
8893
  };
@@ -9005,6 +9237,26 @@ export type SetDatatablePermissionsData = {
9005
9237
  workspace: string;
9006
9238
  };
9007
9239
  export type SetDatatablePermissionsResponse = string;
9240
+ export type GetDatatableAclData = {
9241
+ datatableName: string;
9242
+ kind: 'database' | 'schema' | 'table';
9243
+ schema?: string;
9244
+ table?: string;
9245
+ workspace: string;
9246
+ };
9247
+ export type GetDatatableAclResponse = DatatableAclInfo;
9248
+ export type PlanDatatableAclData = {
9249
+ datatableName: string;
9250
+ requestBody: AclChangeRequest;
9251
+ workspace: string;
9252
+ };
9253
+ export type PlanDatatableAclResponse = AclPlan;
9254
+ export type ApplyDatatableAclData = {
9255
+ datatableName: string;
9256
+ requestBody: AclChangeRequest;
9257
+ workspace: string;
9258
+ };
9259
+ export type ApplyDatatableAclResponse = string;
9008
9260
  export type ListUsableDatatableRolesData = {
9009
9261
  datatableName: string;
9010
9262
  workspace: string;
@@ -9032,11 +9284,27 @@ export type TestDataTableConnectionResponse = {
9032
9284
  suggested_search_path?: string;
9033
9285
  };
9034
9286
  export type ListDataTableTablesData = {
9287
+ /**
9288
+ * list only this data table; each listed data table opens a connection to its database
9289
+ */
9290
+ datatableName?: string;
9291
+ /**
9292
+ * the role to list `role_for` as; refused, in that entry's `error`, if the caller may not use it
9293
+ */
9294
+ role?: string;
9295
+ /**
9296
+ * the data table `role` applies to; every other one is listed as its default role
9297
+ */
9298
+ roleFor?: string;
9035
9299
  workspace: string;
9036
9300
  };
9037
9301
  export type ListDataTableTablesResponse = Array<DataTableTables>;
9038
9302
  export type GetDataTableTableSchemaData = {
9039
9303
  datatableName: string;
9304
+ /**
9305
+ * the data table role to read the table as; defaults to the data table's default role
9306
+ */
9307
+ role?: string;
9040
9308
  schemaName: string;
9041
9309
  tableName: string;
9042
9310
  workspace: string;
@@ -10985,7 +11253,15 @@ export type ListFlowsResponse = Array<(Flow & {
10985
11253
  }>;
10986
11254
  })>;
10987
11255
  export type GetFlowHistoryData = {
11256
+ /**
11257
+ * which page to return (start at 1, default 1)
11258
+ */
11259
+ page?: number;
10988
11260
  path: string;
11261
+ /**
11262
+ * number of items to return for a given page (default 30, max 100)
11263
+ */
11264
+ perPage?: number;
10989
11265
  workspace: string;
10990
11266
  };
10991
11267
  export type GetFlowHistoryResponse = Array<FlowVersion>;
@@ -11332,7 +11608,15 @@ export type GetAppLiteByPathData = {
11332
11608
  };
11333
11609
  export type GetAppLiteByPathResponse = AppWithLastVersion;
11334
11610
  export type GetAppHistoryByPathData = {
11611
+ /**
11612
+ * which page to return (start at 1, default 1)
11613
+ */
11614
+ page?: number;
11335
11615
  path: string;
11616
+ /**
11617
+ * number of items to return for a given page (default 30, max 100)
11618
+ */
11619
+ perPage?: number;
11336
11620
  workspace: string;
11337
11621
  };
11338
11622
  export type GetAppHistoryByPathResponse = Array<AppHistory>;
@@ -11432,7 +11716,7 @@ export type UpdateAppData = {
11432
11716
  };
11433
11717
  workspace: string;
11434
11718
  };
11435
- export type UpdateAppResponse = string;
11719
+ export type UpdateAppResponse = AppDeployed;
11436
11720
  export type CreateAppRawSourceData = {
11437
11721
  /**
11438
11722
  * raw app sources to bundle and deploy
@@ -11511,7 +11795,7 @@ export type UpdateAppRawSourceData = {
11511
11795
  };
11512
11796
  workspace: string;
11513
11797
  };
11514
- export type UpdateAppRawSourceResponse = string;
11798
+ export type UpdateAppRawSourceResponse = AppDeployed;
11515
11799
  export type UpdateAppRawData = {
11516
11800
  /**
11517
11801
  * update app
@@ -11544,7 +11828,7 @@ export type UpdateAppRawData = {
11544
11828
  path: string;
11545
11829
  workspace: string;
11546
11830
  };
11547
- export type UpdateAppRawResponse = string;
11831
+ export type UpdateAppRawResponse = AppDeployed;
11548
11832
  export type CustomPathExistsData = {
11549
11833
  customPath: string;
11550
11834
  workspace: string;
@@ -12060,7 +12344,15 @@ export type ListTokensOfScriptData = {
12060
12344
  };
12061
12345
  export type ListTokensOfScriptResponse = Array<TruncatedToken>;
12062
12346
  export type GetScriptHistoryByPathData = {
12347
+ /**
12348
+ * which page to return (start at 1, default 1)
12349
+ */
12350
+ page?: number;
12063
12351
  path: string;
12352
+ /**
12353
+ * number of items to return for a given page (default 30, max 100)
12354
+ */
12355
+ perPage?: number;
12064
12356
  workspace: string;
12065
12357
  };
12066
12358
  export type GetScriptHistoryByPathResponse = Array<ScriptHistory>;
@@ -12373,7 +12665,27 @@ export type UpdateDraftData = {
12373
12665
  export type UpdateDraftResponse = {
12374
12666
  status: 'saved' | 'conflict';
12375
12667
  current_timestamp: string;
12668
+ /**
12669
+ * `saved` only, upsert or delete: where the write landed. Differs from the URL path when the item had moved away from it; the editor follows it there. Absent when a delete found nothing to remove and the caller cannot read the path it moved to.
12670
+ */
12671
+ path?: string;
12672
+ };
12673
+ export type MoveDraftData = {
12674
+ /**
12675
+ * script, flow, app or raw_app only.
12676
+ */
12677
+ kind: 'script' | 'flow' | 'app' | 'raw_app';
12678
+ path: string;
12679
+ requestBody: {
12680
+ new_path: string;
12681
+ /**
12682
+ * Also restate the draft's summary.
12683
+ */
12684
+ summary?: string;
12685
+ };
12686
+ workspace: string;
12376
12687
  };
12688
+ export type MoveDraftResponse = string;
12377
12689
  export type MigrateLegacyDraftData = {
12378
12690
  kind: UserDraftItemKind;
12379
12691
  path: string;
@@ -19042,19 +19354,6 @@ export type $OpenApiTs = {
19042
19354
  302: unknown;
19043
19355
  };
19044
19356
  };
19045
- post: {
19046
- req: {
19047
- token: string;
19048
- };
19049
- res: {
19050
- /**
19051
- * the post-login destination, or /user/login_link_expired when the link is used, expired or unknown
19052
- */
19053
- 200: {
19054
- location: string;
19055
- };
19056
- };
19057
- };
19058
19357
  };
19059
19358
  '/auth/reset_password': {
19060
19359
  post: {
@@ -19822,7 +20121,7 @@ export type $OpenApiTs = {
19822
20121
  requestBody: {
19823
20122
  email: string;
19824
20123
  /**
19825
- * link lifetime in seconds, at most 7200 (default 600)
20124
+ * link lifetime in seconds, at most 900 (default 600)
19826
20125
  */
19827
20126
  expires_in_s?: number;
19828
20127
  /**
@@ -19833,10 +20132,6 @@ export type $OpenApiTs = {
19833
20132
  * 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
19834
20133
  */
19835
20134
  require_login_type?: string;
19836
- /**
19837
- * return a /user/login_link page that signs in only when its button is clicked, instead of a link spent by opening it; set it for links sent by email, which mail scanners open on delivery (default false)
19838
- */
19839
- confirm?: boolean;
19840
20135
  };
19841
20136
  };
19842
20137
  res: {
@@ -20958,6 +21253,63 @@ export type $OpenApiTs = {
20958
21253
  };
20959
21254
  };
20960
21255
  };
21256
+ '/w/{workspace}/remote_deploy/target': {
21257
+ get: {
21258
+ req: {
21259
+ workspace: string;
21260
+ };
21261
+ res: {
21262
+ /**
21263
+ * remote deploy target and the caller's connection to it
21264
+ */
21265
+ 200: RemoteDeployStatus;
21266
+ };
21267
+ };
21268
+ post: {
21269
+ req: {
21270
+ requestBody: {
21271
+ target?: RemoteDeployTarget;
21272
+ };
21273
+ workspace: string;
21274
+ };
21275
+ res: {
21276
+ /**
21277
+ * status
21278
+ */
21279
+ 200: string;
21280
+ };
21281
+ };
21282
+ };
21283
+ '/w/{workspace}/remote_deploy/connect': {
21284
+ post: {
21285
+ req: {
21286
+ requestBody: {
21287
+ token: string;
21288
+ target: RemoteDeployTarget;
21289
+ };
21290
+ workspace: string;
21291
+ };
21292
+ res: {
21293
+ /**
21294
+ * the stored connection
21295
+ */
21296
+ 200: RemoteDeployConnection;
21297
+ };
21298
+ };
21299
+ };
21300
+ '/w/{workspace}/remote_deploy/disconnect': {
21301
+ post: {
21302
+ req: {
21303
+ workspace: string;
21304
+ };
21305
+ res: {
21306
+ /**
21307
+ * status
21308
+ */
21309
+ 200: string;
21310
+ };
21311
+ };
21312
+ };
20961
21313
  '/w/{workspace}/workspaces/is_premium': {
20962
21314
  get: {
20963
21315
  req: {
@@ -21614,6 +21966,53 @@ export type $OpenApiTs = {
21614
21966
  };
21615
21967
  };
21616
21968
  };
21969
+ '/w/{workspace}/workspaces/datatable_acl/{datatable_name}': {
21970
+ get: {
21971
+ req: {
21972
+ datatableName: string;
21973
+ kind: 'database' | 'schema' | 'table';
21974
+ schema?: string;
21975
+ table?: string;
21976
+ workspace: string;
21977
+ };
21978
+ res: {
21979
+ /**
21980
+ * owner and grants
21981
+ */
21982
+ 200: DatatableAclInfo;
21983
+ };
21984
+ };
21985
+ };
21986
+ '/w/{workspace}/workspaces/datatable_acl/{datatable_name}/plan': {
21987
+ post: {
21988
+ req: {
21989
+ datatableName: string;
21990
+ requestBody: AclChangeRequest;
21991
+ workspace: string;
21992
+ };
21993
+ res: {
21994
+ /**
21995
+ * statements that would run, in a single transaction
21996
+ */
21997
+ 200: AclPlan;
21998
+ };
21999
+ };
22000
+ };
22001
+ '/w/{workspace}/workspaces/datatable_acl/{datatable_name}/apply': {
22002
+ post: {
22003
+ req: {
22004
+ datatableName: string;
22005
+ requestBody: AclChangeRequest;
22006
+ workspace: string;
22007
+ };
22008
+ res: {
22009
+ /**
22010
+ * change applied
22011
+ */
22012
+ 200: string;
22013
+ };
22014
+ };
22015
+ };
21617
22016
  '/w/{workspace}/workspaces/datatable_usable_roles/{datatable_name}': {
21618
22017
  get: {
21619
22018
  req: {
@@ -21670,6 +22069,18 @@ export type $OpenApiTs = {
21670
22069
  '/w/{workspace}/workspaces/list_datatable_tables': {
21671
22070
  get: {
21672
22071
  req: {
22072
+ /**
22073
+ * list only this data table; each listed data table opens a connection to its database
22074
+ */
22075
+ datatableName?: string;
22076
+ /**
22077
+ * the role to list `role_for` as; refused, in that entry's `error`, if the caller may not use it
22078
+ */
22079
+ role?: string;
22080
+ /**
22081
+ * the data table `role` applies to; every other one is listed as its default role
22082
+ */
22083
+ roleFor?: string;
21673
22084
  workspace: string;
21674
22085
  };
21675
22086
  res: {
@@ -21684,6 +22095,10 @@ export type $OpenApiTs = {
21684
22095
  get: {
21685
22096
  req: {
21686
22097
  datatableName: string;
22098
+ /**
22099
+ * the data table role to read the table as; defaults to the data table's default role
22100
+ */
22101
+ role?: string;
21687
22102
  schemaName: string;
21688
22103
  tableName: string;
21689
22104
  workspace: string;
@@ -25321,7 +25736,15 @@ export type $OpenApiTs = {
25321
25736
  '/w/{workspace}/flows/history/p/{path}': {
25322
25737
  get: {
25323
25738
  req: {
25739
+ /**
25740
+ * which page to return (start at 1, default 1)
25741
+ */
25742
+ page?: number;
25324
25743
  path: string;
25744
+ /**
25745
+ * number of items to return for a given page (default 30, max 100)
25746
+ */
25747
+ perPage?: number;
25325
25748
  workspace: string;
25326
25749
  };
25327
25750
  res: {
@@ -25956,7 +26379,15 @@ export type $OpenApiTs = {
25956
26379
  '/w/{workspace}/apps/history/p/{path}': {
25957
26380
  get: {
25958
26381
  req: {
26382
+ /**
26383
+ * which page to return (start at 1, default 1)
26384
+ */
26385
+ page?: number;
25959
26386
  path: string;
26387
+ /**
26388
+ * number of items to return for a given page (default 30, max 100)
26389
+ */
26390
+ perPage?: number;
25960
26391
  workspace: string;
25961
26392
  };
25962
26393
  res: {
@@ -26168,7 +26599,7 @@ export type $OpenApiTs = {
26168
26599
  /**
26169
26600
  * app updated
26170
26601
  */
26171
- 200: string;
26602
+ 200: AppDeployed;
26172
26603
  };
26173
26604
  };
26174
26605
  };
@@ -26265,7 +26696,7 @@ export type $OpenApiTs = {
26265
26696
  /**
26266
26697
  * app updated
26267
26698
  */
26268
- 200: string;
26699
+ 200: AppDeployed;
26269
26700
  };
26270
26701
  };
26271
26702
  };
@@ -26307,7 +26738,7 @@ export type $OpenApiTs = {
26307
26738
  /**
26308
26739
  * app updated
26309
26740
  */
26310
- 200: string;
26741
+ 200: AppDeployed;
26311
26742
  };
26312
26743
  };
26313
26744
  };
@@ -27098,7 +27529,15 @@ export type $OpenApiTs = {
27098
27529
  '/w/{workspace}/scripts/history/p/{path}': {
27099
27530
  get: {
27100
27531
  req: {
27532
+ /**
27533
+ * which page to return (start at 1, default 1)
27534
+ */
27535
+ page?: number;
27101
27536
  path: string;
27537
+ /**
27538
+ * number of items to return for a given page (default 30, max 100)
27539
+ */
27540
+ perPage?: number;
27102
27541
  workspace: string;
27103
27542
  };
27104
27543
  res: {
@@ -27608,10 +28047,39 @@ export type $OpenApiTs = {
27608
28047
  200: {
27609
28048
  status: 'saved' | 'conflict';
27610
28049
  current_timestamp: string;
28050
+ /**
28051
+ * `saved` only, upsert or delete: where the write landed. Differs from the URL path when the item had moved away from it; the editor follows it there. Absent when a delete found nothing to remove and the caller cannot read the path it moved to.
28052
+ */
28053
+ path?: string;
27611
28054
  };
27612
28055
  };
27613
28056
  };
27614
28057
  };
28058
+ '/w/{workspace}/drafts/move/{kind}/{path}': {
28059
+ post: {
28060
+ req: {
28061
+ /**
28062
+ * script, flow, app or raw_app only.
28063
+ */
28064
+ kind: 'script' | 'flow' | 'app' | 'raw_app';
28065
+ path: string;
28066
+ requestBody: {
28067
+ new_path: string;
28068
+ /**
28069
+ * Also restate the draft's summary.
28070
+ */
28071
+ summary?: string;
28072
+ };
28073
+ workspace: string;
28074
+ };
28075
+ res: {
28076
+ /**
28077
+ * move result
28078
+ */
28079
+ 200: string;
28080
+ };
28081
+ };
28082
+ };
27615
28083
  '/w/{workspace}/drafts/migrate_legacy/{kind}/{path}': {
27616
28084
  post: {
27617
28085
  req: {