I maintain this Actor. This is an AI-assisted technical walkthrough, fact-checked against its accepted source contract and saved acceptance evidence.
A monitoring baseline, a completed screening query, and a missing hit list are different observations. Combining them into a single Boolean creates an attractive dashboard and a weak evidence trail. The data pipeline should preserve what was actually measured before any separate compliance process interprets it.
The Sanctions Source Coverage Review processes supplied records from the supported screening and update-alert adapters. It reports source completeness and review actions for explicit queries. It does not fetch fresh lists, perform fuzzy identity matching, or issue a sanctioned/not-sanctioned verdict. This article describes the data contract, not legal or compliance advice.
Bind evidence to an explicit query
A global update alert can tell you that a list changed. It cannot establish that a particular person or company was screened. Baseline-only records must remain diagnostics or source context instead of being joined to an arbitrary entity. Grouping requires the literal explicit screened query that is present in the supplied records.
Likewise, an absent hit list is unknown. It cannot be converted into an empty hit list and presented as a completed negative screening. Preserve source list identifiers and exact source hit identifiers so a reviewer can trace observations back to their stated basis. A similar name is not enough to establish that two records describe the same subject.
Inspect diagnostics before counting useful results
The saved Task example includes a diagnostic with found: false and status missing_identity. That row is intentionally informative: it shows that a source record without the required identity is not promoted into an assessment. It is a free diagnostic, not a paid successful screening result. Other useful output, where present, must be evaluated separately.
An integration that counts every Dataset row as a successful clearance would misread this contract. Filter useful assessments and diagnostics according to the documented output fields, and keep both available for audit of the pipeline. A terminal SUCCEEDED run means execution completed; it does not turn an unknown identity into a verified match.
Test absence and emptiness separately
Start with a small actual screening snapshot whose query and source coverage are explicit. Then use clearly labelled synthetic fixtures to remove the query, omit the hit list, and supply a successful empty hit list. Inspect the resulting distinctions rather than checking only whether the API returned a Dataset. Add a baseline update alert and confirm that it does not become evidence about an unrelated subject.
Keep capture timestamps, source coverage, and the processing time as separate fields in storage. A rerun of an old snapshot does not refresh the underlying lists. Do not interpret an output action as authorization to onboard, reject, or clear a customer. The practical value is a reviewable source-completeness layer that exposes missing measurement, supports a qualified review process, and avoids silently manufacturing a stronger claim than the source records contain.
Run a small saved snapshot
Start with an existing Dataset you are authorized to read. Replace the Dataset placeholder below with its actual ID. Supported input can also use a source run ID or inline records; choose one explicit source. This Actor does not launch the upstream collection for you.
curl --request POST \
'https://api.apify.com/v2/acts/zinin~sanctions-source-coverage-review/runs?maxTotalChargeUsd=0.10' \
--header "Authorization: Bearer $APIFY_TOKEN" \
--header 'Content-Type: application/json' \
--data '{"datasetId":"REPLACE_WITH_YOUR_DATASET_ID","maxInputRows":100,"maxResults":10}'
The response identifies an asynchronous run. Save that run ID and check its status before reading its default Dataset. A client timeout does not cancel a server run; inspect the existing ID before starting another one. maxInputRows bounds ingestion and maxResults caps useful output. Neither option establishes complete coverage of a larger source. The API charge limit is a ceiling, not a promise that ten results will fit.
Price and evidence limits
On 15 October 2026 the observed FREE-plan price is $0.03 per coverage assessment, with no paid start event for this Actor. Other subscription tiers can have different prices; verify the current Actor page before use. Source collection is a separate activity and may carry its own charges. Free diagnostic rows do not count as paid useful assessments.
The examples discussed here come from saved owner acceptance runs. They show specific observed behavior, rather than customer acceptance, profitability, or an exhaustive guarantee for every input. A new run of identical input can be charged again without adding new source evidence. Retain input provenance, the actual build ID, and the source observation window when comparing results over time.