Supersedes0.2.1, which never reached npm because its publish job failed. Upgrading from0.2.0picks up both releases, so the0.2.1entries are repeated below under Also included from the unpublished 0.2.1.
Added
Build API — a new /build/api/v1 surface
POST /build/api/v1/deployments/(DeploymentsBuildPublicController.createDeployment) — creates a deployment. New schemas:CreateDeploymentInput,CreateDeploymentInputCloudProvider(cubecloud|aws|gcp),CreateDeploymentInputCreationMethod(upload|cubecloud|github|ssh),CreateDeploymentInputDeployMode(git|cli),CspsConfigInput.- Data-model file authoring:
GET/PUT/DELETE /build/api/v1/deployments/{deploymentId}/data-model/files(DataModelPublicController.listFiles/updateFiles/removeFiles) andPOST .../data-model/files/rename(renameFiles). Writes are restricted to dev-mode branches. New schemas:DataModelFileContent,DataModelFilePath,DataModelFileRename,UpdateDataModelFilesInput,RemoveDataModelFilesInput,RenameDataModelFilesInput,DataModelWriteResponse. - Chunked data-model uploads:
POST .../data-model/upload/start,POST .../data-model/upload/file,POST .../data-model/upload/finish, andGET .../data-model/file-hashes(UploadsPublicController.*). New schemas:StartUploadResponse,UploadFileBody,FinishUploadBody,FinishUploadResponse,UploadTransaction,FileHash,SourceTreeResponse. - Dev mode and branch operations:
POST/DELETE .../dev-mode(startDevMode/stopDevMode),GET/POST .../branches(listBranches/createBranch),POST .../commit,POST .../pull,POST .../merge,POST .../merge-to-default. The dev-mode endpoints return the real dev branch. New schemas:StartDevModeRequest,DevBranchResponse,BranchResponse,BranchesListResponse,CommitChangesRequest,PullRequest,PullResponse,MergeIntoParentBranchRequest,MergeToDefaultBranchRequest,MergeResponse. POST /build/api/v1/deployments/{deploymentId}/github/connect(GitHubDeploymentPublicController.connect) — connects a deployment to a GitHub repository. New schema:ConnectGitHubRequest.
Deployment management
PUT /api/v1/deployments/{deploymentId}(DeploymentsPublicController.updateDeployment) andDELETE /api/v1/deployments/{deploymentId}(deleteDeployment). New schemas:UpdateDeploymentInput,UpdateDeploymentInputCreationMethod,UpdateDeploymentInputDeployMode,DeploymentDeleteResponse.GET /api/v1/deployments/{deploymentId}/build-status(buildStatus) — current build/deploy state for a branch. New schema:BuildStatusResponse.GET /api/v1/deployments/{deploymentId}/logs(logs) — container logs, filterable by source and container. New schemas:DeploymentLogsResponse,DeploymentLogLine,DeploymentLogsQuerySource(production|dev),DeploymentLogsQueryContainer(INIT|MAIN|cubejs-server|vector|api-proxy).GET /api/v1/deployments/{deploymentId}/pods(pods). New schemas:DeploymentPodsResponse,DeploymentPod.GET/PUT /api/v1/deployments/{deploymentId}/env-vars(EnvVariablesPublicController.getEnvVariables/setEnvVariables). New schemas:EnvVariablesListResponse,EnvVariableItem,SetEnvVariablesInput.POST /api/v1/deployments/{deploymentId}/creation-step/advanceand.../creation-step/reset(advanceCreationStep/resetCreationStep) for driving the deployment setup wizard. New schema:AdvanceCreationStepInput.GET /api/v1/regions/(RegionsPublicController.listRegions) — regions available to the tenant. New schemas:RegionsListResponse,RegionResponse.
Users, attributes and tenant settings
- Console user administration:
POST/PUT/DELETE /api/v1/users/{id}andPOST /api/v1/users/(UsersAdminPublicController.createUser/updateUser/deleteUser). New schemas:UserCreateInput,UserUpdateInput. POST /api/v1/users/bulk(bulkUserAction) — activate, deactivate or delete many users in one call, with per-user failure reporting. New schemas:BulkUserActionInput,BulkUserActionInputAction(DEACTIVATE|ACTIVATE|DELETE),BulkUserActionPayload,BulkUserActionResponseAction,BulkUserActionFailure.- Tenant-level user attributes:
GET/POST /api/v1/user-attributes/andPUT /api/v1/user-attributes/{id}(UserAttributesPublicController.*). New schemas:UserAttribute,UserAttributesListResponse,UserAttributeCreateInput,UserAttributeUpdateInput,UserAttributeType/UserAttributeCreateInputType/GetUserAttributesQueryType(string|number|boolean|string_array|number_array). - Per-user attribute values:
GET /api/v1/user-attribute-values/{userId}andPOST /api/v1/user-attribute-values/(UserAttributeValuesPublicController.getUserAttributeValues/upsertUserAttributeValue). New schemas:UserAttributeValue,UserAttributeValueType,UserAttributeValueCreateInput. GET/PUT /api/v1/tenant/settings(TenantSettingsPublicController.getTenantSettings/updateTenantSettings) — audit log, maintenance window, support access, OIDC and AI/BI interface toggles. New schemas:TenantSettings,TenantSettingsInput.
OAuth, OIDC and GitHub integrations
- OAuth integration management:
GET/POST /api/v1/oauth-integrations/andGET/PUT/DELETE /api/v1/oauth-integrations/{id}(OAuthIntegrationsPublicController.*). New schemas:OAuthIntegration,CreateOAuthIntegrationInput,UpdateOAuthIntegrationInput. - Per-user OAuth tokens:
GET /api/v1/user-oauth-tokens/,GET/DELETE /api/v1/user-oauth-tokens/{integrationId}, andPOST /api/v1/user-oauth-tokens/{integrationId}/initiate(UserOAuthTokensPublicController.*). New schema:UserOAuthToken. - OIDC token configuration:
GET/POST /api/v1/oidc-token-configs/andGET/PUT/DELETE /api/v1/oidc-token-configs/{id}(OidcTokenConfigsPublicController.*). New schemas:OidcTokenConfig,CreateOidcTokenConfigInput,UpdateOidcTokenConfigInput. - GitHub app discovery:
GET /api/v1/github/status,GET /api/v1/github/installations,GET /api/v1/github/installations/{installationId}/repositories, andGET /api/v1/github/repositories/{owner}/{repo}/branches(GitHubPublicController.*). New schemas:GitHubConnectStatusResponse,GitHubInstallationsListResponse,GitHubInstallationResponse,GitHubReposListResponse,GitHubRepoResponse,GitHubBranchesListResponse,GitHubBranchResponse.
Embed tenants, groups and dashboard embedding
GET /api/v1/embed-tenants/(EmbedTenantAdminPublicController.listEmbedTenants) andGET /api/v1/embed-tenants/{embedTenantName}/users(listEmbedUsers). New schemas:EmbedTenantsPublicResponse,EmbedTenant,EmbedUsersPublicResponse,EmbedUser.- Embed group management:
POST /api/v1/embed-tenants/{embedTenantName}/groups(createGroup),GET/PATCH /api/v1/embed-tenants/{embedTenantName}/groups/{id}(getGroup/updateGroup), and membership viaGET/POST/DELETE .../groups/{id}/users(getGroupMembers/addGroupMembers/removeGroupMembers). New schemas:CreateEmbedGroupInput,UpdateEmbedGroupInput,EmbedGroupMemberInput,EmbedGroupMembersInput,EmbedGroupMembersMutationResponse. GET/PUT /api/v1/deployments/{deploymentId}/workbooks/{workbookId}/embed-access(DashboardEmbedAccessPublicController.getEmbedAccess/updateEmbedAccess) — grant or revoke dashboard access per embed tenant, or for all embed users. New schemas:EmbedAccessResponse,EmbedAccessTenantEntry,EmbedAccessAllEmbedUsers,UpdateEmbedAccessInput, and theread|noneaction enumsEmbedAccessTenantEntryAction,EmbedAccessAllEmbedUsersAction,UpdateEmbedAccessInputAction.PATCH /api/v1/embed/dashboard/{publicId}(EmbedPublicController.updateDashboardEmbedding) — enable or disable signed embedding for a dashboard. New schemas:UpdateDashboardEmbeddingInput,DashboardEmbeddingResponse.POST /api/v1/embed/dashboard/{publicId}/python-run(EmbedPublicController.postDashboardPythonRun) — runs a Python report on an embed surface with dashboard filters applied. New schemas:EmbedPythonFilteredRunInput,PythonAnalysisFilteredRun.- The embed session request (
GenerateSession) accepts asettingsobject. New schema:EmbedSessionSettings(showDashboardChat).
Workspace, workbooks and reports
POST /api/v1/deployments/{deploymentId}/workspace/bulk-deleteand.../workspace/bulk-move(WorkspacePublicController.bulkDeleteWorkspaceObjects/bulkMoveWorkspaceObjects) — delete or move folders, workbooks and reports in one call, with per-item failure reporting. New schemas:BulkDeleteWorkspaceObjectsInput,BulkDeleteWorkspaceObjectsPayload,BulkMoveWorkspaceObjectsInput,BulkMoveWorkspaceObjectsResponse,WorkspaceItemRef,WorkspaceItemRefInput,WorkspaceBulkFailure,BulkActionError, and theFOLDER|WORKBOOK|REPORTenumsWorkspaceItemRefType,WorkspaceItemRefInputType,WorkspaceBulkFailureType.PUT /api/v1/deployments/{deploymentId}/workbooks/by-slug/{slug}(WorkbooksPublicController.upsertWorkbookBySlug) andPUT /api/v1/deployments/{deploymentId}/reports/by-public-id/{publicId}(ReportsPublicController.upsertReportByPublicId) — create-or-update by stable external identifier.Folder,WorkbookandReportresponses now includefolderPath, the ancestor chain of the containing folder. New schema:WorkspaceFolderPathEntry.ReportSnapshotnow includesperiodComparisonsfor period-over-period measures. New schemas:PeriodComparison(measure,timeDimension,offset,outputs),PeriodComparisonOffset(amount,unit).UpdateReportInputnow acceptspublicId.PublishDashboardInputnow acceptsallowEmbed.
Dashboard apps
DashboardConfigandDashboardConfigInputnow carrykindandapp, so a dashboard can be an app of authored files rather than a widget document. New schemas:DashboardAppSource,DashboardAppSourceInput,DashboardAppManifest,DashboardAppManifestInput, and theCLASSIC|APPenumsDashboardConfigKind,DashboardConfigInputKind.
App configuration
AppConfigResponsenow includessheetsUi. New schema:SheetsUiSettings(showAppliedFilters).EmbedSettingsnow includesshowDashboardChat.AIEngineerSettingsnow includesagentsConfigCredentials.
Also included from the unpublished 0.2.1
POST /api/v1/deployments/{deploymentId}/dbt-syncoperation (DbtSyncPublicController.startDbtSync) — starts a dbt sync for a deployment, optionally on a specific branch. New schemas:StartDbtSyncInput(branchName),DbtSyncResponse(branchName,syncJobId,workflowId).PUT /api/v1/deployments/{deploymentId}/reports/{reportId}/connect-workbookoperation (ReportsPublicController.connectReportToWorkbook) — links a report to the caller’s own spreadsheet by recording its placement, and returns the updatedReport. Requires only read access to the report. New schema:ConnectReportToWorkbookInput(externalWorkbookId,resultLocation,endResultCell).- New
SecretsManageandDownloadDataRBAC actions, available across all policy action enums (RoleWithAccess.actions, the inherited/resource user & group policy actions, and the update-policy request bodies). AIEngineerSettingsnow includeschatThreadPolicies. New schemas:ChatThreadPolicy(actions,effect,resourceType,resources),ChatThreadPolicyEffect(allow|deny),ChatThreadPolicyResourceType.GET /api/v1/deployments/{deploymentId}/reportsaccepts a newsearchquery filter.Reportnow includescanEdit,canManage, andexternalWorkbookPlacements— a report can be placed in multiple spreadsheets. New schema:ReportPlacement(workbookId,resultLocation,endResultCell).ReportSnapshotnow includesfillMissingRows. New schema:FillMissingRows(member,excludedDimensions).CreatorModenow includesshowGeneratedSqlandshowSemanticSqltoggles.Dashboardnow includesrestrictDataDownloadanduseBoardDashboards.UpdatePublishedAiWidgetThreadInputaccepts an optionalchecksum.
Changed
- BREAKING: the
deleteEmbedTenantoperation moved fromDELETE /api/v1/embed-tenants/{embedTenantName}/toDELETE /api/v1/embed-tenants/{embedTenantName}— the trailing slash is gone, so the typed path key changed. deleteEmbedTenantanddeleteGroupnow document their204responses, and the embed-tenant path parameters carry descriptions.DashboardConfigInput.widgetsis now optional. (from the unpublished0.2.1)
Removed
- BREAKING: removed the
GET /api/v1/ai-engineer/active-regionoperation (AIEngineerPublicController.getMyActiveAgentRegion) and theActiveAgentRegionschema. UseGET /api/v1/regions/to discover regions.
Never published to npm. The publish job for this version failed, so0.2.1does not exist on the registry. Everything below shipped in0.3.0, which repeats these entries in its own section.
Added
POST /api/v1/deployments/{deploymentId}/dbt-syncoperation (DbtSyncPublicController.startDbtSync) — starts a dbt sync for a deployment, optionally on a specific branch. New schemas:StartDbtSyncInput(branchName),DbtSyncResponse(branchName,syncJobId,workflowId).PUT /api/v1/deployments/{deploymentId}/reports/{reportId}/connect-workbookoperation (ReportsPublicController.connectReportToWorkbook) — links a report to the caller’s own spreadsheet by recording its placement, and returns the updatedReport. Requires only read access to the report. New schema:ConnectReportToWorkbookInput(externalWorkbookId,resultLocation,endResultCell).- New
SecretsManageandDownloadDataRBAC actions, available across all policy action enums (RoleWithAccess.actions, the inherited/resource user & group policy actions, and the update-policy request bodies). AIEngineerSettingsnow includeschatThreadPolicies. New schemas:ChatThreadPolicy(actions,effect,resourceType,resources),ChatThreadPolicyEffect(allow|deny),ChatThreadPolicyResourceType.GET /api/v1/deployments/{deploymentId}/reportsaccepts a newsearchquery filter.Reportnow includescanEdit,canManage, andexternalWorkbookPlacements— a report can be placed in multiple spreadsheets. New schema:ReportPlacement(workbookId,resultLocation,endResultCell).ReportSnapshotnow includesfillMissingRows. New schema:FillMissingRows(member,excludedDimensions).CreatorModenow includesshowGeneratedSqlandshowSemanticSqltoggles.Dashboardnow includesrestrictDataDownloadanduseBoardDashboards.UpdatePublishedAiWidgetThreadInputaccepts an optionalchecksum.
Changed
DashboardConfigInput.widgetsis now optional.
Added
POST /api/v1/deployments/{deploymentId}/workbooks/{workbookId}/dashboard/ai-widget-threadoperation (WorkbooksPublicController.updatePublishedDashboardAiWidgetThread) — attaches an AI widget thread to a published dashboard and returns the updatedDashboard. New schema:UpdatePublishedAiWidgetThreadInput(threadId,widgetId).DELETE /api/v1/embed-tenants/{embedTenantName}/operation (EmbedTenantAdminPublicController.deleteEmbedTenant) for deleting an embed tenant.CubePlatformClientConfig.credentialsoption, forwarded to the underlyingfetchto control the credentials mode. Defaults to the browser’ssame-originbehaviour; set'omit'for token-only clients (e.g. signed embedding) that must never authenticate via a cookie.- Embed session requests (
GenerateSession) accepttenantGroupsandtenantGroupDefinitions— per-embed-tenant groups for sharing and organizing content within a single embed tenant (Creator Mode), namespaced separately from the globalgroups. NewembedTenantProfilefield with adisplayName. New schema:EmbedTenantProfile. AppConfigResponsenow includes anembeddingfield. New schema:EmbedSettings(locale).CreatorModenow includeslocalizedTitlesfor per-locale workspace titles. New schema:LocalizedValue(locale,value).GET /api/v1/deployments/{deploymentId}/reportsaccepts newfolderIdandexternalWorkbookIdquery filters.UpdateWorkbookInputacceptsslugandslugTakeover, and theWorkbookresponse now includesslug.
Changed
UserAttributeDefinitionDTOTypenow includes a"boolean"value, andUserAttributeInput.valueacceptsboolean.
Removed
- BREAKING: removed the
GET /api/v1/embed-tenants/{embedTenantName}/user-attributesandDELETE /api/v1/embed-tenants/{embedTenantName}/user-attributes/{id}operations, along with theUserAttribute,UserAttributesConnectionResponse, andUserAttributeDTOTypeschemas. - BREAKING: removed the
ephemeralTtlSecondsfield from the embed session request (GenerateSession).
Added
GET /api/v1/app-configoperation (AppThemePublicController.getAppConfig) returning the deployment’s app configuration —appTheme,applyThemeGlobally, andcreatorMode. New schemas:AppConfigResponse,AppTheme,CreatorMode.- Scheduled notifications can now carry dashboard
filtersandtimeGrainsthat are applied when the dashboard is run. Available onCreateNotificationInput,UpdateNotificationInput, and theNotificationresponse. New schemas:DashboardFilter,DashboardFilterInput,DashboardFilterOperator,DashboardFilterInputOperator,DashboardTimeGrain,DashboardTimeGrainInput. CreateNotificationInputacceptsdashboardPublicId(string) as an alternative to the numericdashboardId— supply exactly one.GET /notificationsaccepts new filter query parameters:dashboardPublicId, and recipient filtersrecipientUserId/recipientEmail(console user) orrecipientEmbedTenantName+recipientExternalId(embed user).POST /workbooks/{workbookId}/duplicateaccepts an optionalDuplicateWorkbookInputbody with asharedflag to clone a workbook from the shared workspace. New schema:DuplicateWorkbookInput.Dashboardnow includes afromSharedWorkspacefield.Workbooknow includes auserfield (ResourceOwner).InheritedUserPolicyDtoandResourceUserPolicyDtonow includeemail,firstName, andpicturefields.
Changed
CreateNotificationInput.dashboardIdis now optional; identify the target dashboard with eitherdashboardIdor the newdashboardPublicId.
Added
GET /api/v1/deployments/{deploymentId}/reportsnow supports cursor-based pagination via thefirstandafterquery parameters, and returns anitemsarray alongside apageInfocursor block — matching the folders and other list endpoints. (Cursor pagination is not available when sorting bylastViewedAt.)- The reports list now accepts
nameas asortByvalue, in addition tocreatedAt,updatedAt, andlastViewedAt. NotificationRecipientnow includes an optionalusernamefield.
Changed
- BREAKING: The reports list response type
ReportsFindAllResultis nowReportsListResponse.
Deprecated
- The
dataandcountfields on the reports list response are deprecated in favor ofitemsandpageInfo. They remain populated for backward compatibility.
Added
GET /api/v1/deployments/{deploymentId}/foldersnow supports cursor-based pagination via thefirstandafterquery parameters, and returns anitemsarray alongside apageInfocursor block — matching the other list endpoints.
Changed
- BREAKING: The folders list response type
FoldersFindAllResultis nowFoldersListResponse.
Deprecated
- The
dataandcountfields on the folders list response are deprecated in favor ofitemsandpageInfo. They remain populated for backward compatibility.
Added
createCubePlatformClient— the new name for the client factory.- Cube Platform-branded type and hook names:
CubePlatformClient,CubePlatformClientConfig,PlatformApiSchemas, and the react-query exportsCubePlatformApiProvider,useCubePlatformApi,useCubePlatformApiQuery,useCubePlatformApiSuspenseQuery,useCubePlatformApiMutation,useCubePlatformApiLazyQuery,useCubePlatformApiQueryOptions,CubePlatformApiQueryKey,UseCubePlatformApiLazyQueryResult.
Deprecated
- The former
CubeCloud*/ConsoleApiSchemasnames are deprecated in favor of theCubePlatform*/PlatformApiSchemasequivalents. All remain as aliases and will be removed in a future major version:createCubeCloudApiClient,CubeCloudApiClient,CubeCloudApiClientConfig,ConsoleApiSchemas,CubeCloudApiProvider,CubeCloudApiProviderProps,useCubeCloudApi,useCubeCloudApiQuery,useCubeCloudApiSuspenseQuery,useCubeCloudApiMutation,useCubeCloudApiLazyQuery,useCubeCloudApiQueryOptions,CubeCloudApiQueryKey,UseCubeCloudApiLazyQueryResult.