Skip to content

AI Managed Checks API

AI Managed checks are managed through the same Quality Checks API as Authored checks. There is no separate /ai-managed-checks endpoint — Qualytics uses a single set of endpoints and tells the two apart with the inferred flag in the response.

API field name

The boolean field is called inferred in the API (preserved for backward compatibility with existing integrations). In the UI the same concept is labeled AI Managed.

What is unique to AI Managed checks is the conversion behavior: editing certain properties via the API has the same effect as editing them in the UI. The check stops being AI Managed and is preserved across future Profile runs.

Tip

For complete API documentation, including request and response schemas, visit the API docs.

Telling AI Managed and Authored Checks Apart

Every check returned by the API includes an inferred boolean. When true, Qualytics AI manages the check; when false, the check is Authored and Profile runs leave it alone.

Coverage encoding

The API uses fractional values for coverage (0.01.0); the UI displays the same value as a percentage (0%100%).

Example: filter AI Managed checks

Request:

curl -X GET "https://your-instance.qualytics.io/api/quality-checks?inferred=true" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Response (abbreviated):

{
  "items": [
    {
      "id": 101,
      "rule_type": "min_value",
      "inferred": true,
      "coverage": 1.0,
      "filter": null,
      "fields": [{ "id": 5001, "name": "price" }],
      "properties": { "min_value": 0 }
    }
  ]
}

Editing an AI Managed Check

To edit an AI Managed check, send a PUT /api/quality-checks/{id} request with the fields you want to change. The behavior depends on which fields you include in the payload.

Permission: Author or above for property/coverage/filter/field edits; Drafter or above for organizational edits.

Edits that convert the check to Authored

Including any of the following fields with new values flips inferred from true to false on save:

Field What it controls
properties Rule-specific settings (thresholds, accepted values, regex pattern, and so on).
coverage The percentage of records that must satisfy the rule.
filter The SQL WHERE clause that scopes the rows the check evaluates.
fields The list of fields the check applies to.
Convert by lowering coverage
curl -X PUT "https://your-instance.qualytics.io/api/quality-checks/101" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "coverage": 0.995
  }'

Response (abbreviated): inferred is now false and the response reflects the new coverage. Subsequent Profile runs will not modify or delete this check.

Edits that keep the check AI Managed

Including only the following fields will save the change without converting the check:

Field What it controls
description Free-text description shown in the UI.
tags Tags assigned to the check.
additional_metadata Key-value metadata pairs.
anomaly_message_field The source-record field used as the anomaly message.
status Active or Draft state.
Add a tag without converting the check
curl -X PUT "https://your-instance.qualytics.io/api/quality-checks/101" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "tags": ["critical", "ops-reviewed"]
  }'

Response (abbreviated): the check still has inferred: true. The next Profile run can continue to refresh it.

Conversion is silent

The conversion happens with no extra confirmation step. If you do not want to convert the check, make sure your payload only contains organizational fields.

Deleting an AI Managed Check

Send DELETE /api/quality-checks/{id} to remove the check. Deleting an AI Managed check does not stop Qualytics from re-creating an equivalent check during the next Profile run if the data still suggests the rule.

Permission: Author or above.

Error Responses

Status Code Description
400 Bad Request The payload is malformed (for example, missing a required field or sending an unexpected shape).
401 Unauthorized Missing or invalid API token.
403 Forbidden The user does not have the required team permission on the datastore.
404 Not Found A check with the specified ID does not exist.
422 Unprocessable Entity The payload is well-formed but a value fails schema validation (for example, a property that is not supported by the check's rule type).
  • Introduction — full description of the conversion behavior, including which edits trigger it.
  • Permissions — team permissions required for each action.
  • FAQ — common questions about AI Managed-check behavior and conversion.
  • AI Managed Checks in Practice — scenario-based examples that mirror the API edits.