APITube Help Center

How to Detect Negative Mentions Quickly

Catch negative coverage of your brand early with sentiment.overall.polarity, entity.sentiment.polarity and the live SSE stream

Beatrice Riddick

Written by Beatrice Riddick

July 3, 2026

Open this example in the API Playground ↗

How to detect negative mentions quickly

To catch negative mentions fast, combine one entity filter with one negative-sentiment filter on /v1/news/everything: for example organization.name=Tesla&sentiment.overall.polarity=negative. APITube returns only negative articles that mention your company, newest-first by default, so the first result is the freshest problem. To be alerted the moment a negative story is indexed, run the same filters on the live SSE stream instead of polling.

curl "https://api.apitube.io/v1/news/everything?organization.name=Tesla&sentiment.overall.polarity=negative&api_key=YOUR_API_KEY"

Send the key as a header (X-API-Key: YOUR_API_KEY) instead of the api_key query parameter if you prefer. Because the default sort is published_at descending, you do not need a sort parameter — the newest negative mention is already at the top.

How do I find only negative articles about my brand?

Add sentiment.overall.polarity=negative to any search. This keeps articles whose overall tone is negative and drops positive and neutral coverage. Pair it with an entity filter so you only see stories about you: use organization.name for a company or brand.name for a consumer brand. APITube resolves the name against the entities it tracks; if the name is not tracked you get a “not found” error, so keep an eye on the exact spelling or use the stable numeric entity.id instead.

curl "https://api.apitube.io/v1/news/everything?brand.name=Nike&sentiment.overall.polarity=negative&language.code=en&api_key=YOUR_API_KEY"

Each returned article carries a sentiment object with overall, title and body, and each has a score (from -1 to 1) and a polarity string. The headline is often the sharpest early signal, so sentiment.title.polarity=negative surfaces stories with a negative headline even when the full body reads more neutral.

How do I catch negativity aimed at my brand inside a mixed article?

Overall polarity looks at the whole article, so a long piece that mentions ten companies can read as “neutral” while still being harsh about you specifically. To isolate negativity directed at your entity, add entity.sentiment.polarity=negative next to your organization.name or brand.name. APITube then keeps only articles where the sentiment measured toward that exact company or brand is negative — not the article’s average mood.

curl "https://api.apitube.io/v1/news/everything?organization.name=Tesla&entity.sentiment.polarity=negative&api_key=YOUR_API_KEY"

In the response, every item in the article’s entities array has its own sentiment block with a score, a polarity, and a mentions breakdown counting positive, neutral and negative references. That per-entity view is what powers entity.sentiment.polarity, and it is the difference between “this article is negative” and “this article is negative about us.”

How do I keep only the strongly negative coverage?

Polarity is a coarse three-way label; the numeric score lets you set a threshold so mildly critical pieces do not drown out real crises. Use sentiment.overall.score.max to cap the score — for example sentiment.overall.score.max=-0.3 keeps only clearly negative articles and hides borderline ones. Combine it with a recency window using published_at.start and a relative date such as NOW-24HOURS to review just the last day.

curl "https://api.apitube.io/v1/news/everything?organization.name=Tesla&sentiment.overall.score.max=-0.3&published_at.start=NOW-24HOURS&api_key=YOUR_API_KEY"

Lower the cap (closer to -1) to see only the most damaging stories; raise it (toward 0) to widen the net. The score always ranges from -1 (most negative) to 1 (most positive).

How do I get negative mentions the moment they publish?

Re-running a search on a timer wastes requests and adds lag. The /v1/news/stream endpoint accepts the same filters and pushes each new matching article over Server-Sent Events (SSE) shortly after it is indexed, so a negative story reaches you in near real time instead of on your next poll.

curl -N -H "X-API-Key: YOUR_API_KEY" \
  "https://api.apitube.io/v1/news/stream?organization.name=Tesla&sentiment.overall.polarity=negative"

The stream only sends articles newer than the ones you have already seen, so you get a clean feed of fresh negative mentions rather than a repeat of your backlog. For a fully hands-off alert that calls your own server, set up a webhook from the dashboard on a saved search — webhooks are created in the dashboard, not through an API call.

Common Questions

What is the difference between overall and entity sentiment?

sentiment.overall.polarity describes the tone of the whole article; entity.sentiment.polarity describes the tone toward one specific company, brand or person named in it. For reputation work you usually want the entity-level filter, because it catches articles that are critical of you even when the overall piece is balanced. See entity-level sentiment for the full breakdown.

My brand name returns an error. What now?

Name filters resolve against the entities APITube tracks, so an untracked or misspelled name returns a “not found” error. Switch to the numeric entity.id, which never changes for a given company or brand, or look up the right identifier first. The monitor a company or brand guide shows how to find and use an entity.id.

Can I watch several brands at once?

Yes. Entity name filters such as organization.name and brand.name accept up to three comma-separated values in one request, and entity.id accepts up to three IDs. Add the same sentiment.overall.polarity=negative or entity.sentiment.polarity=negative filter to keep the whole request focused on negative coverage across all of them.


Related Articles