@cube-dev/platform-client 0.5.0 → 0.7.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/schema.d.ts CHANGED
@@ -305,6 +305,82 @@ export interface paths {
305
305
  patch?: never;
306
306
  trace?: never;
307
307
  };
308
+ "/api/v1/deployments/{deploymentId}/dashboard-exports": {
309
+ parameters: {
310
+ query?: never;
311
+ header?: never;
312
+ path?: never;
313
+ cookie?: never;
314
+ };
315
+ get?: never;
316
+ put?: never;
317
+ /**
318
+ * Export a dashboard as PNG or PDF
319
+ * @description Submit a render of a published dashboard. Identify it with either `dashboardId` (numeric) or `dashboardPublicId` (string) — supply exactly one; it must belong to this deployment, otherwise `404` is returned.
320
+ *
321
+ * Returns as soon as the job is accepted, because a render waits for every widget to finish querying. Poll `GET /dashboard-exports/{jobId}` until `status` is `completed`, then fetch the file from `GET /dashboard-exports/{jobId}/download`. The job and its file are dropped at `expiresAt` (5 minutes) — download before then or submit again.
322
+ *
323
+ * Pass `filters`, `timeGrains` and `memberSwitchers` to render the board with specific control values, exactly as a scheduled notification does; omit them to render its saved defaults.
324
+ *
325
+ * By default the dashboard renders under the calling user's own security context, so the file shows what that user would see. Requires **manage** access to the dashboard's workbook — the same permission the console's own "Download as PNG / PDF" actions require, because a whole-dashboard render is a bulk data export.
326
+ *
327
+ * To export on someone else's behalf, pass `renderAs`: the queries behind the image then run under that user's security context instead of yours. **Requires the caller to be a tenant administrator.** Name a console user by `userId` or `email` (`type: USER`), or an embed user by `embedTenantName` + `externalId` (`type: EMBED_USER`). A deactivated console user is not a valid subject and returns `404`; an email is matched case-insensitively.
328
+ *
329
+ * An embed subject is provisioned if it does not exist yet, and `groups`, `userAttributes` and `securityContext` apply to **this render only** — they are carried on the render's own session and are NOT written to the user's stored context, so exporting for someone never changes what their live embedded sessions see. (Use the embed-tenant users API to change a user's stored context.) An embed subject additionally requires the dashboard's workbook to be shared with that embed tenant, otherwise `403` is returned.
330
+ *
331
+ * Returns `403` when the workspace has data downloads restricted — including for an on-behalf-of export, which deliberately does **not** bypass that setting the way a built-in scheduled notification does — and `429` when there are already too many exports in flight for the identity being rendered as.
332
+ */
333
+ post: operations["DashboardExportsPublicController.startExport"];
334
+ delete?: never;
335
+ options?: never;
336
+ head?: never;
337
+ patch?: never;
338
+ trace?: never;
339
+ };
340
+ "/api/v1/deployments/{deploymentId}/dashboard-exports/{jobId}": {
341
+ parameters: {
342
+ query?: never;
343
+ header?: never;
344
+ path?: never;
345
+ cookie?: never;
346
+ };
347
+ /**
348
+ * Get the status of a dashboard export
349
+ * @description Progress of a submitted render. Poll until `status` is `completed` (then download it) or `failed` (then read `error`); `pending` and `processing` both mean keep waiting.
350
+ *
351
+ * Returns `404` once the job has expired, and for a job submitted by a different user — a job is only ever visible to whoever started it.
352
+ */
353
+ get: operations["DashboardExportsPublicController.getExportStatus"];
354
+ put?: never;
355
+ post?: never;
356
+ delete?: never;
357
+ options?: never;
358
+ head?: never;
359
+ patch?: never;
360
+ trace?: never;
361
+ };
362
+ "/api/v1/deployments/{deploymentId}/dashboard-exports/{jobId}/download": {
363
+ parameters: {
364
+ query?: never;
365
+ header?: never;
366
+ path?: never;
367
+ cookie?: never;
368
+ };
369
+ /**
370
+ * Download a completed dashboard export
371
+ * @description Stream the rendered file as an attachment, named `dashboard.png` / `dashboard.pdf` unless `?filename=` supplies a different stem (the extension always follows the rendered format).
372
+ *
373
+ * Returns `409` while the job is still rendering — poll `GET /dashboard-exports/{jobId}` first — `422` if the render failed (terminal: submit a new export rather than retrying this one), and `404` once the job has expired or if it belongs to a different user.
374
+ */
375
+ get: operations["DashboardExportsPublicController.downloadExport"];
376
+ put?: never;
377
+ post?: never;
378
+ delete?: never;
379
+ options?: never;
380
+ head?: never;
381
+ patch?: never;
382
+ trace?: never;
383
+ };
308
384
  "/api/v1/deployments/{deploymentId}/dbt-sync": {
309
385
  parameters: {
310
386
  query?: never;
@@ -1037,6 +1113,23 @@ export interface paths {
1037
1113
  patch?: never;
1038
1114
  trace?: never;
1039
1115
  };
1116
+ "/api/v1/deployments/{deploymentId}/workbooks/{workbookId}/dashboard/ai-widget-thread": {
1117
+ parameters: {
1118
+ query?: never;
1119
+ header?: never;
1120
+ path?: never;
1121
+ cookie?: never;
1122
+ };
1123
+ get?: never;
1124
+ put?: never;
1125
+ /** Update published dashboard ai widget thread */
1126
+ post: operations["WorkbooksPublicController.updatePublishedDashboardAiWidgetThread"];
1127
+ delete?: never;
1128
+ options?: never;
1129
+ head?: never;
1130
+ patch?: never;
1131
+ trace?: never;
1132
+ };
1040
1133
  "/api/v1/deployments/{deploymentId}/workbooks/{workbookId}/duplicate": {
1041
1134
  parameters: {
1042
1135
  query?: never;
@@ -2039,7 +2132,7 @@ export interface paths {
2039
2132
  *
2040
2133
  * The token is scoped to your account: it carries the same server-resolved security context as the embedded Usage Analytics page, so queries only ever see your own data. Send it as `Authorization: Bearer <token>` on requests to the returned `apiUrl` (the deployment's [Cube REST API](https://cube.dev/docs/product/apis-integrations/rest-api)).
2041
2134
  *
2042
- * Tokens expire after ~24 hours (see `expiresAt`). Issue a fresh one per session or scheduled refresh — issuing is idempotent and cheap.
2135
+ * Tokens expire after 1 hour (see `expiresAt`). Issue a fresh one per session or scheduled refresh — issuing is idempotent and cheap.
2043
2136
  *
2044
2137
  * Requires Usage Analytics to be enabled for the account, otherwise `404` is returned.
2045
2138
  */
@@ -2288,6 +2381,26 @@ export interface paths {
2288
2381
  patch?: never;
2289
2382
  trace?: never;
2290
2383
  };
2384
+ "/api/v1/users/me/settings": {
2385
+ parameters: {
2386
+ query?: never;
2387
+ header?: never;
2388
+ path?: never;
2389
+ cookie?: never;
2390
+ };
2391
+ get?: never;
2392
+ put?: never;
2393
+ post?: never;
2394
+ delete?: never;
2395
+ options?: never;
2396
+ head?: never;
2397
+ /**
2398
+ * Update my settings
2399
+ * @description Merge a partial patch into the authenticated user's own settings. Omitted fields are left as they are; `sheets` merges field-by-field, and an explicit `null` clears it.
2400
+ */
2401
+ patch: operations["UsersPublicController.updateMySettings"];
2402
+ trace?: never;
2403
+ };
2291
2404
  "/api/v1/users/{id}": {
2292
2405
  parameters: {
2293
2406
  query?: never;
@@ -2709,18 +2822,61 @@ export interface components {
2709
2822
  timezoneSettings?: components["schemas"]["TimezoneSettings"] | null;
2710
2823
  };
2711
2824
  AppTheme: {
2825
+ /**
2826
+ * @deprecated
2827
+ * @description Deprecated: use palette and logoUrl instead.
2828
+ */
2712
2829
  dark: components["schemas"]["AppThemeScheme"];
2830
+ /**
2831
+ * @deprecated
2832
+ * @description Deprecated: use palette and logoUrl instead.
2833
+ */
2713
2834
  light: components["schemas"]["AppThemeScheme"];
2835
+ logoUrl: string;
2836
+ palette: components["schemas"]["AppThemePalette"];
2714
2837
  typography?: components["schemas"]["AppThemeTypography"] | null;
2715
2838
  };
2839
+ AppThemeCodePalette: {
2840
+ saturation?: number | null;
2841
+ };
2716
2842
  AppThemeFontRef: {
2717
2843
  fontRef: string;
2718
2844
  fontWeight: number;
2719
2845
  };
2846
+ AppThemePalette: {
2847
+ accent?: components["schemas"]["AppThemePaletteSeed"] | null;
2848
+ base?: components["schemas"]["AppThemePaletteSeed"] | null;
2849
+ contrastLevel?: number | null;
2850
+ pastel?: boolean | null;
2851
+ surfaceMode?: components["schemas"]["AppThemeSurfaceMode"] | null;
2852
+ themes?: components["schemas"]["AppThemePaletteThemes"] | null;
2853
+ };
2854
+ AppThemePaletteSeed: {
2855
+ color?: string | null;
2856
+ hue?: number | null;
2857
+ saturation?: number | null;
2858
+ };
2859
+ AppThemePaletteThemes: {
2860
+ code?: components["schemas"]["AppThemeCodePalette"] | null;
2861
+ danger?: components["schemas"]["AppThemePaletteSeed"] | null;
2862
+ note?: components["schemas"]["AppThemePaletteSeed"] | null;
2863
+ success?: components["schemas"]["AppThemePaletteSeed"] | null;
2864
+ warning?: components["schemas"]["AppThemePaletteSeed"] | null;
2865
+ };
2720
2866
  AppThemeResponse: {
2721
2867
  applyThemeGlobally: boolean;
2868
+ /**
2869
+ * @deprecated
2870
+ * @description Deprecated: use palette and logoUrl instead.
2871
+ */
2722
2872
  dark: components["schemas"]["AppThemeScheme"];
2873
+ /**
2874
+ * @deprecated
2875
+ * @description Deprecated: use palette and logoUrl instead.
2876
+ */
2723
2877
  light: components["schemas"]["AppThemeScheme"];
2878
+ logoUrl: string;
2879
+ palette: components["schemas"]["AppThemePalette"];
2724
2880
  typography?: components["schemas"]["AppThemeTypography"];
2725
2881
  };
2726
2882
  AppThemeScheme: {
@@ -2730,6 +2886,8 @@ export interface components {
2730
2886
  foregroundColor: string;
2731
2887
  logoUrl: string;
2732
2888
  };
2889
+ /** @enum {string} */
2890
+ AppThemeSurfaceMode: "neutral" | "tinted";
2733
2891
  AppThemeTypography: {
2734
2892
  body: components["schemas"]["AppThemeFontRef"];
2735
2893
  fonts: components["schemas"]["ThemeFont"][];
@@ -2829,11 +2987,13 @@ export interface components {
2829
2987
  private?: boolean | null;
2830
2988
  };
2831
2989
  ConnectReportToWorkbookInput: {
2990
+ addressOnly?: boolean | null;
2832
2991
  anchorCell?: string | null;
2833
2992
  endResultCell?: string | null;
2834
2993
  externalWorkbookId: string;
2835
2994
  host?: components["schemas"]["ConnectReportToWorkbookInputHost"] | null;
2836
2995
  placementId?: string | null;
2996
+ resultChecksum?: components["schemas"]["ReportPlacementResultChecksumInput"] | null;
2837
2997
  resultLocation: string;
2838
2998
  sheetId?: string | null;
2839
2999
  sheetName?: string | null;
@@ -2887,6 +3047,9 @@ export interface components {
2887
3047
  CreateDeploymentInputCreationMethod: "upload" | "cubecloud" | "github" | "ssh";
2888
3048
  /** @enum {string} */
2889
3049
  CreateDeploymentInputDeployMode: "git" | "cli";
3050
+ CreateDeploymentTokenInput: {
3051
+ expiresIn?: number | null;
3052
+ };
2890
3053
  CreateEmbedGroupInput: {
2891
3054
  description?: string | null;
2892
3055
  /** @description Group name, unique within the embed tenant. The `system:` prefix is reserved and rejected. */
@@ -2905,6 +3068,7 @@ export interface components {
2905
3068
  dayOfWeek?: number | null;
2906
3069
  filters?: components["schemas"]["DashboardFilterInput"][] | null;
2907
3070
  hour?: number | null;
3071
+ memberSwitchers?: components["schemas"]["DashboardMemberSwitcherInput"][] | null;
2908
3072
  minute?: number | null;
2909
3073
  notificationAiSummary?: boolean | null;
2910
3074
  notificationEnabled?: boolean | null;
@@ -2954,6 +3118,7 @@ export interface components {
2954
3118
  name?: string | null;
2955
3119
  pivotItems?: components["schemas"]["PivotItemsInput"] | null;
2956
3120
  publicId?: string | null;
3121
+ resultChecksum?: components["schemas"]["ReportPlacementResultChecksumInput"] | null;
2957
3122
  resultLocation?: string | null;
2958
3123
  sheetId?: string | null;
2959
3124
  source?: components["schemas"]["CreateReportInputSource"] | null;
@@ -3104,6 +3269,20 @@ export interface components {
3104
3269
  title?: string | null;
3105
3270
  widgets?: components["schemas"]["DashboardWidget"][] | null;
3106
3271
  };
3272
+ DashboardConfigDraftInput: {
3273
+ app?: components["schemas"]["DashboardAppSourceInput"] | null;
3274
+ description?: string | null;
3275
+ kind?: components["schemas"]["DashboardConfigDraftInputKind"] | null;
3276
+ layout?: components["schemas"]["DashboardLayoutInput"] | null;
3277
+ settings?: {
3278
+ [key: string]: any;
3279
+ } | null;
3280
+ theme?: components["schemas"]["DashboardThemeInput"] | null;
3281
+ title?: string | null;
3282
+ widgets?: components["schemas"]["DashboardWidgetDraftInput"][] | null;
3283
+ };
3284
+ /** @enum {string} */
3285
+ DashboardConfigDraftInputKind: "CLASSIC" | "APP";
3107
3286
  DashboardConfigInput: {
3108
3287
  app?: components["schemas"]["DashboardAppSourceInput"] | null;
3109
3288
  description?: string | null;
@@ -3126,6 +3305,23 @@ export interface components {
3126
3305
  allowEmbed: boolean;
3127
3306
  publicId: string;
3128
3307
  };
3308
+ DashboardExportJobResponse: {
3309
+ /**
3310
+ * Format: date-time
3311
+ * @description When the job (and its rendered file) is evicted from the renderer cache. Download before this, or submit a new export.
3312
+ */
3313
+ expiresAt: string;
3314
+ /** @description Job id to poll for status and to download the finished file with. */
3315
+ jobId: string;
3316
+ };
3317
+ DashboardExportStatusResponse: {
3318
+ contentType?: string | null;
3319
+ error?: string | null;
3320
+ progress?: number | null;
3321
+ status: components["schemas"]["DashboardExportStatusResponseStatus"];
3322
+ };
3323
+ /** @enum {string} */
3324
+ DashboardExportStatusResponseStatus: "pending" | "processing" | "completed" | "failed";
3129
3325
  DashboardFilter: {
3130
3326
  caseSensitive?: any | null;
3131
3327
  endInclusive?: any | null;
@@ -3161,6 +3357,16 @@ export interface components {
3161
3357
  margin?: number[] | null;
3162
3358
  rowHeight?: number | null;
3163
3359
  };
3360
+ DashboardMemberSwitcher: {
3361
+ member: string;
3362
+ selected: string;
3363
+ };
3364
+ DashboardMemberSwitcherInput: {
3365
+ /** @description Path of the member the control replaces, e.g. "Orders.status" */
3366
+ member: string;
3367
+ /** @description Name of the member to show in its place, e.g. "city" (no view prefix) */
3368
+ selected: string;
3369
+ };
3164
3370
  DashboardResponsiveLayouts: {
3165
3371
  lg?: components["schemas"]["DashboardWidgetPosition"] | null;
3166
3372
  md?: components["schemas"]["DashboardWidgetPosition"] | null;
@@ -3210,8 +3416,22 @@ export interface components {
3210
3416
  } | null;
3211
3417
  type: components["schemas"]["DashboardWidgetDtoType"];
3212
3418
  };
3419
+ DashboardWidgetDraftInput: {
3420
+ config?: {
3421
+ [key: string]: any;
3422
+ } | null;
3423
+ id?: string | null;
3424
+ position: components["schemas"]["DashboardWidgetPositionInput"];
3425
+ responsiveLayouts?: components["schemas"]["DashboardResponsiveLayoutsInput"] | null;
3426
+ style?: {
3427
+ [key: string]: any;
3428
+ } | null;
3429
+ type: components["schemas"]["DashboardWidgetDraftInputType"];
3430
+ };
3213
3431
  /** @enum {string} */
3214
- DashboardWidgetDtoType: "CHART" | "TEXT" | "FILTER" | "AI" | "TIME_GRAIN" | "PARENT" | "SPACER" | "DIVIDER" | "CONTAINER";
3432
+ DashboardWidgetDraftInputType: "CHART" | "TEXT" | "FILTER" | "AI" | "TIME_GRAIN" | "FIELD" | "PARENT" | "SPACER" | "DIVIDER" | "CONTAINER";
3433
+ /** @enum {string} */
3434
+ DashboardWidgetDtoType: "CHART" | "TEXT" | "FILTER" | "AI" | "TIME_GRAIN" | "FIELD" | "PARENT" | "SPACER" | "DIVIDER" | "CONTAINER";
3215
3435
  DashboardWidgetInput: {
3216
3436
  config?: {
3217
3437
  [key: string]: any;
@@ -3225,7 +3445,7 @@ export interface components {
3225
3445
  type: components["schemas"]["DashboardWidgetInputType"];
3226
3446
  };
3227
3447
  /** @enum {string} */
3228
- DashboardWidgetInputType: "CHART" | "TEXT" | "FILTER" | "AI" | "TIME_GRAIN" | "PARENT" | "SPACER" | "DIVIDER" | "CONTAINER";
3448
+ DashboardWidgetInputType: "CHART" | "TEXT" | "FILTER" | "AI" | "TIME_GRAIN" | "FIELD" | "PARENT" | "SPACER" | "DIVIDER" | "CONTAINER";
3229
3449
  DashboardWidgetPosition: {
3230
3450
  h: number;
3231
3451
  w: number;
@@ -3668,6 +3888,20 @@ export interface components {
3668
3888
  items: components["schemas"]["EnvVariableItem"][];
3669
3889
  pageInfo?: components["schemas"]["PageInfo"] | null;
3670
3890
  };
3891
+ ExportSubjectInput: {
3892
+ email?: string | null;
3893
+ embedTenantName?: string | null;
3894
+ externalId?: string | null;
3895
+ groups?: string[] | null;
3896
+ securityContext?: {
3897
+ [key: string]: any;
3898
+ } | null;
3899
+ type: components["schemas"]["ExportSubjectInputType"];
3900
+ userAttributes?: components["schemas"]["UserAttributeInput"][] | null;
3901
+ userId?: number | null;
3902
+ };
3903
+ /** @enum {string} */
3904
+ ExportSubjectInputType: "USER" | "EMBED_USER";
3671
3905
  FileHash: {
3672
3906
  hash: string;
3673
3907
  };
@@ -3887,6 +4121,7 @@ export interface components {
3887
4121
  humanReadableSchedule: string;
3888
4122
  id: number;
3889
4123
  isEnabled: boolean;
4124
+ memberSwitchers?: components["schemas"]["DashboardMemberSwitcher"][] | null;
3890
4125
  /** @description Whether this notification carries an AI-generated "what changed" summary in its body. */
3891
4126
  notificationAiSummary: boolean;
3892
4127
  notificationEnabled: boolean;
@@ -3987,21 +4222,29 @@ export interface components {
3987
4222
  };
3988
4223
  PivotItems: {
3989
4224
  columns: string[];
4225
+ displayScale?: components["schemas"]["PivotItemsDisplayScale"] | null;
3990
4226
  filters: string[];
3991
4227
  measures: string[];
3992
4228
  measuresAxis?: components["schemas"]["PivotItemsMeasuresAxis"] | null;
3993
4229
  measuresPosition?: components["schemas"]["PivotItemsMeasuresPosition"] | null;
3994
4230
  rows: string[];
4231
+ showColumnTotals?: boolean | null;
3995
4232
  };
4233
+ /** @enum {string} */
4234
+ PivotItemsDisplayScale: "model" | "absolute" | "thousands" | "millions" | "billions";
3996
4235
  PivotItemsInput: {
3997
4236
  columns: string[];
4237
+ displayScale?: components["schemas"]["PivotItemsInputDisplayScale"] | null;
3998
4238
  filters: string[];
3999
4239
  measures: string[];
4000
4240
  measuresAxis?: components["schemas"]["PivotItemsInputMeasuresAxis"] | null;
4001
4241
  measuresPosition?: components["schemas"]["PivotItemsInputMeasuresPosition"] | null;
4002
4242
  rows: string[];
4243
+ showColumnTotals?: boolean | null;
4003
4244
  };
4004
4245
  /** @enum {string} */
4246
+ PivotItemsInputDisplayScale: "model" | "absolute" | "thousands" | "millions" | "billions";
4247
+ /** @enum {string} */
4005
4248
  PivotItemsInputMeasuresAxis: "columns" | "rows";
4006
4249
  /** @enum {string} */
4007
4250
  PivotItemsInputMeasuresPosition: "before" | "after";
@@ -4009,6 +4252,13 @@ export interface components {
4009
4252
  PivotItemsMeasuresAxis: "columns" | "rows";
4010
4253
  /** @enum {string} */
4011
4254
  PivotItemsMeasuresPosition: "before" | "after";
4255
+ Policy: {
4256
+ actions: ("All" | "DeploymentsManage" | "DeploymentCreate" | "DeploymentRead" | "DeploymentUpdate" | "DeploymentDelete" | "SecretsManage" | "DownloadData" | "PlaygroundRead" | "SchemaRead" | "SchemaUpdate" | "SchemaUpdateDevBranches" | "APMRead" | "PreAggregationBuild" | "AlertsCreate" | "AlertsRead" | "AlertsUpdate" | "AlertsDelete" | "AuditLogManage" | "BillingRead" | "SqlRunnerRead" | "DataAssetsRead" | "DataAssetsManage" | "CubeNetworkConnect" | "ReportRead" | "ReportEdit" | "ReportManage" | "WorkbookManage" | "WorkbookRead" | "WorkbookEdit" | "ChatThreadRead" | "AgentManage" | "AgentRead" | "AgentSpaceManage" | "AgentAdmin" | "DeploymentAgentRead" | "OAuthIntegrationsManage" | "OAuthIntegrationsIssueTokens" | "McpToolsManage" | "AIBIDevelop" | "AIBIExplore" | "AIBIView" | "ChartPalettesManage" | "DashboardThemesManage" | "AIBIDeveloper" | "AIBIUser" | "AIBIViewer" | "EmbedDeploymentRead" | "EmbedDashboardRead" | "FolderRead" | "FolderEdit" | "FolderManage")[];
4257
+ resourceType: components["schemas"]["PolicyResourceType"];
4258
+ resources: string[];
4259
+ };
4260
+ /** @enum {string} */
4261
+ PolicyResourceType: "Global" | "Deployment" | "Report" | "ReportFolder" | "Agent" | "AgentSpace" | "Workbook" | "Dashboard" | "Folder" | "ChatThread";
4012
4262
  PostTokenBySessionIdInput: {
4013
4263
  sessionId: string;
4014
4264
  };
@@ -4075,6 +4325,7 @@ export interface components {
4075
4325
  anchorCell?: string | null;
4076
4326
  externalWorkbookId?: string | null;
4077
4327
  placementId?: string | null;
4328
+ resultChecksum?: components["schemas"]["ReportPlacementResultChecksumInput"] | null;
4078
4329
  resultLocation?: string | null;
4079
4330
  sheetId?: string | null;
4080
4331
  sheetName?: string | null;
@@ -4192,6 +4443,7 @@ export interface components {
4192
4443
  canManage?: boolean | null;
4193
4444
  createdAt: string;
4194
4445
  createdBy?: number;
4446
+ currentQueryChecksum?: string | null;
4195
4447
  deploymentId: number;
4196
4448
  description?: string | null;
4197
4449
  endResultCell?: string | null;
@@ -4248,16 +4500,39 @@ export interface components {
4248
4500
  id?: string | null;
4249
4501
  placedAt?: string | null;
4250
4502
  placedByUserId?: number | null;
4503
+ queryChecksum?: string | null;
4251
4504
  refreshedAt?: string | null;
4252
4505
  refreshedByUserId?: number | null;
4506
+ resultChecksum?: components["schemas"]["ReportPlacementResultChecksum"] | null;
4253
4507
  resultLocation: string;
4254
4508
  sheetId?: string | null;
4255
4509
  sheetName?: string | null;
4510
+ syncStatus?: components["schemas"]["ReportPlacementSyncStatus"] | null;
4256
4511
  workbookId: string;
4257
4512
  workbookName?: string | null;
4258
4513
  };
4259
4514
  /** @enum {string} */
4260
4515
  ReportPlacementHost: "GOOGLE_SHEETS" | "EXCEL";
4516
+ ReportPlacementResultChecksum: {
4517
+ chunks: components["schemas"]["ReportPlacementResultChunk"][];
4518
+ v: number;
4519
+ };
4520
+ ReportPlacementResultChecksumInput: {
4521
+ chunks: components["schemas"]["ReportPlacementResultChunkInput"][];
4522
+ v: number;
4523
+ };
4524
+ ReportPlacementResultChunk: {
4525
+ from: number;
4526
+ hash: string;
4527
+ to?: number | null;
4528
+ };
4529
+ ReportPlacementResultChunkInput: {
4530
+ from: number;
4531
+ hash: string;
4532
+ to?: number | null;
4533
+ };
4534
+ /** @enum {string} */
4535
+ ReportPlacementSyncStatus: "UP_TO_DATE" | "CHANGED" | "UNKNOWN";
4261
4536
  ReportSnapshot: {
4262
4537
  description?: string | null;
4263
4538
  fillMissingRows?: components["schemas"]["FillMissingRows"] | null;
@@ -4342,6 +4617,13 @@ export interface components {
4342
4617
  SheetsUiSettings: {
4343
4618
  showAppliedFilters?: boolean | null;
4344
4619
  };
4620
+ SheetsUserSettingsInput: {
4621
+ autoRunQueryOnChange?: boolean | null;
4622
+ openExplorationFromSheet?: boolean | null;
4623
+ revealSheetOnOpen?: boolean | null;
4624
+ showAppliedFilters?: boolean | null;
4625
+ suppressDuplicateValues?: boolean | null;
4626
+ };
4345
4627
  SourceTreeResponse: {
4346
4628
  /**
4347
4629
  * @deprecated
@@ -4355,6 +4637,17 @@ export interface components {
4355
4637
  }[];
4356
4638
  pageInfo?: components["schemas"]["PageInfo"] | null;
4357
4639
  };
4640
+ StartDashboardExportInput: {
4641
+ dashboardId?: number | null;
4642
+ dashboardPublicId?: string | null;
4643
+ filters?: components["schemas"]["DashboardFilterInput"][] | null;
4644
+ format: components["schemas"]["StartDashboardExportInputFormat"];
4645
+ memberSwitchers?: components["schemas"]["DashboardMemberSwitcherInput"][] | null;
4646
+ renderAs?: components["schemas"]["ExportSubjectInput"] | null;
4647
+ timeGrains?: components["schemas"]["DashboardTimeGrainInput"][] | null;
4648
+ };
4649
+ /** @enum {string} */
4650
+ StartDashboardExportInputFormat: "png" | "pdf";
4358
4651
  StartDbtSyncInput: {
4359
4652
  branchName?: string | null;
4360
4653
  ref?: string | null;
@@ -4461,6 +4754,7 @@ export interface components {
4461
4754
  filters?: components["schemas"]["DashboardFilterInput"][] | null;
4462
4755
  hour?: number | null;
4463
4756
  isEnabled?: boolean | null;
4757
+ memberSwitchers?: components["schemas"]["DashboardMemberSwitcherInput"][] | null;
4464
4758
  minute?: number | null;
4465
4759
  notificationAiSummary?: boolean | null;
4466
4760
  notificationEnabled?: boolean | null;
@@ -4497,6 +4791,11 @@ export interface components {
4497
4791
  subFormat?: string | null;
4498
4792
  targetEnvVar?: string | null;
4499
4793
  };
4794
+ UpdatePublishedAiWidgetThreadInput: {
4795
+ checksum?: string | null;
4796
+ threadId: string;
4797
+ widgetId: string;
4798
+ };
4500
4799
  UpdateReportInput: {
4501
4800
  endResultCell?: string | null;
4502
4801
  externalWorkbookId?: string | null;
@@ -4510,6 +4809,7 @@ export interface components {
4510
4809
  pivotItems?: components["schemas"]["PivotItems"] | null;
4511
4810
  placementId?: string | null;
4512
4811
  publicId?: string | null;
4812
+ resultChecksum?: components["schemas"]["ReportPlacementResultChecksumInput"] | null;
4513
4813
  resultLocation?: string | null;
4514
4814
  sheetId?: string | null;
4515
4815
  sqlQuery?: string | null;
@@ -4587,6 +4887,7 @@ export interface components {
4587
4887
  title?: string | null;
4588
4888
  tosAccepted?: Record<string, never> | null;
4589
4889
  updatedAt?: (string) | null;
4890
+ userPolicies?: components["schemas"]["Policy"][] | null;
4590
4891
  username: string;
4591
4892
  };
4592
4893
  UserAlias: {
@@ -4712,6 +5013,7 @@ export interface components {
4712
5013
  defaultDeploymentId?: number | null;
4713
5014
  lastSeenChangelogId?: number | null;
4714
5015
  locale?: string | null;
5016
+ sheets?: components["schemas"]["SheetsUserSettingsInput"] | null;
4715
5017
  theme?: string | null;
4716
5018
  timezone?: string | null;
4717
5019
  };
@@ -4790,7 +5092,7 @@ export interface components {
4790
5092
  dashboardPublished?: components["schemas"]["DashboardConfig"] | null;
4791
5093
  };
4792
5094
  WorkbookDashboardInput: {
4793
- dashboardDraft?: components["schemas"]["DashboardConfigInput"] | null;
5095
+ dashboardDraft?: components["schemas"]["DashboardConfigDraftInput"] | null;
4794
5096
  };
4795
5097
  /** @enum {string} */
4796
5098
  WorkbookDtoType: "FOLDER" | "WORKBOOK" | "REPORT";
@@ -5462,6 +5764,86 @@ export interface operations {
5462
5764
  };
5463
5765
  };
5464
5766
  };
5767
+ "DashboardExportsPublicController.startExport": {
5768
+ parameters: {
5769
+ query?: never;
5770
+ header?: never;
5771
+ path: {
5772
+ /** @description Numeric id of the deployment that owns the dashboard. */
5773
+ deploymentId: number;
5774
+ };
5775
+ cookie?: never;
5776
+ };
5777
+ /** @description StartDashboardExportInput */
5778
+ requestBody: {
5779
+ content: {
5780
+ "application/json": components["schemas"]["StartDashboardExportInput"];
5781
+ };
5782
+ };
5783
+ responses: {
5784
+ 200: {
5785
+ headers: {
5786
+ [name: string]: any;
5787
+ };
5788
+ content: {
5789
+ "application/json": components["schemas"]["DashboardExportJobResponse"];
5790
+ };
5791
+ };
5792
+ };
5793
+ };
5794
+ "DashboardExportsPublicController.getExportStatus": {
5795
+ parameters: {
5796
+ query?: never;
5797
+ header?: never;
5798
+ path: {
5799
+ /** @description Numeric id of the deployment that owns the dashboard. */
5800
+ deploymentId: number;
5801
+ /** @description Job id returned when the export was submitted. */
5802
+ jobId: string;
5803
+ };
5804
+ cookie?: never;
5805
+ };
5806
+ requestBody?: never;
5807
+ responses: {
5808
+ 200: {
5809
+ headers: {
5810
+ [name: string]: any;
5811
+ };
5812
+ content: {
5813
+ "application/json": components["schemas"]["DashboardExportStatusResponse"];
5814
+ };
5815
+ };
5816
+ };
5817
+ };
5818
+ "DashboardExportsPublicController.downloadExport": {
5819
+ parameters: {
5820
+ query?: {
5821
+ /** @description Filename stem for the attachment, without extension. Defaults to `dashboard`. */
5822
+ filename?: string;
5823
+ };
5824
+ header?: never;
5825
+ path: {
5826
+ /** @description Numeric id of the deployment that owns the dashboard. */
5827
+ deploymentId: number;
5828
+ /** @description Job id returned when the export was submitted. */
5829
+ jobId: string;
5830
+ };
5831
+ cookie?: never;
5832
+ };
5833
+ requestBody?: never;
5834
+ responses: {
5835
+ /** @description The rendered dashboard. */
5836
+ 200: {
5837
+ headers: {
5838
+ [name: string]: any;
5839
+ };
5840
+ content: {
5841
+ "application/pdf": string;
5842
+ "image/png": string;
5843
+ };
5844
+ };
5845
+ };
5846
+ };
5465
5847
  "DbtSyncPublicController.listDbtSyncs": {
5466
5848
  parameters: {
5467
5849
  query?: {
@@ -6491,7 +6873,12 @@ export interface operations {
6491
6873
  };
6492
6874
  cookie?: never;
6493
6875
  };
6494
- requestBody?: never;
6876
+ /** @description CreateDeploymentTokenInput */
6877
+ requestBody?: {
6878
+ content: {
6879
+ "application/json": components["schemas"]["CreateDeploymentTokenInput"];
6880
+ };
6881
+ };
6495
6882
  responses: {
6496
6883
  200: {
6497
6884
  headers: {
@@ -6705,6 +7092,33 @@ export interface operations {
6705
7092
  };
6706
7093
  };
6707
7094
  };
7095
+ "WorkbooksPublicController.updatePublishedDashboardAiWidgetThread": {
7096
+ parameters: {
7097
+ query?: never;
7098
+ header?: never;
7099
+ path: {
7100
+ deploymentId: number;
7101
+ workbookId: number;
7102
+ };
7103
+ cookie?: never;
7104
+ };
7105
+ /** @description UpdatePublishedAiWidgetThreadInput */
7106
+ requestBody?: {
7107
+ content: {
7108
+ "application/json": components["schemas"]["UpdatePublishedAiWidgetThreadInput"];
7109
+ };
7110
+ };
7111
+ responses: {
7112
+ 200: {
7113
+ headers: {
7114
+ [name: string]: any;
7115
+ };
7116
+ content: {
7117
+ "application/json": components["schemas"]["Dashboard"];
7118
+ };
7119
+ };
7120
+ };
7121
+ };
6708
7122
  "WorkbooksPublicController.duplicateWorkbook": {
6709
7123
  parameters: {
6710
7124
  query?: never;
@@ -8582,6 +8996,30 @@ export interface operations {
8582
8996
  };
8583
8997
  };
8584
8998
  };
8999
+ "UsersPublicController.updateMySettings": {
9000
+ parameters: {
9001
+ query?: never;
9002
+ header?: never;
9003
+ path?: never;
9004
+ cookie?: never;
9005
+ };
9006
+ /** @description UserSettings */
9007
+ requestBody?: {
9008
+ content: {
9009
+ "application/json": components["schemas"]["UserSettingsInput"];
9010
+ };
9011
+ };
9012
+ responses: {
9013
+ 200: {
9014
+ headers: {
9015
+ [name: string]: any;
9016
+ };
9017
+ content: {
9018
+ "application/json": components["schemas"]["User"];
9019
+ };
9020
+ };
9021
+ };
9022
+ };
8585
9023
  "UsersAdminPublicController.updateUser": {
8586
9024
  parameters: {
8587
9025
  query?: never;