openapi: 3.0.0 info: title: Lightdash AiAgents Projects API version: 0.3156.1 description: 'Open API documentation for all public Lightdash API endpoints. # Authentication Before you get started, you might need to create a Personal Access Token to authenticate via the API. You can create a token by following this guide: https://docs.lightdash.com/references/personal_tokens ' license: name: MIT contact: name: Lightdash Support email: support@lightdash.com url: https://docs.lightdash.com/help-and-contact/contact/contact_info/ servers: - url: / tags: - name: Projects description: Projects belong to a single organization. These routes allow users to manage their projects, browse content, and execute queries. Users inside an organization might have access to a project from an organization-level role or they might be granted access to a project directly. paths: /api/v1/snowflake/sso/is-authenticated: get: operationId: ssoIsAuthenticated responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Check if the user is authenticated with Snowflake SSO summary: Check Snowflake SSO authentication tags: - Projects security: [] parameters: [] /api/v1/databricks/sso/is-authenticated: get: operationId: getDatabricksAccessToken responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Check if user is authenticated with Databricks OAuth summary: Check Databricks OAuth authentication tags: - Projects security: [] parameters: [] /api/v1/projects/{projectUuid}/aiAgents: get: operationId: listAgents responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentSummaryResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string tags: - Projects post: operationId: createAgent responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ApiCreateAiAgentResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiCreateAiAgent' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/preferences: get: operationId: getUserAgentPreferences responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiGetUserAgentPreferencesResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string tags: - Projects post: operationId: updateUserAgentPreferences responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiUpdateUserAgentPreferencesResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiUpdateUserAgentPreferences' tags: - Projects delete: operationId: deleteUserAgentPreferences responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/mcpServers: get: operationId: listMcpServers responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpServerListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string tags: - Projects post: operationId: createMcpServer responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpServerResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiCreateAiMcpServer' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/mcpServers/github/availability: get: operationId: getGithubMcpAvailability responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpGithubAvailabilityResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/mcpServers/github/connect: post: operationId: connectGithubMcpServer responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpServerResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiConnectGithubMcpServerBody' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/mcpServers/{mcpServerUuid}/tools: get: operationId: listMcpServerTools responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpServerToolListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: mcpServerUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/mcpServers/{mcpServerUuid}/tools/refresh: post: operationId: refreshMcpServerTools responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpServerToolListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: mcpServerUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/mcpServers/{mcpServerUuid}/oauth/start: post: operationId: startMcpOAuthConnection responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiStartAiMcpOAuthResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: mcpServerUuid required: true schema: type: string requestBody: required: false content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpOAuthCredentialRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/mcpServers/{mcpServerUuid}/oauth/disconnect: post: operationId: disconnectMcpOAuthConnection responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: mcpServerUuid required: true schema: type: string requestBody: required: false content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpOAuthCredentialRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/threads: get: operationId: listProjectThreads responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentProjectThreadSummaryListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: query name: page required: false schema: format: double type: number - in: query name: pageSize required: false schema: format: double type: number - in: query name: agentUuid required: false schema: type: string - in: query name: createdFrom required: false schema: type: string enum: - web_app - slack - in: query name: search required: false schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}: get: operationId: getAgent responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string tags: - Projects patch: operationId: updateAgent responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiUpdateAiAgent' tags: - Projects delete: operationId: deleteAgent responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/mcpServers: get: operationId: listAgentMcpServers responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiMcpServerListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/mcpServers/{mcpServerUuid}/tools: get: operationId: listAgentMcpServerTools responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentMcpServerToolListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: mcpServerUuid required: true schema: type: string tags: - Projects patch: operationId: updateAgentMcpServerTools responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentMcpServerToolListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: mcpServerUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiUpdateAiAgentMcpServerToolsRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/models: get: operationId: getModelOptions responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentModelOptionsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/suggestions: get: operationId: getAgentSuggestions responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAgentSuggestionsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: query name: threadUuid required: false schema: type: string - in: query name: afterMessageUuid required: false schema: type: string - in: query name: enableSqlMode required: false schema: type: boolean tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/evaluateReadiness: post: operationId: evaluateAgentReadiness responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAgentReadinessScoreResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/verified-artifacts: get: operationId: getVerifiedArtifacts responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentVerifiedArtifactsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: query name: page required: false schema: format: double type: number - in: query name: pageSize required: false schema: format: double type: number tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/verified-questions: get: operationId: getVerifiedQuestions responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentVerifiedQuestionsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads: get: operationId: listAgentThreads responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadSummaryListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: query name: allUsers required: false schema: type: boolean tags: - Projects post: operationId: createAgentThread responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadCreateResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadCreateRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}: get: operationId: getAgentThread responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/pull-request: get: operationId: getAgentThreadPullRequest responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadPullRequestResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Get the writeback pull request associated with a thread — the PR the agent opened in this thread, or the PR a verification thread verifies.' summary: Get AI agent thread pull request security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/messages: post: operationId: createAgentThreadMessage responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadMessageCreateResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadMessageCreateRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/tool-calls/{toolCallId}/sql-approval: post: operationId: decideAgentSqlApproval responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentSqlApprovalResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string - in: path name: toolCallId required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentSqlApprovalRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/stream: post: operationId: streamAgentThreadResponse responses: '200': description: Success default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string requestBody: required: false content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadStreamRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/generate: post: operationId: generateAgentThreadResponse responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadGenerateResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/generate-title: post: operationId: generateAgentThreadTitle responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadGenerateTitleResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/clone/{promptUuid}: post: operationId: cloneAgentThread responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiCloneThreadResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string - in: path name: promptUuid required: true schema: type: string - in: query name: createdFrom required: false schema: type: string enum: - web_app - evals tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/messages/{messageUuid}/savedQuery: patch: operationId: updateAgentThreadMessageSavedQuery responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string - in: path name: messageUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: savedQueryUuid: type: string nullable: true required: - savedQueryUuid type: object tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/messages/{messageUuid}/feedback: patch: operationId: updatePromptFeedback responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string - in: path name: messageUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: humanFeedback: type: string nullable: true humanScore: type: number format: double required: - humanScore type: object tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/explore-access-summary: post: operationId: getAgentExploreAccessSummary responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentExploreAccessSummaryResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: tags: items: type: string type: array nullable: true required: - tags type: object tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/artifacts/{artifactUuid}: get: operationId: getArtifact responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentArtifactResponseTSOACompat' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: artifactUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/artifacts/{artifactUuid}/versions/{versionUuid}: get: operationId: getArtifactVersion responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentArtifactResponseTSOACompat' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: artifactUuid required: true schema: type: string - in: path name: versionUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/artifacts/{artifactUuid}/versions/{versionUuid}/viz-query: get: operationId: getArtifactVizQuery responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadMessageVizQueryResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: artifactUuid required: true schema: type: string - in: path name: versionUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/shares: post: operationId: createAiAgentThreadShare responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadShareResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/thread-shares/{aiThreadShareUuid}/clone: post: operationId: cloneAiAgentThreadShare responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiCloneAiAgentThreadShareResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: aiThreadShareUuid required: true schema: type: string tags: - Projects ? /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/artifacts/{artifactUuid}/versions/{versionUuid}/charts/{chartIndex}/viz-query : get: operationId: getDashboardArtifactChartVizQuery responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentThreadMessageVizQueryResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: artifactUuid required: true schema: type: string - in: path name: versionUuid required: true schema: type: string - in: path name: chartIndex required: true schema: format: double type: number tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/artifacts/{artifactUuid}/versions/{versionUuid}/savedDashboard: patch: operationId: updateArtifactVersionSavedDashboard responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: artifactUuid required: true schema: type: string - in: path name: versionUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: savedDashboardUuid: type: string nullable: true required: - savedDashboardUuid type: object tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/artifacts/{artifactUuid}/versions/{versionUuid}/verified: patch: operationId: setArtifactVersionVerified responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: artifactUuid required: true schema: type: string - in: path name: versionUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: verified: type: boolean required: - verified type: object tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/evaluations: post: operationId: createEvaluation responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ApiCreateEvaluationResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiCreateEvaluationRequest' tags: - Projects get: operationId: getEvaluations responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentEvaluationSummaryListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/evaluations/{evalUuid}/run: post: operationId: runEvaluation responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentEvaluationRunResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: evalUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/evaluations/{evalUuid}: get: operationId: getEvaluation responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentEvaluationResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: evalUuid required: true schema: type: string tags: - Projects patch: operationId: updateEvaluation responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentEvaluationResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: evalUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiUpdateEvaluationRequest' tags: - Projects delete: operationId: deleteEvaluation responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: evalUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/evaluations/{evalUuid}/runs: get: operationId: getEvaluationRuns responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentEvaluationRunSummaryListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: evalUuid required: true schema: type: string - in: query name: page required: false schema: format: double type: number - in: query name: pageSize required: false schema: format: double type: number tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/evaluations/{evalUuid}/runs/{runUuid}: get: operationId: getEvaluationRunResults responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentEvaluationRunResultsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: evalUuid required: true schema: type: string - in: path name: runUuid required: true schema: type: string tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/evaluations/{evalUuid}/append: post: operationId: appendToEvaluation responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAiAgentEvaluationResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: evalUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiAppendEvaluationRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/append-instruction: post: operationId: appendInstruction responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiAppendInstructionResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiAppendInstructionRequest' tags: - Projects /api/v1/projects/{projectUuid}/aiAgents/{agentUuid}/threads/{threadUuid}/messages/{promptUuid}/revert-change: post: operationId: revertChange responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRevertChangeResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: agentUuid required: true schema: type: string - in: path name: threadUuid required: true schema: type: string - in: path name: promptUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiRevertChangeRequest' tags: - Projects /api/v1/projects/{projectUuid}/validate: post: operationId: ValidateProject responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiJobScheduledResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Validate content inside a project. This will start a validation job and return the job id. Validation jobs scan all charts and dashboards inside a project to find any broken references to metrics or dimensions that aren''t available. Results are available after the job is completed.' summary: Validate project tags: - Projects security: [] parameters: - description: the projectId for the validation in: path name: projectUuid required: true schema: type: string requestBody: description: the compiled explores to validate against an existing project, this is used in the CLI to validate a project without creating a preview required: true content: application/json: schema: properties: validationTargets: items: $ref: '#/components/schemas/ValidationTarget' type: array explores: items: $ref: '#/components/schemas/AnyType' type: array onlyValidateExploresInArgs: type: boolean type: object description: the compiled explores to validate against an existing project, this is used in the CLI to validate a project without creating a preview get: operationId: GetLatestValidationResults responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiValidateResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get validation results for a project. This will return the results of the latest validation job. summary: Get validation results tags: - Projects security: [] parameters: - description: the projectId for the validation in: path name: projectUuid required: true schema: type: string - description: boolean to know if this request is made from the settings page, for analytics in: query name: fromSettings required: false schema: type: boolean - description: optional jobId to get results for a specific job, used on CLI in: query name: jobId required: false schema: type: string /api/v1/projects/{projectUuid}/validate/{validationIdOrUuid}: delete: operationId: DeleteValidationDismiss responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiValidationDismissResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Deletes a single validation error. summary: Dismiss validation error tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - description: 'the validation UUID, or a legacy integer id for rows created before the UUID migration (PROD-7386).' in: path name: validationIdOrUuid required: true schema: {} /api/v1/projects/{projectUuid}/validate/chart/{chartUuid}: post: operationId: ValidateChart responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiChartValidationResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Validates a specific chart and updates validation entries in database. summary: Validate specific chart tags: - Projects security: [] parameters: - description: the project UUID in: path name: projectUuid required: true schema: type: string - description: the chart UUID to validate in: path name: chartUuid required: true schema: type: string /api/v1/projects/{projectUuid}/validate/dashboard/{dashboardUuid}: post: operationId: ValidateDashboard responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiDashboardValidationResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Validates a specific dashboard and updates validation entries in database. summary: Validate specific dashboard tags: - Projects security: [] parameters: - description: the project UUID in: path name: projectUuid required: true schema: type: string - description: the dashboard UUID to validate in: path name: dashboardUuid required: true schema: type: string /api/v1/analytics/user-activity/{projectUuid}: get: operationId: getUserActivity responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiUserActivity' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get user activity for a project summary: Get user activity tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/analytics/user-activity/{projectUuid}/download: post: operationId: downloadUserActivityCsv responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiUserActivityDownloadCsv' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Download user activity as CSV summary: Download user activity CSV tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/analytics/user-activity/{projectUuid}/download-activity: get: operationId: getDownloadActivity responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiDownloadActivity' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: "Get download activity log for a project, ordered by most recent first.\nTwo pagination modes are supported:\n - Offset mode: pass `page` (1-indexed) and `pageSize`. Response includes\n `page`/`totalResults`/`totalPageCount`.\n - Cursor mode: pass `cursor` (from a previous response's `nextCursor`) and\n `pageSize`. `page` is ignored when `cursor` is provided. Avoids the count\n query so `page`/`totalResults`/`totalPageCount` are null in the response." summary: Get download activity log tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - description: number of items per page in: query name: pageSize required: true schema: format: double type: number - description: page number (1-indexed); defaults to 1 if omitted in: query name: page required: false schema: format: double type: number - description: opaque cursor from a previous response's `nextCursor` in: query name: cursor required: false schema: type: string /api/v1/projects/{projectUuid}/spaces: get: operationId: ListSpacesInProject responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSpaceSummaryListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: List all spaces in a project summary: List spaces in project tags: - Projects security: [] parameters: - description: The uuid of the project to get spaces for in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/rename: post: operationId: rename responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiJobScheduledResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Rename resources in a project summary: Rename resources tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiRenameBody' /api/v1/projects/{projectUuid}/rename/preview: post: operationId: previewRename responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRenameResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Preview which resources would be affected by a bulk rename summary: Preview rename tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiRenameBody' /api/v1/projects/{projectUuid}/rename/chart/{chartUuid}: post: operationId: renameChart responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRenameChartResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Rename a chart and its fields summary: Rename chart tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: chartUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiRenameChartBody' /api/v1/projects/{projectUuid}/rename/chart/{chartUuid}/fields: get: operationId: renameChartFields responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRenameFieldsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get a list of fields for this chart's explore to be used when renaming a chart in the UI summary: Get chart fields for rename tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: chartUuid required: true schema: type: string /api/v1/projects/{projectUuid}/rename/dashboard/{dashboardUuid}: post: operationId: renameDashboardFilter responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRenameDashboardResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Rename a dashboard filter's field or model reference summary: Rename dashboard filter tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: dashboardUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiRenameDashboardBody' /api/v1/projects/{projectUuid}/rename/dashboard/{dashboardUuid}/fields: get: operationId: renameDashboardFields responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRenameFieldsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get a list of fields from explores referenced by the dashboard's filters summary: Get dashboard fields for rename tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: dashboardUuid required: true schema: type: string - in: query name: table required: false schema: type: string /api/v1/projects/{projectUuid}: get: operationId: GetProject responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiProjectResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get a project of an organiztion summary: Get project tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/charts: get: operationId: ListChartsInProject responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiChartListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: List all charts in a project summary: List charts in project tags: - Projects security: [] parameters: - description: The uuid of the project to get charts for in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/chart-summaries: get: operationId: ListChartSummariesInProject responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiChartSummaryListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: List all charts summaries in a project summary: List chart summaries in project tags: - Projects deprecated: true security: [] parameters: - description: The uuid of the project to get charts for in: path name: projectUuid required: true schema: type: string - description: Whether to exclude charts that are saved in dashboards in: query name: excludeChartsSavedInDashboard required: false schema: type: boolean /api/v1/projects/{projectUuid}/access: get: operationId: GetProjectAccessList responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiProjectAccessListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Get access list for a project. This is a list of users that have been explictly granted access to the project. There may be other users that have access to the project via their organization membership.' summary: List project access tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string post: operationId: GrantProjectAccessToUser responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Grant a user access to a project summary: Grant project access to user tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateProjectMember' /api/v1/projects/{projectUuid}/user/{userUuid}: get: operationId: GetProjectMemberAccess responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiGetProjectMemberResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Get a project explicit member''s access. There may be users that have access to the project via their organization membership.' summary: Get project member access tags: - Projects deprecated: true security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: userUuid required: true schema: type: string /api/v1/projects/preview-data-timezone: post: operationId: PreviewDataTimezone responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiDataTimezonePreview' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Preview how the warehouse disambiguates "now" under a data timezone summary: Preview data timezone tags: - Projects security: [] parameters: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DataTimezonePreviewRequest' /api/v1/projects/{projectUuid}/access/{userUuid}: patch: operationId: UpdateProjectAccessForUser responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Update a user's access to a project summary: Update project access for user tags: - Projects deprecated: true security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: userUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateProjectMember' delete: operationId: RevokeProjectAccessForUser responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Remove a user's access to a project summary: Revoke project access for user tags: - Projects deprecated: true security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: userUuid required: true schema: type: string /api/v1/projects/{projectUuid}/groupAccesses: get: operationId: GetProjectGroupAccesses responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiGetProjectGroupAccesses' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: List group access for projects summary: List project group accesses tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/sqlQuery: post: operationId: RunSqlQuery responses: '200': description: Success content: application/json: schema: properties: results: $ref: '#/components/schemas/ApiSqlQueryResults' status: type: string enum: - ok nullable: false required: - results - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Deprecated — use the v2 Execute SQL query endpoint instead. This endpoint was deprecated on 17 February 2025 and is past its sunset date (17 May 2025) — it may be removed at any time. Migrate to the v2 async query flow: Execute SQL query, then Get results.' summary: Run SQL query tags: - Projects deprecated: true security: [] parameters: - description: The uuid of the project to run the query against in: path name: projectUuid required: true schema: type: string requestBody: description: The query to run required: true content: application/json: schema: properties: sql: type: string required: - sql type: object description: The query to run x-mint: content: ' **This endpoint is deprecated and past its sunset date (17 May 2025) — it may be removed at any time.** Migrate to the v2 async query flow: [Execute SQL query](https://docs.lightdash.com/api-reference/v2/execute-sql-query) (`POST /api/v2/projects/{projectUuid}/query/sql`) to start the query, then [Get results](https://docs.lightdash.com/api-reference/v2/get-results) to fetch rows. See also [Cancel query](https://docs.lightdash.com/api-reference/v2/cancel-query) and [Download results](https://docs.lightdash.com/api-reference/v2/download-results). ' /api/v1/projects/{projectUuid}/calculate-total: post: operationId: CalculateTotalFromQuery responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiCalculateTotalResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Calculate all metric totals from a metricQuery summary: Calculate total from query tags: - Projects deprecated: true security: [] parameters: - description: The uuid of the project to get charts for in: path name: projectUuid required: true schema: type: string requestBody: description: The metric query to calculate totals for required: true content: application/json: schema: $ref: '#/components/schemas/CalculateTotalFromQuery' description: The metric query to calculate totals for /api/v1/projects/{projectUuid}/calculate-subtotals: post: operationId: CalculateSubtotalsFromQuery responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiCalculateSubtotalsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Calculate subtotals from a metricQuery summary: Calculate subtotals from query tags: - Projects deprecated: true security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CalculateSubtotalsFromQuery' /api/v1/projects/{projectUuid}/user-credentials: get: operationId: getUserWarehouseCredentialsPreference responses: '200': description: Success content: application/json: schema: properties: results: $ref: '#/components/schemas/UserWarehouseCredentials' status: type: string enum: - ok nullable: false required: - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get the user's warehouse credentials preference for a project summary: Get user warehouse credentials preference tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/user-warehouse-credentials: get: operationId: getProjectUserWarehouseCredentials responses: '200': description: Success content: application/json: schema: properties: results: items: $ref: '#/components/schemas/UserWarehouseCredentials' type: array status: type: string enum: - ok nullable: false required: - results - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get user warehouse credentials available for a project summary: List project user warehouse credentials tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/user-credentials/{userWarehouseCredentialsUuid}: patch: operationId: updateUserWarehouseCredentialsPreference responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Update the user's warehouse credentials preference for a project summary: Update user warehouse credentials preference tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: userWarehouseCredentialsUuid required: true schema: type: string /api/v1/projects/{projectUuid}/custom-metrics: get: operationId: getCustomMetrics responses: '200': description: Success content: application/json: schema: properties: results: items: properties: chartUrl: type: string chartLabel: type: string yml: type: string modelName: type: string label: type: string name: type: string required: - chartUrl - chartLabel - yml - modelName - label - name type: object type: array status: type: string enum: - ok nullable: false required: - results - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get all custom metrics in a project summary: List custom metrics tags: - Projects deprecated: true security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/metadata: patch: operationId: updateProjectMetadata responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Update project metadata like upstreamProjectUuid we don''t trigger a compile, so not for updating warehouse or credentials' summary: Update project metadata tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateMetadata' /api/v1/projects/{projectUuid}/hasDefaultUserSpaces: patch: operationId: updateDefaultUserSpaces responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Toggle default user spaces for a project. When enabled, creates personal spaces for all eligible users.' summary: Update default user spaces setting tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateDefaultUserSpaces' /api/v1/projects/{projectUuid}/table-groups: get: operationId: getProjectTableGroups responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccess_ApiTableGroupsResults_' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Get the resolved color palette for a project, walking the chart -> dashboard -> space -> project -> organization fallback chain (matches saved-chart resolution). The optional UUIDs let unsaved renderers (Explore, AI viz, sql runner) opt into deeper layers as they become available.' summary: Get project color palette tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string put: operationId: replaceProjectTableGroups responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccess_undefined_' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Replace project-level table-group definitions. Sent by the CLI on deploy/preview so labels & descriptions from `table_groups` in `lightdash.config.yml` are applied. Pass an empty object to clear.' summary: Replace project table groups tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApiTableGroupsResults' /api/v1/projects/{projectUuid}/colorPalette: get: operationId: getProjectColorPalette responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiProjectColorPaletteResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: query name: spaceUuid required: false schema: type: string - in: query name: dashboardUuid required: false schema: type: string - in: query name: chartUuid required: false schema: type: string patch: operationId: updateProjectColorPalette responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Set the project''s color palette to one of its organization''s palettes, or null to inherit from the organization''s active palette.' summary: Update project color palette tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: colorPaletteUuid: type: string nullable: true required: - colorPaletteUuid type: object /api/v1/projects/{projectUuid}/dashboards: get: operationId: getDashboards responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiGetDashboardsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get all dashboards in a project summary: List dashboards tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string post: operationId: createDashboard responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ApiCreateDashboardResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Create a new dashboard in a project summary: Create dashboard tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: query name: duplicateFrom required: false schema: type: string requestBody: required: true content: application/json: schema: anyOf: - $ref: '#/components/schemas/DuplicateDashboardParams' - $ref: '#/components/schemas/CreateDashboard' patch: operationId: updateDashboards responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/ApiUpdateDashboardsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Update multiple dashboards summary: Update dashboards tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: items: $ref: '#/components/schemas/UpdateMultipleDashboards' type: array /api/v1/projects/{projectUuid}/dashboards/with-charts: post: operationId: createDashboardWithCharts responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ApiCreateDashboardWithChartsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Create a new dashboard with embedded charts summary: Create dashboard with charts tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateDashboardWithCharts' /api/v1/projects/{projectUuid}/createPreview: post: operationId: createPreview responses: '200': description: Created content: application/json: schema: properties: results: $ref: '#/components/schemas/ApiCreatePreviewResults' status: type: string enum: - ok nullable: false required: - results - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Create a preview project summary: Create project preview tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: warehouseConnectionOverrides: properties: schema: type: string type: object dbtConnectionOverrides: properties: manifest: type: string environment: items: $ref: '#/components/schemas/DbtProjectEnvironmentVariable' type: array branch: type: string type: object copyContent: type: boolean name: type: string required: - copyContent - name type: object /api/v1/projects/{projectUuid}/upstreamDiff: get: operationId: getUpstreamDiff responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiUpstreamDiffResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Diff a preview project against the project it was copied from, using the catalog index. Detects added/removed fields and label changes; does not detect SQL-only field changes.' summary: Get upstream diff tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/previews-config: get: operationId: getProjectPreviewExpirationSettings responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiPreviewExpirationProjectSettingsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get preview project expiration settings for a project summary: Get preview expiration settings tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string patch: operationId: updateProjectPreviewExpirationSettings responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/ApiPreviewExpirationProjectSettingsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Update preview project expiration settings for a project summary: Update preview expiration settings tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdatePreviewExpirationProjectSettings' /api/v1/projects/{projectUuid}/schedulerSettings: patch: operationId: updateSchedulerSettings responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Update scheduler settings for a project summary: Update scheduler settings tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateSchedulerSettings' /api/v1/projects/{projectUuid}/queryTimezoneSettings: patch: operationId: updateQueryTimezoneSettings responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Update query timezone settings for a project summary: Update query timezone settings tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateQueryTimezoneSettings' /api/v1/projects/{projectUuid}/tags: post: operationId: createTag responses: '201': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiCreateTagResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Create a new tag in a project summary: Create tag tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Pick_Tag.name-or-color_' get: operationId: getTags responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiGetTagsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get all tags in a project summary: List tags tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/tags/{tagUuid}: delete: operationId: deleteTag responses: '204': description: Deleted content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Delete a tag from a project summary: Delete tag tags: - Projects security: [] parameters: - in: path name: tagUuid required: true schema: type: string patch: operationId: updateTag responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Update a tag in a project summary: Update tag tags: - Projects security: [] parameters: - in: path name: tagUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DbTagUpdate' /api/v1/projects/{projectUuid}/tags/yaml: put: operationId: replaceYamlTags responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Replace all YAML-defined tags in a project summary: Replace YAML tags tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: items: allOf: - $ref: '#/components/schemas/Pick_Tag.name-or-color_' - properties: yamlReference: type: string required: - yamlReference type: object type: array /api/v1/projects/{projectUuid}/charts/code: get: operationId: getChartsAsCode responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiChartAsCodeListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get charts in code representation summary: List charts as code tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: query name: ids required: false schema: type: array items: type: string - in: query name: offset required: false schema: format: double type: number - in: query name: languageMap required: false schema: type: boolean /api/v1/projects/{projectUuid}/dashboards/code: get: operationId: getDashboardsAsCode responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiDashboardAsCodeListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get dashboards in code representation summary: List dashboards as code tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: query name: ids required: false schema: type: array items: type: string - in: query name: offset required: false schema: format: double type: number - in: query name: languageMap required: false schema: type: boolean /api/v1/projects/{projectUuid}/charts/{slug}/code: post: operationId: upsertChartAsCode responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiChartAsCodeUpsertResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Upsert a chart from code representation summary: Upsert chart as code tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: slug required: true schema: type: string requestBody: required: true content: application/json: schema: allOf: - $ref: '#/components/schemas/Omit_ChartAsCode.chartConfig-or-description_' - properties: description: type: string nullable: true chartConfig: $ref: '#/components/schemas/AnyType' spaceNames: $ref: '#/components/schemas/Record_string.string_' force: type: boolean publicSpaceCreate: type: boolean skipSpaceCreate: type: boolean required: - chartConfig type: object /api/v1/projects/{projectUuid}/sqlCharts/code: get: operationId: getSqlChartsAsCode responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSqlChartAsCodeListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Gets SQL charts in code representation summary: Get SQL charts as code tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: query name: ids required: false schema: type: array items: type: string - in: query name: offset required: false schema: format: double type: number /api/v1/projects/{projectUuid}/sqlCharts/{slug}/code: post: operationId: upsertSqlChartAsCode responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSqlChartAsCodeUpsertResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Upserts an SQL chart from code representation summary: Upsert SQL chart as code tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: slug required: true schema: type: string requestBody: required: true content: application/json: schema: allOf: - $ref: '#/components/schemas/Omit_SqlChartAsCode.config-or-description_' - properties: description: type: string nullable: true config: $ref: '#/components/schemas/AnyType' spaceNames: $ref: '#/components/schemas/Record_string.string_' force: type: boolean publicSpaceCreate: type: boolean skipSpaceCreate: type: boolean required: - config type: object /api/v1/projects/{projectUuid}/dashboards/{slug}/code: post: operationId: upsertDashboardAsCode responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiDashboardAsCodeUpsertResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Upsert a dashboard from code representation summary: Upsert dashboard as code tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: slug required: true schema: type: string requestBody: required: true content: application/json: schema: allOf: - $ref: '#/components/schemas/Omit_DashboardAsCode.tiles-or-description_' - properties: description: type: string nullable: true tiles: $ref: '#/components/schemas/AnyType' spaceNames: $ref: '#/components/schemas/Record_string.string_' force: type: boolean publicSpaceCreate: type: boolean skipSpaceCreate: type: boolean required: - tiles type: object /api/v1/projects/{projectUuid}/dbt-cloud/webhook: post: operationId: webhook responses: '200': description: Ok content: application/json: schema: properties: status: type: string required: - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Handle dbt Cloud webhook for job completion summary: Handle dbt Cloud webhook tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AnyType' /api/v1/projects/{projectUuid}/refresh: post: operationId: refresh responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccess_ApiRefreshResults_' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Refresh a project by recompiling dbt summary: Refresh project tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/pre-aggregates/refresh: post: operationId: refreshProjectPreAggregates responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccess__jobIds-string-Array__' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Refresh all pre-aggregates in a project summary: Refresh project pre-aggregates tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/pre-aggregates/definitions/{preAggregateDefinitionName}/refresh: post: operationId: refreshProjectPreAggregateByDefinitionName responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccess__jobIds-string-Array__' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Refresh a single pre-aggregate by its definition name summary: Refresh pre-aggregate by definition name tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: preAggregateDefinitionName required: true schema: type: string /api/v1/projects/{projectUuid}/content-verification: get: operationId: listVerifiedContent responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiVerifiedContentListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: List all verified content (charts and dashboards) in a project summary: List verified content tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/compile-logs: get: operationId: getProjectCompileLogs responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiProjectCompileLogsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get compilation logs for a project summary: Get project compilation logs tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string - description: number of items per page in: query name: pageSize required: false schema: format: double type: number - description: number of page in: query name: page required: false schema: format: double type: number - description: column to sort by in: query name: sortBy required: false schema: type: string enum: - created_at - compilation_source - description: sort direction (asc or desc) in: query name: sortDirection required: false schema: type: string enum: - asc - desc - description: filter by triggered user UUIDs (comma-separated) in: query name: triggeredByUserUuids required: false schema: type: string - description: filter by source ("cli_deploy", "refresh_dbt") in: query name: source required: false schema: type: string enum: - cli_deploy - refresh_dbt - create_project /api/v1/projects/{projectUuid}/compile-logs/job/{jobUuid}: get: operationId: getProjectCompileLogByJob responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiProjectCompileLogResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get compilation log by job UUID summary: Get compilation log for a specific job tags: - Projects security: [] parameters: - description: The uuid of the project in: path name: projectUuid required: true schema: type: string - description: The uuid of the job in: path name: jobUuid required: true schema: type: string /api/v1/projects/{projectUuid}/explores: put: operationId: SetExplores responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSetExploresResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Set explores for a project summary: Set explores tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: items: $ref: '#/components/schemas/AnyType' type: array get: operationId: GetExplores responses: '200': description: Success content: application/json: schema: properties: results: $ref: '#/components/schemas/ApiExploresResults' status: type: string enum: - ok nullable: false required: - results - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get all explores for a project summary: List explores tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/explores/{exploreId}: get: operationId: GetExplore responses: '200': description: Success content: application/json: schema: properties: results: $ref: '#/components/schemas/ApiExploreResults' status: type: string enum: - ok nullable: false required: - results - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get a specific explore summary: Get explore tags: - Projects security: [] parameters: - in: path name: exploreId required: true schema: type: string - in: path name: projectUuid required: true schema: type: string /api/v1/projects/{projectUuid}/explores/{exploreId}/compileQuery: post: operationId: CompileQuery responses: '200': description: Success content: application/json: schema: properties: results: $ref: '#/components/schemas/ApiCompiledQueryResults' status: type: string enum: - ok nullable: false required: - results - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Compile a metric query for an explore summary: Compile query tags: - Projects security: [] parameters: - in: path name: exploreId required: true schema: type: string - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: allOf: - $ref: '#/components/schemas/MetricQuery' - properties: usePreAggregateCache: type: boolean pivotConfiguration: $ref: '#/components/schemas/PivotConfiguration' parameters: $ref: '#/components/schemas/ParametersValuesMap' type: object /api/v1/projects/{projectUuid}/explores/{exploreId}/preAggregateCheck: post: operationId: CheckPreAggregate responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiPreAggregateCheckResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Check pre-aggregate availability for a metric query summary: Check pre-aggregate tags: - Projects security: [] parameters: - in: path name: exploreId required: true schema: type: string - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: allOf: - $ref: '#/components/schemas/MetricQuery' - properties: usePreAggregateCache: type: boolean type: object /api/v1/projects/{projectUuid}/explores/{exploreId}/validateFormula: post: operationId: ValidateFormula responses: '200': description: Success content: application/json: schema: properties: results: $ref: '#/components/schemas/ApiFormulaValidationResults' status: type: string enum: - ok nullable: false required: - results - status type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Validate a spreadsheet formula against the explore's fields summary: Validate formula tags: - Projects security: [] parameters: - in: path name: exploreId required: true schema: type: string - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: metricQuery: $ref: '#/components/schemas/MetricQuery' formula: type: string required: - metricQuery - formula type: object /api/v1/projects/{projectUuid}/explores/{exploreId}/charts: get: operationId: GetChartsByExploreName responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiChartSummaryListResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: List charts referencing a given explore summary: List charts by explore tags: - Projects security: [] parameters: - in: path name: exploreId required: true schema: type: string - in: path name: projectUuid required: true schema: type: string /api/v1/bigquery/sso/datasets: get: operationId: GetBigQueryDatasets responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiBigqueryDatasets' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get BigQuery datasets for a project summary: Get BigQuery datasets tags: - Projects security: [] parameters: - in: query name: projectId required: true schema: type: string /api/v1/bigquery/sso/projects: get: operationId: GetBigQueryProjects responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiBigqueryProjects' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get BigQuery projects accessible by the user summary: Get BigQuery projects tags: - Projects security: [] parameters: [] /api/v1/bigquery/sso/is-authenticated: get: operationId: checkBigqueryAuthentication responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Check if user is authenticated with BigQuery summary: Check BigQuery authentication tags: - Projects security: [] parameters: [] /api/v2/projects/{projectUuid}/defaults: get: operationId: getProjectDefaults responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccess_ProjectDefaults-or-undefined_' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get project defaults configuration summary: Get project defaults tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string put: operationId: replaceProjectDefaults responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccess_undefined_' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Replace project defaults configuration summary: Replace project defaults tags: - Projects security: [] parameters: - in: path name: projectUuid required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProjectDefaults' components: schemas: FieldType.DIMENSION: enum: - dimension type: string OrganizationMemberRole: enum: - member - viewer - interactive_viewer - editor - developer - admin type: string Exclude_ToolName.proposeChange_: type: string enum: - generateDashboard - generateVisualization - runSql - findContent - generateBarVizConfig - generateTableVizConfig - generateTimeSeriesVizConfig - generateHashes - generateUuids - listContent - findExplores - findFields - searchSemanticLayer - discoverFields - searchFieldValues - findDashboards - findCharts - getDashboardCharts - readContent - editContent - createContent - runContentQuery - improveContext - listProjects - getProjectInfo - loadSkill - loadProjectContext - editDbtProject - repoShell - setupPreviewDeploy - runQuery - runSavedChart - listWarehouseTables - describeWarehouseTable - listKnowledgeDocuments - getKnowledgeDocumentContent - readPinnedThread description: Exclude from T those types that are assignable to U AiAgentBaseToolCall: properties: toolArgs: additionalProperties: true type: object createdAt: type: string format: date-time parentToolCallId: type: string nullable: true toolCallId: type: string promptUuid: type: string uuid: type: string required: - toolArgs - createdAt - parentToolCallId - toolCallId - promptUuid - uuid type: object ApiSuccess_AiModelOption-Array_: properties: results: items: $ref: '#/components/schemas/AiModelOption' type: array status: type: string enum: - ok nullable: false required: - results - status type: object DbtProjectType.GITHUB: enum: - github type: string ApiCreateAiAgent: allOf: - $ref: '#/components/schemas/Pick_AiAgent.projectUuid-or-integrations-or-tags-or-name-or-description-or-instruction-or-imageUrl-or-groupAccess-or-userAccess-or-spaceAccess-or-enableDataAccess-or-enableSelfImprovement-or-version_' - properties: mcpServerUuids: items: type: string type: array enableContentTools: type: boolean type: object ApiCreatePreviewResults: properties: compileJobUuid: type: string projectUuid: type: string required: - compileJobUuid - projectUuid type: object ResolvedProjectColorPalette: properties: source: $ref: '#/components/schemas/ColorPaletteSource' paletteName: type: string nullable: true paletteUuid: type: string nullable: true darkColors: items: type: string type: array nullable: true colors: items: type: string type: array required: - source - paletteName - paletteUuid - darkColors - colors type: object Pick_CompiledDimension.name-or-label-or-table_: properties: {} type: object description: From T, pick a set of properties whose keys are in the union K MapHexbinSizingMode: enum: - dynamic - fixed type: string ApiCreateAiMcpServer: properties: credentials: properties: bearerToken: type: string required: - bearerToken type: object nullable: true credentialScope: $ref: '#/components/schemas/AiMcpCredentialScope' allowOAuthCredentialSharing: type: boolean authType: $ref: '#/components/schemas/AiMcpServerAuthType' url: type: string name: type: string required: - authType - url - name type: object MarkLine: properties: label: properties: formatter: type: string description: Label formatter type: object description: Label configuration lineStyle: properties: type: type: string description: Line type width: type: number format: double description: Line width color: type: string description: Line color required: - type - width - color type: object description: Line style configuration symbol: type: string description: Symbol at line endpoints data: items: $ref: '#/components/schemas/MarkLineData' type: array description: Reference line data points required: - data type: object AiMcpServerTool: properties: updatedAt: type: string format: date-time createdAt: type: string format: date-time meta: nullable: true annotations: nullable: true inputSchema: {} description: type: string nullable: true title: type: string nullable: true toolName: type: string mcpServerUuid: type: string uuid: type: string required: - updatedAt - createdAt - meta - annotations - inputSchema - description - title - toolName - mcpServerUuid - uuid type: object CompilationSource: type: string enum: - cli_deploy - refresh_dbt - create_project Omit_Explore.unfilteredTables_: $ref: '#/components/schemas/Pick_Explore.Exclude_keyofExplore.unfilteredTables__' description: Construct a type with the properties of T except for those in type K. DucklakeCatalogSqlite: $ref: '#/components/schemas/CreateDucklakeCatalogSqlite' ApiBigqueryDatasets: properties: results: items: $ref: '#/components/schemas/BigqueryDataset' type: array status: type: string enum: - ok nullable: false required: - results - status type: object OrderFieldsByStrategy: enum: - LABEL - INDEX type: string Omit_CreateDatabricksCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreateDatabricksCredentials.Exclude_keyofCreateDatabricksCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. FilterGroup: anyOf: - $ref: '#/components/schemas/OrFilterGroup' - $ref: '#/components/schemas/AndFilterGroup' ApiErrorPayload: properties: error: properties: data: $ref: '#/components/schemas/AnyType' description: Optional data containing details of the error message: type: string description: A friendly message summarising the error name: type: string description: Unique name for the type of error statusCode: type: number format: integer description: HTTP status code required: - name - statusCode type: object status: type: string enum: - error nullable: false required: - error - status type: object description: 'The Error object is returned from the api any time there is an error. The message contains' ApiDataTimezonePreview: properties: results: $ref: '#/components/schemas/ApiDataTimezonePreviewResults' status: type: string enum: - ok nullable: false required: - results - status type: object NonNullable_Explore-at-warnings_: allOf: - items: $ref: '#/components/schemas/InlineError' type: array - properties: {} type: object description: Exclude null and undefined from T ApiPreAggregateCheckResponse: properties: results: $ref: '#/components/schemas/PreAggregateCheckResult' status: type: string enum: - ok nullable: false required: - results - status type: object ApiAiMcpGithubAvailabilityResponse: $ref: '#/components/schemas/ApiSuccess_AiMcpGithubAvailability_' PivotReference: properties: pivotValues: items: $ref: '#/components/schemas/PivotValue' type: array description: Pivot values for this reference (for pivoted data) field: type: string description: Field ID being referenced required: - field type: object ? Pick_Dashboard.uuid-or-name-or-description-or-updatedAt-or-projectUuid-or-updatedByUser-or-organizationUuid-or-spaceUuid-or-views-or-firstViewedAt-or-pinnedListUuid-or-pinnedListOrder_ : properties: description: type: string name: type: string projectUuid: type: string organizationUuid: type: string uuid: type: string pinnedListUuid: type: string nullable: true pinnedListOrder: type: number format: double nullable: true updatedAt: type: string format: date-time spaceUuid: type: string updatedByUser: $ref: '#/components/schemas/UpdatedByUser' views: type: number format: double firstViewedAt: anyOf: - type: string - type: string format: date-time nullable: true required: - name - projectUuid - organizationUuid - uuid - pinnedListUuid - pinnedListOrder - updatedAt - spaceUuid - views - firstViewedAt type: object description: From T, pick a set of properties whose keys are in the union K Pick_Dimension.formatOptions_: properties: formatOptions: $ref: '#/components/schemas/CustomFormat' type: object description: From T, pick a set of properties whose keys are in the union K AiAgentMcpServerToolUpdate: $ref: '#/components/schemas/Pick_AiAgentMcpServerTool.toolName-or-enabled_' QueryWarning: properties: tables: items: type: string type: array fields: items: type: string type: array message: type: string required: - message type: object DashboardChartTileProperties: properties: properties: properties: chartSlug: type: string nullable: true lastVersionChartKind: allOf: - $ref: '#/components/schemas/ChartKind' nullable: true chartName: type: string nullable: true belongsToDashboard: type: boolean savedChartUuid: type: string nullable: true hideTitle: type: boolean title: type: string required: - savedChartUuid type: object type: $ref: '#/components/schemas/DashboardTileTypes.SAVED_CHART' required: - properties - type type: object PreAggregateSource: properties: preAggregateName: type: string sourceExploreName: type: string required: - preAggregateName - sourceExploreName type: object DucklakeDataPathType.AZURE: enum: - azure type: string ChartType: enum: - cartesian - table - big_number - pie - funnel - treemap - gauge - custom - map - sankey type: string VizTableConfig: allOf: - $ref: '#/components/schemas/VizBaseConfig' - properties: display: $ref: '#/components/schemas/VizTableDisplay' columns: $ref: '#/components/schemas/VizColumnsConfig' type: $ref: '#/components/schemas/ChartKind.TABLE' required: - columns - type type: object ValidationErrorType: enum: - chart - sorting - filter - metric - model - dimension - custom metric - chart configuration type: string FilterGroupInput: anyOf: - $ref: '#/components/schemas/OrFilterGroupInput' - $ref: '#/components/schemas/AndFilterGroupInput' ApiAgentSuggestionsResponse: $ref: '#/components/schemas/ApiSuccess__chips-AgentSuggestion-Array__' DucklakeDataPathAzure: $ref: '#/components/schemas/Omit_CreateDucklakeDataPathAzure.connectionString-or-accountKey_' DashboardLoomTileAsCode: allOf: - $ref: '#/components/schemas/DashboardTileAsCodeBase' - properties: properties: properties: url: type: string hideTitle: type: boolean title: type: string required: - url - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.LOOM' required: - properties - type type: object ProjectMemberRole: enum: - viewer - interactive_viewer - editor - developer - admin type: string ? PartialObjectDeep___91_x-string_93__58__description_63_-string-or-undefined--name_63_-string-or-undefined--tiles_63__58__40__type-DashboardTileTypes.SAVED_CHART-or-DashboardTileTypes.SQL_CHART--properties_58__title-string--chartName-string__-or-_type-DashboardTileTypes.MARKDOWN--properties_58__content-string--title-string__-or-_type-DashboardTileTypes.LOOM--properties_58__title-string__-or-_type-DashboardTileTypes.HEADING--properties_58__text-string__-or-_type-DashboardTileTypes.DATA_APP--properties_58__title-string___41_-Array-or-undefined__._recurseIntoArrays-true__ : properties: {} type: object description: Same as `PartialDeep`, but accepts only `object`s as inputs. Internal helper for `PartialDeep`. AiAgentToolResult: allOf: - $ref: '#/components/schemas/AiAgentBaseToolResult' - anyOf: - properties: metadata: anyOf: - properties: userFeedback: type: string enum: - accepted - rejected changeUuid: type: string status: type: string enum: - success nullable: false required: - changeUuid - status type: object - properties: status: type: string enum: - error nullable: false required: - status type: object toolName: type: string enum: - proposeChange nullable: false toolType: type: string enum: - built-in nullable: false required: - metadata - toolName - toolType type: object - properties: metadata: anyOf: - properties: userFeedback: type: string enum: - accepted - rejected changeUuid: type: string status: type: string enum: - success nullable: false required: - changeUuid - status type: object - properties: status: type: string enum: - error nullable: false required: - status type: object - properties: status: type: string enum: - success - error required: - status type: object - properties: status: type: string enum: - error - success required: - status type: object - properties: ranking: properties: topMatchingFields: items: properties: verifiedChartUsage: type: number format: double nullable: true chartUsage: type: number format: double nullable: true searchRank: type: number format: double nullable: true fieldType: type: string tableName: type: string label: type: string name: type: string required: - fieldType - tableName - label - name type: object type: array exploreSearchResults: items: properties: joinedTables: items: type: string type: array nullable: true searchRank: type: number format: double nullable: true label: type: string name: type: string required: - label - name type: object type: array searchQuery: type: string required: - searchQuery type: object status: type: string enum: - error - success required: - status type: object - properties: ranking: properties: searchQueries: items: properties: pagination: properties: totalPageCount: type: number format: double totalResults: type: number format: double pageSize: type: number format: double page: type: number format: double required: - totalPageCount - totalResults - pageSize - page type: object results: items: properties: verifiedChartUsage: type: number format: double nullable: true chartUsage: type: number format: double nullable: true searchRank: type: number format: double nullable: true fieldType: type: string tableName: type: string label: type: string name: type: string required: - fieldType - tableName - label - name type: object type: array label: type: string required: - results - label type: object type: array required: - searchQueries type: object status: type: string enum: - error - success required: - status type: object - properties: contentSizeBytes: type: number format: double name: type: string status: type: string enum: - success nullable: false required: - contentSizeBytes - name - status type: object - properties: status: type: string enum: - error - not_found - success required: - status type: object - properties: streamingMessage: {} status: type: string enum: - streaming nullable: false required: - status type: object - properties: streamingMessage: {} discovery: anyOf: - properties: rationale: type: string nullable: true fields: items: properties: description: type: string nullable: true isFromJoinedTable: type: boolean caseSensitiveFilters: type: string enum: - 'false' - not_applicable - 'true' fieldFilterType: type: string fieldValueType: type: string fieldType: type: string enum: - dimension - metric table: type: string label: type: string name: type: string fieldId: type: string required: - description - isFromJoinedTable - caseSensitiveFilters - fieldFilterType - fieldValueType - fieldType - table - label - name - fieldId type: object type: array explore: properties: joinedTables: items: type: string type: array baseTable: type: string label: type: string name: type: string required: - joinedTables - baseTable - label - name type: object status: type: string enum: - resolved nullable: false required: - rationale - fields - explore - status type: object - properties: suggestedQuestion: type: string candidates: items: properties: reason: type: string exploreLabel: type: string exploreName: type: string required: - reason - exploreLabel - exploreName type: object type: array status: type: string enum: - ambiguous nullable: false required: - suggestedQuestion - candidates - status type: object - properties: reason: type: string status: type: string enum: - no_match nullable: false required: - reason - status type: object status: type: string enum: - success nullable: false required: - discovery - status type: object - properties: versionUuids: properties: after: type: string nullable: true before: type: string nullable: true required: - after - before type: object warnings: items: type: string type: array href: type: string uuid: type: string name: type: string slug: type: string status: type: string enum: - success nullable: false required: - versionUuids - warnings - href - uuid - name - slug - status type: object - properties: steps: items: properties: label: type: string kind: type: string enum: - read - edit - search - compile - stage required: - label - kind type: object type: array nullable: true previewUrl: type: string nullable: true deletions: type: number format: double nullable: true additions: type: number format: double nullable: true commitSha: type: string nullable: true prAction: type: string enum: - opened - updated - null nullable: true status: type: string enum: - success nullable: false prUrl: type: string nullable: true required: - status - prUrl type: object - properties: errorCode: type: string enum: - unknown - github_not_installed - gitlab_not_installed - unsupported_source_control - pull_request_not_open - null nullable: true status: type: string enum: - error nullable: false required: - status type: object - properties: href: type: string name: type: string slug: type: string status: type: string enum: - success nullable: false required: - href - name - slug - status type: object - properties: status: type: string enum: - error - rejected - success - timeout required: - status type: object - properties: ranking: properties: fields: items: properties: chartUsage: type: number format: double nullable: true searchRank: type: number format: double nullable: true fieldType: type: string tableName: type: string label: type: string name: type: string required: - fieldType - tableName - label - name type: object type: array type: type: string enum: - dimension - metric - null nullable: true searchQuery: type: string nullable: true required: - fields - type - searchQuery type: object status: type: string enum: - error - success required: - status type: object toolName: $ref: '#/components/schemas/Exclude_ToolName.proposeChange_' toolType: type: string enum: - built-in nullable: false required: - metadata - toolName - toolType type: object - properties: metadata: allOf: - $ref: '#/components/schemas/Record_string.unknown_' nullable: true toolName: $ref: '#/components/schemas/AiAgentMcpToolName' toolType: type: string enum: - mcp nullable: false required: - metadata - toolName - toolType type: object DucklakeDataPathS3: $ref: '#/components/schemas/Omit_CreateDucklakeDataPathS3.accessKeyId-or-secretAccessKey_' TreemapChart: properties: endColorThreshold: type: number format: double description: Value threshold for end color startColorThreshold: type: number format: double description: Value threshold for start color useDynamicColors: type: boolean description: Use dynamic color scaling based on values endColor: type: string description: End color for color gradient (hex code) startColor: type: string description: Start color for color gradient (hex code) colorMetricId: type: string description: Field ID for node color value sizeMetricId: type: string description: Field ID for node size groupFieldIds: items: type: string type: array description: Field IDs for hierarchical grouping leafDepth: type: number format: double description: Depth of leaf nodes to display visibleMin: type: number format: double description: Minimum size for visible nodes type: object Record_string.Field-or-TableCalculation-or-CustomDimension-or-Metric_: properties: {} additionalProperties: anyOf: - $ref: '#/components/schemas/Field' - $ref: '#/components/schemas/Metric' - $ref: '#/components/schemas/TableCalculation' - $ref: '#/components/schemas/CustomDimension' type: object description: Construct a type with a set of properties K of type T DashboardDataAppTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardDataAppTileProperties' Record_string.Partial_PieChartValueOptions__: properties: {} additionalProperties: $ref: '#/components/schemas/Partial_PieChartValueOptions_' type: object description: Construct a type with a set of properties K of type T AgentSuggestionTool: type: string enum: - generateDashboard - generateVisualization - runSql - findContent CartesianSeriesType: enum: - line - bar - scatter - area type: string CompiledDimension: allOf: - $ref: '#/components/schemas/Dimension' - $ref: '#/components/schemas/CompiledProperties' DbtProjectType.MANIFEST: enum: - manifest type: string FrameBoundaryType: enum: - unbounded_preceding - preceding - current_row - following - unbounded_following type: string ApiSuccess__chips-AgentSuggestion-Array__: properties: results: properties: chips: items: $ref: '#/components/schemas/AgentSuggestion' type: array required: - chips type: object status: type: string enum: - ok nullable: false required: - results - status type: object UpdateProjectMember: properties: role: $ref: '#/components/schemas/ProjectMemberRole' required: - role type: object Partial_PieChartValueOptions_: properties: valueLabel: type: string enum: - hidden - inside - outside showValue: type: boolean showPercentage: type: boolean type: object description: Make all properties in T optional ApiAgentReadinessScoreResponse: $ref: '#/components/schemas/ApiSuccess_ReadinessScore_' DucklakeDataPathType.GCS: enum: - gcs type: string ApiAiAgentThreadMessageVizQuery: properties: metadata: $ref: '#/components/schemas/AiVizMetadata' query: $ref: '#/components/schemas/ApiExecuteAsyncMetricQueryResults' type: $ref: '#/components/schemas/AiResultType' required: - metadata - query - type type: object DashboardFilterRule: allOf: - $ref: '#/components/schemas/FilterRule_FilterOperator.DashboardFieldTarget.AnyType.AnyType_' - properties: lockedTabUuids: items: type: string type: array description: 'Tab UUIDs where this filter is locked. When the active tab is in this list, viewers see the filter but cannot change it, and URL / embed filter overrides targeting the same field are ignored on that tab. Empty or omitted means the filter is not locked anywhere.' singleValue: type: boolean label: type: string tileTargets: $ref: '#/components/schemas/Record_string.DashboardTileTarget_' type: object AthenaCredentials: $ref: '#/components/schemas/Omit_CreateAthenaCredentials.SensitiveCredentialsFieldNames_' ApiSuccess__updatedInstruction-string__: properties: results: properties: updatedInstruction: type: string required: - updatedInstruction type: object status: type: string enum: - ok nullable: false required: - results - status type: object ApiAiAgentEvaluationRunResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentEvaluationRunSummary_' CacheMetadata: properties: preAggregate: properties: reason: $ref: '#/components/schemas/PreAggregateMatchMiss' name: type: string hit: type: boolean required: - hit type: object cacheHit: type: boolean cacheKey: type: string cacheExpiresAt: type: string format: date-time cacheUpdatedTime: type: string format: date-time required: - cacheHit type: object Tag: properties: createdBy: allOf: - $ref: '#/components/schemas/Pick_LightdashUser.userUuid-or-firstName-or-lastName_' nullable: true yamlReference: type: string nullable: true createdAt: type: string format: date-time color: type: string name: type: string projectUuid: type: string tagUuid: type: string required: - createdBy - yamlReference - createdAt - color - name - projectUuid - tagUuid type: object Pick_LightdashUser.userUuid-or-firstName-or-lastName_: properties: {} type: object description: From T, pick a set of properties whose keys are in the union K AiAgentThreadSummary: properties: user: $ref: '#/components/schemas/AiAgentUser' firstMessage: properties: message: type: string uuid: type: string required: - message - uuid type: object titleGeneratedAt: type: string nullable: true title: type: string nullable: true createdFrom: type: string createdAt: type: string agentUuid: type: string uuid: type: string required: - user - firstMessage - titleGeneratedAt - title - createdFrom - createdAt - agentUuid - uuid type: object Pick_Explore.SummaryExploreFields_: properties: name: type: string type: $ref: '#/components/schemas/ExploreType' label: type: string tags: items: type: string type: array groupLabel: type: string deprecated: true groups: items: type: string type: array description: 'Nested groups for the sidebar (max 3 levels). Group keys resolve to labels/descriptions via the project-level `table_groups` config (fetched separately); missing keys fall back to using the key as the label.' aiHint: anyOf: - type: string - items: type: string type: array preAggregateSource: $ref: '#/components/schemas/PreAggregateSource' warnings: items: $ref: '#/components/schemas/InlineError' type: array description: 'Non-fatal warnings from partial compilation. Present when some joins or fields failed to compile but the explore is still usable. Only populated when PARTIAL_COMPILATION_ENABLED=true.' required: - name - label - tags type: object description: From T, pick a set of properties whose keys are in the union K DucklakeCatalogDuckdb: $ref: '#/components/schemas/CreateDucklakeCatalogDuckdb' ExploreWarningSummary: allOf: - $ref: '#/components/schemas/Pick_Explore.name_' - properties: warnings: $ref: '#/components/schemas/NonNullable_Explore-at-warnings_' required: - warnings type: object AiAgentVerifiedArtifact: properties: promptUuid: type: string nullable: true threadUuid: type: string referenceCount: type: number format: double verifiedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object verifiedAt: type: string format: date-time description: type: string nullable: true title: type: string nullable: true artifactType: type: string enum: - chart - dashboard versionUuid: type: string artifactUuid: type: string required: - promptUuid - threadUuid - referenceCount - verifiedBy - verifiedAt - description - title - artifactType - versionUuid - artifactUuid type: object BinRange: properties: to: type: number format: double description: End value for this bin range (undefined for the last range) from: type: number format: double description: Start value for this bin range (undefined for the first range) type: object FilterGroupItem: anyOf: - $ref: '#/components/schemas/FilterGroup' - $ref: '#/components/schemas/FilterRule' PivotValue: properties: value: description: Pivot value field: type: string description: Pivot field ID required: - value - field type: object MetricOverrides: properties: {} additionalProperties: $ref: '#/components/schemas/Pick_Metric.formatOptions_' type: object SortBy: items: $ref: '#/components/schemas/VizSortBy' type: array LegendPlacement: type: string enum: - custom - outsideRight - outsideLeft description: 'High-level legend placement preset. Set to ''outsideRight'' or ''outsideLeft'' to render the legend beside the plot with reserved grid space. Undefined behaves like ''custom'' (no override of the existing legend position fields).' MetadataCompletenessEvaluation: $ref: '#/components/schemas/ReadinessScoreEvaluation' AiPromptContextItem: anyOf: - properties: chartKind: allOf: - $ref: '#/components/schemas/ChartKind' nullable: true runtimeOverrides: allOf: - $ref: '#/components/schemas/AiChartRuntimeOverrides' nullable: true displayName: type: string nullable: true pinnedVersionUuid: type: string nullable: true chartSlug: type: string nullable: true chartUuid: type: string type: type: string enum: - chart nullable: false required: - chartKind - runtimeOverrides - displayName - pinnedVersionUuid - chartSlug - chartUuid - type type: object - properties: displayName: type: string nullable: true pinnedVersionUuid: type: string nullable: true dashboardSlug: type: string nullable: true dashboardUuid: type: string type: type: string enum: - dashboard nullable: false required: - displayName - pinnedVersionUuid - dashboardSlug - dashboardUuid - type type: object - properties: displayName: type: string nullable: true promptUuid: type: string nullable: true threadUuid: type: string type: type: string enum: - thread nullable: false required: - displayName - promptUuid - threadUuid - type type: object Filters: properties: tableCalculations: $ref: '#/components/schemas/FilterGroup' description: Table calculation filter group metrics: $ref: '#/components/schemas/FilterGroup' description: Metric filter group dimensions: $ref: '#/components/schemas/FilterGroup' description: Dimension filter group type: object ? Pick_SavedChart.name-or-description-or-tableName-or-metricQuery-or-pivotConfig-or-chartConfig-or-tableConfig-or-parameters_ : properties: description: type: string description: Optional description of what this chart displays name: type: string description: Display name of the chart parameters: $ref: '#/components/schemas/ParametersValuesMap' description: Parameter values for the chart query chartConfig: $ref: '#/components/schemas/ChartConfig' description: Visualization configuration for the chart tableName: type: string description: The explore/table name this chart queries from metricQuery: $ref: '#/components/schemas/MetricQuery' description: The query configuration defining what data to fetch pivotConfig: properties: columns: items: type: string type: array required: - columns type: object description: Pivot table configuration tableConfig: properties: columnOrder: items: type: string type: array required: - columnOrder type: object description: Table view configuration required: - name - chartConfig - tableName - metricQuery - tableConfig type: object description: From T, pick a set of properties whose keys are in the union K InlineError: properties: message: type: string type: $ref: '#/components/schemas/InlineErrorType' required: - message - type type: object LineageNodeDependency: properties: name: type: string type: type: string enum: - model - seed - source required: - name - type type: object Omit_ChartAsCode.chartConfig-or-description_: $ref: '#/components/schemas/Pick_ChartAsCode.Exclude_keyofChartAsCode.chartConfig-or-description__' description: Construct a type with the properties of T except for those in type K. ApiValidateResponse: properties: results: items: $ref: '#/components/schemas/ValidationResponse' type: array status: type: string enum: - ok nullable: false required: - results - status type: object AdditionalMetric: properties: label: type: string description: Display label for the metric type: $ref: '#/components/schemas/MetricType' description: Aggregation type description: type: string description: Description of what the metric measures sql: type: string description: SQL expression (e.g., ${TABLE}.column_name) hidden: type: boolean description: Whether the metric is hidden from users round: type: number format: double description: Number of decimal places compact: $ref: '#/components/schemas/CompactOrAlias' description: Compact format for large numbers format: anyOf: - $ref: '#/components/schemas/Format' - type: string description: Format string (legacy format specification) separator: $ref: '#/components/schemas/NumberSeparator' description: Number separator style for grouping/decimal characters table: type: string description: Table name the metric belongs to name: type: string description: Internal name of the metric index: type: number format: double description: Display order index filters: items: $ref: '#/components/schemas/MetricFilterRule' type: array description: Filters to apply to this metric baseDimensionName: type: string description: Name of the base dimension/column this metric aggregates uuid: type: string nullable: true description: Unique identifier for the metric percentile: type: number format: double description: Percentile value for percentile metrics distinctKeys: items: type: string type: array formatOptions: $ref: '#/components/schemas/CustomFormat' description: Formatting configuration generationType: type: string enum: - periodOverPeriod nullable: false description: 'Optional marker for metrics generated by the system. Currently used for Period-over-Period (PoP) previous-period metrics.' baseMetricId: $ref: '#/components/schemas/FieldId' description: For PoP-generated metrics, the base metric id that this metric is derived from. timeDimensionId: $ref: '#/components/schemas/FieldId' description: For PoP-generated metrics, the time dimension id used for the comparison. granularity: $ref: '#/components/schemas/TimeFrames' description: For PoP-generated metrics, the granularity used for the comparison. periodOffset: type: number format: double description: For PoP-generated metrics, the number of periods to offset by (>= 1). required: - type - sql - table - name type: object additionalProperties: true Record_string.LineageNodeDependency-Array_: properties: {} additionalProperties: items: $ref: '#/components/schemas/LineageNodeDependency' type: array type: object description: Construct a type with a set of properties K of type T ApiProjectCompileLogsResults: properties: pagination: properties: totalResults: type: number format: double totalPageCount: type: number format: double pageSize: type: number format: double page: type: number format: double required: - totalResults - totalPageCount - pageSize - page type: object data: items: $ref: '#/components/schemas/ProjectCompileLog' type: array required: - data type: object Omit_CreateAthenaCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreateAthenaCredentials.Exclude_keyofCreateAthenaCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. UserWarehouseCredentials: properties: project: allOf: - $ref: '#/components/schemas/UserWarehouseCredentialsProject' nullable: true credentials: anyOf: - $ref: '#/components/schemas/Pick_CreateRedshiftCredentials-or-CreatePostgresCredentials-or-CreateSnowflakeCredentials-or-CreateTrinoCredentials-or-CreateClickhouseCredentials.type-or-user_' - $ref: '#/components/schemas/Pick_CreateBigqueryCredentials.type_' - $ref: '#/components/schemas/Pick_CreateDatabricksCredentials.type_' - $ref: '#/components/schemas/Pick_CreateAthenaCredentials.type_' - $ref: '#/components/schemas/Pick_CreateDuckdbCredentials.type_' updatedAt: type: string format: date-time createdAt: type: string format: date-time name: type: string userUuid: type: string uuid: type: string required: - project - credentials - updatedAt - createdAt - name - userUuid - uuid type: object CreateTrinoCredentials: properties: dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true source: type: string http_scheme: type: string schema: type: string dbname: type: string port: type: number format: double requireUserCredentials: type: boolean password: type: string user: type: string host: type: string type: $ref: '#/components/schemas/WarehouseTypes.TRINO' required: - http_scheme - schema - dbname - port - password - user - host - type type: object JoinRelationship: enum: - one-to-many - many-to-one - one-to-one - many-to-many type: string AiMcpServerAuthType: type: string enum: - none - bearer - oauth ChartAsCode: allOf: - $ref: '#/components/schemas/Omit_Pick_SavedChart.name-or-description-or-tableName-or-metricQuery-or-chartConfig-or-pivotConfig-or-slug-or-parameters_.metricQuery_' - properties: verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true description: Detailed verification info (who/when). Read-only; ignored on upload. verified: type: boolean description: 'Declarative verification state. `true` verifies the chart on upload, `false` unverifies it, `undefined` leaves the current state untouched. Download sets this to `true` when the chart is verified.' downloadedAt: type: string format: date-time description: Timestamp when this chart was downloaded from Lightdash spaceSlug: type: string description: Slug of the space containing this chart contentType: $ref: '#/components/schemas/ContentAsCodeType.CHART' description: Content type discriminator version: type: number format: double description: Schema version for this chart configuration dashboardSlug: type: string description: Slug of the dashboard this chart belongs to (if any) tableConfig: properties: columnOrder: items: type: string type: array required: - columnOrder type: object description: Table configuration. Defaults to empty column order if omitted. updatedAt: type: string format: date-time description: Not modifiable by user, but useful to know if it has been updated. Defaults to now if omitted. metricQuery: allOf: - $ref: '#/components/schemas/Omit_MetricQuery.filters_' - properties: filters: $ref: '#/components/schemas/FiltersInput' required: - filters type: object required: - spaceSlug - version - metricQuery type: object Source: properties: content: type: string highlight: properties: end: $ref: '#/components/schemas/SourcePosition' start: $ref: '#/components/schemas/SourcePosition' required: - end - start type: object range: properties: end: $ref: '#/components/schemas/SourcePosition' start: $ref: '#/components/schemas/SourcePosition' required: - end - start type: object path: type: string required: - content - range - path type: object FrameBoundary: properties: offset: type: number format: double description: Offset for PRECEDING/FOLLOWING type: $ref: '#/components/schemas/FrameBoundaryType' description: Boundary type required: - type type: object CreateDucklakeCatalogSqlite: properties: path: type: string type: $ref: '#/components/schemas/DucklakeCatalogType.SQLITE' required: - path - type type: object ApiRenameChartResponse: properties: results: properties: jobId: type: string type: object status: type: string enum: - ok nullable: false required: - results - status type: object CreateWarehouseCredentials: anyOf: - $ref: '#/components/schemas/CreateRedshiftCredentials' - $ref: '#/components/schemas/CreateBigqueryCredentials' - $ref: '#/components/schemas/CreatePostgresCredentials' - $ref: '#/components/schemas/CreateSnowflakeCredentials' - $ref: '#/components/schemas/CreateDatabricksCredentials' - $ref: '#/components/schemas/CreateTrinoCredentials' - $ref: '#/components/schemas/CreateClickhouseCredentials' - $ref: '#/components/schemas/CreateAthenaCredentials' - $ref: '#/components/schemas/CreateDuckdbCredentials' ? Pick_BaseAiAgent.uuid-or-projectUuid-or-organizationUuid-or-integrations-or-tags-or-name-or-description-or-createdAt-or-updatedAt-or-instruction-or-imageUrl-or-groupAccess-or-userAccess-or-spaceAccess-or-enableDataAccess-or-enableSelfImprovement-or-enableContentTools-or-version_ : properties: description: type: string nullable: true name: type: string projectUuid: type: string createdAt: type: string format: date-time organizationUuid: type: string uuid: type: string userAccess: items: type: string type: array updatedAt: type: string format: date-time integrations: items: properties: channelId: type: string type: type: string enum: - slack nullable: false required: - channelId - type type: object type: array tags: items: type: string type: array nullable: true instruction: type: string nullable: true imageUrl: type: string nullable: true groupAccess: items: type: string type: array spaceAccess: items: type: string type: array enableDataAccess: type: boolean enableSelfImprovement: type: boolean enableContentTools: type: boolean version: type: number format: double required: - description - name - projectUuid - createdAt - organizationUuid - uuid - userAccess - updatedAt - integrations - tags - instruction - imageUrl - groupAccess - spaceAccess - enableDataAccess - enableSelfImprovement - enableContentTools - version type: object description: From T, pick a set of properties whose keys are in the union K MetricQuery: properties: metadata: properties: hasADateDimension: $ref: '#/components/schemas/Pick_CompiledDimension.label-or-name-or-table_' required: - hasADateDimension type: object pivotDimensions: items: $ref: '#/components/schemas/FieldId' type: array description: 'Dimension field IDs used as pivot columns (from chart''s pivotConfig.columns). Used by row_total() to determine non-pivot dimensions for GROUP BY.' timezone: type: string description: Timezone for date/time values (e.g., 'America/Los_Angeles', 'UTC') dimensionOverrides: $ref: '#/components/schemas/DimensionOverrides' description: Override formatting options for existing dimensions metricOverrides: $ref: '#/components/schemas/MetricOverrides' description: Override formatting options for existing metrics customDimensions: items: $ref: '#/components/schemas/CustomDimension' type: array description: Custom dimensions defined inline additionalMetrics: items: $ref: '#/components/schemas/AdditionalMetric' type: array description: Custom metrics defined inline (ad-hoc metrics not in the dbt model) tableCalculations: items: $ref: '#/components/schemas/TableCalculation' type: array description: Custom calculations to perform on query results limit: type: number format: double description: Maximum number of rows to return sorts: items: $ref: '#/components/schemas/SortField' type: array description: Sort configuration for query results filters: $ref: '#/components/schemas/Filters' description: Filter rules to apply to the query metrics: items: $ref: '#/components/schemas/FieldId' type: array description: List of metric field IDs to include dimensions: items: $ref: '#/components/schemas/FieldId' type: array description: List of dimension field IDs to include exploreName: type: string description: The name of the explore to query required: - tableCalculations - limit - sorts - filters - metrics - dimensions - exploreName type: object Record_string.number_: properties: {} additionalProperties: type: number format: double type: object description: Construct a type with a set of properties K of type T CreateDashboardDataAppTile: allOf: - $ref: '#/components/schemas/CreateDashboardTileBase' - $ref: '#/components/schemas/DashboardDataAppTileProperties' ApiChartListResponse: properties: results: items: $ref: '#/components/schemas/SpaceQuery' type: array status: type: string enum: - ok nullable: false required: - results - status type: object DashboardHeadingTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardHeadingTileProperties' PieChartValueLabel: type: string enum: - hidden - inside - outside nullable: false OrFilterGroupInput: properties: or: items: $ref: '#/components/schemas/FilterGroupItemInput' type: array id: type: string required: - or type: object ChartKind.VERTICAL_BAR: enum: - vertical_bar type: string DashboardTile: anyOf: - $ref: '#/components/schemas/DashboardChartTile' - $ref: '#/components/schemas/DashboardMarkdownTile' - $ref: '#/components/schemas/DashboardLoomTile' - $ref: '#/components/schemas/DashboardSqlChartTile' - $ref: '#/components/schemas/DashboardHeadingTile' - $ref: '#/components/schemas/DashboardDataAppTile' Partial_CompleteCartesianChartLayout_: properties: xField: type: string description: Field ID to use for the X axis yField: items: type: string type: array description: Field IDs to use for the Y axis flipAxes: type: boolean description: Swap X and Y axes (creates horizontal bar charts) showGridX: type: boolean description: Show vertical grid lines showGridY: type: boolean description: Show horizontal grid lines showXAxis: type: boolean description: Show the X axis showYAxis: type: boolean description: Show the Y axis showLeftYAxis: type: boolean description: Controls left/primary Y-axis visibility showRightYAxis: type: boolean description: Controls right/secondary Y-axis visibility stack: anyOf: - type: string - type: boolean description: Stack series together (true for default stacking, or string for stack group name) connectNulls: type: boolean description: Connect null data points with a line colorByCategory: type: boolean description: Color each bar by its category value instead of using a single series color categoryColorOverrides: $ref: '#/components/schemas/Record_string.string_' description: Per-category color overrides (maps category value to hex color) type: object description: Make all properties in T optional ApiSqlQueryResults: properties: rows: items: $ref: '#/components/schemas/Record_string.unknown_' type: array fields: $ref: '#/components/schemas/Record_string._type-DimensionType__' required: - rows - fields type: object PieChart: properties: metadata: $ref: '#/components/schemas/Record_string.SeriesMetadata_' description: Metadata for series (colors, etc.) legendMaxItemLength: type: number format: double description: Maximum character length for legend items legendPosition: $ref: '#/components/schemas/PieChartLegendPosition' description: Legend position/orientation showLegend: type: boolean description: Show the chart legend groupSortOverrides: items: type: string type: array description: Custom sort order for groups/slices groupValueOptionOverrides: $ref: '#/components/schemas/Record_string.Partial_PieChartValueOptions__' description: Per-slice value display options groupColorOverrides: $ref: '#/components/schemas/Record_string.string_' description: Custom colors for each group/slice groupLabelOverrides: $ref: '#/components/schemas/Record_string.string_' description: Custom labels for each group/slice showPercentage: type: boolean description: Show percentage on slices showValue: type: boolean description: Show the actual value on slices valueLabel: $ref: '#/components/schemas/PieChartValueLabel' description: Position of value labels on slices isDonut: type: boolean description: Display as donut chart with hole in center metricId: type: string description: Field ID of the metric to display groupFieldIds: items: type: string type: array description: Field IDs used for grouping/slicing the pie type: object GroupValueRule: properties: value: type: string matchType: $ref: '#/components/schemas/GroupValueMatchType' required: - value - matchType type: object MapFieldConfig: properties: label: type: string description: Custom label for the field visible: type: boolean description: Whether to show this field in tooltips type: object ApiSuccess__decision-approved-or-rejected__: properties: results: properties: decision: type: string enum: - approved - rejected required: - decision type: object status: type: string enum: - ok nullable: false required: - results - status type: object ApiSuccess__question-string--uuid-string_-Array_: properties: results: items: properties: uuid: type: string question: type: string required: - uuid - question type: object type: array status: type: string enum: - ok nullable: false required: - results - status type: object WarehouseTypes.TRINO: enum: - trino type: string Pick_CompiledDimension.label-or-name-or-table_: properties: name: type: string label: type: string table: type: string required: - name - label - table type: object description: From T, pick a set of properties whose keys are in the union K TableCalculationTemplateType.WINDOW_FUNCTION: enum: - window_function type: string ApiDashboardAsCodeUpsertResponse: properties: results: $ref: '#/components/schemas/PromotionChanges' status: type: string enum: - ok nullable: false required: - results - status type: object ApiAiAgentModelOptionsResponse: $ref: '#/components/schemas/ApiSuccess_AiModelOption-Array_' ApiCalculateTotalResponse: properties: results: $ref: '#/components/schemas/Record_string.number_' status: type: string enum: - ok nullable: false required: - results - status type: object MetricQueryRequest: properties: dimensionOverrides: $ref: '#/components/schemas/DimensionOverrides' metricOverrides: $ref: '#/components/schemas/MetricOverrides' pivotDimensions: items: $ref: '#/components/schemas/FieldId' type: array timezone: type: string metadata: properties: hasADateDimension: $ref: '#/components/schemas/Pick_CompiledDimension.label-or-name-or-table_' required: - hasADateDimension type: object dateZoom: $ref: '#/components/schemas/DateZoom' customDimensions: items: $ref: '#/components/schemas/CustomDimension' type: array csvLimit: type: number format: double additionalMetrics: items: $ref: '#/components/schemas/AdditionalMetric' type: array tableCalculations: items: $ref: '#/components/schemas/TableCalculation' type: array limit: type: number format: double sorts: items: $ref: '#/components/schemas/SortField' type: array filters: properties: tableCalculations: $ref: '#/components/schemas/AnyType' metrics: $ref: '#/components/schemas/AnyType' dimensions: $ref: '#/components/schemas/AnyType' type: object metrics: items: $ref: '#/components/schemas/FieldId' type: array dimensions: items: $ref: '#/components/schemas/FieldId' type: array exploreName: type: string required: - tableCalculations - limit - sorts - filters - metrics - dimensions - exploreName type: object SupportedDbtVersions: enum: - v1.4 - v1.5 - v1.6 - v1.7 - v1.8 - v1.9 - v1.10 - v1.11 type: string CartesianChartLayout: $ref: '#/components/schemas/Partial_CompleteCartesianChartLayout_' ApiRenameFieldsResponse: properties: results: properties: fields: properties: {} additionalProperties: items: type: string type: array type: object required: - fields type: object status: type: string enum: - ok nullable: false required: - results - status type: object Omit_SqlChartAsCode.config-or-description_: $ref: '#/components/schemas/Pick_SqlChartAsCode.Exclude_keyofSqlChartAsCode.config-or-description__' description: Construct a type with the properties of T except for those in type K. AnyType: description: 'This AnyType is an alias for any The goal is to make it easier to identify any type in the codebase without having to eslint-disable all the time These are only used on legacy `any` types, don''t use it for new types. This is added on a separate file to avoid circular dependencies.' ApiAiMcpOAuthCredentialRequest: properties: credentialScope: $ref: '#/components/schemas/AiMcpCredentialScope' type: object ApiSuccessEmpty: properties: results: {} status: type: string enum: - ok nullable: false required: - status type: object ApiAiMcpServerListResponse: $ref: '#/components/schemas/ApiSuccess_AiMcpServer-Array_' TimeFrames: enum: - RAW - YEAR - QUARTER - MONTH - WEEK - DAY - HOUR - MINUTE - SECOND - MILLISECOND - DAY_OF_WEEK_INDEX - DAY_OF_MONTH_NUM - DAY_OF_YEAR_NUM - WEEK_NUM - MONTH_NUM - QUARTER_NUM - YEAR_NUM - DAY_OF_WEEK_NAME - MONTH_NAME - QUARTER_NAME - HOUR_OF_DAY_NUM - MINUTE_OF_HOUR_NUM type: string ApiSuccess_AiAgentMessageUser_AiAgentUser__: properties: results: $ref: '#/components/schemas/AiAgentMessageUser_AiAgentUser_' status: type: string enum: - ok nullable: false required: - results - status type: object ApiSuccess_AiAgentEvaluation_: properties: results: $ref: '#/components/schemas/AiAgentEvaluation' status: type: string enum: - ok nullable: false required: - results - status type: object PivotChartLayout: properties: stack: anyOf: - type: boolean - $ref: '#/components/schemas/StackType' sortBy: items: $ref: '#/components/schemas/VizSortBy' type: array groupBy: items: properties: reference: type: string required: - reference type: object type: array y: items: properties: aggregation: $ref: '#/components/schemas/VizAggregationOptions' reference: type: string required: - aggregation - reference type: object type: array x: properties: type: $ref: '#/components/schemas/VizIndexType' reference: type: string required: - type - reference type: object required: - y type: object PreAggregateMissReason.NO_ACTIVE_MATERIALIZATION: enum: - no_active_materialization type: string ApiCreateAiAgentResponse: properties: results: $ref: '#/components/schemas/AiAgent' status: type: string enum: - ok nullable: false required: - results - status type: object SqlTableCalculation: allOf: - $ref: '#/components/schemas/TableCalculationBase' - properties: sql: type: string description: SQL expression for the calculation (can reference fields with ${table.field}) required: - sql type: object AiChartRuntimeOverrides: properties: dateZoom: $ref: '#/components/schemas/DateZoom' dashboardParameters: $ref: '#/components/schemas/ParametersValuesMap' dashboardFilters: $ref: '#/components/schemas/DashboardFilters' type: object description: 'Runtime state captured at pin time for a chart context. When a user pins a chart from a dashboard view, these are the dashboard-level overrides that were applied to the chart on screen at that moment.' ApiSuccess_AiArtifactTSOACompat_: properties: results: $ref: '#/components/schemas/AiArtifactTSOACompat' status: type: string enum: - ok nullable: false required: - results - status type: object ApiSuccess__errors-CreateDashboardValidation-Array__: properties: results: properties: errors: items: $ref: '#/components/schemas/CreateDashboardValidation' type: array required: - errors type: object status: type: string enum: - ok nullable: false required: - results - status type: object PreAggregateMissReason.CUSTOM_SQL_METRIC: enum: - custom_sql_metric type: string FixedNumberBinDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.BIN' description: Type of custom dimension (bin or sql) dimensionId: $ref: '#/components/schemas/FieldId' description: Field ID of the parent dimension to bin binType: $ref: '#/components/schemas/BinType.FIXED_NUMBER' binNumber: type: number format: double required: - id - name - table - type - dimensionId - binType - binNumber type: object additionalProperties: true Pick_UpdatedByUser.userUuid_: properties: userUuid: type: string required: - userUuid type: object description: From T, pick a set of properties whose keys are in the union K DownloadActivityResults: properties: pagination: properties: nextCursor: type: string nullable: true totalResults: type: number format: double nullable: true totalPageCount: type: number format: double nullable: true page: type: number format: double nullable: true pageSize: type: number format: double required: - nextCursor - totalResults - totalPageCount - page - pageSize type: object data: items: $ref: '#/components/schemas/DownloadAuditEntry' type: array required: - pagination - data type: object ChartType.SANKEY: enum: - sankey type: string ApiRevertChangeResponse: $ref: '#/components/schemas/ApiSuccessEmpty' AiAgentBaseToolResult: properties: toolCallId: type: string createdAt: type: string format: date-time result: type: string promptUuid: type: string uuid: type: string required: - toolCallId - createdAt - result - promptUuid - uuid type: object DbtProjectEnvironmentVariable: properties: value: type: string key: type: string required: - value - key type: object ApiRenameBody: properties: model: type: string dryRun: type: boolean type: $ref: '#/components/schemas/RenameType' from: type: string to: type: string required: - type - from - to type: object UpdatePreviewExpirationProjectSettings: properties: maxPreviewExpirationHours: type: number format: double defaultPreviewExpirationHours: type: number format: double required: - maxPreviewExpirationHours - defaultPreviewExpirationHours type: object ApiProjectAccessListResponse: properties: results: items: $ref: '#/components/schemas/ProjectMemberProfile' type: array status: type: string enum: - ok nullable: false required: - results - status type: object GaugeSection: properties: color: type: string description: Color for this section (hex code) maxFieldId: type: string description: Field ID to use as max value minFieldId: type: string description: Field ID to use as min value max: type: number format: double description: End value for this section min: type: number format: double description: Start value for this section required: - color - max - min type: object ApiAiAgentEvaluationSummaryListResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentEvaluationSummary-Array_' ValidationSourceType: enum: - chart - dashboard - table type: string Record_string.DashboardParameterValue_: properties: {} additionalProperties: $ref: '#/components/schemas/DashboardParameterValue' type: object description: Construct a type with a set of properties K of type T DashboardDAO: $ref: '#/components/schemas/Omit_Dashboard.inheritsFromOrgOrProject-or-access_' DucklakeCatalog: anyOf: - $ref: '#/components/schemas/DucklakeCatalogPostgres' - $ref: '#/components/schemas/DucklakeCatalogSqlite' - $ref: '#/components/schemas/DucklakeCatalogDuckdb' ReadinessScore: properties: overallScore: type: number format: double metadataCompleteness: $ref: '#/components/schemas/MetadataCompletenessEvaluation' exploreAnalysis: $ref: '#/components/schemas/ExploreAnalysisEvaluation' instructionQuality: $ref: '#/components/schemas/InstructionQualityEvaluation' timestamp: type: string format: date-time projectSnapshot: properties: fieldCount: type: number format: double exploreCount: type: number format: double required: - fieldCount - exploreCount type: object required: - overallScore - metadataCompleteness - exploreAnalysis - instructionQuality - timestamp - projectSnapshot type: object additionalProperties: true Pick_CreateRedshiftCredentials.Exclude_keyofCreateRedshiftCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.REDSHIFT' requireUserCredentials: type: boolean schema: type: string threads: type: number format: double startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string timeoutSeconds: type: number format: double useSshTunnel: type: boolean sshTunnelHost: type: string sshTunnelPort: type: number format: double sshTunnelUser: type: string sshTunnelPublicKey: type: string host: type: string port: type: number format: double dbname: type: string keepalivesIdle: type: number format: double sslmode: type: string ra3Node: type: boolean required: - type - schema - host - port - dbname type: object description: From T, pick a set of properties whose keys are in the union K WarehouseTypes: enum: - bigquery - postgres - redshift - snowflake - databricks - trino - clickhouse - athena - duckdb type: string MapChartConfig: properties: config: $ref: '#/components/schemas/MapChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.MAP' description: Type of chart visualization required: - type type: object ApiDashboardAsCodeListResponse: properties: results: properties: offset: type: number format: double total: type: number format: double spaces: items: $ref: '#/components/schemas/SpaceAsCode' type: array missingIds: items: type: string type: array languageMap: items: $ref: '#/components/schemas/PartialDeep_DashboardAsCodeLanguageMap._recurseIntoArrays-true__' type: array dashboards: items: $ref: '#/components/schemas/DashboardAsCode' type: array required: - offset - total - spaces - missingIds - dashboards type: object status: type: string enum: - ok nullable: false required: - results - status type: object VizCartesianChartConfig: allOf: - $ref: '#/components/schemas/VizBaseConfig' - properties: display: $ref: '#/components/schemas/CartesianChartDisplay' fieldConfig: $ref: '#/components/schemas/PivotChartLayout' type: anyOf: - $ref: '#/components/schemas/ChartKind.VERTICAL_BAR' - $ref: '#/components/schemas/ChartKind.LINE' required: - type type: object ApiSuccess__jobIds-string-Array__: properties: results: properties: jobIds: items: type: string type: array required: - jobIds type: object status: type: string enum: - ok nullable: false required: - results - status type: object DucklakeDataPathType.LOCAL: enum: - local type: string GroupByColumn: properties: reference: type: string required: - reference type: object DucklakeCatalogType.DUCKDB: enum: - duckdb type: string ApiAiAgentThreadMessageCreateRequest: properties: modelConfig: properties: reasoning: type: boolean modelProvider: type: string modelName: type: string required: - modelProvider - modelName type: object context: $ref: '#/components/schemas/AiPromptContextInput' prompt: type: string required: - prompt type: object Series: properties: isFilteredOut: type: boolean description: Whether this series is currently filtered out markLine: $ref: '#/components/schemas/MarkLine' description: Reference line configuration smooth: type: boolean description: Use smooth curves for line/area charts showSymbol: type: boolean description: Show symbols/markers on data points areaStyle: $ref: '#/components/schemas/Record_string.unknown_' description: Area fill style (presence indicates area chart) hidden: type: boolean description: Hide this series from the chart label: properties: showSeriesName: type: boolean description: Show the metric field name showLabel: type: boolean description: Show the legend/pivot name showValue: type: boolean description: Show the metric value showOverlappingLabels: type: boolean description: Show labels even when they overlap position: type: string enum: - left - top - right - bottom - inside description: Position of data labels show: type: boolean description: Show data labels on points type: object description: Data label configuration yAxisIndex: type: number format: double description: Index of Y axis to use (for dual Y axis charts) color: type: string description: Color for the series (hex code) name: type: string description: Display name for the series stackLabel: properties: show: type: boolean description: Show stack total labels type: object description: Stack total label configuration stack: type: string description: Stack group name (series with same stack name are stacked) type: $ref: '#/components/schemas/CartesianSeriesType' description: Series visualization type encode: properties: y: type: string description: Hash of yRef (computed) x: type: string description: Hash of xRef (computed) yRef: $ref: '#/components/schemas/PivotReference' description: Y axis field reference xRef: $ref: '#/components/schemas/PivotReference' description: X axis field reference required: - yRef - xRef type: object description: Field references for this series required: - type - encode type: object ? Pick_ValidationErrorDashboardResponse.error-or-errorType-or-fieldName-or-name-or-projectUuid-or-dashboardUuid-or-chartName-or-source_ : properties: name: type: string projectUuid: type: string error: type: string source: $ref: '#/components/schemas/ValidationSourceType' errorType: $ref: '#/components/schemas/ValidationErrorType' fieldName: type: string chartName: type: string dashboardUuid: type: string required: - name - projectUuid - error - errorType type: object description: From T, pick a set of properties whose keys are in the union K CustomFormat: properties: type: $ref: '#/components/schemas/CustomFormatType' description: Format type round: type: number format: double description: Number of decimal places separator: $ref: '#/components/schemas/NumberSeparator' description: Number separator style currency: type: string description: Currency code (e.g., USD, GBP, EUR) compact: $ref: '#/components/schemas/CompactOrAlias' description: Compact format for large numbers (K, M, B, T) or byte units prefix: type: string description: Prefix to prepend to formatted values suffix: type: string description: Suffix to append to formatted values timeInterval: $ref: '#/components/schemas/TimeFrames' description: Time interval for date formatting custom: type: string description: Custom format string required: - type type: object additionalProperties: true ChartType.FUNNEL: enum: - funnel type: string ChartKind.PIE: enum: - pie type: string CreateBigqueryCredentials: properties: accessUrl: type: string executionProject: type: string dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true maximumBytesBilled: type: number format: double location: type: string retries: type: number format: double requireUserCredentials: type: boolean keyfileContents: $ref: '#/components/schemas/Record_string.string_' authenticationType: $ref: '#/components/schemas/BigqueryAuthenticationType' priority: type: string enum: - interactive - batch timeoutSeconds: type: number format: double threads: type: number format: double dataset: type: string project: type: string type: $ref: '#/components/schemas/WarehouseTypes.BIGQUERY' required: - keyfileContents - dataset - project - type type: object Omit_CreateDucklakeDataPathGcs.hmacKeyId-or-hmacSecret_: $ref: '#/components/schemas/Pick_CreateDucklakeDataPathGcs.Exclude_keyofCreateDucklakeDataPathGcs.hmacKeyId-or-hmacSecret__' description: Construct a type with the properties of T except for those in type K. FiltersInput: properties: tableCalculations: $ref: '#/components/schemas/FilterGroupInput' metrics: $ref: '#/components/schemas/FilterGroupInput' dimensions: $ref: '#/components/schemas/FilterGroupInput' type: object DuckdbCredentials: anyOf: - $ref: '#/components/schemas/DuckdbMotherduckCredentials' - $ref: '#/components/schemas/DuckdbDucklakeCredentials' ApiAiAgentThreadMessageCreateResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentMessageUser_AiAgentUser__' Pick_ChartAsCode.Exclude_keyofChartAsCode.chartConfig-or-description__: properties: name: type: string description: Display name of the chart parameters: $ref: '#/components/schemas/ParametersValuesMap' description: Parameter values for the chart query slug: type: string description: Unique identifier slug for this chart updatedAt: type: string format: date-time description: Not modifiable by user, but useful to know if it has been updated. Defaults to now if omitted. version: type: number format: double description: Schema version for this chart configuration verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true description: Detailed verification info (who/when). Read-only; ignored on upload. tableName: type: string description: The explore/table name this chart queries from metricQuery: allOf: - $ref: '#/components/schemas/Omit_MetricQuery.filters_' - properties: filters: $ref: '#/components/schemas/FiltersInput' required: - filters type: object pivotConfig: properties: columns: items: type: string type: array required: - columns type: object description: Pivot table configuration tableConfig: properties: columnOrder: items: type: string type: array required: - columnOrder type: object description: Table configuration. Defaults to empty column order if omitted. dashboardSlug: type: string description: Slug of the dashboard this chart belongs to (if any) contentType: $ref: '#/components/schemas/ContentAsCodeType.CHART' description: Content type discriminator spaceSlug: type: string description: Slug of the space containing this chart downloadedAt: type: string format: date-time description: Timestamp when this chart was downloaded from Lightdash verified: type: boolean description: 'Declarative verification state. `true` verifies the chart on upload, `false` unverifies it, `undefined` leaves the current state untouched. Download sets this to `true` when the chart is verified.' required: - name - slug - version - tableName - metricQuery - spaceSlug type: object description: From T, pick a set of properties whose keys are in the union K TableCalculationTemplate: anyOf: - properties: partitionBy: items: type: string type: array orderBy: items: properties: order: type: string enum: - asc - desc - null nullable: true fieldId: type: string required: - order - fieldId type: object type: array description: Fields to order by for window functions fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.PERCENT_CHANGE_FROM_PREVIOUS' description: Type of template calculation required: - orderBy - fieldId - type type: object - properties: partitionBy: items: type: string type: array orderBy: items: properties: order: type: string enum: - asc - desc - null nullable: true fieldId: type: string required: - order - fieldId type: object type: array description: Fields to order by for window functions fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.PERCENT_OF_PREVIOUS_VALUE' description: Type of template calculation required: - orderBy - fieldId - type type: object - properties: partitionBy: items: type: string type: array description: Fields to partition by fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.PERCENT_OF_COLUMN_TOTAL' description: Type of template calculation required: - fieldId - type type: object - properties: fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.RANK_IN_COLUMN' description: Type of template calculation required: - fieldId - type type: object - properties: fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.RUNNING_TOTAL' description: Type of template calculation required: - fieldId - type type: object - properties: frame: $ref: '#/components/schemas/FrameClause' description: Frame clause for window functions partitionBy: items: type: string type: array description: Fields to partition by for window functions orderBy: items: properties: order: type: string enum: - asc - desc - null nullable: true fieldId: type: string required: - order - fieldId type: object type: array description: Fields to order by for window functions fieldId: type: string nullable: true description: Field ID to apply the template to windowFunction: $ref: '#/components/schemas/WindowFunctionType' description: Window function type type: $ref: '#/components/schemas/TableCalculationTemplateType.WINDOW_FUNCTION' description: Type of template calculation required: - partitionBy - orderBy - fieldId - windowFunction - type type: object Record_string.FieldSetDefinition_: properties: {} additionalProperties: $ref: '#/components/schemas/FieldSetDefinition' type: object description: Construct a type with a set of properties K of type T CreateRedshiftCredentials: allOf: - $ref: '#/components/schemas/SshTunnelConfiguration' - properties: timeoutSeconds: type: number format: double dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true ra3Node: type: boolean sslmode: type: string keepalivesIdle: type: number format: double threads: type: number format: double schema: type: string dbname: type: string port: type: number format: double requireUserCredentials: type: boolean password: type: string user: type: string host: type: string type: $ref: '#/components/schemas/WarehouseTypes.REDSHIFT' required: - schema - dbname - port - password - user - host - type type: object Omit_CreatePostgresCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreatePostgresCredentials.Exclude_keyofCreatePostgresCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. ApiAiAgentEvaluationRunSummaryListResponse: $ref: '#/components/schemas/ApiSuccess_KnexPaginatedData__runs-AiAgentEvaluationRunSummary-Array___' ChartType.BIG_NUMBER: enum: - big_number type: string PreAggregateDef: properties: materializationRole: $ref: '#/components/schemas/PreAggregateMaterializationRole' refresh: properties: cron: type: string type: object maxRows: type: number format: double granularity: $ref: '#/components/schemas/TimeFrames' timeDimension: type: string filters: items: $ref: '#/components/schemas/MetricFilterRule' type: array metrics: items: type: string type: array dimensions: items: type: string type: array name: type: string required: - metrics - dimensions - name type: object TemplateTableCalculation: allOf: - $ref: '#/components/schemas/TableCalculationBase' - properties: template: $ref: '#/components/schemas/TableCalculationTemplate' description: Template-based calculation (alternative to sql) required: - template type: object WarehouseTypes.POSTGRES: enum: - postgres type: string FieldSetDefinition: properties: fields: items: type: string type: array required: - fields type: object PromotedSpace: $ref: '#/components/schemas/SpaceSummaryBase' DashboardSqlChartTileProperties: properties: properties: properties: chartSlug: type: string nullable: true hideTitle: type: boolean chartName: type: string savedSqlUuid: type: string nullable: true title: type: string required: - chartName - savedSqlUuid type: object type: $ref: '#/components/schemas/DashboardTileTypes.SQL_CHART' required: - properties - type type: object Pick_CreateDatabricksCredentials.Exclude_keyofCreateDatabricksCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.DATABRICKS' catalog: type: string requireUserCredentials: type: boolean authenticationType: $ref: '#/components/schemas/DatabricksAuthenticationType' database: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string serverHostName: type: string httpPath: type: string compute: items: properties: httpPath: type: string name: type: string required: - httpPath - name type: object type: array required: - type - database - serverHostName - httpPath type: object description: From T, pick a set of properties whose keys are in the union K ConditionalFormattingConfig: anyOf: - $ref: '#/components/schemas/ConditionalFormattingConfigWithSingleColor' - $ref: '#/components/schemas/ConditionalFormattingConfigWithColorRange' SourcePosition: properties: character: type: number format: double line: type: number format: double required: - character - line type: object PartialDeep_DashboardAsCodeLanguageMap._recurseIntoArrays-true__: $ref: '#/components/schemas/PartialObjectDeep__dashboard_58___91_x-string_93__58__description_63_-string-or-undefined--name_63_-string-or-undefined--tiles_63__58__40__type-DashboardTileTypes.SAVED_CHART-or-DashboardTileTypes.SQL_CHART--properties_58__title-string--chartName-string__-or-_type-DashboardTileTypes.MARKDOWN--properties_58__content-string--title-string__-or-_type-DashboardTileTypes.LOOM--properties_58__title-string__-or-_type-DashboardTileTypes.HEADING--properties_58__text-string__-or-_type-DashboardTileTypes.DATA_APP--properties_58__title-string___41_-Array-or-undefined___._recurseIntoArrays-true__' description: 'Create a type from another type with all keys and nested keys set to optional. Use-cases: - Merging a default settings/config object with another object, the second object would be a deep partial of the default object. - Mocking and testing complex entities, where populating an entire object with its keys would be redundant in terms of the mock or test.' ChartType.GAUGE: enum: - gauge type: string Record_string.Record_string.string-or-string-Array__: properties: {} additionalProperties: $ref: '#/components/schemas/Record_string.string-or-string-Array_' type: object description: Construct a type with a set of properties K of type T Pick_FilterRule.Exclude_keyofFilterRule.id__: properties: target: $ref: '#/components/schemas/FieldTarget' description: Target field for the filter settings: description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator values: items: {} type: array description: Values to filter by required: - target - operator type: object description: From T, pick a set of properties whose keys are in the union K ValuesColumn: properties: aggregation: $ref: '#/components/schemas/VizAggregationOptions' reference: type: string required: - aggregation - reference type: object Pick_MetricQuery.Exclude_keyofMetricQuery.filters__: properties: limit: type: number format: double description: Maximum number of rows to return timezone: type: string description: Timezone for date/time values (e.g., 'America/Los_Angeles', 'UTC') exploreName: type: string description: The name of the explore to query dimensions: items: type: string type: array description: List of dimension field IDs to include metrics: items: type: string type: array description: List of metric field IDs to include sorts: items: $ref: '#/components/schemas/SortField' type: array description: Sort configuration for query results tableCalculations: items: $ref: '#/components/schemas/TableCalculation' type: array description: Custom calculations to perform on query results additionalMetrics: items: $ref: '#/components/schemas/AdditionalMetric' type: array description: Custom metrics defined inline (ad-hoc metrics not in the dbt model) customDimensions: items: $ref: '#/components/schemas/CustomDimension' type: array description: Custom dimensions defined inline metricOverrides: $ref: '#/components/schemas/MetricOverrides' description: Override formatting options for existing metrics dimensionOverrides: $ref: '#/components/schemas/DimensionOverrides' description: Override formatting options for existing dimensions pivotDimensions: items: type: string type: array description: 'Dimension field IDs used as pivot columns (from chart''s pivotConfig.columns). Used by row_total() to determine non-pivot dimensions for GROUP BY.' metadata: properties: hasADateDimension: $ref: '#/components/schemas/Pick_CompiledDimension.name-or-label-or-table_' required: - hasADateDimension type: object required: - limit - exploreName - dimensions - metrics - sorts - tableCalculations type: object description: From T, pick a set of properties whose keys are in the union K Record_string.CompiledDimension_: properties: {} additionalProperties: $ref: '#/components/schemas/CompiledDimension' type: object description: Construct a type with a set of properties K of type T BigNumberConfig: properties: config: $ref: '#/components/schemas/BigNumber' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.BIG_NUMBER' description: Type of chart visualization required: - type type: object ExploreWarningReport: properties: exploresWithWarnings: items: $ref: '#/components/schemas/ExploreWarningSummary' type: array warningExploreCount: type: number format: double warningCount: type: number format: double required: - exploresWithWarnings - warningExploreCount - warningCount type: object ApiUpstreamDiffResults: properties: fields: items: $ref: '#/components/schemas/UpstreamFieldDiff' type: array upstreamProjectUuid: type: string required: - fields - upstreamProjectUuid type: object AiAgentEvaluationPrompt: allOf: - properties: createdAt: type: string format: date-time evalPromptUuid: type: string required: - createdAt - evalPromptUuid type: object - anyOf: - properties: expectedResponse: type: string nullable: true prompt: type: string type: type: string enum: - string nullable: false required: - expectedResponse - prompt - type type: object - properties: expectedResponse: type: string nullable: true threadUuid: type: string promptUuid: type: string type: type: string enum: - thread nullable: false required: - expectedResponse - threadUuid - promptUuid - type type: object Pick_CreateDucklakeCatalogPostgres.Exclude_keyofCreateDucklakeCatalogPostgres.user-or-password__: properties: type: $ref: '#/components/schemas/DucklakeCatalogType.POSTGRES' database: type: string host: type: string port: type: number format: double required: - type - database - host - port type: object description: From T, pick a set of properties whose keys are in the union K SnowflakeCredentials: $ref: '#/components/schemas/Omit_CreateSnowflakeCredentials.SensitiveCredentialsFieldNames_' ApiCalculateSubtotalsResponse: properties: results: properties: {} additionalProperties: items: properties: {} additionalProperties: type: number format: double type: object type: array type: object status: type: string enum: - ok nullable: false required: - results - status type: object DuplicateDashboardParams: properties: dashboardDesc: type: string dashboardName: type: string required: - dashboardDesc - dashboardName type: object VizIndexType: enum: - time - category type: string ApiSuccess_AiAgentEvaluationRun_: properties: results: $ref: '#/components/schemas/AiAgentEvaluationRun' status: type: string enum: - ok nullable: false required: - results - status type: object ConditionalFormattingConfigWithColorRange: properties: applyTo: $ref: '#/components/schemas/ConditionalFormattingColorApplyTo' description: Apply formatting to cell background or text rule: $ref: '#/components/schemas/ConditionalFormattingMinMax_number-or-auto_' description: Rule for color range formatting (min/max values) color: $ref: '#/components/schemas/ConditionalFormattingColorRange' description: Color range for gradient conditional formatting target: allOf: - $ref: '#/components/schemas/FieldTarget' nullable: true description: Target field for the formatting rule required: - rule - color - target type: object CompilationHistoryReport: properties: baseTableNames: items: type: string type: array exploresWithErrors: items: $ref: '#/components/schemas/ExploreError' type: array dimensionsCount: type: number format: double metricsCount: type: number format: double errorExploresCount: type: number format: double successfulExploresCount: type: number format: double totalExploresCount: type: number format: double required: - baseTableNames - exploresWithErrors - dimensionsCount - metricsCount - errorExploresCount - successfulExploresCount - totalExploresCount type: object CreateDashboardHeadingTile: allOf: - $ref: '#/components/schemas/CreateDashboardTileBase' - $ref: '#/components/schemas/DashboardHeadingTileProperties' DatabricksCredentials: $ref: '#/components/schemas/Omit_CreateDatabricksCredentials.SensitiveCredentialsFieldNames_' DashboardFilterValidationErrorType: enum: - field_does_not_exist - field_table_mismatch - table_not_used_by_any_chart - table_does_not_exist type: string FunnelChartLegendPosition: enum: - horizontal - vertical type: string VizColumnsConfig: properties: {} additionalProperties: $ref: '#/components/schemas/VizColumnConfig' type: object Pick_SavedChart.Exclude_keyofSavedChart.inheritsFromOrgOrProject-or-access__: properties: description: type: string description: Optional description of what this chart displays name: type: string description: Display name of the chart projectUuid: type: string organizationUuid: type: string uuid: type: string parameters: $ref: '#/components/schemas/ParametersValuesMap' description: Parameter values for the chart query pinnedListUuid: type: string nullable: true pinnedListOrder: type: number format: double nullable: true slug: type: string description: Unique identifier slug for this chart updatedAt: type: string format: date-time description: Timestamp when the chart was last updated chartConfig: $ref: '#/components/schemas/ChartConfig' description: Visualization configuration for the chart spaceUuid: type: string dashboardUuid: type: string nullable: true verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true updatedByUser: $ref: '#/components/schemas/UpdatedByUser' spaceName: type: string colorPaletteUuid: type: string nullable: true description: 'Chart-level palette override pointer. `null` means inherit from the containing dashboard / space / project / org. Writable via `UpdateSavedChart`.' deletedAt: type: string format: date-time deletedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object nullable: true tableName: type: string description: The explore/table name this chart queries from metricQuery: $ref: '#/components/schemas/MetricQuery' description: The query configuration defining what data to fetch pivotConfig: properties: columns: items: type: string type: array required: - columns type: object description: Pivot table configuration tableConfig: properties: columnOrder: items: type: string type: array required: - columnOrder type: object description: Table view configuration dashboardName: type: string nullable: true colorPalette: items: type: string type: array deprecated: true resolvedColorPalette: $ref: '#/components/schemas/ResolvedProjectColorPalette' description: 'Fully resolved palette for this chart, computed from the org → project → space → dashboard → chart hierarchy. Read-only — set the chart''s own palette via `colorPaletteUuid`.' required: - name - projectUuid - organizationUuid - uuid - pinnedListUuid - pinnedListOrder - slug - updatedAt - chartConfig - spaceUuid - dashboardUuid - verification - spaceName - colorPaletteUuid - tableName - metricQuery - tableConfig - dashboardName - colorPalette - resolvedColorPalette type: object description: From T, pick a set of properties whose keys are in the union K Required_CreateDashboardTileBase_: properties: uuid: type: string type: $ref: '#/components/schemas/DashboardTileTypes' x: type: number format: double y: type: number format: double h: type: number format: double w: type: number format: double tabUuid: type: string nullable: true required: - uuid - type - x - y - h - w type: object description: Make all properties in T required ApiSuccess_AiAgentMcpServerTool-Array_: properties: results: items: $ref: '#/components/schemas/AiAgentMcpServerTool' type: array status: type: string enum: - ok nullable: false required: - results - status type: object CustomDimension: anyOf: - $ref: '#/components/schemas/CustomBinDimension' - $ref: '#/components/schemas/CustomSqlDimension' DashboardParameterValue: properties: value: $ref: '#/components/schemas/ParameterValue' parameterName: type: string required: - value - parameterName type: object ApiGetProjectMemberResponse: properties: results: $ref: '#/components/schemas/ProjectMemberProfile' status: type: string enum: - ok nullable: false required: - results - status type: object ExploreType: enum: - virtual - default - pre_aggregate type: string AiAgentToolCallMcpServer: $ref: '#/components/schemas/Pick_AiMcpServer.uuid-or-name-or-iconUrl_' AiAgentEvaluationRunSummary: properties: failedAssessments: type: number format: double passedAssessments: type: number format: double createdAt: type: string format: date-time completedAt: type: string format: date-time nullable: true status: type: string enum: - pending - running - completed - failed evalUuid: type: string runUuid: type: string required: - failedAssessments - passedAssessments - createdAt - completedAt - status - evalUuid - runUuid type: object ValidationResponseBase: properties: source: $ref: '#/components/schemas/ValidationSourceType' spaceUuid: type: string projectUuid: type: string errorType: $ref: '#/components/schemas/ValidationErrorType' error: type: string name: type: string createdAt: type: string format: date-time validationId: type: number format: double nullable: true deprecated: true validationUuid: type: string required: - projectUuid - errorType - error - name - createdAt - validationId - validationUuid type: object ApiAiAgentThreadPullRequestResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentThreadPullRequest-or-null_' Pick_CreateAthenaCredentials.type_: properties: type: $ref: '#/components/schemas/WarehouseTypes.ATHENA' required: - type type: object description: From T, pick a set of properties whose keys are in the union K ApiRefreshResults: properties: jobUuid: type: string required: - jobUuid type: object ApiCreateDashboardWithChartsResponse: properties: results: $ref: '#/components/schemas/Dashboard' status: type: string enum: - ok nullable: false required: - results - status type: object ApiExecuteAsyncMetricQueryResults: allOf: - $ref: '#/components/schemas/ApiExecuteAsyncQueryResultsCommon' - properties: warnings: items: $ref: '#/components/schemas/QueryWarning' type: array fields: $ref: '#/components/schemas/ItemsMap' metricQuery: $ref: '#/components/schemas/MetricQuery' required: - warnings - fields - metricQuery type: object ApiSuccess_AiMcpServerTool-Array_: properties: results: items: $ref: '#/components/schemas/AiMcpServerTool' type: array status: type: string enum: - ok nullable: false required: - results - status type: object Pick_AiAgentEvaluation.evalUuid_: properties: evalUuid: type: string required: - evalUuid type: object description: From T, pick a set of properties whose keys are in the union K CreateDucklakeDataPath: anyOf: - $ref: '#/components/schemas/CreateDucklakeDataPathS3' - $ref: '#/components/schemas/CreateDucklakeDataPathGcs' - $ref: '#/components/schemas/CreateDucklakeDataPathAzure' - $ref: '#/components/schemas/CreateDucklakeDataPathLocal' TrinoCredentials: $ref: '#/components/schemas/Omit_CreateTrinoCredentials.SensitiveCredentialsFieldNames_' DbtNoneProjectConfig: properties: type: $ref: '#/components/schemas/DbtProjectType.NONE' target: type: string environment: items: $ref: '#/components/schemas/DbtProjectEnvironmentVariable' type: array selector: type: string hideRefreshButton: type: boolean required: - type type: object additionalProperties: true ChartType.TABLE: enum: - table type: string ApiUpdateDashboardsResponse: properties: results: items: $ref: '#/components/schemas/Dashboard' type: array status: type: string enum: - ok nullable: false required: - results - status type: object MapTileBackground: enum: - none - openstreetmap - light - dark - satellite - voyager type: string ProjectGroupAccess: properties: role: anyOf: - $ref: '#/components/schemas/ProjectMemberRole' - allOf: - type: string - properties: {} type: object groupUuid: type: string projectUuid: type: string required: - role - groupUuid - projectUuid type: object AiAgentMessageUser_AiAgentUser_: properties: context: $ref: '#/components/schemas/AiPromptContext' user: $ref: '#/components/schemas/AiAgentUser' createdAt: type: string message: type: string threadUuid: type: string uuid: type: string role: type: string enum: - user nullable: false required: - context - user - createdAt - message - threadUuid - uuid - role type: object FieldType.METRIC: enum: - metric type: string SpaceMemberRole: enum: - viewer - editor - admin type: string ApiSuccess_AiAgentThreadShare_: properties: results: $ref: '#/components/schemas/AiAgentThreadShare' status: type: string enum: - ok nullable: false required: - results - status type: object DucklakeCatalogType.POSTGRES: enum: - postgres type: string Pick_ValidationResponse.error-or-createdAt-or-validationUuid-or-validationId_: properties: createdAt: type: string format: date-time error: type: string validationUuid: type: string validationId: type: number format: double nullable: true deprecated: true required: - createdAt - error - validationUuid - validationId type: object description: From T, pick a set of properties whose keys are in the union K DashboardSqlChartTileAsCode: allOf: - $ref: '#/components/schemas/DashboardTileAsCodeBase' - properties: properties: allOf: - $ref: '#/components/schemas/Pick_DashboardSqlChartTileProperties-at-properties.title-or-hideTitle-or-chartName_' - properties: chartSlug: type: string nullable: true required: - chartSlug type: object type: $ref: '#/components/schemas/DashboardTileTypes.SQL_CHART' required: - properties - type type: object ? Pick_CreateRedshiftCredentials-or-CreatePostgresCredentials-or-CreateSnowflakeCredentials-or-CreateTrinoCredentials-or-CreateClickhouseCredentials.type-or-user_ : properties: user: type: string type: anyOf: - $ref: '#/components/schemas/WarehouseTypes.POSTGRES' - $ref: '#/components/schemas/WarehouseTypes.REDSHIFT' - $ref: '#/components/schemas/WarehouseTypes.SNOWFLAKE' - $ref: '#/components/schemas/WarehouseTypes.TRINO' - $ref: '#/components/schemas/WarehouseTypes.CLICKHOUSE' required: - user - type type: object description: From T, pick a set of properties whose keys are in the union K Pick_Tag.name-or-color_: properties: name: type: string color: type: string required: - name - color type: object description: From T, pick a set of properties whose keys are in the union K CartesianSeriesType.BAR: enum: - bar type: string WarehouseTypes.REDSHIFT: enum: - redshift type: string ChartType.PIE: enum: - pie type: string SnowflakeAuthenticationType: enum: - password - private_key - sso - external_browser - none type: string ApiGetTagsResponse: properties: results: items: $ref: '#/components/schemas/Tag' type: array status: type: string enum: - ok nullable: false required: - results - status type: object Pick_AiArtifact.Exclude_keyofAiArtifact.chartConfig-or-dashboardConfig__: properties: description: type: string nullable: true createdAt: type: string format: date-time artifactUuid: type: string versionNumber: type: number format: double versionUuid: type: string title: type: string nullable: true artifactType: type: string enum: - dashboard - chart threadUuid: type: string promptUuid: type: string nullable: true savedQueryUuid: type: string nullable: true savedDashboardUuid: type: string nullable: true versionCreatedAt: type: string format: date-time verifiedByUserUuid: type: string nullable: true verifiedAt: type: string format: date-time nullable: true required: - description - createdAt - artifactUuid - versionNumber - versionUuid - title - artifactType - threadUuid - promptUuid - savedQueryUuid - savedDashboardUuid - versionCreatedAt - verifiedByUserUuid - verifiedAt type: object description: From T, pick a set of properties whose keys are in the union K ApiUpdateAiAgentMcpServerToolsRequest: properties: toolSettings: items: $ref: '#/components/schemas/AiAgentMcpServerToolUpdate' type: array required: - toolSettings type: object ApiRenameChartBody: properties: fixAll: type: boolean type: $ref: '#/components/schemas/RenameType' to: type: string from: type: string required: - type - to - from type: object KnexPaginatedData__runs-AiAgentEvaluationRunSummary-Array__: properties: pagination: allOf: - $ref: '#/components/schemas/KnexPaginateArgs' - properties: totalResults: type: number format: double totalPageCount: type: number format: double required: - totalResults - totalPageCount type: object data: properties: runs: items: $ref: '#/components/schemas/AiAgentEvaluationRunSummary' type: array required: - runs type: object required: - data type: object ApiStartAiMcpOAuthResponse: $ref: '#/components/schemas/ApiSuccess__authorizationUrl-string__' ApiSuccess_ApiRefreshResults_: properties: results: $ref: '#/components/schemas/ApiRefreshResults' status: type: string enum: - ok nullable: false required: - results - status type: object CreateDuckdbCredentials: anyOf: - $ref: '#/components/schemas/CreateDuckdbMotherduckCredentials' - $ref: '#/components/schemas/CreateDuckdbDucklakeCredentials' ValidationErrorDashboardResponse: allOf: - $ref: '#/components/schemas/ValidationResponseBase' - properties: dashboardViews: type: number format: double lastUpdatedAt: type: string format: date-time lastUpdatedBy: type: string dashboardFilterErrorType: $ref: '#/components/schemas/DashboardFilterValidationErrorType' tableName: type: string fieldName: type: string chartName: type: string dashboardUuid: type: string required: - dashboardViews type: object Pick_CreateClickhouseCredentials.Exclude_keyofCreateClickhouseCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.CLICKHOUSE' requireUserCredentials: type: boolean schema: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string timeoutSeconds: type: number format: double host: type: string port: type: number format: double secure: type: boolean required: - type - schema - host - port type: object description: From T, pick a set of properties whose keys are in the union K Record_string.DashboardTileTarget_: properties: {} additionalProperties: $ref: '#/components/schemas/DashboardTileTarget' type: object description: Construct a type with a set of properties K of type T UserWarehouseCredentialsProject: properties: type: $ref: '#/components/schemas/ProjectType' name: type: string projectUuid: type: string required: - type - name - projectUuid type: object ApiProjectColorPaletteResponse: properties: results: $ref: '#/components/schemas/ResolvedProjectColorPalette' status: type: string enum: - ok nullable: false required: - results - status type: object Record_string.unknown_: properties: {} additionalProperties: {} type: object description: Construct a type with a set of properties K of type T CustomGroupBinDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.BIN' description: Type of custom dimension (bin or sql) dimensionId: $ref: '#/components/schemas/FieldId' description: Field ID of the parent dimension to bin binType: $ref: '#/components/schemas/BinType.CUSTOM_GROUP' customGroups: items: $ref: '#/components/schemas/BinGroup' type: array required: - id - name - table - type - dimensionId - binType - customGroups type: object additionalProperties: true LineageGraph: $ref: '#/components/schemas/Record_string.LineageNodeDependency-Array_' DucklakeCatalogType.SQLITE: enum: - sqlite type: string Omit_CreateDuckdbMotherduckCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreateDuckdbMotherduckCredentials.Exclude_keyofCreateDuckdbMotherduckCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. SankeyNodeLayout: type: string enum: - multi-step - merged - direct description: 'How nodes are laid out: - `multi-step`: depth-unrolled journeys (default) - `merged`: one node per label, journeys preserved (acyclic flows only) - `direct`: two-column source→target pairs, no chaining' Pick_AiArtifact.artifactUuid-or-versionNumber-or-versionUuid-or-title-or-description-or-artifactType_: properties: description: type: string nullable: true artifactUuid: type: string versionNumber: type: number format: double versionUuid: type: string title: type: string nullable: true artifactType: type: string enum: - dashboard - chart required: - description - artifactUuid - versionNumber - versionUuid - title - artifactType type: object description: From T, pick a set of properties whose keys are in the union K ApiProjectResponse: properties: results: $ref: '#/components/schemas/Project' status: type: string enum: - ok nullable: false required: - results - status type: object DashboardLoomTileProperties: properties: properties: properties: url: type: string hideTitle: type: boolean title: type: string required: - url - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.LOOM' required: - properties - type type: object ApiSuccess_AiMcpGithubAvailability_: properties: results: $ref: '#/components/schemas/AiMcpGithubAvailability' status: type: string enum: - ok nullable: false required: - results - status type: object Pick_DashboardChartTileProperties-at-properties.title-or-hideTitle-or-chartName_: properties: title: type: string chartName: type: string nullable: true hideTitle: type: boolean type: object description: From T, pick a set of properties whose keys are in the union K AiAgentEvaluation: properties: prompts: items: $ref: '#/components/schemas/AiAgentEvaluationPrompt' type: array updatedAt: type: string format: date-time createdAt: type: string format: date-time description: type: string nullable: true title: type: string agentUuid: type: string evalUuid: type: string required: - prompts - updatedAt - createdAt - description - title - agentUuid - evalUuid type: object UpstreamFieldChangeKind: type: string enum: - added - removed - label_changed description: 'Field-level diff between a preview project and the project it was copied from (`upstreamProjectUuid`), computed in SQL over the `catalog_search` index. Detects added/removed fields and label changes. It does not detect SQL-only changes (same name/label, different SQL) — that would require walking the cached explore definitions, which is too expensive to do per request.' ApiRenameDashboardResponse: properties: results: properties: jobId: type: string type: object status: type: string enum: - ok nullable: false required: - results - status type: object DbtAzureDevOpsProjectConfig: properties: type: $ref: '#/components/schemas/DbtProjectType.AZURE_DEVOPS' target: type: string environment: items: $ref: '#/components/schemas/DbtProjectEnvironmentVariable' type: array selector: type: string personal_access_token: type: string organization: type: string project: type: string repository: type: string branch: type: string project_sub_path: type: string required: - type - personal_access_token - organization - project - repository - branch - project_sub_path type: object additionalProperties: true XAxis: allOf: - $ref: '#/components/schemas/Axis' - properties: dataZoomItemCount: type: number format: double description: Number of items visible at once in the data-zoom window dataZoomAnchor: type: string enum: - start - end description: Where the initial data-zoom window anchors when data zoom is enabled enableDataZoom: type: boolean description: Enable data zoom slider for this axis sortType: $ref: '#/components/schemas/XAxisSortType' description: How to sort the X axis type: object ChartType.CUSTOM: enum: - custom type: string ApiDeployExploresResults: properties: warnings: $ref: '#/components/schemas/ExploreWarningReport' exploreCount: type: number format: double required: - warnings - exploreCount type: object ChartType.MAP: enum: - map type: string ModelRequiredFilterRule: anyOf: - $ref: '#/components/schemas/MetricFilterRule' - $ref: '#/components/schemas/JoinModelRequiredFilterRule' Omit_CreateRedshiftCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreateRedshiftCredentials.Exclude_keyofCreateRedshiftCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. ApiVerifiedContentListResponse: properties: results: items: $ref: '#/components/schemas/VerifiedContentListItem' type: array status: type: string enum: - ok nullable: false required: - results - status type: object ApiSuccess_Pick_AiAgentEvaluation.evalUuid__: properties: results: $ref: '#/components/schemas/Pick_AiAgentEvaluation.evalUuid_' status: type: string enum: - ok nullable: false required: - results - status type: object ColorPaletteSource: anyOf: - properties: type: type: string enum: - config nullable: false required: - type type: object - properties: type: type: string enum: - default nullable: false required: - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - organization nullable: false required: - name - uuid - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - project nullable: false required: - name - uuid - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - space nullable: false required: - name - uuid - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - dashboard nullable: false required: - name - uuid - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - chart nullable: false required: - name - uuid - type type: object description: 'Where a resolved colour palette came from. The `config` and `default` cases carry no entity reference; the rest expose the UUID and human-readable name of the entity (organization, project, space, dashboard or chart) that owns the winning palette in the resolution chain.' PreAggregateMissReason.GRANULARITY_TOO_FINE: enum: - granularity_too_fine type: string AiPromptTokenUsage: properties: totalTokens: type: number format: double required: - totalTokens type: object ApiDownloadActivity: properties: results: $ref: '#/components/schemas/DownloadActivityResults' status: type: string enum: - ok nullable: false required: - results - status type: object CartesianChartConfig: properties: config: $ref: '#/components/schemas/CartesianChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.CARTESIAN' description: Type of chart visualization required: - type type: object CompiledExploreJoin: allOf: - $ref: '#/components/schemas/Pick_ExploreJoin.table-or-sqlOn-or-type-or-hidden-or-always-or-relationship_' - properties: parameterReferences: items: type: string type: array tablesReferences: items: type: string type: array compiledSqlOn: type: string required: - compiledSqlOn type: object DbTagUpdate: $ref: '#/components/schemas/Partial_Pick_DbTag.name-or-color__' GaugeChart: properties: customPercentageLabel: type: string description: Custom label for the percentage display showPercentage: type: boolean description: Show value as percentage customLabel: type: string description: Custom label for the gauge value sections: items: $ref: '#/components/schemas/GaugeSection' type: array description: Color sections/ranges for the gauge showAxisLabels: type: boolean description: Show min/max labels on the gauge maxFieldId: type: string description: Field ID to use as the max value max: type: number format: double description: Maximum value for the gauge min: type: number format: double description: Minimum value for the gauge selectedField: type: string description: Field ID for the gauge value type: object DashboardTabAsCode: properties: hidden: type: boolean order: type: number format: double minimum: 0 name: type: string minLength: 1 uuid: type: string required: - order - name - uuid type: object ConditionalFormattingMinMax_number-or-auto_: properties: max: anyOf: - type: number format: double - type: string enum: - auto description: Maximum value (number or 'auto') min: anyOf: - type: number format: double - type: string enum: - auto description: Minimum value (number or 'auto') required: - max - min type: object GaugeChartConfig: properties: config: $ref: '#/components/schemas/GaugeChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.GAUGE' description: Type of chart visualization required: - type type: object ColumnProperties: properties: width: type: number format: double color: type: string description: Color for bar display style (hex code) displayStyle: type: string enum: - text - bar description: How to display the cell value frozen: type: boolean description: Freeze the column (stick to left side) name: type: string description: Custom display name for the column visible: type: boolean description: Whether the column is visible type: object MapChartLocation: enum: - USA - world - europe - custom type: string CalculateSubtotalsFromQuery: allOf: - $ref: '#/components/schemas/CalculateTotalFromQuery' - properties: dateZoom: $ref: '#/components/schemas/DateZoom' parameters: $ref: '#/components/schemas/ParametersValuesMap' pivotDimensions: items: type: string type: array columnOrder: items: type: string type: array required: - columnOrder type: object Pick_CreateDuckdbMotherduckCredentials.Exclude_keyofCreateDuckdbMotherduckCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.DUCKDB' requireUserCredentials: type: boolean database: type: string schema: type: string threads: type: number format: double startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string connectionType: $ref: '#/components/schemas/DuckdbConnectionType.MOTHERDUCK' required: - type - database - schema - connectionType type: object description: From T, pick a set of properties whose keys are in the union K Partial_SummaryExtraFields_: properties: description: type: string schemaName: type: string databaseName: type: string type: object description: Make all properties in T optional TableChart: properties: rowLimit: $ref: '#/components/schemas/RowLimit' description: Limit displayed rows to first/last N metricsAsRows: type: boolean description: Display metrics as rows instead of columns conditionalFormattings: items: $ref: '#/components/schemas/ConditionalFormattingConfig' type: array description: Conditional formatting rules columns: $ref: '#/components/schemas/Record_string.ColumnProperties_' description: Column-specific configuration showRowGrouping: type: boolean description: 'Visually deduplicate repeated row-index dimension values across consecutive rows without showing aggregate subtotal rows. When `showSubtotals` is true, grouping is implicitly active and this flag is ignored. Defaults to false.' showSubtotalsExpanded: type: boolean description: Default subtotal rows to expanded (vs. collapsed). Only meaningful when showSubtotals is true. showSubtotals: type: boolean description: Show subtotal rows showResultsTotal: type: boolean description: Show total results count hideRowNumbers: type: boolean description: Hide row number column showTableNames: type: boolean description: Show table names in column headers showRowCalculation: type: boolean description: Show row totals/calculations showColumnCalculation: type: boolean description: Show column totals/calculations type: object AiMcpGithubAvailability: properties: alreadyConnected: type: boolean available: type: boolean required: - alreadyConnected - available type: object Omit_CreateBigqueryCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreateBigqueryCredentials.Exclude_keyofCreateBigqueryCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. ContentAsCodeType.DASHBOARD: enum: - dashboard type: string StackType: enum: - none - stack - stack100 type: string Omit_CreateDuckdbDucklakeCredentials.catalog-or-dataPath_: $ref: '#/components/schemas/Pick_CreateDuckdbDucklakeCredentials.Exclude_keyofCreateDuckdbDucklakeCredentials.catalog-or-dataPath__' description: Construct a type with the properties of T except for those in type K. Partial_CompleteEChartsConfig_: properties: legend: $ref: '#/components/schemas/EchartsLegend' description: Legend configuration grid: $ref: '#/components/schemas/EchartsGrid' description: Grid (chart area) configuration series: items: $ref: '#/components/schemas/Series' type: array description: Chart series configuration xAxis: items: $ref: '#/components/schemas/XAxis' type: array description: X axis configuration yAxis: items: $ref: '#/components/schemas/Axis' type: array description: Y axis configuration tooltip: type: string description: Tooltip formatter template tooltipSort: $ref: '#/components/schemas/TooltipSortBy' description: How to sort tooltip items showAxisTicks: type: boolean description: Show tick marks on axes axisLabelFontSize: type: number format: double description: Font size for axis labels axisTitleFontSize: type: number format: double description: Font size for axis titles type: object description: Make all properties in T optional ApiAiAgentResponse: properties: results: $ref: '#/components/schemas/AiAgent' status: type: string enum: - ok nullable: false required: - results - status type: object CartesianChartDisplay: properties: stack: anyOf: - type: boolean - $ref: '#/components/schemas/StackType' legend: properties: align: type: string enum: - start - center - end position: type: string enum: - top - bottom - left - right required: - align - position type: object series: properties: {} additionalProperties: properties: whichYAxis: $ref: '#/components/schemas/AxisSide' valueLabelPosition: $ref: '#/components/schemas/ValueLabelPositionOptions' type: anyOf: - $ref: '#/components/schemas/CartesianSeriesType.LINE' - $ref: '#/components/schemas/CartesianSeriesType.BAR' color: type: string yAxisIndex: type: number format: double format: $ref: '#/components/schemas/Format' label: type: string type: object type: object yAxis: items: properties: format: $ref: '#/components/schemas/Format' position: type: string label: type: string type: object type: array xAxis: properties: dateFormat: type: string type: $ref: '#/components/schemas/VizIndexType' label: type: string type: object type: object ApiSuccess_AiAgentThreadPullRequest-or-null_: properties: results: allOf: - $ref: '#/components/schemas/AiAgentThreadPullRequest' nullable: true status: type: string enum: - ok nullable: false required: - results - status type: object AiMcpServer: properties: updatedAt: type: string format: date-time createdAt: type: string format: date-time connectedByUserUuid: type: string nullable: true error: type: string nullable: true connectionStatus: allOf: - $ref: '#/components/schemas/AiMcpServerConnectionStatus' nullable: true credentialScope: allOf: - $ref: '#/components/schemas/AiMcpCredentialScope' nullable: true hasCredentials: type: boolean allowOAuthCredentialSharing: type: boolean authType: $ref: '#/components/schemas/AiMcpServerAuthType' iconUrl: type: string nullable: true url: type: string name: type: string projectUuid: type: string uuid: type: string required: - updatedAt - createdAt - connectedByUserUuid - error - connectionStatus - credentialScope - hasCredentials - allowOAuthCredentialSharing - authType - iconUrl - url - name - projectUuid - uuid type: object UpstreamFieldDiff: properties: previewLabel: type: string nullable: true upstreamLabel: type: string nullable: true fieldType: type: string nullable: true fieldName: type: string tableName: type: string exploreName: type: string change: $ref: '#/components/schemas/UpstreamFieldChangeKind' required: - previewLabel - upstreamLabel - fieldType - fieldName - tableName - exploreName - change type: object PieChartLegendPosition: type: string enum: - horizontal - vertical nullable: false ApiValidationDismissResponse: properties: status: type: string enum: - ok nullable: false required: - status type: object DimensionType: enum: - string - number - timestamp - date - boolean type: string CreateDashboardSqlChartTile: allOf: - $ref: '#/components/schemas/CreateDashboardTileBase' - $ref: '#/components/schemas/DashboardSqlChartTileProperties' CreateDucklakeCatalogPostgres: properties: password: type: string user: type: string database: type: string port: type: number format: double host: type: string type: $ref: '#/components/schemas/DucklakeCatalogType.POSTGRES' required: - password - user - database - port - host - type type: object UpdatedByUser: properties: userUuid: type: string firstName: type: string lastName: type: string required: - userUuid - firstName - lastName type: object additionalProperties: true AndFilterGroupInput: properties: and: items: $ref: '#/components/schemas/FilterGroupItemInput' type: array id: type: string required: - and type: object ApiChartAsCodeListResponse: properties: results: properties: offset: type: number format: double total: type: number format: double spaces: items: $ref: '#/components/schemas/SpaceAsCode' type: array missingIds: items: type: string type: array languageMap: items: $ref: '#/components/schemas/PartialDeep_ChartAsCodeLanguageMap._recurseIntoArrays-true__' type: array charts: items: $ref: '#/components/schemas/ChartAsCode' type: array required: - offset - total - spaces - missingIds - charts type: object status: type: string enum: - ok nullable: false required: - results - status type: object ApiGetUserAgentPreferencesResponse: anyOf: - $ref: '#/components/schemas/ApiSuccess_AiAgentUserPreferences_' - $ref: '#/components/schemas/ApiSuccessEmpty' DucklakeDataPathLocal: $ref: '#/components/schemas/CreateDucklakeDataPathLocal' Record_string.CompiledMetric_: properties: {} additionalProperties: $ref: '#/components/schemas/CompiledMetric' type: object description: Construct a type with a set of properties K of type T AiThreadCompaction: properties: createdAt: type: string triggeringPromptUuid: type: string compactedThroughPromptUuid: type: string threadUuid: type: string uuid: type: string required: - createdAt - triggeringPromptUuid - compactedThroughPromptUuid - threadUuid - uuid type: object VizAggregationOptions: enum: - sum - count - avg - min - max - any type: string ApiAiAgentThreadResponse: properties: results: $ref: '#/components/schemas/AiAgentThread' status: type: string enum: - ok nullable: false required: - results - status type: object FrameClause: properties: end: $ref: '#/components/schemas/FrameBoundary' description: End boundary of the frame start: $ref: '#/components/schemas/FrameBoundary' description: Start boundary of the frame frameType: $ref: '#/components/schemas/FrameType' description: Type of frame (ROWS or RANGE) required: - end - frameType type: object ValidationResponse: anyOf: - $ref: '#/components/schemas/ValidationErrorChartResponse' - $ref: '#/components/schemas/ValidationErrorDashboardResponse' - $ref: '#/components/schemas/ValidationErrorTableResponse' EchartsLegend: properties: placement: $ref: '#/components/schemas/LegendPlacement' description: 'High-level placement preset. Overrides orient/top/right/bottom/left when set to an outside value.' icon: type: string enum: - circle - rect - roundRect - triangle - diamond - pin - arrow - none description: Legend icon shape align: type: string enum: - auto - left - right description: Legend alignment height: type: string description: Legend height width: type: string description: Legend width left: type: string description: Left position bottom: type: string description: Bottom position right: type: string description: Right position top: type: string description: Top position orient: type: string enum: - horizontal - vertical description: Legend orientation type: type: string enum: - plain - scroll description: Legend type (plain or scrollable) show: type: boolean description: Show the legend type: object ProjectMemberProfile: properties: lastName: type: string firstName: type: string email: type: string roleUuid: type: string role: $ref: '#/components/schemas/ProjectMemberRole' projectUuid: type: string userUuid: type: string required: - lastName - firstName - email - role - projectUuid - userUuid type: object ApiAppendInstructionResponse: $ref: '#/components/schemas/ApiSuccess__updatedInstruction-string__' VizBaseConfig: properties: type: $ref: '#/components/schemas/ChartKind' metadata: properties: version: type: number format: double required: - version type: object required: - type - metadata type: object ContentType: enum: - chart - dashboard - space - data_app type: string ProjectCompileLog: properties: report: $ref: '#/components/schemas/CompilationHistoryReport' warehouseType: type: string nullable: true requestMethod: type: string nullable: true dbtConnectionType: type: string nullable: true compilationSource: $ref: '#/components/schemas/CompilationSource' createdAt: type: string format: date-time organizationUuid: type: string userName: type: string nullable: true userUuid: type: string nullable: true jobUuid: type: string nullable: true projectUuid: type: string projectCompileLogId: type: string required: - report - warehouseType - requestMethod - dbtConnectionType - compilationSource - createdAt - organizationUuid - userName - userUuid - jobUuid - projectUuid - projectCompileLogId type: object AiMcpServerConnectionStatus: type: string enum: - not_connected - connecting - connected - error DataTimezonePreviewRequest: anyOf: - properties: credentials: $ref: '#/components/schemas/CreateWarehouseCredentials' mode: type: string enum: - create nullable: false required: - credentials - mode type: object - properties: dataTimezone: type: string nullable: true warehouseType: $ref: '#/components/schemas/WarehouseTypes' projectUuid: type: string mode: type: string enum: - edit nullable: false required: - dataTimezone - warehouseType - projectUuid - mode type: object CreateDucklakeDataPathS3: properties: useSsl: type: boolean forcePathStyle: type: boolean secretAccessKey: type: string accessKeyId: type: string region: type: string endpoint: type: string url: type: string type: $ref: '#/components/schemas/DucklakeDataPathType.S3' required: - url - type type: object FieldType: enum: - metric - dimension type: string ValidationErrorChartResponse: allOf: - $ref: '#/components/schemas/ValidationResponseBase' - properties: chartName: type: string chartViews: type: number format: double lastUpdatedAt: type: string format: date-time lastUpdatedBy: type: string fieldName: type: string chartKind: $ref: '#/components/schemas/ChartKind' chartUuid: type: string required: - chartViews type: object FilterRule_FilterOperator.DashboardFieldTarget.AnyType.AnyType_: properties: values: items: $ref: '#/components/schemas/AnyType' type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter target: $ref: '#/components/schemas/DashboardFieldTarget' description: Target field for the filter settings: $ref: '#/components/schemas/AnyType' description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' required: - operator - id - target type: object additionalProperties: true Omit_DashboardAsCode.tiles-or-description_: $ref: '#/components/schemas/Pick_DashboardAsCode.Exclude_keyofDashboardAsCode.tiles-or-description__' description: Construct a type with the properties of T except for those in type K. CreateDashboardWithCharts: properties: charts: items: $ref: '#/components/schemas/CreateSavedChart' type: array spaceUuid: type: string description: type: string name: type: string required: - charts - spaceUuid - name type: object PreAggregateMissReason.DIMENSION_NOT_IN_PRE_AGGREGATE: enum: - dimension_not_in_pre_aggregate type: string ApiDashboardValidationResponse: $ref: '#/components/schemas/ApiSuccess__errors-CreateDashboardValidation-Array__' ApiAppendInstructionRequest: properties: instruction: type: string required: - instruction type: object CreateDucklakeCatalog: anyOf: - $ref: '#/components/schemas/CreateDucklakeCatalogPostgres' - $ref: '#/components/schemas/CreateDucklakeCatalogSqlite' - $ref: '#/components/schemas/CreateDucklakeCatalogDuckdb' DbtProjectType.AZURE_DEVOPS: enum: - azure_devops type: string Pick_CreateDucklakeDataPathGcs.Exclude_keyofCreateDucklakeDataPathGcs.hmacKeyId-or-hmacSecret__: properties: type: $ref: '#/components/schemas/DucklakeDataPathType.GCS' url: type: string required: - type - url type: object description: From T, pick a set of properties whose keys are in the union K MapChartType: enum: - scatter - area - heatmap - hexbin type: string Pick_Dashboard.uuid-or-name-or-description-or-spaceUuid_: properties: description: type: string name: type: string uuid: type: string spaceUuid: type: string required: - name - uuid - spaceUuid type: object description: From T, pick a set of properties whose keys are in the union K BaseFilterRule_FilterOperator.number-or-string_: properties: values: items: anyOf: - type: number format: double - type: string type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter rule required: - operator - id type: object MarkLineData: properties: dynamicValue: type: string enum: - average nullable: false description: Dynamic value type label: properties: position: type: string enum: - start - middle - end description: Label position formatter: type: string description: Label formatter type: object description: Label configuration for this data point lineStyle: properties: color: type: string description: Line color required: - color type: object description: Line style for this data point uuid: type: string description: Unique identifier for this mark line type: type: string description: Point type (e.g., 'average') value: type: string description: Value to display name: type: string description: Name of the reference line xAxis: type: string description: X axis value for vertical line yAxis: type: string description: Y axis value for horizontal line required: - uuid type: object AiVizMetadata: properties: description: type: string nullable: true title: type: string nullable: true required: - description - title type: object ApiAiAgentThreadGenerateResponse: properties: results: properties: response: type: string required: - response type: object status: type: string enum: - ok nullable: false required: - results - status type: object VizPieChartConfig: allOf: - $ref: '#/components/schemas/VizBaseConfig' - properties: display: $ref: '#/components/schemas/VizPieChartDisplay' fieldConfig: $ref: '#/components/schemas/PivotChartLayout' type: $ref: '#/components/schemas/ChartKind.PIE' required: - type type: object Compact: enum: - thousands - millions - billions - trillions - kilobytes - megabytes - gigabytes - terabytes - petabytes - kibibytes - mebibytes - gibibytes - tebibytes - pebibytes type: string AiAgentUserPreferences: properties: defaultAgentUuid: type: string required: - defaultAgentUuid type: object DbtProjectType.NONE: enum: - none type: string Pick_ExploreJoin.table-or-sqlOn-or-type-or-hidden-or-always-or-relationship_: properties: type: $ref: '#/components/schemas/DbtModelJoinType' table: type: string hidden: type: boolean sqlOn: type: string always: type: boolean relationship: $ref: '#/components/schemas/JoinRelationship' required: - table - sqlOn type: object description: From T, pick a set of properties whose keys are in the union K Omit_CreateDucklakeDataPathS3.accessKeyId-or-secretAccessKey_: $ref: '#/components/schemas/Pick_CreateDucklakeDataPathS3.Exclude_keyofCreateDucklakeDataPathS3.accessKeyId-or-secretAccessKey__' description: Construct a type with the properties of T except for those in type K. TableCalculationTemplateType.RUNNING_TOTAL: enum: - running_total type: string Omit_FilterRule.id_: $ref: '#/components/schemas/Pick_FilterRule.Exclude_keyofFilterRule.id__' description: Construct a type with the properties of T except for those in type K. SpaceAsCode: properties: slug: type: string description: The space slug used for file naming and cross-referencing spaceName: type: string description: The original human-readable space name (preserves emoji, casing, etc.) contentType: $ref: '#/components/schemas/ContentAsCodeType.SPACE' required: - slug - spaceName - contentType type: object WarehouseTypes.SNOWFLAKE: enum: - snowflake type: string Pick_Dashboard.Exclude_keyofDashboard.inheritsFromOrgOrProject-or-access__: properties: description: type: string name: type: string projectUuid: type: string organizationUuid: type: string uuid: type: string parameters: $ref: '#/components/schemas/DashboardParameters' pinnedListUuid: type: string nullable: true pinnedListOrder: type: number format: double nullable: true slug: type: string updatedAt: type: string format: date-time versionUuid: type: string spaceUuid: type: string dashboardVersionId: type: number format: double verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true tiles: items: $ref: '#/components/schemas/DashboardTile' type: array filters: $ref: '#/components/schemas/DashboardFilters' updatedByUser: $ref: '#/components/schemas/UpdatedByUser' spaceName: type: string views: type: number format: double firstViewedAt: anyOf: - type: string - type: string format: date-time nullable: true tabs: items: $ref: '#/components/schemas/DashboardTab' type: array config: $ref: '#/components/schemas/DashboardConfig' colorPaletteUuid: type: string nullable: true deletedAt: type: string format: date-time deletedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object nullable: true required: - name - projectUuid - organizationUuid - uuid - pinnedListUuid - pinnedListOrder - slug - updatedAt - versionUuid - spaceUuid - dashboardVersionId - verification - tiles - filters - spaceName - views - firstViewedAt - tabs - colorPaletteUuid type: object description: From T, pick a set of properties whose keys are in the union K BinType.CUSTOM_GROUP: enum: - custom_group type: string FieldCompilationError: properties: message: type: string required: - message type: object description: 'Error information stored on a field when compilation fails but partial compilation mode is enabled.' AssessmentType: type: string enum: - human - llm TableCalculationBase: properties: type: $ref: '#/components/schemas/TableCalculationType' description: Data type of the calculation result format: $ref: '#/components/schemas/CustomFormat' description: Formatting options for the calculation displayName: type: string description: Display name shown in the UI name: type: string description: Internal name of the table calculation index: type: number format: double description: Display order index required: - displayName - name type: object TableChartConfig: properties: config: $ref: '#/components/schemas/TableChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.TABLE' description: Type of chart visualization required: - type type: object DashboardTileTypes.DATA_APP: enum: - data_app type: string DashboardMarkdownTileAsCode: allOf: - $ref: '#/components/schemas/DashboardTileAsCodeBase' - properties: properties: properties: hideFrame: type: boolean content: type: string title: type: string required: - content - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.MARKDOWN' required: - properties - type type: object DbtManifestProjectConfig: properties: type: $ref: '#/components/schemas/DbtProjectType.MANIFEST' manifest: type: string hideRefreshButton: type: boolean required: - type - manifest - hideRefreshButton type: object additionalProperties: true TableCalculationTemplateType.PERCENT_OF_COLUMN_TOTAL: enum: - percent_of_column_total type: string ComparisonFormatTypes: enum: - raw - percentage type: string CreateClickhouseCredentials: properties: timeoutSeconds: type: number format: double dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true secure: type: boolean schema: type: string port: type: number format: double requireUserCredentials: type: boolean password: type: string user: type: string host: type: string type: $ref: '#/components/schemas/WarehouseTypes.CLICKHOUSE' required: - schema - port - password - user - host - type type: object UpdateQueryTimezoneSettings: properties: useProjectTimezoneInFilters: type: boolean queryTimezone: type: string nullable: true type: object Omit_AiArtifact.chartConfig-or-dashboardConfig_: $ref: '#/components/schemas/Pick_AiArtifact.Exclude_keyofAiArtifact.chartConfig-or-dashboardConfig__' description: Construct a type with the properties of T except for those in type K. ApiAiAgentSummaryResponse: properties: results: items: $ref: '#/components/schemas/AiAgentSummary' type: array status: type: string enum: - ok nullable: false required: - results - status type: object DashboardAsCode: allOf: - $ref: '#/components/schemas/Omit_Pick_Dashboard.name-or-description-or-tabs-or-slug-or-config-or-parameters_.name-or-slug-or-tabs_' - properties: verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true description: Detailed verification info (who/when). Read-only; ignored on upload. verified: type: boolean description: 'Declarative verification state. `true` verifies the dashboard on upload, `false` unverifies it, `undefined` leaves the current state untouched. Download sets this to `true` when the dashboard is verified.' filters: properties: tableCalculations: items: $ref: '#/components/schemas/DashboardFilterRule' type: array metrics: items: $ref: '#/components/schemas/DashboardFilterRule' type: array dimensions: items: $ref: '#/components/schemas/Omit_DashboardFilterRule.id_' type: array type: object downloadedAt: type: string format: date-time spaceSlug: type: string contentType: $ref: '#/components/schemas/ContentAsCodeType.DASHBOARD' version: type: number format: double tiles: items: $ref: '#/components/schemas/DashboardTileAsCode' type: array updatedAt: type: string format: date-time description: Not modifiable by user, but useful to know if it has been updated. Defaults to now if omitted. tabs: items: $ref: '#/components/schemas/DashboardTabAsCode' type: array slug: type: string pattern: ^[a-z0-9-]+$ name: type: string minLength: 1 required: - spaceSlug - version - tiles - tabs - slug - name type: object PreAggregateMissReason.CUSTOM_METRIC_PRESENT: enum: - custom_metric_present type: string AiAgentMcpServerTool: allOf: - $ref: '#/components/schemas/AiMcpServerTool' - properties: enabled: type: boolean agentUuid: type: string required: - enabled - agentUuid type: object CartesianSeriesType.LINE: enum: - line type: string DashboardHeadingTileProperties: properties: properties: properties: showDivider: type: boolean text: type: string title: {} required: - text type: object type: $ref: '#/components/schemas/DashboardTileTypes.HEADING' required: - properties - type type: object DownloadAuditEntry: properties: originalQueryContext: type: string nullable: true downloadedAt: type: string format: date-time fileType: type: string userLastName: type: string nullable: true userFirstName: type: string nullable: true userUuid: type: string nullable: true queryUuid: type: string downloadUuid: type: string required: - originalQueryContext - downloadedAt - fileType - userLastName - userFirstName - userUuid - queryUuid - downloadUuid type: object Pick_CreatePostgresCredentials.Exclude_keyofCreatePostgresCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.POSTGRES' requireUserCredentials: type: boolean role: type: string schema: type: string threads: type: number format: double startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string timeoutSeconds: type: number format: double useSshTunnel: type: boolean sshTunnelHost: type: string sshTunnelPort: type: number format: double sshTunnelUser: type: string sshTunnelPublicKey: type: string host: type: string port: type: number format: double dbname: type: string keepalivesIdle: type: number format: double sslmode: type: string sslcertFileName: type: string sslkeyFileName: type: string sslrootcertFileName: type: string searchPath: type: string required: - type - schema - host - port - dbname type: object description: From T, pick a set of properties whose keys are in the union K KnexPaginateArgs: properties: page: type: number format: double pageSize: type: number format: double required: - page - pageSize type: object CreateDuckdbMotherduckCredentials: properties: dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true requireUserCredentials: type: boolean threads: type: number format: double token: type: string schema: type: string database: type: string connectionType: $ref: '#/components/schemas/DuckdbConnectionType.MOTHERDUCK' type: $ref: '#/components/schemas/WarehouseTypes.DUCKDB' required: - token - schema - database - connectionType - type type: object PreAggregateMissReason.FILTER_DIMENSION_NOT_IN_PRE_AGGREGATE: enum: - filter_dimension_not_in_pre_aggregate type: string JoinModelRequiredFilterRule: properties: values: items: $ref: '#/components/schemas/AnyType' type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter target: $ref: '#/components/schemas/JoinModelRequiredFilterTarget' description: Target field for the filter settings: $ref: '#/components/schemas/AnyType' description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' required: - operator - id - target type: object additionalProperties: true DashboardBasicDetails: allOf: - $ref: '#/components/schemas/Pick_Dashboard.uuid-or-name-or-description-or-updatedAt-or-projectUuid-or-updatedByUser-or-organizationUuid-or-spaceUuid-or-views-or-firstViewedAt-or-pinnedListUuid-or-pinnedListOrder_' - properties: verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true validationErrors: items: $ref: '#/components/schemas/ValidationSummary' type: array required: - verification type: object CustomFormatType: enum: - default - percent - currency - number - id - date - timestamp - bytes_si - bytes_iec - custom type: string CalculateTotalFromQuery: properties: invalidateCache: type: boolean parameters: $ref: '#/components/schemas/ParametersValuesMap' explore: type: string metricQuery: $ref: '#/components/schemas/MetricQueryRequest' required: - explore - metricQuery type: object DashboardTileTypes.SAVED_CHART: enum: - saved_chart type: string ApiFormulaValidationResults: anyOf: - properties: compiledSql: type: string valid: type: boolean enum: - true nullable: false required: - compiledSql - valid type: object - properties: error: type: string valid: type: boolean enum: - false nullable: false required: - error - valid type: object ApiAiMcpServerToolListResponse: $ref: '#/components/schemas/ApiSuccess_AiMcpServerTool-Array_' ApiExploresResults: items: $ref: '#/components/schemas/SummaryExplore' type: array ApiProjectCompileLogsResponse: properties: results: $ref: '#/components/schemas/ApiProjectCompileLogsResults' status: type: string enum: - ok nullable: false required: - results - status type: object AiAgentThreadPullRequest: properties: commitSha: type: string nullable: true changedFiles: type: number format: double nullable: true deletions: type: number format: double nullable: true additions: type: number format: double nullable: true state: type: string enum: - open - merged - closed - null nullable: true summary: type: string nullable: true title: type: string nullable: true prNumber: type: number format: double nullable: true repo: type: string nullable: true prUrl: type: string required: - commitSha - changedFiles - deletions - additions - state - summary - title - prNumber - repo - prUrl type: object description: 'Overview of the writeback PR a thread is associated with — either the PR the agent opened in this thread, or the PR a remediation verification thread is verifying. Live GitHub fields (state, counts) are null when the fetch fails; `summary` falls back to the PR title when no stored summary exists.' ApiGetProjectGroupAccesses: properties: results: items: $ref: '#/components/schemas/ProjectGroupAccess' type: array status: type: string enum: - ok nullable: false required: - results - status type: object PreAggregateMissReason.TABLE_CALCULATION_PRESENT: enum: - table_calculation_present type: string ProjectDefaults: properties: case_sensitive: type: boolean description: 'Default case sensitivity for string filters across the project. When false, all string filters will be case insensitive by default. Can be overridden at explore or field level. Defaults to true if not specified.' type: object description: Project-wide default settings that can be overridden at explore or field level ApiSuccess_ApiTableGroupsResults_: properties: results: $ref: '#/components/schemas/ApiTableGroupsResults' status: type: string enum: - ok nullable: false required: - results - status type: object CustomSqlDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.SQL' description: Type of custom dimension (bin or sql) sql: type: string description: SQL expression for the custom dimension dimensionType: $ref: '#/components/schemas/DimensionType' description: Data type of the dimension result required: - id - name - table - type - sql - dimensionType type: object additionalProperties: true AndFilterGroup: properties: and: items: $ref: '#/components/schemas/FilterGroupItem' type: array description: Array of filters or nested groups combined with AND logic id: type: string description: Unique identifier for the filter group required: - and - id type: object DashboardChartTileAsCode: allOf: - $ref: '#/components/schemas/DashboardTileAsCodeBase' - properties: properties: allOf: - $ref: '#/components/schemas/Pick_DashboardChartTileProperties-at-properties.title-or-hideTitle-or-chartName_' - properties: chartSlug: type: string nullable: true required: - chartSlug type: object type: $ref: '#/components/schemas/DashboardTileTypes.SAVED_CHART' required: - properties - type type: object Pick_ExploreError.SummaryExploreErrorFields_: properties: name: type: string type: $ref: '#/components/schemas/ExploreType' label: type: string tags: items: type: string type: array groupLabel: type: string deprecated: true groups: items: type: string type: array description: 'Nested groups for the sidebar (max 3 levels). Group keys resolve to labels/descriptions via the project-level `table_groups` config (fetched separately); missing keys fall back to using the key as the label.' aiHint: anyOf: - type: string - items: type: string type: array errors: items: $ref: '#/components/schemas/InlineError' type: array required: - name - label - errors type: object description: From T, pick a set of properties whose keys are in the union K CompiledMetric: allOf: - $ref: '#/components/schemas/Metric' - $ref: '#/components/schemas/CompiledProperties' WeekDay: enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 type: number UserAttributeValueMap: $ref: '#/components/schemas/Record_string.string-Array_' CustomDimensionType.SQL: enum: - sql type: string AiModelOption: properties: supportsReasoning: type: boolean default: type: boolean provider: type: string description: type: string displayName: type: string name: type: string required: - supportsReasoning - default - provider - description - displayName - name type: object DashboardConfig: properties: defaultDateZoomGranularity: anyOf: - $ref: '#/components/schemas/DateGranularity' - type: string dateZoomGranularities: items: anyOf: - $ref: '#/components/schemas/DateGranularity' - type: string type: array parameterOrder: items: type: string type: array pinnedParameters: items: type: string type: array isAddFilterDisabled: type: boolean isDateZoomDisabled: type: boolean required: - isDateZoomDisabled type: object ApiAiAgentMcpServerToolListResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentMcpServerTool-Array_' ConditionalFormattingWithFilterOperator: anyOf: - $ref: '#/components/schemas/ConditionalFormattingWithValues_number-or-string_' - $ref: '#/components/schemas/ConditionalFormattingWithCompareTarget_number-or-string_' CreateChartInSpace: allOf: - $ref: '#/components/schemas/CreateChartBase' - properties: dashboardUuid: type: number enum: - null nullable: true spaceUuid: type: string type: object DateZoom: properties: xAxisFieldId: type: string granularity: anyOf: - $ref: '#/components/schemas/DateGranularity' - type: string type: object Pick_SqlChart.name-or-description-or-slug-or-sql-or-limit-or-config-or-chartKind_: properties: description: type: string nullable: true name: type: string limit: type: number format: double slug: type: string config: allOf: - $ref: '#/components/schemas/VizBaseConfig' - anyOf: - $ref: '#/components/schemas/VizCartesianChartConfig' - $ref: '#/components/schemas/VizPieChartConfig' - $ref: '#/components/schemas/VizTableConfig' sql: type: string chartKind: $ref: '#/components/schemas/ChartKind' required: - description - name - limit - slug - config - sql - chartKind type: object description: From T, pick a set of properties whose keys are in the union K ContentAsCodeType.CHART: enum: - chart type: string ApiTableGroupsResults: $ref: '#/components/schemas/Record_string.GroupType_' Pick_AiMcpServer.uuid-or-name-or-iconUrl_: properties: name: type: string uuid: type: string iconUrl: type: string nullable: true required: - name - uuid - iconUrl type: object description: From T, pick a set of properties whose keys are in the union K DucklakeDataPathGcs: $ref: '#/components/schemas/Omit_CreateDucklakeDataPathGcs.hmacKeyId-or-hmacSecret_' ChartSummary: allOf: - $ref: '#/components/schemas/Pick_SavedChart.uuid-or-name-or-description-or-spaceName-or-spaceUuid-or-projectUuid-or-organizationUuid-or-pinnedListUuid-or-dashboardUuid-or-dashboardName-or-slug_' - properties: source: $ref: '#/components/schemas/ChartSourceType' chartKind: $ref: '#/components/schemas/ChartKind' chartType: $ref: '#/components/schemas/ChartType' type: object DateGranularity: enum: - Second - Minute - Hour - Day - Week - Month - Quarter - Year type: string ApiExecuteAsyncQueryResultsCommon: properties: resolvedTimezone: type: string nullable: true usedParametersValues: $ref: '#/components/schemas/ParametersValuesMap' parameterReferences: items: type: string type: array cacheMetadata: $ref: '#/components/schemas/CacheMetadata' queryUuid: type: string required: - resolvedTimezone - usedParametersValues - parameterReferences - cacheMetadata - queryUuid type: object Pick_CreateDucklakeDataPathS3.Exclude_keyofCreateDucklakeDataPathS3.accessKeyId-or-secretAccessKey__: properties: type: $ref: '#/components/schemas/DucklakeDataPathType.S3' region: type: string url: type: string endpoint: type: string forcePathStyle: type: boolean useSsl: type: boolean required: - type - url type: object description: From T, pick a set of properties whose keys are in the union K AgentSuggestionNavigateChip: properties: url: type: string label: type: string kind: type: string enum: - navigate nullable: false required: - url - label - kind type: object Record_string.MapFieldConfig_: properties: {} additionalProperties: $ref: '#/components/schemas/MapFieldConfig' type: object description: Construct a type with a set of properties K of type T PreAggregateCheckResult: anyOf: - properties: preAggregateExploreName: type: string preAggregateName: type: string hit: type: boolean enum: - true nullable: false required: - preAggregateExploreName - preAggregateName - hit type: object - properties: reason: $ref: '#/components/schemas/PreAggregateMatchMiss' hit: type: boolean enum: - false nullable: false required: - reason - hit type: object CreateDashboardMarkdownTile: allOf: - $ref: '#/components/schemas/CreateDashboardTileBase' - $ref: '#/components/schemas/DashboardMarkdownTileProperties' DbtModelJoinType: type: string enum: - inner - full - left - right Pick_CreateDuckdbCredentials.type_: properties: type: $ref: '#/components/schemas/WarehouseTypes.DUCKDB' required: - type type: object description: From T, pick a set of properties whose keys are in the union K PreAggregateMissReason.NO_PRE_AGGREGATES_DEFINED: enum: - no_pre_aggregates_defined type: string ApiCreateDashboardResponse: properties: results: $ref: '#/components/schemas/Dashboard' status: type: string enum: - ok nullable: false required: - results - status type: object DuckdbDucklakeCredentials: allOf: - $ref: '#/components/schemas/Omit_CreateDuckdbDucklakeCredentials.catalog-or-dataPath_' - properties: dataPath: $ref: '#/components/schemas/DucklakeDataPath' catalog: $ref: '#/components/schemas/DucklakeCatalog' required: - dataPath - catalog type: object CreateProjectMember: properties: sendEmail: type: boolean role: $ref: '#/components/schemas/ProjectMemberRole' email: type: string required: - sendEmail - role - email type: object CustomVis: properties: spec: $ref: '#/components/schemas/Record_string.unknown_' description: Custom visualization specification (Vega-Lite or other) type: object Omit_CreateDucklakeDataPathAzure.connectionString-or-accountKey_: $ref: '#/components/schemas/Pick_CreateDucklakeDataPathAzure.Exclude_keyofCreateDucklakeDataPathAzure.connectionString-or-accountKey__' description: Construct a type with the properties of T except for those in type K. DbtLocalProjectConfig: properties: type: $ref: '#/components/schemas/DbtProjectType.DBT' target: type: string environment: items: $ref: '#/components/schemas/DbtProjectEnvironmentVariable' type: array selector: type: string profiles_dir: type: string project_dir: type: string required: - type type: object additionalProperties: true ApiAiAgentThreadGenerateTitleResponse: properties: results: properties: title: type: string required: - title type: object status: type: string enum: - ok nullable: false required: - results - status type: object WarehouseTypes.BIGQUERY: enum: - bigquery type: string AgentSuggestionPromptChip: properties: defaults: properties: timeframe: type: string nullable: true metrics: items: type: string type: array dimensions: items: type: string type: array explore: type: string nullable: true required: - timeframe - metrics - dimensions - explore type: object tool: $ref: '#/components/schemas/AgentSuggestionTool' label: type: string kind: type: string enum: - prompt nullable: false required: - defaults - tool - label - kind type: object ItemsMap: $ref: '#/components/schemas/Record_string.Field-or-TableCalculation-or-CustomDimension-or-Metric_' ApiChartSummaryListResponse: properties: results: items: $ref: '#/components/schemas/ChartSummary' type: array status: type: string enum: - ok nullable: false required: - results - status type: object OrFilterGroup: properties: or: items: $ref: '#/components/schemas/FilterGroupItem' type: array description: Array of filters or nested groups combined with OR logic id: type: string description: Unique identifier for the filter group required: - or - id type: object AiAgentToolCall: allOf: - $ref: '#/components/schemas/AiAgentBaseToolCall' - anyOf: - properties: toolName: type: string toolType: type: string enum: - built-in nullable: false required: - toolName - toolType type: object - properties: mcpServer: allOf: - $ref: '#/components/schemas/AiAgentToolCallMcpServer' nullable: true toolName: $ref: '#/components/schemas/AiAgentMcpToolName' toolType: type: string enum: - mcp nullable: false required: - mcpServer - toolName - toolType type: object UserWithCount: properties: count: type: number format: double lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object PreAggregateMissReason.NON_ADDITIVE_METRIC: enum: - non_additive_metric type: string DbtCloudIDEProjectConfig: properties: type: $ref: '#/components/schemas/DbtProjectType.DBT_CLOUD_IDE' api_key: type: string environment_id: type: string discovery_api_endpoint: type: string tags: items: type: string type: array required: - type - api_key - environment_id type: object additionalProperties: true Omit_CreateDucklakeCatalogPostgres.user-or-password_: $ref: '#/components/schemas/Pick_CreateDucklakeCatalogPostgres.Exclude_keyofCreateDucklakeCatalogPostgres.user-or-password__' description: Construct a type with the properties of T except for those in type K. ApiSuccess_ProjectDefaults-or-undefined_: properties: results: $ref: '#/components/schemas/ProjectDefaults' status: type: string enum: - ok nullable: false required: - status type: object BigqueryAuthenticationType: enum: - sso - private_key - adc type: string DashboardLoomTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardLoomTileProperties' Pick_ValidationResponseBase.Exclude_keyofValidationResponseBase.name__: properties: projectUuid: type: string createdAt: type: string format: date-time error: type: string source: $ref: '#/components/schemas/ValidationSourceType' validationUuid: type: string validationId: type: number format: double nullable: true deprecated: true errorType: $ref: '#/components/schemas/ValidationErrorType' spaceUuid: type: string required: - projectUuid - createdAt - error - validationUuid - validationId - errorType type: object description: From T, pick a set of properties whose keys are in the union K VizColumnConfig: properties: barConfig: properties: color: type: string max: type: number format: double min: type: number format: double type: object displayStyle: type: string enum: - text - bar aggregation: $ref: '#/components/schemas/VizAggregationOptions' order: type: number format: double frozen: type: boolean label: type: string reference: type: string visible: type: boolean required: - frozen - label - reference - visible type: object ApiSqlChartAsCodeUpsertResponse: properties: results: $ref: '#/components/schemas/PromotionChanges' status: type: string enum: - ok nullable: false required: - results - status type: object ApiChartValidationResponse: $ref: '#/components/schemas/ApiSuccess__errors-CreateChartValidation-Array__' TableCalculationType: enum: - number - string - date - timestamp - boolean type: string WarehouseTypes.ATHENA: enum: - athena type: string SpaceSummaryBase: allOf: - $ref: '#/components/schemas/Pick_Space.organizationUuid-or-projectUuid-or-uuid-or-name-or-inheritParentPermissions-or-projectMemberAccessRole-or-pinnedListUuid-or-pinnedListOrder-or-slug-or-parentSpaceUuid-or-path_' - properties: deletedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object deletedAt: type: string format: date-time appCount: type: number format: double childSpaceCount: type: number format: double dashboardCount: type: number format: double chartCount: type: number format: double required: - appCount - childSpaceCount - dashboardCount - chartCount type: object DashboardTileAsCode: anyOf: - $ref: '#/components/schemas/DashboardChartTileAsCode' - $ref: '#/components/schemas/DashboardSqlChartTileAsCode' - $ref: '#/components/schemas/DashboardMarkdownTileAsCode' - $ref: '#/components/schemas/DashboardLoomTileAsCode' - $ref: '#/components/schemas/DashboardHeadingTileAsCode' - $ref: '#/components/schemas/DashboardDataAppTileAsCode' RedshiftCredentials: $ref: '#/components/schemas/Omit_CreateRedshiftCredentials.SensitiveCredentialsFieldNames_' ApiAiAgentThreadShareResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentThreadShare_' ApiJobScheduledResponse: properties: results: properties: jobId: type: string required: - jobId type: object status: type: string enum: - ok nullable: false required: - results - status type: object ? PartialObjectDeep__dashboard_58___91_x-string_93__58__description_63_-string-or-undefined--name_63_-string-or-undefined--tiles_63__58__40__type-DashboardTileTypes.SAVED_CHART-or-DashboardTileTypes.SQL_CHART--properties_58__title-string--chartName-string__-or-_type-DashboardTileTypes.MARKDOWN--properties_58__content-string--title-string__-or-_type-DashboardTileTypes.LOOM--properties_58__title-string__-or-_type-DashboardTileTypes.HEADING--properties_58__text-string__-or-_type-DashboardTileTypes.DATA_APP--properties_58__title-string___41_-Array-or-undefined___._recurseIntoArrays-true__ : properties: dashboard: $ref: '#/components/schemas/PartialObjectDeep___91_x-string_93__58__description_63_-string-or-undefined--name_63_-string-or-undefined--tiles_63__58__40__type-DashboardTileTypes.SAVED_CHART-or-DashboardTileTypes.SQL_CHART--properties_58__title-string--chartName-string__-or-_type-DashboardTileTypes.MARKDOWN--properties_58__content-string--title-string__-or-_type-DashboardTileTypes.LOOM--properties_58__title-string__-or-_type-DashboardTileTypes.HEADING--properties_58__text-string__-or-_type-DashboardTileTypes.DATA_APP--properties_58__title-string___41_-Array-or-undefined__._recurseIntoArrays-true__' type: object description: Same as `PartialDeep`, but accepts only `object`s as inputs. Internal helper for `PartialDeep`. ApiSuccess_AiAgentUserPreferences_: properties: results: $ref: '#/components/schemas/AiAgentUserPreferences' status: type: string enum: - ok nullable: false required: - results - status type: object ApiRevertChangeRequest: properties: changeUuid: type: string required: - changeUuid type: object DashboardTab: properties: hidden: type: boolean order: type: number format: double minimum: 0 name: type: string minLength: 1 uuid: type: string required: - order - name - uuid type: object AiAgentProjectThreadSummary: allOf: - $ref: '#/components/schemas/AiAgentThreadSummary_AiAgentUser_' - properties: agentImageUrl: type: string nullable: true agentName: type: string required: - agentImageUrl - agentName type: object CreateDatabricksCredentials: properties: compute: items: properties: httpPath: type: string name: type: string required: - httpPath - name type: object type: array dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true requireUserCredentials: type: boolean oauthClientSecret: type: string oauthClientId: type: string token: type: string refreshToken: type: string personalAccessToken: type: string authenticationType: $ref: '#/components/schemas/DatabricksAuthenticationType' httpPath: type: string serverHostName: type: string database: type: string catalog: type: string type: $ref: '#/components/schemas/WarehouseTypes.DATABRICKS' required: - httpPath - serverHostName - database - type type: object ChartKind.LINE: enum: - line type: string AiPromptContextInput: items: $ref: '#/components/schemas/AiPromptContextItemInput' type: array UpdateSchedulerSettings: properties: schedulerFailureContactOverride: type: string nullable: true schedulerFailureIncludeContact: type: boolean schedulerFailureNotifyRecipients: type: boolean schedulerTimezone: type: string type: object ApiDataTimezonePreviewResults: properties: aware: $ref: '#/components/schemas/DataTimezonePreviewAware' naive: $ref: '#/components/schemas/DataTimezonePreviewNaive' dataTimezoneApplies: type: boolean projectTimezone: type: string required: - aware - naive - dataTimezoneApplies - projectTimezone type: object ClickhouseCredentials: $ref: '#/components/schemas/Omit_CreateClickhouseCredentials.SensitiveCredentialsFieldNames_' AiAgentThreadShare: properties: shareUrl: type: string revokedAt: type: string nullable: true createdAt: type: string createdByUserUuid: type: string snapshotPromptUuid: type: string organizationUuid: type: string projectUuid: type: string agentUuid: type: string threadUuid: type: string nanoid: type: string uuid: type: string required: - shareUrl - revokedAt - createdAt - createdByUserUuid - snapshotPromptUuid - organizationUuid - projectUuid - agentUuid - threadUuid - nanoid - uuid type: object ApiSuccess_AiMcpServer-Array_: properties: results: items: $ref: '#/components/schemas/AiMcpServer' type: array status: type: string enum: - ok nullable: false required: - results - status type: object AiAgentThread: allOf: - $ref: '#/components/schemas/AiAgentThreadSummary_AiAgentUser_' - properties: compactions: items: $ref: '#/components/schemas/AiThreadCompaction' type: array messages: items: $ref: '#/components/schemas/AiAgentMessage_AiAgentUser_' type: array required: - compactions - messages type: object ApiAiAgentThreadSummaryListResponse: properties: results: items: $ref: '#/components/schemas/AiAgentThreadSummary' type: array status: type: string enum: - ok nullable: false required: - results - status type: object ExploreAnalysisEvaluation: $ref: '#/components/schemas/ReadinessScoreEvaluation' ApiSuccess_KnexPaginatedData_AiAgentProjectThreadSummary-Array__: properties: results: $ref: '#/components/schemas/KnexPaginatedData_AiAgentProjectThreadSummary-Array_' status: type: string enum: - ok nullable: false required: - results - status type: object ? Omit_Pick_SavedChart.name-or-description-or-tableName-or-metricQuery-or-chartConfig-or-pivotConfig-or-slug-or-parameters_.metricQuery_ : $ref: '#/components/schemas/Pick_Pick_SavedChart.name-or-description-or-tableName-or-metricQuery-or-chartConfig-or-pivotConfig-or-slug-or-parameters_.Exclude_keyofPick_SavedChart.name-or-description-or-tableName-or-metricQuery-or-chartConfig-or-pivotConfig-or-slug-or-parameters_.metricQuery__' description: Construct a type with the properties of T except for those in type K. SavedChartDAO: $ref: '#/components/schemas/Omit_SavedChart.inheritsFromOrgOrProject-or-access_' ApiSuccess_AiAgentThreadSummary_: properties: results: $ref: '#/components/schemas/AiAgentThreadSummary' status: type: string enum: - ok nullable: false required: - results - status type: object ApiAiAgentExploreAccessSummaryResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentExploreAccessSummary-Array_' DashboardMarkdownTileProperties: properties: properties: properties: hideFrame: type: boolean content: type: string title: type: string required: - content - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.MARKDOWN' required: - properties - type type: object MapHexbinAggregation: enum: - sum - avg - min - max type: string ChartType.CARTESIAN: enum: - cartesian type: string Omit_DashboardFilterRule.id_: $ref: '#/components/schemas/Pick_DashboardFilterRule.Exclude_keyofDashboardFilterRule.id__' description: Construct a type with the properties of T except for those in type K. GroupType: properties: description: type: string label: type: string required: - label type: object AiEvalRunResultAssessment: properties: createdAt: type: string format: date-time assessedAt: type: string format: date-time llmJudgeModel: type: string nullable: true llmJudgeProvider: type: string nullable: true assessedByUserUuid: type: string nullable: true reason: type: string nullable: true passed: type: boolean assessmentType: $ref: '#/components/schemas/AssessmentType' runResultUuid: type: string assessmentUuid: type: string required: - createdAt - assessedAt - llmJudgeModel - llmJudgeProvider - assessedByUserUuid - reason - passed - assessmentType - runResultUuid - assessmentUuid type: object Pick_SavedChart.updatedAt-or-updatedByUser-or-pinnedListOrder_: properties: pinnedListOrder: type: number format: double nullable: true updatedAt: type: string format: date-time description: Timestamp when the chart was last updated updatedByUser: $ref: '#/components/schemas/UpdatedByUser' required: - pinnedListOrder - updatedAt type: object description: From T, pick a set of properties whose keys are in the union K ApiSqlChartAsCodeListResponse: properties: results: properties: offset: type: number format: double total: type: number format: double spaces: items: $ref: '#/components/schemas/SpaceAsCode' type: array missingIds: items: type: string type: array sqlCharts: items: $ref: '#/components/schemas/SqlChartAsCode' type: array required: - offset - total - spaces - missingIds - sqlCharts type: object status: type: string enum: - ok nullable: false required: - results - status type: object DashboardParameters: $ref: '#/components/schemas/Record_string.DashboardParameterValue_' ApiCloneAiAgentThreadShareResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentThreadSummary_' AthenaAuthenticationType: enum: - access_key - iam_role type: string PromotedSqlChart: properties: spacePath: type: string spaceSlug: type: string description: type: string nullable: true name: type: string projectUuid: type: string slug: type: string oldUuid: type: string uuid: type: string required: - spacePath - spaceSlug - description - name - projectUuid - slug - oldUuid - uuid type: object ? Pick_Space.organizationUuid-or-projectUuid-or-uuid-or-name-or-inheritParentPermissions-or-projectMemberAccessRole-or-pinnedListUuid-or-pinnedListOrder-or-slug-or-parentSpaceUuid-or-path_ : properties: name: type: string projectUuid: type: string organizationUuid: type: string uuid: type: string inheritParentPermissions: type: boolean projectMemberAccessRole: allOf: - $ref: '#/components/schemas/SpaceMemberRole' nullable: true pinnedListUuid: type: string nullable: true pinnedListOrder: type: number format: double nullable: true slug: type: string parentSpaceUuid: type: string nullable: true path: type: string required: - name - projectUuid - organizationUuid - uuid - inheritParentPermissions - projectMemberAccessRole - pinnedListUuid - pinnedListOrder - slug - parentSpaceUuid - path type: object description: From T, pick a set of properties whose keys are in the union K DbtVersionOptionLatest: enum: - latest type: string DatabricksAuthenticationType: enum: - personal_access_token - oauth_m2m - oauth_u2m type: string JoinModelRequiredFilterTarget: properties: tableName: type: string fieldRef: type: string required: - tableName - fieldRef type: object BigqueryProject: properties: friendlyName: type: string nullable: true projectId: type: string required: - friendlyName - projectId type: object ApiAppendEvaluationRequest: properties: prompts: items: $ref: '#/components/schemas/CreateEvaluationPrompt' type: array required: - prompts type: object DashboardTileTypes.HEADING: enum: - heading type: string SpaceSummary: allOf: - $ref: '#/components/schemas/SpaceSummaryBase' - properties: access: items: type: string type: array userAccess: $ref: '#/components/schemas/SpaceAccess' inheritsFromOrgOrProject: type: boolean required: - access - inheritsFromOrgOrProject type: object VerifiedContentListItem: properties: verifiedAt: type: string format: date-time verifiedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object spaceName: type: string spaceUuid: type: string name: type: string contentUuid: type: string contentType: $ref: '#/components/schemas/ContentType' uuid: type: string required: - verifiedAt - verifiedBy - spaceName - spaceUuid - name - contentUuid - contentType - uuid type: object FunnelChartDataInput: enum: - row - column type: string DashboardTileTypes.SQL_CHART: enum: - sql_chart type: string ChartKind: enum: - line - horizontal_bar - vertical_bar - scatter - area - mixed - pie - table - big_number - funnel - custom - treemap - gauge - map - sankey type: string SeriesMetadata: properties: color: type: string description: Color for the series required: - color type: object ApiSuccess_AiAgentEvaluationRunSummary_: properties: results: $ref: '#/components/schemas/AiAgentEvaluationRunSummary' status: type: string enum: - ok nullable: false required: - results - status type: object Pick_CreateDuckdbDucklakeCredentials.Exclude_keyofCreateDuckdbDucklakeCredentials.catalog-or-dataPath__: properties: type: $ref: '#/components/schemas/WarehouseTypes.DUCKDB' requireUserCredentials: type: boolean schema: type: string threads: type: number format: double startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string connectionType: $ref: '#/components/schemas/DuckdbConnectionType.DUCKLAKE' catalogAlias: type: string required: - type - schema - connectionType type: object description: From T, pick a set of properties whose keys are in the union K DbtProjectType.GITLAB: enum: - gitlab type: string ChartKind.TABLE: enum: - table type: string MetricType: enum: - percentile - average - count - count_distinct - sum - sum_distinct - average_distinct - min - max - percent_of_previous - percent_of_total - running_total - number - median - string - date - timestamp - boolean type: string ContentAsCodeType.SPACE: enum: - space type: string SqlChartAsCode: allOf: - $ref: '#/components/schemas/Pick_SqlChart.name-or-description-or-slug-or-sql-or-limit-or-config-or-chartKind_' - properties: downloadedAt: type: string format: date-time updatedAt: type: string format: date-time spaceSlug: type: string contentType: $ref: '#/components/schemas/ContentAsCodeType.SQL_CHART' version: type: number format: double required: - spaceSlug - version type: object ApiBigqueryProjects: properties: results: items: $ref: '#/components/schemas/BigqueryProject' type: array status: type: string enum: - ok nullable: false required: - results - status type: object PivotIndexColum: properties: type: $ref: '#/components/schemas/VizIndexType' reference: type: string required: - type - reference type: object AiAgentEvaluationRunResult: properties: expectedResponse: type: string nullable: true prompt: type: string nullable: true assessment: allOf: - $ref: '#/components/schemas/AiEvalRunResultAssessment' nullable: true createdAt: type: string format: date-time completedAt: type: string format: date-time nullable: true errorMessage: type: string nullable: true status: type: string enum: - pending - running - completed - assessing - failed threadUuid: type: string nullable: true evalPromptUuid: type: string nullable: true resultUuid: type: string required: - expectedResponse - prompt - assessment - createdAt - completedAt - errorMessage - status - threadUuid - evalPromptUuid - resultUuid type: object Pick_CreateSnowflakeCredentials.Exclude_keyofCreateSnowflakeCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.SNOWFLAKE' account: type: string requireUserCredentials: type: boolean authenticationType: $ref: '#/components/schemas/SnowflakeAuthenticationType' role: type: string database: type: string warehouse: type: string schema: type: string threads: type: number format: double clientSessionKeepAlive: type: boolean queryTag: type: string accessUrl: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string quotedIdentifiersIgnoreCase: type: boolean disableTimestampConversion: type: boolean timeoutSeconds: type: number format: double override: type: boolean organizationWarehouseCredentialsUuid: type: string required: - type - account - database - warehouse - schema type: object description: From T, pick a set of properties whose keys are in the union K RenameChange: properties: name: type: string uuid: type: string required: - name - uuid type: object Axis: properties: rotate: type: number format: double description: Rotation angle for axis labels inverse: type: boolean description: Reverse the axis direction maxOffset: type: string description: Offset from maximum value minOffset: type: string description: Offset from minimum value max: type: string description: Maximum value (or 'dataMax' for auto) min: type: string description: Minimum value (or 'dataMin' for auto) name: type: string description: Axis title type: object AiAgentThreadSummary_AiAgentUser_: properties: user: $ref: '#/components/schemas/AiAgentUser' firstMessage: properties: message: type: string uuid: type: string required: - message - uuid type: object titleGeneratedAt: type: string nullable: true title: type: string nullable: true createdFrom: type: string createdAt: type: string agentUuid: type: string uuid: type: string required: - user - firstMessage - titleGeneratedAt - title - createdFrom - createdAt - agentUuid - uuid type: object Record_string.GroupType_: properties: {} additionalProperties: $ref: '#/components/schemas/GroupType' type: object description: Construct a type with a set of properties K of type T FilterRuleInput: allOf: - $ref: '#/components/schemas/Omit_FilterRule.id_' - properties: id: type: string type: object description: 'Permissive filter types for chart-as-code uploads where `id` may be omitted. Filter IDs are auto-generated during upsert if absent. After normalization these become the strict runtime types (FilterGroup, Filters).' Pick_AiAgentEvaluation.evalUuid-or-agentUuid-or-title-or-description-or-createdAt-or-updatedAt_: properties: description: type: string nullable: true createdAt: type: string format: date-time updatedAt: type: string format: date-time title: type: string evalUuid: type: string agentUuid: type: string required: - description - createdAt - updatedAt - title - evalUuid - agentUuid type: object description: From T, pick a set of properties whose keys are in the union K TableCalculation: anyOf: - $ref: '#/components/schemas/SqlTableCalculation' - $ref: '#/components/schemas/TemplateTableCalculation' - $ref: '#/components/schemas/FormulaTableCalculation' Record_string.LightdashProjectParameter_: properties: {} additionalProperties: $ref: '#/components/schemas/LightdashProjectParameter' type: object description: Construct a type with a set of properties K of type T AgentSuggestion: anyOf: - $ref: '#/components/schemas/AgentSuggestionPromptChip' - $ref: '#/components/schemas/AgentSuggestionNavigateChip' SupportedDbtAdapter: enum: - bigquery - databricks - snowflake - redshift - postgres - duckdb - trino - clickhouse - athena - spark type: string SankeyChart: properties: nodeLayout: $ref: '#/components/schemas/SankeyNodeLayout' description: How nodes are laid out across steps orient: type: string enum: - horizontal - vertical description: Orientation of the diagram nodeAlign: type: string enum: - left - right - justify description: Node alignment metricFieldId: type: string description: Field ID for the link value metric targetFieldId: type: string description: Field ID for the target node dimension sourceFieldId: type: string description: Field ID for the source node dimension type: object FilterRule: properties: values: items: $ref: '#/components/schemas/AnyType' type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter target: $ref: '#/components/schemas/FieldTarget' description: Target field for the filter settings: $ref: '#/components/schemas/AnyType' description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' required: - operator - id - target type: object additionalProperties: true ApiPreviewExpirationProjectSettingsResponse: $ref: '#/components/schemas/ApiSuccess_PreviewExpirationProjectSettings_' AiAgentEvaluationRun: allOf: - $ref: '#/components/schemas/AiAgentEvaluationRunSummary' - properties: results: items: $ref: '#/components/schemas/AiAgentEvaluationRunResult' type: array required: - results type: object Pick_CreateDatabricksCredentials.type_: properties: type: $ref: '#/components/schemas/WarehouseTypes.DATABRICKS' required: - type type: object description: From T, pick a set of properties whose keys are in the union K CompiledProperties: properties: compiledDistinctKeys: items: type: string type: array compiledValueSql: type: string compilationError: $ref: '#/components/schemas/FieldCompilationError' description: 'When partial compilation mode is enabled, fields that fail to compile will have this property set instead of causing the entire explore to fail.' tablesAnyAttributes: $ref: '#/components/schemas/Record_string.Record_string.string-or-string-Array__' tablesRequiredAttributes: $ref: '#/components/schemas/Record_string.Record_string.string-or-string-Array__' tablesReferences: items: type: string type: array compiledSql: type: string required: - compiledSql type: object PromotedDashboard: allOf: - $ref: '#/components/schemas/DashboardDAO' - properties: spacePath: type: string spaceSlug: type: string required: - spacePath - spaceSlug type: object ? Pick_AiAgent.uuid-or-name-or-description-or-integrations-or-tags-or-projectUuid-or-organizationUuid-or-createdAt-or-updatedAt-or-instruction-or-imageUrl-or-groupAccess-or-userAccess-or-spaceAccess-or-enableDataAccess-or-enableSelfImprovement-or-enableContentTools-or-version_ : properties: description: type: string nullable: true name: type: string projectUuid: type: string createdAt: type: string format: date-time organizationUuid: type: string uuid: type: string userAccess: items: type: string type: array updatedAt: type: string format: date-time integrations: items: properties: channelId: type: string type: type: string enum: - slack nullable: false required: - channelId - type type: object type: array tags: items: type: string type: array nullable: true instruction: type: string nullable: true imageUrl: type: string nullable: true groupAccess: items: type: string type: array spaceAccess: items: type: string type: array enableDataAccess: type: boolean enableSelfImprovement: type: boolean enableContentTools: type: boolean version: type: number format: double required: - description - name - projectUuid - createdAt - organizationUuid - uuid - userAccess - updatedAt - integrations - tags - instruction - imageUrl - groupAccess - spaceAccess - enableDataAccess - enableSelfImprovement - enableContentTools - version type: object description: From T, pick a set of properties whose keys are in the union K DashboardBasicDetailsWithTileTypes: allOf: - $ref: '#/components/schemas/DashboardBasicDetails' - properties: tileTypes: items: $ref: '#/components/schemas/DashboardTileTypes' type: array required: - tileTypes type: object PreAggregateMissReason.CUSTOM_DIMENSION_PRESENT: enum: - custom_dimension_present type: string ValidationSummary: $ref: '#/components/schemas/Pick_ValidationResponse.error-or-createdAt-or-validationUuid-or-validationId_' Field: properties: fieldType: $ref: '#/components/schemas/FieldType' type: type: string name: type: string label: type: string table: type: string tableLabel: type: string sql: type: string description: type: string source: $ref: '#/components/schemas/Source' hidden: type: boolean compact: $ref: '#/components/schemas/CompactOrAlias' round: type: number format: double format: anyOf: - $ref: '#/components/schemas/Format' - type: string separator: $ref: '#/components/schemas/NumberSeparator' description: 'Number separator style for grouping/decimal characters. Composes with `format` (including ECMA-376 expressions) and `formatOptions` — it only controls the separator characters, not the format shape.' groupLabel: type: string deprecated: true groups: items: type: string type: array urls: items: $ref: '#/components/schemas/FieldUrl' type: array index: type: number format: double tags: items: type: string type: array parameterReferences: items: type: string type: array required: - fieldType - type - name - label - table - tableLabel - sql - hidden type: object additionalProperties: true DucklakeDataPathType.S3: enum: - s3 type: string AiAgentReasoning: properties: createdAt: type: string format: date-time text: type: string reasoningId: type: string promptUuid: type: string uuid: type: string required: - createdAt - text - reasoningId - promptUuid - uuid type: object SpaceQuery: allOf: - $ref: '#/components/schemas/ChartSummary' - $ref: '#/components/schemas/Pick_SavedChart.updatedAt-or-updatedByUser-or-pinnedListOrder_' - $ref: '#/components/schemas/ViewStatistics' - properties: verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true validationErrors: items: $ref: '#/components/schemas/ValidationSummary' type: array required: - verification type: object ApiSuccess__authorizationUrl-string__: properties: results: properties: authorizationUrl: type: string required: - authorizationUrl type: object status: type: string enum: - ok nullable: false required: - results - status type: object PromotedApp: properties: name: type: string uuid: type: string required: - name - uuid type: object PromotedChart: allOf: - $ref: '#/components/schemas/SavedChartDAO' - properties: oldUuid: type: string spacePath: type: string spaceSlug: type: string required: - oldUuid - spacePath - spaceSlug type: object ApiCreateEvaluationResponse: $ref: '#/components/schemas/ApiSuccess_Pick_AiAgentEvaluation.evalUuid__' ConditionalFormattingConfigWithSingleColor: properties: applyTo: $ref: '#/components/schemas/ConditionalFormattingColorApplyTo' description: Apply formatting to cell background or text rules: items: $ref: '#/components/schemas/ConditionalFormattingWithFilterOperator' type: array description: Rules for single-color conditional formatting darkColor: type: string description: Color for dark mode color: type: string description: Color for single-color conditional formatting target: allOf: - $ref: '#/components/schemas/FieldTarget' nullable: true description: Target field for the formatting rule required: - rules - color - target type: object ApiCompiledQueryResults: properties: compilationErrors: items: type: string type: array parameterReferences: items: type: string type: array pivotQuery: type: string query: type: string required: - parameterReferences - query type: object KnexPaginatedData_AiAgentVerifiedArtifact-Array_: properties: pagination: allOf: - $ref: '#/components/schemas/KnexPaginateArgs' - properties: totalResults: type: number format: double totalPageCount: type: number format: double required: - totalResults - totalPageCount type: object data: items: $ref: '#/components/schemas/AiAgentVerifiedArtifact' type: array required: - data type: object Record_string.ColumnProperties_: properties: {} additionalProperties: $ref: '#/components/schemas/ColumnProperties' type: object description: Construct a type with a set of properties K of type T GroupValueMatchType: enum: - exact - startsWith - endsWith - includes type: string Pick_DashboardFilterRule.Exclude_keyofDashboardFilterRule.id__: properties: label: type: string target: $ref: '#/components/schemas/DashboardFieldTarget' description: Target field for the filter settings: description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator values: items: {} type: array description: Values to filter by tileTargets: $ref: '#/components/schemas/Record_string.DashboardTileTarget_' singleValue: type: boolean lockedTabUuids: items: type: string type: array description: 'Tab UUIDs where this filter is locked. When the active tab is in this list, viewers see the filter but cannot change it, and URL / embed filter overrides targeting the same field are ignored on that tab. Empty or omitted means the filter is not locked anywhere.' required: - target - operator type: object description: From T, pick a set of properties whose keys are in the union K KnexPaginatedData_AiAgentProjectThreadSummary-Array_: properties: pagination: allOf: - $ref: '#/components/schemas/KnexPaginateArgs' - properties: totalResults: type: number format: double totalPageCount: type: number format: double required: - totalResults - totalPageCount type: object data: items: $ref: '#/components/schemas/AiAgentProjectThreadSummary' type: array required: - data type: object Dashboard: properties: deletedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object nullable: true deletedAt: type: string format: date-time colorPaletteUuid: type: string nullable: true config: $ref: '#/components/schemas/DashboardConfig' slug: type: string access: items: $ref: '#/components/schemas/SpaceAccess' type: array nullable: true inheritsFromOrgOrProject: type: boolean tabs: items: $ref: '#/components/schemas/DashboardTab' type: array pinnedListOrder: type: number format: double nullable: true pinnedListUuid: type: string nullable: true firstViewedAt: anyOf: - type: string format: date-time - type: string nullable: true views: type: number format: double spaceName: type: string spaceUuid: type: string updatedByUser: $ref: '#/components/schemas/UpdatedByUser' parameters: $ref: '#/components/schemas/DashboardParameters' filters: $ref: '#/components/schemas/DashboardFilters' tiles: items: $ref: '#/components/schemas/DashboardTile' type: array updatedAt: type: string format: date-time description: type: string verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true name: type: string uuid: type: string versionUuid: type: string dashboardVersionId: type: number format: double projectUuid: type: string organizationUuid: type: string required: - colorPaletteUuid - slug - access - inheritsFromOrgOrProject - tabs - pinnedListOrder - pinnedListUuid - firstViewedAt - views - spaceName - spaceUuid - filters - tiles - updatedAt - verification - name - uuid - versionUuid - dashboardVersionId - projectUuid - organizationUuid type: object ReadinessScoreEvaluation: properties: recommendations: items: type: string type: array score: type: number format: double required: - recommendations - score type: object ParameterValue: anyOf: - type: string - type: number format: double - items: type: string type: array - items: type: number format: double type: array Pick_CreateTrinoCredentials.Exclude_keyofCreateTrinoCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.TRINO' requireUserCredentials: type: boolean schema: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string host: type: string port: type: number format: double dbname: type: string http_scheme: type: string source: type: string required: - type - schema - host - port - dbname - http_scheme type: object description: From T, pick a set of properties whose keys are in the union K ApiAiAgentThreadCreateRequest: properties: modelConfig: properties: reasoning: type: boolean modelProvider: type: string modelName: type: string required: - modelProvider - modelName type: object context: $ref: '#/components/schemas/AiPromptContextInput' prompt: type: string type: object ApiExploreResults: $ref: '#/components/schemas/Omit_Explore.unfilteredTables_' ParametersValuesMap: $ref: '#/components/schemas/Record_string.ParameterValue_' PreviewExpirationProjectSettings: properties: maxPreviewExpirationHours: type: number format: double defaultPreviewExpirationHours: type: number format: double projectUuid: type: string required: - maxPreviewExpirationHours - defaultPreviewExpirationHours - projectUuid type: object WindowFunctionType: enum: - row_number - percent_rank - cume_dist - rank - sum - avg - count - min - max type: string ApiAiMcpServerResponse: $ref: '#/components/schemas/ApiSuccess_AiMcpServer_' FunnelChartConfig: properties: config: $ref: '#/components/schemas/FunnelChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.FUNNEL' description: Type of chart visualization required: - type type: object ValidationErrorTableResponse: allOf: - $ref: '#/components/schemas/Omit_ValidationResponseBase.name_' - properties: name: type: string type: object ProjectType: enum: - DEFAULT - PREVIEW type: string DucklakeCatalogPostgres: $ref: '#/components/schemas/Omit_CreateDucklakeCatalogPostgres.user-or-password_' DuckdbConnectionType.DUCKLAKE: enum: - ducklake type: string ChartConfig: anyOf: - $ref: '#/components/schemas/BigNumberConfig' - $ref: '#/components/schemas/CartesianChartConfig' - $ref: '#/components/schemas/CustomVisConfig' - $ref: '#/components/schemas/PieChartConfig' - $ref: '#/components/schemas/FunnelChartConfig' - $ref: '#/components/schemas/TableChartConfig' - $ref: '#/components/schemas/TreemapChartConfig' - $ref: '#/components/schemas/GaugeChartConfig' - $ref: '#/components/schemas/MapChartConfig' - $ref: '#/components/schemas/SankeyChartConfig' DashboardChartTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardChartTileProperties' Omit_Dashboard.inheritsFromOrgOrProject-or-access_: $ref: '#/components/schemas/Pick_Dashboard.Exclude_keyofDashboard.inheritsFromOrgOrProject-or-access__' description: Construct a type with the properties of T except for those in type K. Dimension: properties: fieldType: $ref: '#/components/schemas/FieldType.DIMENSION' type: $ref: '#/components/schemas/DimensionType' name: type: string label: type: string table: type: string tableLabel: type: string sql: type: string description: type: string source: $ref: '#/components/schemas/Source' hidden: type: boolean compact: $ref: '#/components/schemas/CompactOrAlias' round: type: number format: double format: anyOf: - $ref: '#/components/schemas/Format' - type: string separator: $ref: '#/components/schemas/NumberSeparator' description: 'Number separator style for grouping/decimal characters. Composes with `format` (including ECMA-376 expressions) and `formatOptions` — it only controls the separator characters, not the format shape.' groupLabel: type: string deprecated: true groups: items: type: string type: array urls: items: $ref: '#/components/schemas/FieldUrl' type: array index: type: number format: double tags: items: type: string type: array parameterReferences: items: type: string type: array group: type: string deprecated: true requiredAttributes: $ref: '#/components/schemas/Record_string.string-or-string-Array_' anyAttributes: $ref: '#/components/schemas/Record_string.string-or-string-Array_' timeInterval: $ref: '#/components/schemas/TimeFrames' timeIntervalBaseDimensionName: type: string timeIntervalBaseDimensionType: $ref: '#/components/schemas/DimensionType' customTimeInterval: type: string isAdditionalDimension: type: boolean skipTimezoneConversion: type: boolean colors: $ref: '#/components/schemas/Record_string.string_' isIntervalBase: type: boolean aiHint: anyOf: - type: string - items: type: string type: array formatOptions: $ref: '#/components/schemas/CustomFormat' caseSensitive: type: boolean image: properties: fit: type: string height: type: number format: double width: type: number format: double url: type: string required: - url type: object richText: type: string spotlight: properties: segmentBy: type: boolean filterBy: type: boolean type: object required: - fieldType - type - name - label - table - tableLabel - sql - hidden type: object additionalProperties: true Record_string.string-Array_: properties: {} additionalProperties: items: type: string type: array type: object description: Construct a type with a set of properties K of type T AiAgentEvaluationSummary: $ref: '#/components/schemas/Pick_AiAgentEvaluation.evalUuid-or-agentUuid-or-title-or-description-or-createdAt-or-updatedAt_' AiAgentMessage_AiAgentUser_: anyOf: - $ref: '#/components/schemas/AiAgentMessageUser_AiAgentUser_' - $ref: '#/components/schemas/AiAgentMessageAssistant' ConditionalFormattingWithCompareTarget_number-or-string_: allOf: - $ref: '#/components/schemas/BaseFilterRule_FilterOperator.number-or-string_' - properties: values: items: anyOf: - type: number format: double - type: string type: array description: Values to compare against compareTarget: allOf: - $ref: '#/components/schemas/FieldTarget' nullable: true description: Target field to compare against required: - compareTarget type: object ValueLabelPositionOptions: enum: - hidden - top - bottom - left - right - inside type: string ? Pick_AiAgent.projectUuid-or-integrations-or-tags-or-name-or-description-or-instruction-or-imageUrl-or-groupAccess-or-userAccess-or-spaceAccess-or-enableDataAccess-or-enableSelfImprovement-or-version_ : properties: description: type: string nullable: true name: type: string projectUuid: type: string userAccess: items: type: string type: array integrations: items: properties: channelId: type: string type: type: string enum: - slack nullable: false required: - channelId - type type: object type: array tags: items: type: string type: array nullable: true instruction: type: string nullable: true imageUrl: type: string nullable: true groupAccess: items: type: string type: array spaceAccess: items: type: string type: array enableDataAccess: type: boolean enableSelfImprovement: type: boolean version: type: number format: double required: - description - name - projectUuid - userAccess - integrations - tags - instruction - imageUrl - groupAccess - spaceAccess - enableDataAccess - enableSelfImprovement - version type: object description: From T, pick a set of properties whose keys are in the union K BinType.FIXED_WIDTH: enum: - fixed_width type: string DashboardDataAppTileAsCode: allOf: - $ref: '#/components/schemas/DashboardTileAsCodeBase' - properties: properties: properties: appDeletedAt: type: string nullable: true appUuid: type: string hideTitle: type: boolean title: type: string required: - appUuid - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.DATA_APP' required: - properties - type type: object PartialDeep_ChartAsCodeLanguageMap._recurseIntoArrays-true__: $ref: '#/components/schemas/PartialObjectDeep__chart_58___91_x-string_93__58__description_63_-string-or-undefined--name_63_-string-or-undefined--chartConfig_63__58__type-ChartType.CARTESIAN--config_63__58__eChartsConfig_58__series_63__58__name_63_-string-or-undefined--markLine_63__58__data_58__name_63_-string-or-undefined_-Array_-or-undefined_-Array-or-undefined--xAxis_63__58__name_63_-string-or-undefined_-Array-or-undefined--yAxis_63__58__name_63_-string-or-undefined_-Array-or-undefined__-or-undefined_-or-_type-ChartType.PIE--config_63__58__groupLabelOverrides_63_-Record_string.string_-or-undefined_-or-undefined_-or-_type-ChartType.FUNNEL--config_63__58__labelOverrides_63_-Record_string.string_-or-undefined_-or-undefined_-or-_type-ChartType.BIG_NUMBER--config_63__58__label_63_-string-or-undefined--comparisonLabel_63_-string-or-undefined--comparisonField_63_-string-or-undefined_-or-undefined_-or-_type-ChartType.TABLE--config_63__58__columns_63_-Record_string._name-string__-or-undefined_-or-undefined_-or-_type-ChartType.CUSTOM--config_63__58__spec_63_-Record_string.unknown_-or-undefined_-or-undefined_-or-undefined___._recurseIntoArrays-true__' description: 'Create a type from another type with all keys and nested keys set to optional. Use-cases: - Merging a default settings/config object with another object, the second object would be a deep partial of the default object. - Mocking and testing complex entities, where populating an entire object with its keys would be redundant in terms of the mock or test.' ApiSuccess_PreviewExpirationProjectSettings_: properties: results: $ref: '#/components/schemas/PreviewExpirationProjectSettings' status: type: string enum: - ok nullable: false required: - results - status type: object AiResultType: enum: - time_series_chart - vertical_bar_chart - table - query_result - dashboard - dashboard_v2 - improve_context - propose_change type: string ChartSourceType: enum: - dbt_explore - sql type: string DbtProjectType.DBT: enum: - dbt type: string FilterOperator: enum: - isNull - notNull - equals - notEquals - startsWith - endsWith - include - doesNotInclude - lessThan - lessThanOrEqual - greaterThan - greaterThanOrEqual - inThePast - notInThePast - inTheNext - inTheCurrent - notInTheCurrent - inBetween - notInBetween - inPeriodToDate type: string Project: properties: expiresAt: type: string format: date-time nullable: true colorPaletteUuid: type: string nullable: true projectDefaults: $ref: '#/components/schemas/ProjectDefaults' hasDefaultUserSpaces: type: boolean organizationWarehouseCredentialsUuid: type: string createdByUserUuid: type: string nullable: true schedulerFailureContactOverride: type: string nullable: true schedulerFailureIncludeContact: type: boolean schedulerFailureNotifyRecipients: type: boolean useProjectTimezoneInFilters: type: boolean queryTimezone: type: string nullable: true schedulerTimezone: type: string dbtVersion: $ref: '#/components/schemas/DbtVersionOption' upstreamProjectUuid: type: string pinnedListUuid: type: string warehouseConnection: $ref: '#/components/schemas/WarehouseCredentials' dbtConnection: $ref: '#/components/schemas/DbtProjectConfig' type: $ref: '#/components/schemas/ProjectType' name: type: string projectUuid: type: string organizationUuid: type: string required: - expiresAt - colorPaletteUuid - hasDefaultUserSpaces - createdByUserUuid - schedulerFailureContactOverride - schedulerFailureIncludeContact - schedulerFailureNotifyRecipients - useProjectTimezoneInFilters - queryTimezone - schedulerTimezone - dbtVersion - dbtConnection - type - name - projectUuid - organizationUuid type: object WarehouseCredentials: anyOf: - $ref: '#/components/schemas/SnowflakeCredentials' - $ref: '#/components/schemas/RedshiftCredentials' - $ref: '#/components/schemas/PostgresCredentials' - $ref: '#/components/schemas/BigqueryCredentials' - $ref: '#/components/schemas/DatabricksCredentials' - $ref: '#/components/schemas/TrinoCredentials' - $ref: '#/components/schemas/ClickhouseCredentials' - $ref: '#/components/schemas/AthenaCredentials' - $ref: '#/components/schemas/DuckdbCredentials' CustomDimensionType.BIN: enum: - bin type: string DuckdbConnectionType.MOTHERDUCK: enum: - motherduck type: string InstructionQualityEvaluation: $ref: '#/components/schemas/ReadinessScoreEvaluation' WarehouseTypes.DUCKDB: enum: - duckdb type: string Record_string.string_: properties: {} additionalProperties: type: string type: object description: Construct a type with a set of properties K of type T AiAgentMessageAssistant: properties: tokenUsage: allOf: - $ref: '#/components/schemas/AiPromptTokenUsage' nullable: true modelConfig: properties: reasoning: type: boolean modelProvider: type: string modelName: type: string required: - modelProvider - modelName type: object nullable: true referencedArtifacts: items: $ref: '#/components/schemas/AiAgentMessageAssistantArtifact' type: array nullable: true artifacts: items: $ref: '#/components/schemas/AiAgentMessageAssistantArtifact' type: array nullable: true savedQueryUuid: type: string nullable: true reasoning: items: $ref: '#/components/schemas/AiAgentReasoning' type: array toolResults: items: $ref: '#/components/schemas/AiAgentToolResult' type: array toolCalls: items: $ref: '#/components/schemas/AiAgentToolCall' type: array humanFeedback: type: string nullable: true humanScore: type: number format: double nullable: true createdAt: type: string errorMessage: type: string nullable: true message: type: string nullable: true threadUuid: type: string uuid: type: string status: type: string enum: - idle - pending - error role: type: string enum: - assistant nullable: false required: - tokenUsage - modelConfig - referencedArtifacts - artifacts - savedQueryUuid - reasoning - toolResults - toolCalls - humanScore - createdAt - errorMessage - message - threadUuid - uuid - status - role type: object CreateDucklakeDataPathGcs: properties: hmacSecret: type: string hmacKeyId: type: string url: type: string type: $ref: '#/components/schemas/DucklakeDataPathType.GCS' required: - url - type type: object TableBase: properties: sqlPath: type: string ymlPath: type: string dbtPackageName: type: string warnings: items: $ref: '#/components/schemas/InlineError' type: array aiHint: anyOf: - type: string - items: type: string type: array defaultShowUnderlyingValues: items: type: string type: array defaultTimeDimension: $ref: '#/components/schemas/DefaultTimeDimension' groupDetails: $ref: '#/components/schemas/Record_string.GroupType_' anyAttributes: $ref: '#/components/schemas/Record_string.string-or-string-Array_' requiredAttributes: $ref: '#/components/schemas/Record_string.string-or-string-Array_' hidden: type: boolean requiredFilters: items: $ref: '#/components/schemas/ModelRequiredFilterRule' type: array sqlWhere: type: string groupLabel: type: string orderFieldsBy: $ref: '#/components/schemas/OrderFieldsByStrategy' primaryKey: items: type: string type: array sqlTable: type: string schema: type: string database: type: string description: type: string originalName: type: string label: type: string name: type: string required: - sqlTable - schema - database - label - name type: object Format: enum: - km - mi - usd - gbp - eur - jpy - dkk - id - percent type: string ConditionalFormattingColorApplyTo: enum: - cell - text - row type: string SshTunnelConfiguration: properties: sshTunnelPrivateKey: type: string sshTunnelPublicKey: type: string sshTunnelUser: type: string sshTunnelPort: type: number format: double sshTunnelHost: type: string useSshTunnel: type: boolean type: object CreateDucklakeDataPathLocal: properties: path: type: string type: $ref: '#/components/schemas/DucklakeDataPathType.LOCAL' required: - path - type type: object CreateSavedChart: anyOf: - $ref: '#/components/schemas/CreateChartInSpace' - $ref: '#/components/schemas/CreateChartInDashboard' ApiConnectGithubMcpServerBody: properties: credentialScope: $ref: '#/components/schemas/AiMcpCredentialScope' personalAccessToken: type: string required: - credentialScope - personalAccessToken type: object CreateDashboardChartTile: allOf: - $ref: '#/components/schemas/CreateDashboardTileBase' - $ref: '#/components/schemas/DashboardChartTileProperties' ApiSuccess_AiAgentExploreAccessSummary-Array_: properties: results: items: $ref: '#/components/schemas/AiAgentExploreAccessSummary' type: array status: type: string enum: - ok nullable: false required: - results - status type: object PreAggregateMaterializationRole: properties: attributes: $ref: '#/components/schemas/UserAttributeValueMap' email: type: string required: - attributes - email type: object FieldUrl: properties: label: type: string url: type: string required: - label - url type: object DashboardTileTarget: anyOf: - $ref: '#/components/schemas/DashboardFieldTarget' - type: boolean enum: - false ApiSuccess_KnexPaginatedData__runs-AiAgentEvaluationRunSummary-Array___: properties: results: $ref: '#/components/schemas/KnexPaginatedData__runs-AiAgentEvaluationRunSummary-Array__' status: type: string enum: - ok nullable: false required: - results - status type: object PivotConfiguration: properties: pivotColumnsOrder: items: $ref: '#/components/schemas/GroupByColumn' type: array description: 'Declared order of the pivot-column dimensions (visible `groupByColumns` plus hidden `sortOnlyDimensions`) as they appear in the chart''s `pivotConfig.columns`. `column_ranking` orders columns by this sequence so a hidden sort-only dim sorts at its DECLARED position — hiding a dim then leaves column order identical to when it was visible, instead of hoisting the hidden dim to the front of the ORDER BY. Passthrough (hidden, non-sort) dims are excluded since they don''t drive sort. When omitted, ordering falls back to hoisting sort-only sort targets to the front (legacy behavior).' passthroughDimensions: items: $ref: '#/components/schemas/GroupByColumn' type: array description: 'Hidden pivot-column dimensions that are NOT sort targets but still need their values carried through the SQL pipeline so that other fields'' `richText` / `image:` templates can reference them via `row...raw`. They participate in `group_by_query` SELECT and GROUP BY (same as sortOnlyDimensions) but do NOT affect `column_ranking` ORDER BY (they don''t drive sort). Without this bucket the dim would be dropped entirely from the query and `row.*.raw` references would silently resolve to undefined.' sortOnlyDimensions: items: $ref: '#/components/schemas/GroupByColumn' type: array description: 'Dimensions referenced by ORDER BY but NOT spread into pivot columns. Used when a user hides a dim that''s part of `pivotConfig.columns` and has a sort entry on it: the dim still ranks column order via the GROUP BY / ORDER BY pipeline, but it doesn''t become a pivot column header level. Mirrors `sortOnlyColumns` (which serves the same purpose for metrics).' sortOnlyColumns: items: $ref: '#/components/schemas/ValuesColumn' type: array description: 'Metrics/table calculations needed for sort anchor CTEs but not for display. These are merged into valuesColumns for SQL generation in PivotQueryBuilder, but excluded from pivotDetails so they don''t appear as chart series.' metricsAsRows: type: boolean description: 'When true, metrics are displayed as rows instead of columns. This affects column limit calculation - when metrics are rows, we don''t need to divide the column limit by the number of metrics. Defaults to false for backward compatibility (SQL runner behavior).' sortBy: $ref: '#/components/schemas/SortBy' groupByColumns: items: $ref: '#/components/schemas/GroupByColumn' type: array valuesColumns: items: $ref: '#/components/schemas/ValuesColumn' type: array indexColumn: anyOf: - $ref: '#/components/schemas/PivotIndexColum' - items: $ref: '#/components/schemas/PivotIndexColum' type: array required: - valuesColumns type: object Metric: properties: fieldType: $ref: '#/components/schemas/FieldType.METRIC' type: $ref: '#/components/schemas/MetricType' name: type: string label: type: string table: type: string tableLabel: type: string sql: type: string description: type: string source: $ref: '#/components/schemas/Source' hidden: type: boolean compact: $ref: '#/components/schemas/CompactOrAlias' round: type: number format: double format: anyOf: - $ref: '#/components/schemas/Format' - type: string separator: $ref: '#/components/schemas/NumberSeparator' description: 'Number separator style for grouping/decimal characters. Composes with `format` (including ECMA-376 expressions) and `formatOptions` — it only controls the separator characters, not the format shape.' groupLabel: type: string deprecated: true groups: items: type: string type: array urls: items: $ref: '#/components/schemas/FieldUrl' type: array index: type: number format: double tags: items: type: string type: array parameterReferences: items: type: string type: array showUnderlyingValues: items: type: string type: array filters: items: $ref: '#/components/schemas/MetricFilterRule' type: array percentile: type: number format: double distinctKeys: items: type: string type: array formatOptions: $ref: '#/components/schemas/CustomFormat' dimensionReference: type: string requiredAttributes: $ref: '#/components/schemas/Record_string.string-or-string-Array_' anyAttributes: $ref: '#/components/schemas/Record_string.string-or-string-Array_' defaultTimeDimension: $ref: '#/components/schemas/DefaultTimeDimension' spotlight: properties: owner: type: string defaultFilter: $ref: '#/components/schemas/MetricFilterRule' defaultSegment: type: string segmentBy: items: type: string type: array filterBy: items: type: string type: array categories: items: type: string type: array visibility: type: string enum: - show - hide required: - visibility type: object drivers: items: type: string type: array aiHint: anyOf: - type: string - items: type: string type: array richText: type: string required: - fieldType - type - name - label - table - tableLabel - sql - hidden type: object additionalProperties: true ApiCreateEvaluationRequest: properties: prompts: items: $ref: '#/components/schemas/CreateEvaluationPrompt' type: array description: type: string title: type: string required: - prompts - title type: object RowLimit: properties: count: type: number format: double description: Number of rows to show or hide direction: type: string enum: - first - last description: Whether to target the first or last N rows mode: type: string enum: - show - hide description: Whether to show or hide the selected rows required: - count - direction - mode type: object Pick_Metric.formatOptions_: properties: formatOptions: $ref: '#/components/schemas/CustomFormat' type: object description: From T, pick a set of properties whose keys are in the union K DashboardTileTypes.LOOM: enum: - loom type: string Pick_Explore.Exclude_keyofExplore.unfilteredTables__: properties: name: type: string type: $ref: '#/components/schemas/ExploreType' spotlight: properties: owner: type: string categories: items: type: string type: array visibility: type: string enum: - show - hide required: - visibility type: object label: type: string parameters: $ref: '#/components/schemas/Record_string.LightdashProjectParameter_' tags: items: type: string type: array warehouse: type: string caseSensitive: type: boolean groupLabel: type: string deprecated: true groups: items: type: string type: array description: 'Nested groups for the sidebar (max 3 levels). Group keys resolve to labels/descriptions via the project-level `table_groups` config (fetched separately); missing keys fall back to using the key as the label.' baseTable: type: string joinedTables: items: $ref: '#/components/schemas/CompiledExploreJoin' type: array tables: properties: {} additionalProperties: $ref: '#/components/schemas/CompiledTable' type: object targetDatabase: $ref: '#/components/schemas/SupportedDbtAdapter' databricksCompute: type: string ymlPath: type: string sqlPath: type: string aiHint: anyOf: - type: string - items: type: string type: array savedParameterValues: $ref: '#/components/schemas/ParametersValuesMap' preAggregates: items: $ref: '#/components/schemas/PreAggregateDef' type: array preAggregateSource: $ref: '#/components/schemas/PreAggregateSource' warnings: items: $ref: '#/components/schemas/InlineError' type: array description: 'Non-fatal warnings from partial compilation. Present when some joins or fields failed to compile but the explore is still usable. Only populated when PARTIAL_COMPILATION_ENABLED=true.' required: - name - label - tags - baseTable - joinedTables - tables - targetDatabase type: object description: From T, pick a set of properties whose keys are in the union K TreemapChartConfig: properties: config: $ref: '#/components/schemas/TreemapChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.TREEMAP' description: Type of chart visualization required: - type type: object ApiAiAgentVerifiedArtifactsResponse: $ref: '#/components/schemas/ApiSuccess_KnexPaginatedData_AiAgentVerifiedArtifact-Array__' ApiRenameDashboardBody: properties: fixAll: type: boolean type: $ref: '#/components/schemas/RenameType' to: type: string from: type: string required: - type - to - from type: object UpdateMultipleDashboards: $ref: '#/components/schemas/Pick_Dashboard.uuid-or-name-or-description-or-spaceUuid_' ? Pick_ValidationErrorChartResponse.error-or-errorType-or-fieldName-or-name-or-projectUuid-or-chartUuid-or-source-or-chartName_ : properties: name: type: string projectUuid: type: string error: type: string source: $ref: '#/components/schemas/ValidationSourceType' errorType: $ref: '#/components/schemas/ValidationErrorType' fieldName: type: string chartUuid: type: string chartName: type: string required: - name - projectUuid - error - errorType type: object description: From T, pick a set of properties whose keys are in the union K FixedWidthBinDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.BIN' description: Type of custom dimension (bin or sql) dimensionId: $ref: '#/components/schemas/FieldId' description: Field ID of the parent dimension to bin binType: $ref: '#/components/schemas/BinType.FIXED_WIDTH' binWidth: type: number format: double required: - id - name - table - type - dimensionId - binType - binWidth type: object additionalProperties: true CreateDashboardValidation: $ref: '#/components/schemas/Pick_ValidationErrorDashboardResponse.error-or-errorType-or-fieldName-or-name-or-projectUuid-or-dashboardUuid-or-chartName-or-source_' MapChart: properties: saveMapExtent: type: boolean description: Save the current map zoom/position fieldConfig: $ref: '#/components/schemas/Record_string.MapFieldConfig_' description: Field-specific configuration for tooltips noDataColor: type: string description: Color for regions with no data (hex code) backgroundColor: type: string description: Background color for the map (hex code) darkModeTileBackground: $ref: '#/components/schemas/MapTileBackground' description: Map tile background style for dark mode (uses dark default when undefined) tileBackground: $ref: '#/components/schemas/MapTileBackground' description: Map tile background style dataLayerOpacity: type: number format: double description: Data layer opacity (0.1 to 1) hexbinConfig: properties: emptyBinColor: type: string nullable: true description: 'Fill color for empty bins. Hex6 (#rrggbb) = solid fill, hex8 (#rrggbbaa) = fill with alpha, null/undefined = outline only.' showEmptyBins: type: boolean description: 'Render outlined empty cells across the visible map area, so the user can see "where there is no data" relative to the hex grid.' aggregation: $ref: '#/components/schemas/MapHexbinAggregation' description: Aggregation applied when valueBasis = FIELD. Defaults to SUM. valueBasis: $ref: '#/components/schemas/MapHexbinValueBasis' description: 'What drives cell color: count of points (default) or an aggregation over a chosen value field (controlled via the chart''s `valueFieldId`).' fixedResolution: type: number format: double description: H3 resolution (0-15) used when sizingMode is FIXED. Ignored otherwise. sizingMode: $ref: '#/components/schemas/MapHexbinSizingMode' description: How bin size is determined. Defaults to DYNAMIC if unset. opacity: type: number format: double description: Opacity of hex polygons (0.1 to 1) type: object description: Configuration for H3 hexagonal binning visualization heatmapConfig: properties: opacity: type: number format: double description: Opacity of the heatmap layer blur: type: number format: double description: Blur amount for heat points radius: type: number format: double description: Radius of heat points type: object description: Configuration for heatmap visualization sizeFieldId: type: string description: Field ID for bubble size (scatter maps) maxBubbleSize: type: number format: double description: Maximum bubble size for scatter maps minBubbleSize: type: number format: double description: Minimum bubble size for scatter maps defaultCenterLon: type: number format: double description: Default center longitude defaultCenterLat: type: number format: double description: Default center latitude defaultZoom: type: number format: double description: Default zoom level colorOverrides: $ref: '#/components/schemas/Record_string.string_' description: Per-value color overrides for categorical color fields colorRange: items: type: string type: array description: Array of colors for the value gradient showLegend: type: boolean description: Show the map legend valueFieldId: type: string description: Field ID for the value to display geoJsonPropertyKey: type: string description: Property key in GeoJSON to match against data locationFieldId: type: string description: Field ID for location/region names (area maps) longitudeFieldId: type: string description: Field ID for longitude values latitudeFieldId: type: string description: Field ID for latitude values locationType: $ref: '#/components/schemas/MapChartType' description: How to display location data customGeoJsonUrl: type: string description: URL to custom GeoJSON file mapType: $ref: '#/components/schemas/MapChartLocation' description: Type of map to display type: object ApiSuccess_KnexPaginatedData_AiAgentVerifiedArtifact-Array__: properties: results: $ref: '#/components/schemas/KnexPaginatedData_AiAgentVerifiedArtifact-Array_' status: type: string enum: - ok nullable: false required: - results - status type: object Pick_Explore.name_: properties: name: type: string required: - name type: object description: From T, pick a set of properties whose keys are in the union K DbtProjectType.BITBUCKET: enum: - bitbucket type: string ApiAiAgentThreadCreateResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentThreadSummary_' DimensionOverrides: properties: {} additionalProperties: $ref: '#/components/schemas/Pick_Dimension.formatOptions_' type: object AiArtifactTSOACompat: allOf: - $ref: '#/components/schemas/Omit_AiArtifact.chartConfig-or-dashboardConfig_' - properties: dashboardConfig: allOf: - $ref: '#/components/schemas/Record_string.unknown_' nullable: true chartConfig: allOf: - $ref: '#/components/schemas/Record_string.unknown_' nullable: true required: - dashboardConfig - chartConfig type: object Pick_DashboardAsCode.Exclude_keyofDashboardAsCode.tiles-or-description__: properties: name: type: string minLength: 1 parameters: $ref: '#/components/schemas/DashboardParameters' slug: type: string pattern: ^[a-z0-9-]+$ updatedAt: type: string format: date-time description: Not modifiable by user, but useful to know if it has been updated. Defaults to now if omitted. version: type: number format: double verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true description: Detailed verification info (who/when). Read-only; ignored on upload. filters: properties: tableCalculations: items: $ref: '#/components/schemas/DashboardFilterRule' type: array metrics: items: $ref: '#/components/schemas/DashboardFilterRule' type: array dimensions: items: $ref: '#/components/schemas/Omit_DashboardFilterRule.id_' type: array type: object tabs: items: $ref: '#/components/schemas/DashboardTabAsCode' type: array config: $ref: '#/components/schemas/DashboardConfig' contentType: $ref: '#/components/schemas/ContentAsCodeType.DASHBOARD' spaceSlug: type: string downloadedAt: type: string format: date-time verified: type: boolean description: 'Declarative verification state. `true` verifies the dashboard on upload, `false` unverifies it, `undefined` leaves the current state untouched. Download sets this to `true` when the dashboard is verified.' required: - name - slug - version - tabs - spaceSlug type: object description: From T, pick a set of properties whose keys are in the union K RenameType: enum: - model - field type: string BinType.FIXED_NUMBER: enum: - fixed_number type: string ApiAiAgentVerifiedQuestionsResponse: $ref: '#/components/schemas/ApiSuccess__question-string--uuid-string_-Array_' DbtBitBucketProjectConfig: properties: type: $ref: '#/components/schemas/DbtProjectType.BITBUCKET' target: type: string environment: items: $ref: '#/components/schemas/DbtProjectEnvironmentVariable' type: array selector: type: string username: type: string personal_access_token: type: string repository: type: string branch: type: string project_sub_path: type: string host_domain: type: string required: - type - username - personal_access_token - repository - branch - project_sub_path type: object additionalProperties: true ApiSuccess__errors-CreateChartValidation-Array__: properties: results: properties: errors: items: $ref: '#/components/schemas/CreateChartValidation' type: array required: - errors type: object status: type: string enum: - ok nullable: false required: - results - status type: object TableCalculationTemplateType.PERCENT_OF_PREVIOUS_VALUE: enum: - percent_of_previous_value type: string DashboardTileTypes: enum: - saved_chart - sql_chart - markdown - loom - heading - data_app type: string ? Pick_Pick_SavedChart.name-or-description-or-tableName-or-metricQuery-or-chartConfig-or-pivotConfig-or-slug-or-parameters_.Exclude_keyofPick_SavedChart.name-or-description-or-tableName-or-metricQuery-or-chartConfig-or-pivotConfig-or-slug-or-parameters_.metricQuery__ : properties: description: type: string description: Optional description of what this chart displays name: type: string description: Display name of the chart parameters: $ref: '#/components/schemas/ParametersValuesMap' description: Parameter values for the chart query slug: type: string description: Unique identifier slug for this chart chartConfig: $ref: '#/components/schemas/ChartConfig' description: Visualization configuration for the chart tableName: type: string description: The explore/table name this chart queries from pivotConfig: properties: columns: items: type: string type: array required: - columns type: object description: Pivot table configuration required: - name - slug - chartConfig - tableName type: object description: From T, pick a set of properties whose keys are in the union K ApiCreateTagResponse: properties: results: properties: tagUuid: type: string required: - tagUuid type: object status: type: string enum: - ok nullable: false required: - results - status type: object PreAggregateMissReason.EXPLORE_RESOLUTION_ERROR: enum: - explore_resolution_error type: string ApiSuccess_AiAgentEvaluationSummary-Array_: properties: results: items: $ref: '#/components/schemas/AiAgentEvaluationSummary' type: array status: type: string enum: - ok nullable: false required: - results - status type: object SpaceAccess: properties: inheritedFrom: type: string enum: - organization - project - group - space_group - parent_space inheritedRole: anyOf: - $ref: '#/components/schemas/OrganizationMemberRole' - $ref: '#/components/schemas/ProjectMemberRole' projectRole: $ref: '#/components/schemas/ProjectMemberRole' hasDirectAccess: type: boolean role: $ref: '#/components/schemas/SpaceMemberRole' userUuid: type: string required: - hasDirectAccess - role - userUuid type: object UserActivity: properties: chartViews: items: $ref: '#/components/schemas/ActivityViews' type: array userMostViewedDashboards: items: allOf: - $ref: '#/components/schemas/UserWithCount' - properties: dashboardUuid: type: string dashboardName: type: string required: - dashboardUuid - dashboardName type: object type: array dashboardViews: items: $ref: '#/components/schemas/ActivityViews' type: array chartWeeklyAverageQueries: items: properties: average_number_of_weekly_queries_per_user: type: string date: type: string format: date-time required: - average_number_of_weekly_queries_per_user - date type: object type: array chartWeeklyQueryingUsers: items: properties: percent_7d_active_users: type: string num_7d_active_users: type: string date: type: string format: date-time required: - percent_7d_active_users - num_7d_active_users - date type: object type: array tableNoQueries: items: $ref: '#/components/schemas/UserWithCount' type: array tableMostCreatedCharts: items: $ref: '#/components/schemas/UserWithCount' type: array tableMostQueries: items: $ref: '#/components/schemas/UserWithCount' type: array numberWeeklyQueryingUsers: type: number format: double numberAdmins: type: number format: double numberEditors: type: number format: double numberInteractiveViewers: type: number format: double numberViewers: type: number format: double numberUsers: type: number format: double required: - chartViews - userMostViewedDashboards - dashboardViews - chartWeeklyAverageQueries - chartWeeklyQueryingUsers - tableNoQueries - tableMostCreatedCharts - tableMostQueries - numberWeeklyQueryingUsers - numberAdmins - numberEditors - numberInteractiveViewers - numberViewers - numberUsers type: object ApiSuccess_undefined_: properties: results: {} status: type: string enum: - ok nullable: false required: - status type: object FormulaTableCalculation: allOf: - $ref: '#/components/schemas/TableCalculationBase' - properties: formula: type: string description: Spreadsheet-like formula compiled to SQL at query time required: - formula type: object LightdashProjectParameter: properties: options_from_dimension: properties: dimension: type: string model: type: string required: - dimension - model type: object options: anyOf: - items: type: string type: array - items: type: number format: double type: array allow_custom_values: type: boolean multiple: type: boolean default: $ref: '#/components/schemas/ParameterValue' type: type: string enum: - string - number - date description: type: string label: type: string required: - label type: object DashboardSqlChartTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardSqlChartTileProperties' PreAggregateMissReason.METRIC_NOT_IN_PRE_AGGREGATE: enum: - metric_not_in_pre_aggregate type: string Pick_DashboardSqlChartTileProperties-at-properties.title-or-hideTitle-or-chartName_: properties: title: type: string chartName: type: string hideTitle: type: boolean required: - chartName type: object description: From T, pick a set of properties whose keys are in the union K SslConfiguration: properties: sslrootcert: type: string nullable: true sslrootcertFileName: type: string sslkey: type: string nullable: true sslkeyFileName: type: string sslcert: type: string nullable: true sslcertFileName: type: string sslmode: type: string type: object ApiAiAgentSqlApprovalResponse: $ref: '#/components/schemas/ApiSuccess__decision-approved-or-rejected__' UpdateDefaultUserSpaces: properties: hasDefaultUserSpaces: type: boolean required: - hasDefaultUserSpaces type: object FrameType: enum: - rows - range type: string FilterGroupItemInput: anyOf: - $ref: '#/components/schemas/FilterGroupInput' - $ref: '#/components/schemas/FilterRuleInput' Pick_SqlChartAsCode.Exclude_keyofSqlChartAsCode.config-or-description__: properties: name: type: string limit: type: number format: double slug: type: string updatedAt: type: string format: date-time version: type: number format: double contentType: $ref: '#/components/schemas/ContentAsCodeType.SQL_CHART' spaceSlug: type: string downloadedAt: type: string format: date-time sql: type: string chartKind: $ref: '#/components/schemas/ChartKind' required: - name - limit - slug - version - spaceSlug - sql - chartKind type: object description: From T, pick a set of properties whose keys are in the union K FieldId: type: string SortByDirection: enum: - ASC - DESC type: string CreateChartInDashboard: allOf: - $ref: '#/components/schemas/CreateChartBase' - properties: spaceUuid: type: number enum: - null nullable: true dashboardUuid: type: string required: - dashboardUuid type: object BigNumber: properties: comparisonField: type: string conditionalFormattings: items: $ref: '#/components/schemas/ConditionalFormattingConfig' type: array description: Conditional formatting rules comparisonLabel: type: string description: Custom label for the comparison value flipColors: type: boolean description: Flip positive/negative colors (red for increase, green for decrease) comparisonFormat: $ref: '#/components/schemas/ComparisonFormatTypes' description: Format for comparison value showComparison: type: boolean description: Show comparison with previous value showTableNamesInLabel: type: boolean description: Include table name in the label showBigNumberLabel: type: boolean description: Show the label above the number selectedField: type: string description: Field ID to display as the big number style: $ref: '#/components/schemas/CompactOrAlias' description: Number formatting style (compact notation) label: type: string description: Custom label for the big number type: object ApiUpdateUserAgentPreferencesResponse: $ref: '#/components/schemas/ApiSuccessEmpty' DefaultTimeDimension: properties: interval: $ref: '#/components/schemas/TimeFrames' field: type: string required: - interval - field type: object AiMcpCredentialScope: type: string enum: - shared - user CreateDashboardLoomTile: allOf: - $ref: '#/components/schemas/CreateDashboardTileBase' - $ref: '#/components/schemas/DashboardLoomTileProperties' SummaryExplore: anyOf: - allOf: - $ref: '#/components/schemas/Pick_Explore.SummaryExploreFields_' - $ref: '#/components/schemas/SummaryExtraFields' - allOf: - $ref: '#/components/schemas/Pick_ExploreError.SummaryExploreErrorFields_' - $ref: '#/components/schemas/Partial_SummaryExtraFields_' DbtGithubProjectConfig: properties: type: $ref: '#/components/schemas/DbtProjectType.GITHUB' target: type: string environment: items: $ref: '#/components/schemas/DbtProjectEnvironmentVariable' type: array selector: type: string authorization_method: type: string enum: - personal_access_token - installation_id personal_access_token: type: string installation_id: type: string repository: type: string branch: type: string project_sub_path: type: string host_domain: type: string required: - type - authorization_method - repository - branch - project_sub_path type: object additionalProperties: true SummaryExtraFields: properties: databaseName: type: string schemaName: type: string description: type: string required: - databaseName - schemaName type: object FieldTarget: properties: fieldId: type: string description: Field ID to filter on required: - fieldId type: object CreateDucklakeDataPathAzure: properties: accountKey: type: string accountName: type: string connectionString: type: string url: type: string type: $ref: '#/components/schemas/DucklakeDataPathType.AZURE' required: - url - type type: object Omit_CreateSnowflakeCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreateSnowflakeCredentials.Exclude_keyofCreateSnowflakeCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. DbtProjectConfig: anyOf: - $ref: '#/components/schemas/DbtLocalProjectConfig' - $ref: '#/components/schemas/DbtCloudIDEProjectConfig' - $ref: '#/components/schemas/DbtGithubProjectConfig' - $ref: '#/components/schemas/DbtBitBucketProjectConfig' - $ref: '#/components/schemas/DbtGitlabProjectConfig' - $ref: '#/components/schemas/DbtAzureDevOpsProjectConfig' - $ref: '#/components/schemas/DbtNoneProjectConfig' - $ref: '#/components/schemas/DbtManifestProjectConfig' Record_string.string-or-string-Array_: properties: {} additionalProperties: anyOf: - type: string - items: type: string type: array type: object description: Construct a type with a set of properties K of type T WarehouseTypes.DATABRICKS: enum: - databricks type: string PreAggregateMissReason.USER_BYPASS: enum: - user_bypass type: string ApiUpdateUserAgentPreferences: $ref: '#/components/schemas/AiAgentUserPreferences' PreAggregateMatchMiss: anyOf: - properties: reason: $ref: '#/components/schemas/PreAggregateMissReason.NO_PRE_AGGREGATES_DEFINED' required: - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.DIMENSION_NOT_IN_PRE_AGGREGATE' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.METRIC_NOT_IN_PRE_AGGREGATE' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.NON_ADDITIVE_METRIC' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.CUSTOM_SQL_METRIC' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.FILTER_DIMENSION_NOT_IN_PRE_AGGREGATE' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.PRE_AGGREGATE_FILTER_NOT_SATISFIED' required: - fieldId - reason type: object - properties: preAggregateTimeDimension: type: string preAggregateGranularity: $ref: '#/components/schemas/TimeFrames' queryGranularity: $ref: '#/components/schemas/TimeFrames' fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.GRANULARITY_TOO_FINE' required: - preAggregateTimeDimension - preAggregateGranularity - queryGranularity - fieldId - reason type: object - properties: reason: $ref: '#/components/schemas/PreAggregateMissReason.CUSTOM_DIMENSION_PRESENT' required: - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.CUSTOM_METRIC_PRESENT' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.TABLE_CALCULATION_PRESENT' required: - fieldId - reason type: object - properties: preAggregateName: type: string reason: $ref: '#/components/schemas/PreAggregateMissReason.USER_BYPASS' required: - preAggregateName - reason type: object - properties: reason: $ref: '#/components/schemas/PreAggregateMissReason.EXPLORE_RESOLUTION_ERROR' required: - reason type: object - properties: reason: $ref: '#/components/schemas/PreAggregateMissReason.NO_ACTIVE_MATERIALIZATION' required: - reason type: object Partial_Pick_DbTag.name-or-color__: properties: name: type: string color: type: string type: object description: Make all properties in T optional DataTimezonePreviewNaive: properties: rendered: type: string readAs: type: string raw: type: string interpretedAs: type: string required: - rendered - readAs - raw - interpretedAs type: object ? PartialObjectDeep___91_x-string_93__58__description_63_-string-or-undefined--name_63_-string-or-undefined--chartConfig_63__58__type-ChartType.CARTESIAN--config_63__58__eChartsConfig_58__series_63__58__name_63_-string-or-undefined--markLine_63__58__data_58__name_63_-string-or-undefined_-Array_-or-undefined_-Array-or-undefined--xAxis_63__58__name_63_-string-or-undefined_-Array-or-undefined--yAxis_63__58__name_63_-string-or-undefined_-Array-or-undefined__-or-undefined_-or-_type-ChartType.PIE--config_63__58__groupLabelOverrides_63_-Record_string.string_-or-undefined_-or-undefined_-or-_type-ChartType.FUNNEL--config_63__58__labelOverrides_63_-Record_string.string_-or-undefined_-or-undefined_-or-_type-ChartType.BIG_NUMBER--config_63__58__label_63_-string-or-undefined--comparisonLabel_63_-string-or-undefined--comparisonField_63_-string-or-undefined_-or-undefined_-or-_type-ChartType.TABLE--config_63__58__columns_63_-Record_string._name-string__-or-undefined_-or-undefined_-or-_type-ChartType.CUSTOM--config_63__58__spec_63_-Record_string.unknown_-or-undefined_-or-undefined_-or-undefined__._recurseIntoArrays-true__ : properties: {} type: object description: Same as `PartialDeep`, but accepts only `object`s as inputs. Internal helper for `PartialDeep`. PromotionChanges: properties: dataApps: items: properties: data: $ref: '#/components/schemas/PromotedApp' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array sqlCharts: items: properties: data: $ref: '#/components/schemas/PromotedSqlChart' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array charts: items: properties: data: $ref: '#/components/schemas/PromotedChart' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array dashboards: items: properties: data: $ref: '#/components/schemas/PromotedDashboard' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array spaces: items: properties: data: $ref: '#/components/schemas/PromotedSpace' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array required: - charts - dashboards - spaces type: object DashboardMarkdownTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardMarkdownTileProperties' CompactOrAlias: anyOf: - $ref: '#/components/schemas/Compact' - type: string enum: - K - thousand - M - million - B - billion - T - trillion - KB - kilobyte - MB - megabyte - GB - gigabyte - TB - terabyte - PB - petabyte - KiB - kibibyte - MiB - mebibyte - GiB - gibibyte - TiB - tebibyte - PiB - pebibyte CustomVisConfig: properties: config: $ref: '#/components/schemas/CustomVis' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.CUSTOM' description: Type of chart visualization required: - type type: object BinGroup: properties: values: items: $ref: '#/components/schemas/GroupValueRule' type: array description: Rules that match values into this group name: type: string description: Display name for this group (e.g. "North America") required: - values - name type: object Record_string._type-DimensionType__: properties: {} additionalProperties: properties: type: $ref: '#/components/schemas/DimensionType' required: - type type: object type: object description: Construct a type with a set of properties K of type T ApiUserActivity: properties: results: $ref: '#/components/schemas/UserActivity' status: type: string enum: - ok nullable: false required: - results - status type: object Omit_CreateClickhouseCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreateClickhouseCredentials.Exclude_keyofCreateClickhouseCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. AiAgent: $ref: '#/components/schemas/Pick_BaseAiAgent.uuid-or-projectUuid-or-organizationUuid-or-integrations-or-tags-or-name-or-description-or-createdAt-or-updatedAt-or-instruction-or-imageUrl-or-groupAccess-or-userAccess-or-spaceAccess-or-enableDataAccess-or-enableSelfImprovement-or-enableContentTools-or-version_' CreateAthenaCredentials: properties: dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true requireUserCredentials: type: boolean numRetries: type: number format: double threads: type: number format: double workGroup: type: string assumeRoleExternalId: type: string assumeRoleArn: type: string secretAccessKey: type: string accessKeyId: type: string authenticationType: $ref: '#/components/schemas/AthenaAuthenticationType' s3DataDir: type: string s3StagingDir: type: string schema: type: string database: type: string region: type: string type: $ref: '#/components/schemas/WarehouseTypes.ATHENA' required: - s3StagingDir - schema - database - region - type type: object ApiAiAgentProjectThreadSummaryListResponse: $ref: '#/components/schemas/ApiSuccess_KnexPaginatedData_AiAgentProjectThreadSummary-Array__' ApiSetExploresResponse: properties: results: $ref: '#/components/schemas/ApiDeployExploresResults' status: type: string enum: - ok nullable: false required: - results - status type: object CreateEvaluationPrompt: anyOf: - properties: expectedResponse: type: string nullable: true prompt: type: string required: - expectedResponse - prompt type: object - properties: expectedResponse: type: string nullable: true threadUuid: type: string promptUuid: type: string required: - expectedResponse - threadUuid - promptUuid type: object description: 'Represents a prompt for evaluation that can be either: - An object with a prompt string for new prompts - An object referencing an existing prompt and thread by their UUIDs' ContentAsCodeType.SQL_CHART: enum: - sql_chart type: string BigqueryDataset: properties: datasetId: type: string location: type: string projectId: type: string required: - datasetId - projectId type: object DashboardTileTypes.MARKDOWN: enum: - markdown type: string TableCalculationTemplateType.PERCENT_CHANGE_FROM_PREVIOUS: enum: - percent_change_from_previous type: string DashboardHeadingTileAsCode: allOf: - $ref: '#/components/schemas/DashboardTileAsCodeBase' - properties: properties: properties: showDivider: type: boolean text: type: string title: {} required: - text type: object type: $ref: '#/components/schemas/DashboardTileTypes.HEADING' required: - properties - type type: object TooltipSortBy: type: string enum: - default - alphabetical - value_ascending - value_descending Record_string.SeriesMetadata_: properties: {} additionalProperties: $ref: '#/components/schemas/SeriesMetadata' type: object description: Construct a type with a set of properties K of type T Pick_CreateDucklakeDataPathAzure.Exclude_keyofCreateDucklakeDataPathAzure.connectionString-or-accountKey__: properties: type: $ref: '#/components/schemas/DucklakeDataPathType.AZURE' url: type: string accountName: type: string required: - type - url type: object description: From T, pick a set of properties whose keys are in the union K SortField: properties: pivotValues: items: $ref: '#/components/schemas/PivotSortAnchor' type: array description: Pins the row-sort anchor to a specific pivot column. Ignored for non-pivoted results. nullsFirst: type: boolean description: Sort null values first descending: type: boolean description: Sort in descending order fieldId: type: string description: Field ID to sort by required: - descending - fieldId type: object NumberSeparator: enum: - default - commaPeriod - spacePeriod - periodComma - noSeparatorPeriod - apostrophePeriod type: string CustomBinDimension: anyOf: - $ref: '#/components/schemas/FixedNumberBinDimension' - $ref: '#/components/schemas/FixedWidthBinDimension' - $ref: '#/components/schemas/CustomRangeBinDimension' - $ref: '#/components/schemas/CustomGroupBinDimension' CreateSnowflakeCredentials: properties: organizationWarehouseCredentialsUuid: type: string override: type: boolean timeoutSeconds: type: number format: double disableTimestampConversion: type: boolean quotedIdentifiersIgnoreCase: type: boolean dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true accessUrl: type: string queryTag: type: string clientSessionKeepAlive: type: boolean threads: type: number format: double schema: type: string warehouse: type: string database: type: string role: type: string token: type: string refreshToken: type: string authenticationType: $ref: '#/components/schemas/SnowflakeAuthenticationType' privateKeyPass: type: string privateKey: type: string requireUserCredentials: type: boolean password: type: string user: type: string account: type: string type: $ref: '#/components/schemas/WarehouseTypes.SNOWFLAKE' required: - schema - warehouse - database - user - account - type type: object DbtGitlabProjectConfig: properties: type: $ref: '#/components/schemas/DbtProjectType.GITLAB' target: type: string environment: items: $ref: '#/components/schemas/DbtProjectEnvironmentVariable' type: array selector: type: string personal_access_token: type: string repository: type: string branch: type: string project_sub_path: type: string host_domain: type: string required: - type - personal_access_token - repository - branch - project_sub_path type: object additionalProperties: true CreateChartBase: $ref: '#/components/schemas/Pick_SavedChart.name-or-description-or-tableName-or-metricQuery-or-pivotConfig-or-chartConfig-or-tableConfig-or-parameters_' AiAgentMessageAssistantArtifact: $ref: '#/components/schemas/Pick_AiArtifact.artifactUuid-or-versionNumber-or-versionUuid-or-title-or-description-or-artifactType_' VizTableDisplay: properties: {} type: object DbtProjectType.DBT_CLOUD_IDE: enum: - dbt_cloud_ide type: string ? Partial_Pick_AiAgent.projectUuid-or-integrations-or-tags-or-name-or-description-or-instruction-or-imageUrl-or-groupAccess-or-userAccess-or-spaceAccess-or-enableDataAccess-or-enableSelfImprovement-or-enableContentTools-or-version__ : properties: description: type: string nullable: true name: type: string projectUuid: type: string userAccess: items: type: string type: array integrations: items: properties: channelId: type: string type: type: string enum: - slack nullable: false required: - channelId - type type: object type: array tags: items: type: string type: array nullable: true instruction: type: string nullable: true imageUrl: type: string nullable: true groupAccess: items: type: string type: array spaceAccess: items: type: string type: array enableDataAccess: type: boolean enableSelfImprovement: type: boolean enableContentTools: type: boolean version: type: number format: double type: object description: Make all properties in T optional ApiAiAgentEvaluationRunResultsResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentEvaluationRun_' Pick_AiAgentMcpServerTool.toolName-or-enabled_: properties: toolName: type: string enabled: type: boolean required: - toolName - enabled type: object description: From T, pick a set of properties whose keys are in the union K SankeyChartConfig: properties: config: $ref: '#/components/schemas/SankeyChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.SANKEY' description: Type of chart visualization required: - type type: object DbtVersionOption: anyOf: - $ref: '#/components/schemas/SupportedDbtVersions' - $ref: '#/components/schemas/DbtVersionOptionLatest' AiAgentMcpToolName: type: string ApiAiAgentArtifactResponseTSOACompat: $ref: '#/components/schemas/ApiSuccess_AiArtifactTSOACompat_' CreateDashboard: properties: colorPaletteUuid: type: string nullable: true config: $ref: '#/components/schemas/DashboardConfig' tabs: items: $ref: '#/components/schemas/DashboardTab' type: array spaceUuid: type: string updatedByUser: $ref: '#/components/schemas/Pick_UpdatedByUser.userUuid_' pinnedParameters: items: type: string type: array parameters: $ref: '#/components/schemas/DashboardParameters' filters: $ref: '#/components/schemas/DashboardFilters' tiles: items: anyOf: - $ref: '#/components/schemas/CreateDashboardChartTile' - $ref: '#/components/schemas/CreateDashboardMarkdownTile' - $ref: '#/components/schemas/CreateDashboardLoomTile' - $ref: '#/components/schemas/CreateDashboardSqlChartTile' - $ref: '#/components/schemas/CreateDashboardHeadingTile' - $ref: '#/components/schemas/CreateDashboardDataAppTile' type: array description: type: string name: type: string required: - tabs - tiles - name type: object ApiAiAgentThreadStreamRequest: properties: toolHints: items: type: string type: array description: 'Tool names hinted by the user when they composed the message (via suggestion chips that carry a tool id). agentV2 appends a soft hint to the user message before sending it to the LLM. Transient — never persisted.' enableSqlMode: type: boolean description: 'Per-thread toggle that decides whether the agent gets access to the runSql / listWarehouseTables / describeWarehouseTable tools for this stream. Frontend tracks the toggle in its slice; passed in on every stream call. Falls back to `false` when omitted (e.g. older clients, API callers) so the safer "semantic layer only" mode is the default.' type: object DashboardFilters: properties: tableCalculations: items: $ref: '#/components/schemas/DashboardFilterRule' type: array metrics: items: $ref: '#/components/schemas/DashboardFilterRule' type: array dimensions: items: $ref: '#/components/schemas/DashboardFilterRule' type: array required: - tableCalculations - metrics - dimensions type: object AxisSide: enum: - 0 - 1 type: number AiAgentSummary: $ref: '#/components/schemas/Pick_AiAgent.uuid-or-name-or-description-or-integrations-or-tags-or-projectUuid-or-organizationUuid-or-createdAt-or-updatedAt-or-instruction-or-imageUrl-or-groupAccess-or-userAccess-or-spaceAccess-or-enableDataAccess-or-enableSelfImprovement-or-enableContentTools-or-version_' DashboardTileBase: $ref: '#/components/schemas/Required_CreateDashboardTileBase_' ApiGetDashboardsResponse: properties: results: items: $ref: '#/components/schemas/DashboardBasicDetailsWithTileTypes' type: array status: type: string enum: - ok nullable: false required: - results - status type: object CreateDucklakeCatalogDuckdb: properties: path: type: string type: $ref: '#/components/schemas/DucklakeCatalogType.DUCKDB' required: - path - type type: object Pick_CreateBigqueryCredentials.Exclude_keyofCreateBigqueryCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.BIGQUERY' requireUserCredentials: type: boolean authenticationType: $ref: '#/components/schemas/BigqueryAuthenticationType' threads: type: number format: double accessUrl: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string timeoutSeconds: type: number format: double project: type: string dataset: type: string priority: type: string enum: - interactive - batch retries: type: number format: double location: type: string maximumBytesBilled: type: number format: double executionProject: type: string required: - type - project - dataset type: object description: From T, pick a set of properties whose keys are in the union K XAxisSortType: enum: - default - category - bar_totals type: string ApiUpstreamDiffResponse: properties: results: $ref: '#/components/schemas/ApiUpstreamDiffResults' status: type: string enum: - ok nullable: false required: - results - status type: object PreAggregateMissReason.PRE_AGGREGATE_FILTER_NOT_SATISFIED: enum: - pre_aggregate_filter_not_satisfied type: string DataTimezonePreviewAware: properties: rendered: type: string raw: type: string required: - rendered - raw type: object ApiAiAgentEvaluationResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentEvaluation_' DashboardDataAppTileProperties: properties: properties: properties: appDeletedAt: type: string nullable: true appUuid: type: string hideTitle: type: boolean title: type: string required: - appUuid - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.DATA_APP' required: - properties - type type: object Omit_CreateTrinoCredentials.SensitiveCredentialsFieldNames_: $ref: '#/components/schemas/Pick_CreateTrinoCredentials.Exclude_keyofCreateTrinoCredentials.SensitiveCredentialsFieldNames__' description: Construct a type with the properties of T except for those in type K. ViewStatistics: properties: firstViewedAt: anyOf: - type: string format: date-time - type: string nullable: true views: type: number format: double required: - firstViewedAt - views type: object BinType.CUSTOM_RANGE: enum: - custom_range type: string DuckdbMotherduckCredentials: $ref: '#/components/schemas/Omit_CreateDuckdbMotherduckCredentials.SensitiveCredentialsFieldNames_' Pick_CreateBigqueryCredentials.type_: properties: type: $ref: '#/components/schemas/WarehouseTypes.BIGQUERY' required: - type type: object description: From T, pick a set of properties whose keys are in the union K ApiAiAgentThreadMessageVizQueryResponse: properties: results: $ref: '#/components/schemas/ApiAiAgentThreadMessageVizQuery' status: type: string enum: - ok nullable: false required: - results - status type: object VizSortBy: properties: pivotValues: items: $ref: '#/components/schemas/PivotSortAnchor' type: array description: Pins the row-sort anchor to a specific pivot column. nullsFirst: type: boolean direction: $ref: '#/components/schemas/SortByDirection' reference: type: string required: - direction - reference type: object ActivityViews: properties: name: type: string uuid: type: string count: type: number format: double required: - name - uuid - count type: object ? PartialObjectDeep__chart_58___91_x-string_93__58__description_63_-string-or-undefined--name_63_-string-or-undefined--chartConfig_63__58__type-ChartType.CARTESIAN--config_63__58__eChartsConfig_58__series_63__58__name_63_-string-or-undefined--markLine_63__58__data_58__name_63_-string-or-undefined_-Array_-or-undefined_-Array-or-undefined--xAxis_63__58__name_63_-string-or-undefined_-Array-or-undefined--yAxis_63__58__name_63_-string-or-undefined_-Array-or-undefined__-or-undefined_-or-_type-ChartType.PIE--config_63__58__groupLabelOverrides_63_-Record_string.string_-or-undefined_-or-undefined_-or-_type-ChartType.FUNNEL--config_63__58__labelOverrides_63_-Record_string.string_-or-undefined_-or-undefined_-or-_type-ChartType.BIG_NUMBER--config_63__58__label_63_-string-or-undefined--comparisonLabel_63_-string-or-undefined--comparisonField_63_-string-or-undefined_-or-undefined_-or-_type-ChartType.TABLE--config_63__58__columns_63_-Record_string._name-string__-or-undefined_-or-undefined_-or-_type-ChartType.CUSTOM--config_63__58__spec_63_-Record_string.unknown_-or-undefined_-or-undefined_-or-undefined___._recurseIntoArrays-true__ : properties: chart: $ref: '#/components/schemas/PartialObjectDeep___91_x-string_93__58__description_63_-string-or-undefined--name_63_-string-or-undefined--chartConfig_63__58__type-ChartType.CARTESIAN--config_63__58__eChartsConfig_58__series_63__58__name_63_-string-or-undefined--markLine_63__58__data_58__name_63_-string-or-undefined_-Array_-or-undefined_-Array-or-undefined--xAxis_63__58__name_63_-string-or-undefined_-Array-or-undefined--yAxis_63__58__name_63_-string-or-undefined_-Array-or-undefined__-or-undefined_-or-_type-ChartType.PIE--config_63__58__groupLabelOverrides_63_-Record_string.string_-or-undefined_-or-undefined_-or-_type-ChartType.FUNNEL--config_63__58__labelOverrides_63_-Record_string.string_-or-undefined_-or-undefined_-or-_type-ChartType.BIG_NUMBER--config_63__58__label_63_-string-or-undefined--comparisonLabel_63_-string-or-undefined--comparisonField_63_-string-or-undefined_-or-undefined_-or-_type-ChartType.TABLE--config_63__58__columns_63_-Record_string._name-string__-or-undefined_-or-undefined_-or-_type-ChartType.CUSTOM--config_63__58__spec_63_-Record_string.unknown_-or-undefined_-or-undefined_-or-undefined__._recurseIntoArrays-true__' type: object description: Same as `PartialDeep`, but accepts only `object`s as inputs. Internal helper for `PartialDeep`. AiPromptContext: items: $ref: '#/components/schemas/AiPromptContextItem' type: array InlineErrorType: enum: - METADATA_PARSE_ERROR - NO_DIMENSIONS_FOUND - SKIPPED_JOIN - MISSING_TABLE - FIELD_ERROR - SET_VALIDATION_ERROR - INVALID_PARAMETER - DUPLICATE_FIELD_NAME type: string CreatePostgresCredentials: allOf: - $ref: '#/components/schemas/SshTunnelConfiguration' - $ref: '#/components/schemas/SslConfiguration' - properties: timeoutSeconds: type: number format: double dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true role: type: string searchPath: type: string keepalivesIdle: type: number format: double threads: type: number format: double schema: type: string dbname: type: string port: type: number format: double requireUserCredentials: type: boolean password: type: string user: type: string host: type: string type: $ref: '#/components/schemas/WarehouseTypes.POSTGRES' required: - schema - dbname - port - password - user - host - type type: object ApiChartAsCodeUpsertResponse: properties: results: $ref: '#/components/schemas/PromotionChanges' status: type: string enum: - ok nullable: false required: - results - status type: object ? Pick_SavedChart.uuid-or-name-or-description-or-spaceName-or-spaceUuid-or-projectUuid-or-organizationUuid-or-pinnedListUuid-or-dashboardUuid-or-dashboardName-or-slug_ : properties: description: type: string description: Optional description of what this chart displays name: type: string description: Display name of the chart projectUuid: type: string organizationUuid: type: string uuid: type: string pinnedListUuid: type: string nullable: true slug: type: string description: Unique identifier slug for this chart spaceUuid: type: string dashboardUuid: type: string nullable: true spaceName: type: string dashboardName: type: string nullable: true required: - name - projectUuid - organizationUuid - uuid - pinnedListUuid - slug - spaceUuid - dashboardUuid - spaceName - dashboardName type: object description: From T, pick a set of properties whose keys are in the union K ApiUpdateEvaluationRequest: properties: prompts: items: $ref: '#/components/schemas/CreateEvaluationPrompt' type: array description: type: string title: type: string type: object ApiSuccess_ReadinessScore_: properties: results: $ref: '#/components/schemas/ReadinessScore' status: type: string enum: - ok nullable: false required: - results - status type: object ApiRenameResponse: properties: results: properties: dashboardSchedulers: items: $ref: '#/components/schemas/RenameChange' type: array alerts: items: $ref: '#/components/schemas/RenameChange' type: array dashboards: items: $ref: '#/components/schemas/RenameChange' type: array charts: items: $ref: '#/components/schemas/RenameChange' type: array required: - dashboardSchedulers - alerts - dashboards - charts type: object status: type: string enum: - ok nullable: false required: - results - status type: object ApiUserActivityDownloadCsv: properties: status: type: string enum: - ok nullable: false results: type: string required: - status - results type: object PromotionAction: enum: - no changes - create - update - delete type: string CreateDuckdbDucklakeCredentials: properties: dataTimezone: type: string startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true requireUserCredentials: type: boolean threads: type: number format: double catalogAlias: type: string schema: type: string dataPath: $ref: '#/components/schemas/CreateDucklakeDataPath' catalog: $ref: '#/components/schemas/CreateDucklakeCatalog' connectionType: $ref: '#/components/schemas/DuckdbConnectionType.DUCKLAKE' type: $ref: '#/components/schemas/WarehouseTypes.DUCKDB' required: - schema - dataPath - catalog - connectionType - type type: object Omit_ValidationResponseBase.name_: $ref: '#/components/schemas/Pick_ValidationResponseBase.Exclude_keyofValidationResponseBase.name__' description: Construct a type with the properties of T except for those in type K. ApiAiAgentSqlApprovalRequest: properties: decision: type: string enum: - approved - rejected required: - decision type: object Partial_Explore_: properties: name: type: string label: type: string tags: items: type: string type: array groupLabel: type: string deprecated: true groups: items: type: string type: array description: 'Nested groups for the sidebar (max 3 levels). Group keys resolve to labels/descriptions via the project-level `table_groups` config (fetched separately); missing keys fall back to using the key as the label.' baseTable: type: string joinedTables: items: $ref: '#/components/schemas/CompiledExploreJoin' type: array tables: properties: {} additionalProperties: $ref: '#/components/schemas/CompiledTable' type: object unfilteredTables: properties: {} additionalProperties: $ref: '#/components/schemas/CompiledTable' type: object targetDatabase: $ref: '#/components/schemas/SupportedDbtAdapter' warehouse: type: string databricksCompute: type: string ymlPath: type: string sqlPath: type: string type: $ref: '#/components/schemas/ExploreType' caseSensitive: type: boolean spotlight: properties: owner: type: string categories: items: type: string type: array visibility: type: string enum: - show - hide required: - visibility type: object aiHint: anyOf: - type: string - items: type: string type: array parameters: $ref: '#/components/schemas/Record_string.LightdashProjectParameter_' savedParameterValues: $ref: '#/components/schemas/ParametersValuesMap' preAggregates: items: $ref: '#/components/schemas/PreAggregateDef' type: array preAggregateSource: $ref: '#/components/schemas/PreAggregateSource' warnings: items: $ref: '#/components/schemas/InlineError' type: array description: 'Non-fatal warnings from partial compilation. Present when some joins or fields failed to compile but the explore is still usable. Only populated when PARTIAL_COMPILATION_ENABLED=true.' type: object description: Make all properties in T optional CustomRangeBinDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.BIN' description: Type of custom dimension (bin or sql) dimensionId: $ref: '#/components/schemas/FieldId' description: Field ID of the parent dimension to bin binType: $ref: '#/components/schemas/BinType.CUSTOM_RANGE' customRange: items: $ref: '#/components/schemas/BinRange' type: array required: - id - name - table - type - dimensionId - binType - customRange type: object additionalProperties: true PivotSortAnchor: properties: value: anyOf: - type: string - type: number format: double - type: boolean nullable: true reference: type: string required: - value - reference type: object description: 'Coordinates of a single pivot column, used to anchor a row sort to that specific column when results are pivoted.' ExploreError: allOf: - $ref: '#/components/schemas/Partial_Explore_' - $ref: '#/components/schemas/Pick_Explore.name-or-label-or-groupLabel-or-groups_' - properties: errors: items: $ref: '#/components/schemas/InlineError' type: array required: - errors type: object ValidationTarget: enum: - charts - dashboards - tables type: string Record_string.ParameterValue_: properties: {} additionalProperties: $ref: '#/components/schemas/ParameterValue' type: object description: Construct a type with a set of properties K of type T TableCalculationTemplateType.RANK_IN_COLUMN: enum: - rank_in_column type: string ApiProjectCompileLogResponse: properties: results: properties: log: $ref: '#/components/schemas/ProjectCompileLog' type: object status: type: string enum: - ok nullable: false required: - results - status type: object Omit_SavedChart.inheritsFromOrgOrProject-or-access_: $ref: '#/components/schemas/Pick_SavedChart.Exclude_keyofSavedChart.inheritsFromOrgOrProject-or-access__' description: Construct a type with the properties of T except for those in type K. AiAgentUser: properties: name: type: string uuid: type: string required: - name - uuid type: object ApiUpdateAiAgent: allOf: - $ref: '#/components/schemas/Partial_Pick_AiAgent.projectUuid-or-integrations-or-tags-or-name-or-description-or-instruction-or-imageUrl-or-groupAccess-or-userAccess-or-spaceAccess-or-enableDataAccess-or-enableSelfImprovement-or-enableContentTools-or-version__' - properties: mcpServerUuids: items: type: string type: array uuid: type: string required: - uuid type: object ChartType.TREEMAP: enum: - treemap type: string ConditionalFormattingWithValues_number-or-string_: allOf: - $ref: '#/components/schemas/BaseFilterRule_FilterOperator.number-or-string_' - properties: values: items: anyOf: - type: number format: double - type: string type: array description: Values to compare against required: - values type: object DashboardFieldTarget: properties: fallbackType: $ref: '#/components/schemas/DimensionType' isSqlColumn: type: boolean tableName: type: string fieldId: type: string required: - tableName - fieldId type: object ConditionalFormattingColorRange: properties: end: type: string description: End color for gradient start: type: string description: Start color for gradient required: - end - start type: object PieChartConfig: properties: config: $ref: '#/components/schemas/PieChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.PIE' description: Type of chart visualization required: - type type: object WarehouseTypes.CLICKHOUSE: enum: - clickhouse type: string CreateChartValidation: $ref: '#/components/schemas/Pick_ValidationErrorChartResponse.error-or-errorType-or-fieldName-or-name-or-projectUuid-or-chartUuid-or-source-or-chartName_' AiAgentExploreAccessSummary: properties: metrics: items: type: string type: array dimensions: items: type: string type: array joinedTables: items: type: string type: array exploreName: type: string required: - metrics - dimensions - joinedTables - exploreName type: object FunnelChart: properties: legendPosition: $ref: '#/components/schemas/FunnelChartLegendPosition' description: Legend orientation showLegend: type: boolean description: Show the chart legend labels: properties: showPercentage: type: boolean description: Show percentage showValue: type: boolean description: Show the actual value position: $ref: '#/components/schemas/FunnelChartLabelPosition' description: Position of labels type: object description: Label display configuration colorOverrides: $ref: '#/components/schemas/Record_string.string_' description: Custom colors for funnel stages labelOverrides: $ref: '#/components/schemas/Record_string.string_' description: Custom labels for funnel stages metadata: $ref: '#/components/schemas/Record_string.SeriesMetadata_' description: Metadata for series (colors, etc.) fieldId: type: string description: Field ID to display in funnel dataInput: $ref: '#/components/schemas/FunnelChartDataInput' description: How data is structured (row-based or column-based) type: object DashboardTileAsCodeBase: properties: tabUuid: type: string nullable: true w: type: number format: double minimum: 1 maximum: 36 h: type: number format: double minimum: 1 y: type: number format: double minimum: 0 x: type: number format: double minimum: 0 maximum: 35 type: $ref: '#/components/schemas/DashboardTileTypes' tileSlug: type: string uuid: type: string required: - w - h - y - x - type type: object VizPieChartDisplay: properties: isDonut: type: boolean type: object ApiSuccess_AiMcpServer_: properties: results: $ref: '#/components/schemas/AiMcpServer' status: type: string enum: - ok nullable: false required: - results - status type: object EchartsGrid: properties: height: type: string description: Grid height width: type: string description: Grid width left: type: string description: Left padding bottom: type: string description: Bottom padding right: type: string description: Right padding top: type: string description: Top padding containLabel: type: boolean description: Whether the grid area contains axis labels type: object Omit_MetricQuery.filters_: $ref: '#/components/schemas/Pick_MetricQuery.Exclude_keyofMetricQuery.filters__' description: Construct a type with the properties of T except for those in type K. ApiCloneThreadResponse: $ref: '#/components/schemas/ApiSuccess_AiAgentThreadSummary_' CartesianChart: properties: columnLimit: type: number format: double description: Maximum number of pivot columns to display rowLimit: $ref: '#/components/schemas/RowLimit' description: Limit displayed rows to first/last N metadata: $ref: '#/components/schemas/Record_string.SeriesMetadata_' description: Metadata for series (colors, etc.) conditionalFormattings: items: $ref: '#/components/schemas/ConditionalFormattingConfig' type: array description: Conditional formatting rules eChartsConfig: $ref: '#/components/schemas/EChartsConfig' description: ECharts-specific configuration layout: $ref: '#/components/schemas/CartesianChartLayout' description: Layout configuration for the chart axes and orientation required: - eChartsConfig - layout type: object PostgresCredentials: $ref: '#/components/schemas/Omit_CreatePostgresCredentials.SensitiveCredentialsFieldNames_' UpdateMetadata: properties: upstreamProjectUuid: type: string nullable: true type: object ? Pick_Pick_Dashboard.name-or-description-or-tabs-or-slug-or-config-or-parameters_.Exclude_keyofPick_Dashboard.name-or-description-or-tabs-or-slug-or-config-or-parameters_.name-or-slug-or-tabs__ : properties: description: type: string parameters: $ref: '#/components/schemas/DashboardParameters' config: $ref: '#/components/schemas/DashboardConfig' type: object description: From T, pick a set of properties whose keys are in the union K BigqueryCredentials: $ref: '#/components/schemas/Omit_CreateBigqueryCredentials.SensitiveCredentialsFieldNames_' Omit_Pick_Dashboard.name-or-description-or-tabs-or-slug-or-config-or-parameters_.name-or-slug-or-tabs_: $ref: '#/components/schemas/Pick_Pick_Dashboard.name-or-description-or-tabs-or-slug-or-config-or-parameters_.Exclude_keyofPick_Dashboard.name-or-description-or-tabs-or-slug-or-config-or-parameters_.name-or-slug-or-tabs__' description: Construct a type with the properties of T except for those in type K. CreateDashboardTileBase: properties: tabUuid: type: string nullable: true w: type: number format: double h: type: number format: double y: type: number format: double x: type: number format: double type: $ref: '#/components/schemas/DashboardTileTypes' uuid: type: string required: - w - h - y - x - type type: object Pick_Explore.name-or-label-or-groupLabel-or-groups_: properties: name: type: string label: type: string groupLabel: type: string deprecated: true groups: items: type: string type: array description: 'Nested groups for the sidebar (max 3 levels). Group keys resolve to labels/descriptions via the project-level `table_groups` config (fetched separately); missing keys fall back to using the key as the label.' required: - name - label type: object description: From T, pick a set of properties whose keys are in the union K FunnelChartLabelPosition: enum: - inside - left - right - hidden type: string CompiledTable: allOf: - $ref: '#/components/schemas/TableBase' - properties: sets: $ref: '#/components/schemas/Record_string.FieldSetDefinition_' parameters: $ref: '#/components/schemas/Record_string.LightdashProjectParameter_' parameterReferences: items: type: string type: array uncompiledSqlWhere: type: string source: $ref: '#/components/schemas/Source' lineageGraph: $ref: '#/components/schemas/LineageGraph' metrics: $ref: '#/components/schemas/Record_string.CompiledMetric_' dimensions: $ref: '#/components/schemas/Record_string.CompiledDimension_' required: - lineageGraph - metrics - dimensions type: object DucklakeDataPath: anyOf: - $ref: '#/components/schemas/DucklakeDataPathS3' - $ref: '#/components/schemas/DucklakeDataPathGcs' - $ref: '#/components/schemas/DucklakeDataPathAzure' - $ref: '#/components/schemas/DucklakeDataPathLocal' ApiSpaceSummaryListResponse: properties: results: items: $ref: '#/components/schemas/SpaceSummary' type: array status: type: string enum: - ok nullable: false required: - results - status type: object EChartsConfig: $ref: '#/components/schemas/Partial_CompleteEChartsConfig_' MetricFilterRule: description: Filter rule for metrics, targeting fields by reference properties: values: items: $ref: '#/components/schemas/AnyType' type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter target: properties: fieldRef: type: string description: Field reference to filter on (e.g., 'table_name.field_name') required: - fieldRef type: object description: Target field for the filter settings: $ref: '#/components/schemas/AnyType' description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' required: - operator - id - target type: object additionalProperties: true MapHexbinValueBasis: enum: - count - field type: string Pick_CreateAthenaCredentials.Exclude_keyofCreateAthenaCredentials.SensitiveCredentialsFieldNames__: properties: type: $ref: '#/components/schemas/WarehouseTypes.ATHENA' requireUserCredentials: type: boolean authenticationType: $ref: '#/components/schemas/AthenaAuthenticationType' database: type: string schema: type: string threads: type: number format: double startOfWeek: allOf: - $ref: '#/components/schemas/WeekDay' nullable: true dataTimezone: type: string region: type: string s3StagingDir: type: string s3DataDir: type: string assumeRoleArn: type: string assumeRoleExternalId: type: string workGroup: type: string numRetries: type: number format: double required: - type - database - schema - region - s3StagingDir type: object description: From T, pick a set of properties whose keys are in the union K AiPromptContextItemInput: anyOf: - properties: runtimeOverrides: $ref: '#/components/schemas/AiChartRuntimeOverrides' chartSlug: type: string nullable: true chartUuid: type: string type: type: string enum: - chart nullable: false required: - chartUuid - type type: object - properties: dashboardSlug: type: string nullable: true dashboardUuid: type: string type: type: string enum: - dashboard nullable: false required: - dashboardUuid - type type: object - properties: promptUuid: type: string nullable: true threadUuid: type: string type: type: string enum: - thread nullable: false required: - threadUuid - type type: object ContentVerificationInfo: properties: verifiedAt: type: string format: date-time verifiedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object required: - verifiedAt - verifiedBy type: object securitySchemes: session_cookie: type: apiKey in: cookie name: connect.sid api_key: type: apiKey in: header name: Authorization description: Value should be 'ApiKey '