OpenMetadata Test Definitions API

`Test Definition` is a definition of a type of test using which test cases are created that run against data to capture data quality.

OpenAPI Specification

openmetadata-test-definitions-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: OpenMetadata APIs Agent Executions Test Definitions API
  description: Common types and API definition for OpenMetadata
  contact:
    name: OpenMetadata
    url: https://open-metadata.org
    email: openmetadata-dev@googlegroups.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: '1.13'
servers:
- url: /api
  description: Current Host
- url: http://localhost:8585/api
  description: Endpoint URL
security:
- BearerAuth: []
tags:
- name: Test Definitions
  description: '`Test Definition` is a definition of a type of test using which test cases are created that run against data to capture data quality.'
paths:
  /v1/dataQuality/testDefinitions:
    get:
      tags:
      - Test Definitions
      summary: List test definitions
      description: Get a list of test definitions, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.
      operationId: listTestDefinitions
      parameters:
      - name: fields
        in: query
        description: Fields requested in the returned resource
        schema:
          type: string
          example: owners
      - name: limit
        in: query
        description: Limit the number test definitions returned. (1 to 1000000, default = 10)
        schema:
          maximum: 1000000
          minimum: 0
          type: integer
          format: int32
          default: 10
      - name: before
        in: query
        description: Returns list of test definitions before this cursor
        schema:
          type: string
      - name: after
        in: query
        description: Returns list of test definitions after this cursor
        schema:
          type: string
      - name: include
        in: query
        description: Include all, deleted, or non-deleted entities.
        schema:
          type: string
          default: non-deleted
          enum:
          - all
          - deleted
          - non-deleted
      - name: entityType
        in: query
        description: Filter by entityType.
        schema:
          type: string
          enum:
          - TABLE
          - COLUMN
      - name: testPlatform
        in: query
        description: Filter by a test platform
        schema:
          type: string
          enum:
          - OpenMetadata
          - GreatExpectations
          - dbt
          - Deequ
          - Soda
          - Other
      - name: supportedDataType
        in: query
        description: Filter tests definition by supported data type
        schema:
          type: string
          enum:
          - NUMBER
          - TINYINT
          - SMALLINT
          - INT
          - BIGINT
          - BYTEINT
          - BYTES
          - FLOAT
          - DOUBLE
          - DECIMAL
          - NUMERIC
          - TIMESTAMP
          - TIMESTAMPZ
          - TIME
          - DATE
          - DATETIME
          - INTERVAL
          - STRING
          - MEDIUMTEXT
          - TEXT
          - CHAR
          - LONG
          - VARCHAR
          - BOOLEAN
          - BINARY
          - VARBINARY
          - ARRAY
          - BLOB
          - LONGBLOB
          - MEDIUMBLOB
          - MAP
          - STRUCT
          - UNION
          - SET
          - GEOGRAPHY
          - ENUM
          - JSON
          - UUID
          - VARIANT
          - GEOMETRY
          - BYTEA
          - AGGREGATEFUNCTION
          - ERROR
          - FIXED
          - RECORD
          - 'NULL'
          - SUPER
          - HLLSKETCH
          - PG_LSN
          - PG_SNAPSHOT
          - TSQUERY
          - TXID_SNAPSHOT
          - XML
          - MACADDR
          - TSVECTOR
          - UNKNOWN
          - CIDR
          - INET
          - CLOB
          - ROWID
          - LOWCARDINALITY
          - YEAR
          - POINT
          - POLYGON
          - TUPLE
          - SPATIAL
          - TABLE
          - NTEXT
          - IMAGE
          - IPV4
          - IPV6
          - DATETIMERANGE
          - HLL
          - LARGEINT
          - QUANTILE_STATE
          - AGG_STATE
          - BITMAP
          - UINT
          - BIT
          - MONEY
          - MEASURE HIDDEN
          - MEASURE VISIBLE
          - MEASURE
          - KPI
          - HEIRARCHY
          - HIERARCHYID
      - name: supportedService
        in: query
        description: Filter test definitions by supported service. Returns test definitions that either have an empty supportedServices list (supporting all services) or include the specified service.
        schema:
          type: string
      - name: enabled
        in: query
        description: Filter by enabled status (true/false). If not specified, returns all test definitions.
        schema:
          type: boolean
      responses:
        '200':
          description: List of test definitions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestDefinitionList'
    put:
      tags:
      - Test Definitions
      summary: Update test definition
      description: Create a test definition, if it does not exist, or update an existing test definition.
      operationId: createOrUpdateTestDefinition
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTestDefinition'
      responses:
        '200':
          description: 'The updated test definition '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestDefinition'
    post:
      tags:
      - Test Definitions
      summary: Create a test definition
      description: Create a Test definition.
      operationId: createTestDefinition
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTestDefinition'
      responses:
        '200':
          description: The test definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestDefinition'
        '400':
          description: Bad request
  /v1/dataQuality/testDefinitions/name/{name}:
    get:
      tags:
      - Test Definitions
      summary: Get a test definition by name
      description: Get a test definition by `name`.
      operationId: getTestDefinitionByName
      parameters:
      - name: name
        in: path
        description: Name of the test definition
        required: true
        schema:
          type: string
      - name: fields
        in: query
        description: Fields requested in the returned resource
        schema:
          type: string
          example: owners
      - name: include
        in: query
        description: Include all, deleted, or non-deleted entities.
        schema:
          type: string
          default: non-deleted
          enum:
          - all
          - deleted
          - non-deleted
      responses:
        '200':
          description: The test definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestDefinition'
        '404':
          description: Test Definition for instance {name} is not found
    delete:
      tags:
      - Test Definitions
      summary: Delete a test definition
      description: Delete a test definition by `name`.
      operationId: deleteTestDefinitionByName
      parameters:
      - name: hardDelete
        in: query
        description: Hard delete the entity. (Default = `false`)
        schema:
          type: boolean
          default: false
      - name: recursive
        in: query
        description: Recursively delete this entity and it's children. (Default `false`)
        schema:
          type: boolean
          default: false
      - name: name
        in: path
        description: Name of the test definition
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '404':
          description: Test definition for instance {name} is not found
  /v1/dataQuality/testDefinitions/{id}:
    get:
      tags:
      - Test Definitions
      summary: Get a test definition by Id
      description: Get a Test Definition by `Id`.
      operationId: get_4
      parameters:
      - name: id
        in: path
        description: Id of the test definition
        required: true
        schema:
          type: string
          format: uuid
      - name: fields
        in: query
        description: Fields requested in the returned resource
        schema:
          type: string
          example: owners
      - name: include
        in: query
        description: Include all, deleted, or non-deleted entities.
        schema:
          type: string
          default: non-deleted
          enum:
          - all
          - deleted
          - non-deleted
      - name: includeRelations
        in: query
        description: 'Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity''s include value.'
        schema:
          type: string
          example: owners:non-deleted,followers:all
      responses:
        '200':
          description: The Test definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestDefinition'
        '404':
          description: Test Definition for instance {id} is not found
    delete:
      tags:
      - Test Definitions
      summary: Delete a test definition
      description: Delete a test definition by `id`.
      operationId: deleteTestDefinition
      parameters:
      - name: hardDelete
        in: query
        description: Hard delete the entity. (Default = `false`)
        schema:
          type: boolean
          default: false
      - name: recursive
        in: query
        description: Recursively delete this entity and it's children. (Default `false`)
        schema:
          type: boolean
          default: false
      - name: id
        in: path
        description: Id of the test definition
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
        '404':
          description: Test definition for instance {id} is not found
    patch:
      tags:
      - Test Definitions
      summary: Update a test definition
      description: Update an existing Test Definition using JsonPatch.
      externalDocs:
        description: JsonPatch RFC
        url: https://tools.ietf.org/html/rfc6902
      operationId: patchTestDefinition
      parameters:
      - name: id
        in: path
        description: Id of the test definition
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        description: JsonPatch with array of operations
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JsonPatch'
            example: '[{op:remove, path:/a},{op:add, path: /b, value: val}]'
      responses:
        default:
          description: default response
          content:
            application/json: {}
  /v1/dataQuality/testDefinitions/async/{id}:
    delete:
      tags:
      - Test Definitions
      summary: Asynchronously delete a test definition
      description: Asynchronously delete a test definition by `id`.
      operationId: deleteTestDefinitionAsync
      parameters:
      - name: hardDelete
        in: query
        description: Hard delete the entity. (Default = `false`)
        schema:
          type: boolean
          default: false
      - name: recursive
        in: query
        description: Recursively delete this entity and it's children. (Default `false`)
        schema:
          type: boolean
          default: false
      - name: id
        in: path
        description: Id of the test definition
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
        '404':
          description: Test definition for instance {id} is not found
  /v1/dataQuality/testDefinitions/{id}/versions/{version}:
    get:
      tags:
      - Test Definitions
      summary: Get a version of the test definition
      description: Get a version of the test definition by given `Id`
      operationId: getSpecificTestDefinitionVersion
      parameters:
      - name: id
        in: path
        description: Id of the test definition
        required: true
        schema:
          type: string
          format: uuid
      - name: version
        in: path
        description: Test Definition version number in the form `major`.`minor`
        required: true
        schema:
          type: string
          example: 0.1 or 1.1
      responses:
        '200':
          description: TestDefinition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestDefinition'
        '404':
          description: Test Definition for instance {id} and version {version} is not found
  /v1/dataQuality/testDefinitions/history:
    get:
      tags:
      - Test Definitions
      summary: List all entity versions within a time range
      description: 'Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. '
      operationId: listAllEntityVersionsByTimestamp_22
      parameters:
      - name: startTs
        in: query
        description: Start timestamp in milliseconds since epoch
        required: true
        schema:
          type: integer
          format: int64
      - name: endTs
        in: query
        description: End timestamp in milliseconds since epoch
        required: true
        schema:
          type: integer
          format: int64
      - name: limit
        in: query
        description: Limit the number of entity returned (1 to 1000000, default = 10)
        schema:
          maximum: 500
          minimum: 1
          type: integer
          format: int32
          default: 10
      - name: before
        in: query
        description: Returns list of entity versions before this cursor
        schema:
          type: string
      - name: after
        in: query
        description: Returns list of entity versions after this cursor
        schema:
          type: string
      responses:
        '200':
          description: List of all versions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResultList'
  /v1/dataQuality/testDefinitions/{id}/versions:
    get:
      tags:
      - Test Definitions
      summary: List test definition versions
      description: Get a list of all the versions of a test definition identified by `Id`
      operationId: listAllTestDefinitionVersion
      parameters:
      - name: id
        in: path
        description: Id of the test definition
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: List of test definition versions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityHistory'
  /v1/dataQuality/testDefinitions/restore:
    put:
      tags:
      - Test Definitions
      summary: Restore a soft deleted test definition
      description: Restore a soft deleted TestDefinition.
      operationId: restore_18
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RestoreEntity'
      responses:
        '200':
          description: 'Successfully restored the TestDefinition. '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestDefinition'
