Data Quality Rules

Test rule

Evaluate the rule against sample rows sent in the request, and get one result per row. Use it to check the rule logic before you publish the rule or run it in a DQ monitor. Nothing is stored, and no DQ monitor or DQ evaluation is involved.

The rule is evaluated in its draft version when it has one, and in its published version otherwise, so you can test a change before you publish it.

Each row carries the values of the rule inputs keyed by input name, as strings that are converted to the input's dataType. A value that cannot be converted, such as abc for an INTEGER input, is rejected with 400. Values of the rule parameters are sent in parameterValues.

Cross-table rules

For a CROSS_TABLE rule, send the parent table's rows in records, the joined table's rows in joinedRecords, and the names of the join-key attributes in join. Each row carries its join-key value next to its input values. Results are returned for the parent rows only.

Aggregation rules

For an AGGREGATION rule, the submitted records are grouped by the rule's groupByInputs and the conditions are evaluated per group, as in a DQ evaluation. Each row gets the result of its group, so a row's result depends on the other rows sent in the same request.

Failures

  • A malformed request, such as an unknown input name, a value that does not match its input's dataType, or a missing join for a CROSS_TABLE rule, is rejected with 400.
  • A rule that cannot be evaluated as a whole in its current state, such as one with a condition expression that does not compile, is rejected with 409.
  • A row the evaluation engine returns no result for is reported as ERROR in its own outcome, without failing the other rows.
post/data-quality/v1/rules/{ruleUrn}/test

Request

Path parameters

ruleUrnstring uri required

A URN identifying the data quality rule resource in the Data Quality API.

Format: urn:ata:{tenant}:data-quality:rule:{uuid}

Example: urn:ata:acme-corp:data-quality:rule:123e4567-e89b-12d3-a456-426614174000.

Example:urn:ata:acme-corp:data-quality:rule:123e4567-e89b-12d3-a456-426614174000

Rule URN.

Request body

parameterValuesobject

Values of the rule's parameters for this run, keyed by the parameter name. Each value is a string converted to the parameter's dataType. A parameter that is not listed has no value. A key that does not name a parameter of the rule is rejected with 400.

Response

One result per submitted row of records, in the same order.

Example response

{
  "results": [
    {
      "outcome": "CONDITION_MATCHED",
      "conditionUrn": "urn:ata:acme-corp:data-quality:rule-condition:123e4567-e89b-12d3-a456-426614174000",
      "dimensionResultUrn": "urn:ata:acme-corp:data-quality:dq-dimension-result:123e4567-e89b-12d3-a456-426614174000"
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.