Events.com Lineages Controller API

The lineages-controller API from Events.com — 8 operation(s) for lineages-controller.

OpenAPI Specification

eventscom-lineages-controller-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Saasxl-api doc Lineages Controller API
  version: '1.0'
servers:
- url: https://datagol-be.events.com
  description: Generated server url
tags:
- name: lineages-controller
paths:
  /lineages/api/v1/lineages:
    get:
      tags:
      - lineages-controller
      operationId: getLineageGraph
      parameters:
      - name: entityId
        in: query
        required: true
        schema:
          type: string
      - name: entityType
        in: query
        required: true
        schema:
          type: string
          enum:
          - DATA_SOURCE
          - DATA_PIPELINE
          - DATA_WAREHOUSE
          - DATA_SOURCE_TABLE
          - DATA_SOURCE_COLUMN
          - DATA_SOURCE_FOREIGN_KEY
          - MATERIALIZED_VIEW
          - WORKBOOK
          - WORKBOOK_COLUMN
          - WORKSPACE
          - BI_DASHBOARD_PAGE
          - BI_DASHBOARD_WIDGET
      - name: includeMetadata
        in: query
        required: false
        schema:
          type: boolean
          default: true
      - name: maxDownstreamDepth
        in: query
        required: false
        schema:
          type: integer
          format: int32
          default: 1000
      - name: maxUpstreamDepth
        in: query
        required: false
        schema:
          type: integer
          format: int32
          default: 1000
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/LineageGraphDTO'
    post:
      tags:
      - lineages-controller
      operationId: getLineageGraphMultipleNodes
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LineageRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/LineageGraphDTO'
  /lineages/api/v1/lineageRelationships:
    post:
      tags:
      - lineages-controller
      operationId: createLineageGraph
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LineageSyncEventDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
  /lineages/api/v1/impactAnalysis:
    post:
      tags:
      - lineages-controller
      operationId: getImpactedAssets
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImpactAnalysisRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/LineageGraphDTO'
  /lineages/api/v1/impactAnalysis/summary:
    post:
      tags:
      - lineages-controller
      operationId: findImpactedPipelines
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImpactAnalysisRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ImpactAnalysisOrchestrationDTO'
  /lineages/api/v1/impactAnalysis/graph:
    post:
      tags:
      - lineages-controller
      operationId: getImpactedPipelinesGraph
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImpactAnalysisRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/LineageGraphDTO'
  /lineages/api/v1/relationships:
    get:
      tags:
      - lineages-controller
      operationId: findRelationships
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/LineageGraphDTO'
  /lineages/api/v1/relationships/nodes:
    get:
      tags:
      - lineages-controller
      operationId: getRelationsByNode
      parameters:
      - name: lineageVertexKey
        in: query
        required: true
        schema:
          type: array
          items:
            $ref: '#/components/schemas/LineageVertexKeyDTO'
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/LineageGraphDTO'
  /lineages/api/v1/relationships/edge:
    get:
      tags:
      - lineages-controller
      operationId: getRelationsByEdge
      parameters:
      - name: lineageEdgeKey
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/LineageEdgeKeyDTO'
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                oneOf:
                - type: object
                - $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '501':
          description: Not Implemented
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SaasxlResponseDTOObject'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/LineageGraphDTO'
components:
  schemas:
    AnnotationDTO:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        description:
          type: string
        type:
          type: string
          enum:
          - CLASSIFICATION
          - GLOSSARY
          - GLOSSARY_TERM
          - TERM
        parentAnnotationId:
          type: integer
          format: int64
        companyId:
          type: integer
          format: int64
        uiMetadata:
          type: object
          additionalProperties:
            type: object
    ThirdPartyFilterConfigDTO:
      type: object
      properties:
        name:
          type: string
        required:
          type: boolean
        defaultValue:
          type: string
        actualValue:
          type: string
    KeyInfoDTO:
      type: object
      properties:
        primaryKeyName:
          type: string
        primaryKeyTableName:
          type: string
        primaryKeyColumnName:
          type: string
        foreignKeyName:
          type: string
        foreignKeyTableName:
          type: string
        foreignKeyColumnName:
          type: string
        keySequence:
          type: string
        updateRule:
          type: string
        deleteRule:
          type: string
    CatalogDTO:
      type: object
      properties:
        name:
          type: string
    DataPipelineStreamCursorDTO:
      type: object
      properties:
        cursorName:
          type: string
        cursorDataType:
          type: string
        cursorLastValue:
          type: string
    DataSourceSchemaDTO:
      type: object
      properties:
        id:
          type: integer
          format: int64
        dataSourceId:
          type: integer
          format: int64
        data:
          $ref: '#/components/schemas/DataSourceSchemaWrapperDTO'
        hash:
          type: string
        lastSyncedAt:
          type: string
          format: date-time
    KeyDTO:
      type: object
      properties:
        name:
          type: string
        columns:
          type: array
          items:
            $ref: '#/components/schemas/KeyInfoDTO'
    LineageMetadataDTO:
      type: object
      properties:
        pipelines:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/DataPipelineResponseV2DTO'
        dataSources:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/DataSourceDTO'
        tables:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/DataSourceTableDTO'
        workbooks:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/TableDTO'
        pages:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/BIPageDTO'
        workspaces:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/DraftWidgetsContainerDTO'
    LineageEdgeRelationDTO:
      type: object
      properties:
        from:
          type: string
        fromType:
          type: string
          enum:
          - DATA_SOURCE
          - DATA_PIPELINE
          - DATA_WAREHOUSE
          - DATA_SOURCE_TABLE
          - DATA_SOURCE_COLUMN
          - DATA_SOURCE_FOREIGN_KEY
          - MATERIALIZED_VIEW
          - WORKBOOK
          - WORKBOOK_COLUMN
          - WORKSPACE
          - BI_DASHBOARD_PAGE
          - BI_DASHBOARD_WIDGET
        to:
          type: string
        toType:
          type: string
          enum:
          - DATA_SOURCE
          - DATA_PIPELINE
          - DATA_WAREHOUSE
          - DATA_SOURCE_TABLE
          - DATA_SOURCE_COLUMN
          - DATA_SOURCE_FOREIGN_KEY
          - MATERIALIZED_VIEW
          - WORKBOOK
          - WORKBOOK_COLUMN
          - WORKSPACE
          - BI_DASHBOARD_PAGE
          - BI_DASHBOARD_WIDGET
        type:
          type: string
          enum:
          - DATA_SOURCE
          - DATA_PIPELINE
          - DATA_WAREHOUSE
          - DATA_SOURCE_TABLE
          - DATA_SOURCE_COLUMN
          - DATA_SOURCE_FOREIGN_KEY
          - MATERIALIZED_VIEW
          - WORKBOOK
          - WORKBOOK_COLUMN
          - WORKSPACE
          - BI_DASHBOARD_PAGE
          - BI_DASHBOARD_WIDGET
    BIPageDTO:
      type: object
      properties:
        createdBy:
          $ref: '#/components/schemas/UserDTO'
        modifiedBy:
          $ref: '#/components/schemas/UserDTO'
        createDate:
          type: string
          format: date-time
        modiDate:
          type: string
          format: date-time
        id:
          type: string
        config:
          $ref: '#/components/schemas/JsonNode'
        title:
          type: string
        description:
          type: string
        mode:
          type: string
          enum:
          - DRAFT
          - EDIT
          - PUBLISHED
        position:
          type: integer
          format: int32
        workspaceId:
          type: string
        widgets:
          type: array
          items:
            $ref: '#/components/schemas/WidgetDTO'
    LineageRequestDTO:
      type: object
      properties:
        nodes:
          type: array
          items:
            $ref: '#/components/schemas/LineageNodeDTO'
        maxDownstreamDepth:
          type: integer
          format: int32
        maxUpstreamDepth:
          type: integer
          format: int32
        user:
          $ref: '#/components/schemas/UserDTO'
        includeMetadata:
          type: boolean
    ImpactAnalysisPipelineDTO:
      type: object
      properties:
        id:
          type: integer
          format: int64
        streams:
          type: array
          items:
            $ref: '#/components/schemas/ImpactAnalysisStreamDTO'
    BaseWidgetDTO:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        subTitle:
          type: string
    DataPipelineJobProcessDTO:
      type: object
      properties:
        id:
          type: integer
          format: int64
        pipelineProcessId:
          type: integer
          format: int64
        query:
          type: string
        status:
          type: string
        rank:
          type: integer
          format: int32
        processName:
          type: string
        processType:
          type: string
          enum:
          - PRE
          - POST
    AttachmentSettingsDTO:
      type: object
      properties:
        templateKey:
          type: string
        templateFileName:
          type: string
        outputFileName:
          type: string
    DataPipelineNodeGroupConfig:
      type: object
      properties:
        id:
          type: integer
          format: int64
        numberOfExecutors:
          type: integer
          format: int32
    ImpactAnalysisRequestDTO:
      type: object
      properties:
        eventType:
          type: string
          enum:
          - EDIT_DATA_PIPELINE
          - DELETE_DATA_PIPELINE
          - DELETE_WORKBOOK
          - DELETE_WORKBOOK_COLUMN
          - DELETE_DATA_SOURCE
          - DELETE_DATA_SOURCE_TABLE
          - DELETE_DATA_SOURCE_COLUMN
        elementId:
          type: string
        dataPipeline:
          $ref: '#/components/schemas/DataPipelineV2DTO'
        user:
          $ref: '#/components/schemas/UserDTO'
        workbookId:
          type: string
        dataSourceId:
          type: string
        maxUpstreamDepth:
          type: integer
          format: int32
        maxDownstreamDepth:
          type: integer
          format: int32
        orchestrationId:
          type: integer
          format: int64
        pipelines:
          type: array
          items:
            $ref: '#/components/schemas/ImpactAnalysisPipelineDTO'
        includeOnlyImpactedEdges:
          type: boolean
    DraftWidgetsContainerDTO:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        widgets:
          type: array
          items:
            $ref: '#/components/schemas/WidgetDTO'
    RuleDTO:
      type: object
      properties:
        field:
          type: string
        value:
          type: object
        operator:
          type: string
        rules:
          type: array
          items:
            $ref: '#/components/schemas/RuleDTO'
        combinator:
          type: string
        not:
          type: boolean
        valueSource:
          type: string
    JoinRequest:
      type: object
      properties:
        workspaceId:
          type: string
        name:
          type: string
        primaryTableId:
          type: string
        joinConditions:
          type: array
          items:
            $ref: '#/components/schemas/JoinConditionDTO'
    DataPipelineStreamDTO:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        query:
          type: string
        outputTableName:
          type: string
        syncMode:
          type: string
          enum:
          - FULL_REFRESH
          - INCREMENTAL_APPEND
          - INCREMENTAL_APPEND_V2
          - INCREMENTAL_APPEND_MERGE
          - INCREMENTAL_APPEND_V2_MERGE
        tableId:
          type: integer
          format: int64
        cursor:
          $ref: '#/components/schemas/DataPipelineStreamCursorDTO'
        status:
          type: string
          enum:
          - ACTIVE
          - PAUSED
        processes:
          type: array
          items:
            $ref: '#/components/schemas/DataPipelineProcessDTO'
        pipeline:
          $ref: '#/components/schemas/DataPipelineLiteDTO'
        modifiedAt:
          type: string
          format: date-time
        columns:
          type: array
          items:
            type: string
        uniqueColumns:
          type: array
          items:
            type: string
        requiredParams:
          type: array
          items:
            type: string
        lastSyncedAt:
          type: string
          format: date-time
        customQueryDefined:
          type: boolean
    DataPipelineJobDTO:
      type: object
      properties:
        id:
          type: integer
          format: int64
        jobGroupId:
          type: string
        status:
          type: string
          enum:
          - QUEUED
          - STARTED
          - FAILED
          - CANCELLED
          - COMPLETED
          - PENDING
          - RUNNING
          - INCOMPLETE
          - SUCCEEDED
          - DELETED
          - UNKNOWN
          - PRE_VALIDATION_FAILED
          - POST_VALIDATION_FAILED
        startTime:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
        startedBy:
          $ref: '#/components/schemas/UserDTO'
        cancelledBy:
          $ref: '#/components/schemas/UserDTO'
        parentId:
          type: integer
          format: int64
        totalStats:
          type: string
        failureReason:
          type: string
        streams:
          type: array
          items:
            $ref: '#/components/schemas/DataPipelineJobStreamDTO'
        processes:
          type: array
          items:
            $ref: '#/components/schemas/DataPipelineJobProcessDTO'
        sparkJobInfo:
          type: array
          items:
            $ref: '#/components/schemas/SparkJobDataDTO'
        parameters:
          type: object
          additionalProperties:
            type: object
        nodeGroupConfig:
          type: object
          additionalProperties:
            type: string
    DataPipelineJobStreamDTO:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        query:
          type: string
        status:
          type: string
        dataPipelineStreamId:
          type: integer
          format: int64
    EnumOptionValue:
      type: object
      properties:
        value:
          type: object
        label:
          type: string
    LineageSyncEventDTO:
      type: object
      properties:
        entityType:
          type: string
          enum:
          - DATA_SOURCE
          - DATA_PIPELINE
          - DATA_WAREHOUSE
          - DATA_SOURCE_TABLE
          - DATA_SOURCE_COLUMN
          - DATA_SOURCE_FOREIGN_KEY
          - MATERIALIZED_VIEW
          - WORKBOOK
          - WORKBOOK_COLUMN
          - WORKSPACE
          - BI_DASHBOARD_PAGE
          - BI_DASHBOARD_WIDGET
        entityId:
          type: string
        sourceId:
          type: integer
          format: int64
        destinationId:
          type: integer
          format: int64
        pipelineId:
          type: integer
          format: int64
        workspaceId:
          type: string
        workbookId:
          type: string
        workbookColumnId:
          type: string
        widgetId:
          type: string
        pageId:
          type: string
        defaultWarehouseId:
          type: integer
          format: int64
        query:
          type: string
        companyId:
          type: integer
          format: int64
        outputTableName:
          type: string
        syncDestinationSchema:
          type: boolean
        resetExistingRelationships:
          type: boolean
    WidgetDTO:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        subTitle:
          type: string
        type:
          type: string
          enum:
          - CHART
          - TABLE
          - PIVOT_TABLE
          - KPI
          - TEXT
          - METRICS
          - GEO_MAP
          - WORKBOOK_VIEW
          - COHORT
        config:
          $ref: '#/components/schemas/JsonNode'
        tableId:
          type: string
        viewId:
          type: string
        message:
          type: string
        table:
          $ref: '#/components/schemas/TableDTO'
        widgets:
          type: array
          items:
            $ref: '#/components/schemas/BaseWidgetDTO'
        modiDate:
          type: string
          format: date-time
        parameters:
          type: array
          items:
            $ref: '#/components/schemas/WidgetParameterDTO'
        indexStatus:
          type: string
    ViewDTO:
      type: object
      properties:
        createdBy:
          $ref: '#/components/schemas/UserDTO'
        modifiedBy:
          $ref: '#/components/schemas/UserDTO'
        createDate:
          type: string
          format: date-time
        modiDate:
          type: string
          format: date-time
        id:
          type: string
        isMaster:
          type: boolean
        tableId:
          type: string
        position:
          type: number
          format: double
        name:
          type: string
        type:
          type: string
        description:
          type: string
        filterOptions:
          $ref: '#/components/schemas/FilterOptionDTO'
        groupOptions:
          type: array
          items:
            $ref: '#/components/schemas/GroupOptionDTO'
        sortOptions:
          type: array
          items:
            $ref: '#/components/schemas/SortOptionDTO'
        uiMetadata:
          type: object
          additionalProperties:
            type: object
        filterParams:
          type: object
          additionalProperties:
            type: object
        whereClause:
          type: string
        query:
          type: string
        tableName:
          type: string
    ColumnSettingsDTO:
      type: object
      properties:
        enableUserAddNotifications:
          type: boolean
        aiSettings:
          $ref: '#/components/schemas/AIGenerateSettingsDTO'
        attachmentSettings:
          $ref: '#/components/schemas/AttachmentSettingsDTO'
    LineageGraphDTO:
      type: object
      properties:
        nodes:
          type: array
          items:
            $ref: '#/components/schemas/LineageNodeDTO'
        edges:
          type: array
          items:
            $ref: '#/components/schemas/LineageEdgeDataDTO'
        metadata:
          $ref: '#/components/schemas/LineageMetadataDTO'
        impactedEdgesCount:
          type: integer
          format: int32
        impactedNodesCount:
          type: integer
          format: int32
    DataSourceFileDTO:
      type: object
      properties:
        createdBy:
          $ref: '#/components/schemas/UserDTO'
        modifiedBy:
          $ref: '#/components/schemas/UserDTO'
        createDate:
          type: string
          format: date-time
        modiDate:
          type: string
          format: date-time
        id:
          type: integer
          format: int64
        name:
          type: string
        type:
          type: string
        tableId:
          type: integer
          format: int64
        datasourceId:
          type: integer
          format: int64
        byteSize:
          type: integer
          format: int64
    IndexDTO:
      type: object
      properties:
        name:
          type: string
        nonUnique:
          type: boolean
        qualifier:
          type: string
        type:
          type: string
        ordinalPosition:
          type: string
        columnName:
          type: string
        sortSequence:
          type: string
        cardinality:
          type: string
        pages:
          type: string
        filterCondition:
          type: string
    JoinConditionDTO:
      type: object
      properties:
        targetTableId:
          type: string
        joinConditionExpression:
          type: string
        uiMetadata:
          type: object
          additionalProperties:
            type: object
        selectedColumnIds:
          type: array
          items:
            type: string
    TableDTO:
      type: object
      properties:
        createdBy:
          $ref: '#/components/schemas/UserDTO'
        modifiedBy:
          $ref: '#/components/schemas/UserDTO'
        createDate:
          type: string
          format: date-time
        modiDate:
          type: string
          format: date-time
        id:
          type: string
        workspaceId:
          type: string
        position:
          type: number
          format: double
        tableName:
          type: string
        description:
          type: string
        tableType:
          type: string
          enum:
          - STATIC
          - DYNAMIC
          - HYBRID
        materializedViewId:
          type: integer
          format: int64
        materializedViewQuery:
          type: string
        sourceType:
          type: string
        storageType:
          type: string
     

# --- truncated at 32 KB (61 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/eventscom/refs/heads/main/openapi/eventscom-lineages-controller-api-openapi.yml