components:
  schemas:
    TagLabelRecognizerMetadata:
      required:
      - recognizerId
      - recognizerName
      - score
      type: object
      properties:
        recognizerId:
          type: string
          format: uuid
        recognizerName:
          type: string
        score:
          type: number
          format: double
        target:
          type: string
          enum:
          - content
          - column_name
        patterns:
          type: array
          items:
            $ref: '#/components/schemas/PatternMatch'
    ChangeSummaryMap:
      type: object
    AccessDetails:
      required:
      - timestamp
      type: object
      properties:
        timestamp:
          type: integer
          format: int64
        accessedBy:
          $ref: '#/components/schemas/EntityReference'
        accessedByAProcess:
          type: string
    FieldChange:
      type: object
      properties:
        name:
          type: string
        oldValue:
          type: object
        newValue:
          type: object
    CoverImage:
      type: object
      properties:
        url:
          type: string
        position:
          type: string
    RestoreEntity:
      required:
      - id
      type: object
      properties:
        id:
          type: string
          format: uuid
    LifeCycle:
      type: object
      properties:
        created:
          $ref: '#/components/schemas/AccessDetails'
        updated:
          $ref: '#/components/schemas/AccessDetails'
        accessed:
          $ref: '#/components/schemas/AccessDetails'
    EntityHistory:
      required:
      - entityType
      - versions
      type: object
      properties:
        entityType:
          type: string
        versions:
          type: array
          items:
            type: object
    AssetCertification:
      required:
      - appliedDate
      - expiryDate
      - tagLabel
      type: object
      properties:
        tagLabel:
          $ref: '#/components/schemas/TagLabel'
        appliedDate:
          type: integer
          format: int64
        expiryDate:
          type: integer
          format: int64
    ResultList:
      required:
      - data
      type: object
      properties:
        data:
          type: array
          items:
            type: object
        paging:
          $ref: '#/components/schemas/Paging'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/EntityError'
        warningsCount:
          type: integer
          format: int32
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/EntityError'
    Paging:
      required:
      - total
      type: object
      properties:
        before:
          type: string
        after:
          type: string
        offset:
          type: integer
          format: int32
        limit:
          type: integer
          format: int32
        total:
          type: integer
          format: int32
    TestCaseParameterValidationRule:
      type: object
      properties:
        parameterField:
          type: string
        rule:
          type: string
          enum:
          - EQUALS
          - NOT_EQUALS
          - GREATER_THAN_OR_EQUALS
          - LESS_THAN_OR_EQUALS
    JsonPatch:
      type: object
    ChangeDescription:
      type: object
      properties:
        fieldsAdded:
          type: array
          items:
            $ref: '#/components/schemas/FieldChange'
        fieldsUpdated:
          type: array
          items:
            $ref: '#/components/schemas/FieldChange'
        fieldsDeleted:
          type: array
          items:
            $ref: '#/components/schemas/FieldChange'
        previousVersion:
          type: number
          format: double
        changeSummary:
          $ref: '#/components/schemas/ChangeSummaryMap'
    TestDefinition:
      required:
      - name
      - testPlatforms
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          maxLength: 2147483647
          minLength: 1
          pattern: ^((?!::).)*$
          type: string
        displayName:
          type: string
        fullyQualifiedName:
          maxLength: 3072
          minLength: 1
          type: string
        description:
          type: string
        entityType:
          type: string
          enum:
          - TABLE
          - COLUMN
        testPlatforms:
          type: array
          items:
            type: string
            enum:
            - OpenMetadata
            - GreatExpectations
            - dbt
            - Deequ
            - Soda
            - Other
        supportedDataTypes:
          type: array
          items:
            type: string
            enum:
            - NUMBER
            - TINYINT
            - SMALLINT
            - INT
            - BIGINT
            - BYTEINT
            - BYTES
            - FLOAT
            - DOUBLE
            - DECIMAL
            - NUMERIC
            - TIMESTAMP
            - TIMESTAMPZ
            - TIME
            - DATE
            - DATETIME
            - INTERVAL
            - STRING
            - MEDIUMTEXT
            - TEXT
            - CHAR
            - LONG
            - VARCHAR
            - BOOLEAN
            - BINARY
            - VARBINARY
            - ARRAY
            - BLOB
            - LONGBLOB
            - MEDIUMBLOB
            - MAP
            - STRUCT
            - UNION
            - SET
            - GEOGRAPHY
            - ENUM
            - JSON
            - UUID
            - VARIANT
            - GEOMETRY
            - BYTEA
            - AGGREGATEFUNCTION
            - ERROR
            - FIXED
            - RECORD
            - 'NULL'
            - SUPER
            - HLLSKETCH
            - PG_LSN
            - PG_SNAPSHOT
            - TSQUERY
            - TXID_SNAPSHOT
            - XML
            - MACADDR
            - TSVECTOR
            - UNKNOWN
            - CIDR
            - INET
            - CLOB
            - ROWID
            - LOWCARDINALITY
            - YEAR
            - POINT
            - POLYGON
            - TUPLE
            - SPATIAL
            - TABLE
            - NTEXT
            - IMAGE
            - IPV4
            - IPV6
            - DATETIMERANGE
            - HLL
            - LARGEINT
            - QUANTILE_STATE
            - AGG_STATE
            - BITMAP
            - UINT
            - BIT
            - MONEY
            - MEASURE HIDDEN
            - MEASURE VISIBLE
            - MEASURE
            - KPI
            - HEIRARCHY
            - HIERARCHYID
        parameterDefinition:
          type: array
          items:
            $ref: '#/components/schemas/TestCaseParameter'
        dataQualityDimension:
          type: string
          enum:
          - Completeness
          - Accuracy
          - Consistency
          - Validity
          - Uniqueness
          - Integrity
          - SQL
          - NoDimension
        owners:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        provider:
          type: string
          enum:
          - system
          - user
          - automation
        version:
          type: number
          format: double
        updatedAt:
          type: integer
          format: int64
        updatedBy:
          type: string
        href:
          type: string
          format: uri
        changeDescription:
          $ref: '#/components/schemas/ChangeDescription'
        incrementalChangeDescription:
          $ref: '#/components/schemas/ChangeDescription'
        deleted:
          type: boolean
        supportsRowLevelPassedFailed:
          type: boolean
        domains:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        supportsDynamicAssertion:
          type: boolean
        enabled:
          type: boolean
        supportedServices:
          type: array
          items:
            type: string
        sqlExpression:
          type: string
        validatorClass:
          type: string
        extension:
          type: object
        children:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        service:
          $ref: '#/components/schemas/EntityReference'
        style:
          $ref: '#/components/schemas/Style'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/TagLabel'
        followers:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        experts:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        reviewers:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        dataProducts:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        impersonatedBy:
          type: string
        dataContract:
          $ref: '#/components/schemas/EntityReference'
        usageSummary:
          $ref: '#/components/schemas/UsageDetails'
        entityStatus:
          type: string
          enum:
          - Draft
          - In Review
          - Approved
          - Archived
          - Deprecated
          - Rejected
          - Unprocessed
        votes:
          $ref: '#/components/schemas/Votes'
        lifeCycle:
          $ref: '#/components/schemas/LifeCycle'
        certification:
          $ref: '#/components/schemas/AssetCertification'
    UsageStats:
      required:
      - count
      type: object
      properties:
        count:
          minimum: 0
          exclusiveMinimum: false
          type: integer
          format: int32
        percentileRank:
          type: number
          format: double
    Style:
      type: object
      properties:
        color:
          type: string
        iconURL:
          type: string
        coverImage:
          $ref: '#/components/schemas/CoverImage'
    Votes:
      type: object
      properties:
        upVotes:
          type: integer
          format: int32
        downVotes:
          type: integer
          format: int32
        upVoters:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        downVoters:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
    TestCaseParameter:
      type: object
      properties:
        name:
          type: string
        displayName:
          type: string
        dataType:
          type: string
          enum:
          - NUMBER
          - INT
          - FLOAT
          - DOUBLE
          - DECIMAL
          - TIMESTAMP
          - TIME
          - DATE
          - DATETIME
          - ARRAY
          - MAP
          - SET
          - STRING
          - BOOLEAN
        description:
          type: string
        required:
          type: boolean
        optionValues:
          type: array
          items:
            type: object
        validationRule:
          $ref: '#/components/schemas/TestCaseParameterValidationRule'
    TagLabel:
      required:
      - labelType
      - source
      - state
      - tagFQN
      type: object
      properties:
        tagFQN:
          type: string
        name:
          type: string
        displayName:
          type: string
        description:
          type: string
        style:
          $ref: '#/components/schemas/Style'
        source:
          type: string
          enum:
          - Classification
          - Glossary
        labelType:
          type: string
          enum:
          - Manual
          - Propagated
          - Automated
          - Derived
          - Generated
        state:
          type: string
          enum:
          - Suggested
          - Confirmed
        href:
          type: string
          format: uri
        reason:
          type: string
        appliedAt:
          type: string
          format: date-time
        appliedBy:
          type: string
        metadata:
          $ref: '#/components/schemas/TagLabelMetadata'
    PatternMatch:
      required:
      - name
      - score
      type: object
      properties:
        name:
          type: string
        regex:
          type: string
        score:
          type: number
          format: double
    TagLabelMetadata:
      type: object
      properties:
        recognizer:
          $ref: '#/components/schemas/TagLabelRecognizerMetadata'
        expiryDate:
          type: integer
          format: int64
    EntityError:
      type: object
      properties:
        message:
          type: string
        entity:
          type: object
    TestDefinitionList:
      required:
      - data
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TestDefinition'
        paging:
          $ref: '#/components/schemas/Paging'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/EntityError'
        warningsCount:
          type: integer
          format: int32
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/EntityError'
    EntityReference:
      required:
      - id
      - type
      type: object
      properties:
        id:
          type: string
          format: uuid
        type:
          type: string
        name:
          type: string
        fullyQualifiedName:
          type: string
        description:
          type: string
        displayName:
          type: string
        deleted:
          type: boolean
        inherited:
          type: boolean
        href:
          type: string
          format: uri
    CreateTestDefinition:
      required:
      - entityType
      - name
      - testPlatforms
      type: object
      properties:
        name:
          maxLength: 2147483647
          minLength: 1
          pattern: ^((?!::).)*$
          type: string
        displayName:
          type: string
        description:
          type: string
        owners:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        entityType:
          type: string
          enum:
          - TABLE
          - COLUMN
        testPlatforms:
          type: array
          items:
            type: string
            enum:
            - OpenMetadata
            - GreatExpectations
            - dbt
            - Deequ
            - Soda
            - Other
        supportedDataTypes:
          type: array
          items:
            type: string
            enum:
            - NUMBER
            - TINYINT
            - SMALLINT
            - INT
            - BIGINT
            - BYTEINT
            - BYTES
            - FLOAT
            - DOUBLE
            - DECIMAL
            - NUMERIC
            - TIMESTAMP
            - TIMESTAMPZ
            - TIME
            - DATE
            - DATETIME
            - INTERVAL
            - STRING
            - MEDIUMTEXT
            - TEXT
            - CHAR
            - LONG
            - VARCHAR
            - BOOLEAN
            - BINARY
            - VARBINARY
            - ARRAY
            - BLOB
            - LONGBLOB
            - MEDIUMBLOB
            - MAP
            - STRUCT
            - UNION
            - SET
            - GEOGRAPHY
            - ENUM
            - JSON
            - UUID
            - VARIANT
            - GEOMETRY
            - BYTEA
            - AGGREGATEFUNCTION
            - ERROR
            - FIXED
            - RECORD
            - 'NULL'
            - SUPER
            - HLLSKETCH
            - PG_LSN
            - PG_SNAPSHOT
            - TSQUERY
            - TXID_SNAPSHOT
            - XML
            - MACADDR
            - TSVECTOR
            - UNKNOWN
            - CIDR
            - INET
            - CLOB
            - ROWID
            - LOWCARDINALITY
            - YEAR
            - POINT
            - POLYGON
            - TUPLE
            - SPATIAL
            - TABLE
            - NTEXT
            - IMAGE
            - IPV4
            - IPV6
            - DATETIMERANGE
            - HLL
            - LARGEINT
            - QUANTILE_STATE
            - AGG_STATE
            - BITMAP
            - UINT
            

# --- truncated at 32 KB (33 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/openmetadata/refs/heads/main/openapi/openmetadata-test-definitions-api-openapi.yml