Getting started
- Install
synqclifrom the releases page, or follow the installation instructions for your platform - Authenticate. For interactive use,
synqcli auth loginopens a browser; for CI, set up an API Client by clickingAdd clientwith the following scopes
-
Edit SQL Tests -
Edit Automatic Monitors -
Edit Custom Monitorsand pass them asQUALITY_CLIENT_ID/QUALITY_CLIENT_SECRET
- Run
synqcli deployagainst your YAML
Defining monitors in code
Create a YAML file where you’ll be managing the monitor setup, for example,synq_monitors.yml. You can split your configuration up into multiple files and use namespaces to manage individual domains or data products independently.
Example content of the file
This example uses the original flat
monitors: layout, which is still accepted and is
what a file with no version: key is read as. New configurations should declare
version: v1beta2 and group monitors and tests under entities: — see the
examples.Configuring a monitor
You can define all custom monitor types as code (freshness, volume, custom_numeric, and field_stats). Read more about each monitor type.
Obtaining IDs from the UI
When configuring a monitor,monitored_id is the full table identifier as represented in the platform. You can locate this ID by navigating to a table in the UI (using the catalog or search functionality) and copying the ID from the URL.
In the example below, bq-synq-demo::nyc_taxi::financial_statement will be the ID.

Understanding the configurable parameters
Every configurable parameter, with its type and validation rules, is in the configuration reference. The same schema drives editor autocompletion — put this line at the top of your YAML file:Verifying monitors in the UI
If you navigate to theSettings menu for a monitor, you can verify that it’s created by code by seeing the Monitor was created via API and can't be managed in APP label.
