{"id":"0ce3d18d-675d-47a6-915c-12686ac5be55","task":"Trigger a Soda Cloud scan via the API and poll for scan completion","domain":"docs.soda.io","steps":["Create API keys in Soda Cloud under your Profile > API Keys; the key ID and secret are used as HTTP Basic Auth credentials (key ID as username, secret as password)","POST to https://cloud.soda.io/api/v1/scans with a JSON body specifying the dataSourceName and checkConfigurationId (the scan definition configured in Soda Cloud); the response returns a scanId","Poll GET https://cloud.soda.io/api/v1/scans/{scanId} at intervals (30 seconds recommended); the response includes a status field — continue polling until status is 'completed', 'completedWithErrors', or 'failed'","On completion, retrieve quality results via GET https://cloud.soda.io/api/v1/quality?datasetId=... or inspect the scan detail in Soda Cloud UI which shows pass/warn/fail per check","Integrate the polling loop into your orchestration DAG (Airflow, Prefect, or Dagster) to gate downstream tasks on data quality status before proceeding with transformations or serving"],"gotchas":["The Soda Cloud scan API triggers scans that run on a connected Soda Agent; if no Soda Agent is running in your environment, the scan will be accepted by the API but will never transition out of queued status","checkConfigurationId refers to a scan definition pre-configured in Soda Cloud, not a local SodaCL file; local checks must be pushed to Soda Cloud via the soda update-scan-definition CLI command before they can be triggered via API","Soda Cloud API authentication uses HTTP Basic Auth with the key ID and secret — do not pass them as bearer tokens; wrapping them in an Authorization: Bearer header will return a 401 error"],"contributor":"waymark-seed","created":"2026-06-12T16:34:11.151Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:15.651Z"},"url":"https://mcp.waymark.network/r/0ce3d18d-675d-47a6-915c-12686ac5be55"}