How to Filter for High-Quality, Verified Sources
Keep only non-duplicate, well-ranked articles with is_high_quality
Written by Beatrice Riddick
June 27, 2026
How to filter for high-quality, verified sources
To return only trustworthy articles in a single step, add is_high_quality=1 to your /v1/news/everything request. The flag keeps articles that come from a well-ranked publisher (OPR 5 or higher), are not duplicates, carry at least one image, and have a named author — one switch that screens out thin and low-quality content without listing domains by hand.
curl "https://api.apitube.io/v1/news/everything?is_high_quality=1&api_key=YOUR_API_KEY"
You can send the key as a header (X-API-Key: YOUR_API_KEY) instead of the api_key query parameter. The flag accepts only 0 or 1; any other value returns HTTP 400 with error ER0303 (is_high_quality must be 0 or 1.).
What does is_high_quality actually check?
is_high_quality=1 is a composite filter: an article is kept only when all four of these conditions are true at once.
- Not a duplicate — the article is not flagged as a copy of another story.
- Well-ranked source — the publisher’s OPR (Open Page Rank) is 5 or higher.
- Has an image — the article carries at least one image.
- Has a named author — a byline is attached to the article.
Because every condition must pass, is_high_quality is stricter than a source-only filter: even a top-tier publisher is dropped if the specific article is a duplicate, has no image, or has no byline. Use it when you want clean, presentable results — for a feed, a newsletter, or a dataset — rather than maximum coverage.
How is high-quality different from verified or premium sources?
is_high_quality builds on the same source-authority bar as a verified source (OPR 5 and above) and then adds article-level checks (no duplicate, an image, a byline). The is_verified_source and is_premium_source flags look only at the publisher’s OPR — is_verified_source=1 keeps OPR 5+ and drops duplicates, while is_premium_source=1 keeps the top tier at OPR 6+. Neither one requires an image or an author.
So pick is_high_quality when you care about the article itself being complete and clean; pick the source flags when you only care about publisher authority. For the source-only flags, see how to filter for premium and verified sources.
How to set your own source-rank floor
is_high_quality fixes the OPR floor at 5. If you want a different cutoff, filter on the rank directly with source.rank.opr.min (and its companion source.rank.opr.max). OPR is scored on a 0–10 scale, so pass a whole number:
curl "https://api.apitube.io/v1/news/everything?is_high_quality=1&source.rank.opr.min=7&api_key=YOUR_API_KEY"
That keeps high-quality articles and raises the publisher floor to OPR 7. A non-numeric value returns ER0044, a negative value returns ER0045, and a value whose length is outside 1–10 characters returns ER0046.
How to confirm why an article passed the filter
Every article reports its publisher’s OPR under source.rankings.opr, so you can verify the rank that the filter checked:
{
"source": {
"domain": "example.com",
"rankings": { "opr": 7 }
}
}
Pull a sample without the flag, read the source.rankings.opr values you are getting, then decide whether the built-in OPR-5 floor is enough or you want to raise it with source.rank.opr.min.
How to combine high-quality with other filters
is_high_quality runs in the shared filter chain, so it stacks with every other parameter and with sorting. This returns the newest English high-quality articles about elections:
curl "https://api.apitube.io/v1/news/everything?is_high_quality=1&language.code=en&title=elections&sort.by=published_at&sort.order=desc&api_key=YOUR_API_KEY"
If you only need the duplicate-removal part of the filter on its own, or want to drop paywalled articles too, see how to exclude paywalled or duplicate articles.
Common Questions
- What values does is_high_quality accept?
- Does is_high_quality=0 filter anything?
- Why did a real article get dropped?
What values does is_high_quality accept?
Only 0 or 1. Any other value returns HTTP 400 with error ER0303 (is_high_quality must be 0 or 1.). Leave the parameter off entirely when you do not want the filter.
Does is_high_quality=0 filter anything?
No. Sending is_high_quality=0 is accepted but applies no constraint — it does not return only low-quality articles. The four checks are added only when the value is 1.
Why did a real article get dropped?
is_high_quality removes an article when any single condition fails: it is a duplicate, its source OPR is below 5, it has no image, or it has no named author. If you want trustworthy publishers but cannot accept losing image-less or author-less stories, use source.rank.opr.min for a pure source-rank floor instead of is_high_quality.