# SodaCL reference

- [SodaCL metrics and checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/metrics-and-checks.md): SodaCL uses metrics in checks for data quality in one or more datasets.
- [SodaCL optional check configurations](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/optional-config.md): Add optional configurations to your SodaCL checks to optimize and clarify.
- [Anomaly detection checks (deprecated)](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/anomaly-detection.md): Anomaly detection checks use a machine learning algorithm to automatically detect anomalies in your time-series data.
- [Anomaly score checks (deprecated)](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/anomaly-score.md): Anomaly score checks use a machine learning algorithm to automatically detect anomalies in your time-series data.
- [Check template](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/check-template.md): Use a check template to write one SQL query that you can reuse in multiple Soda checks for data quality.
- [Cross checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/cross-row-checks.md): Use a SodaCL cross check to compare row counts across datasets in the same, or different, data sources.
- [Distribution checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/distribution.md): Use a SodaCL distribution check to monitor the consistency of a column over time.
- [Failed rows checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/failed-rows-checks.md): Use a SodaCL failed rows check to explicitly send sample failed rows to Soda Cloud.
- [Filters and variables](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/filters.md): Instead of checking whole sets of data, use filters to specify a portion of data against which to execute a check. Use variables to specify values at scan time.
- [For each](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/for-each.md): Use a SodaCL for each check to specify a list of checks you wish to execute on a multiple datasets.
- [Freshness checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/freshness.md): Use a SodaCL freshness check to infer data freshness according to the age of the most recently added row in a table.
- [Group by](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/group-by.md): Use a SodaCL group by configuration to customize the group of data quality check results by category.
- [Group evolution checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/group-evolution.md): Use a SodaCL group evolution data quality check to validate changes to the categorical groups you defined.
- [Missing metrics](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/missing-metrics.md): Use missing metrics in SodaCL checks to detect missing values in a dataset.
- [Numeric metrics](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/numeric-metrics.md): Use numeric metrics in SodaCL checks for data quality.
- [Reconciliation checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/recon.md): Use SodaCL reconciliation checks to validate target and source data before conducting a data migration in production.
- [Reference checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/reference.md): Use a SodaCL reference check to validate that the values in a column in a table are present in a column in a different table.
- [Schema checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/schema.md): Use a SodaCL schema check to validate column presence, absence, or position in a table, or the type of data column contains.
- [User-defined checks](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/user-defined.md): Use a SodaCL user-defined check to define elements of a check using SQL expressions or queries.
- [Validity metrics](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/validity-metrics.md): Use validity metrics in SodaCL checks to detect invalid values in a dataset.
- [Troubleshoot SodaCL](https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference/troubleshoot.md): Access guidance for resolving issues with Soda Checks Language checks and metrics.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.soda.io/soda-documentation/soda-v3/sodacl-reference.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
