APITube Help Center

What NLP enrichment is applied to each article?

The entities, sentiment, classification, summary and readability data returned with every article

Tasha Tatum

Written by Tasha Tatum

July 2, 2026

Open this example in the API Playground ↗

Every article returned by the APITube News API arrives pre-enriched. Alongside the raw title and body, each article object already carries named entities, sentiment scores, topical classification, a summary, keywords and readability metrics — computed during processing and delivered in the same JSON response. You do not call a separate endpoint for any of it; one search on /v1/news/everything returns the enrichment inline.

What enrichment fields are added to each article?

APITube adds several groups of natural-language-processing (NLP) fields on top of the scraped text. In one article object you get:

  • entities and locations_mentioned — recognized people, organizations, places and more.
  • sentiment — polarity and score for the overall article, the title and the body.
  • categories, topics, industries — topical classification of the article.
  • summary — key sentences pulled from the article, each with its own sentiment.
  • keywords — extracted keyword list.
  • readability — standard reading-difficulty scores.
  • language — the detected language code of the article.
  • Text statistics — read_time, words_count, sentences_count, paragraphs_count, characters_count.

Each group is described below with the exact field names you will see in the response.

How are entities extracted and typed?

Each article carries an entities array. Every entity has an id, a name, and a type. The recognized types are person, organization, location, brand, product, natural-disaster, disease, event and sport. Beyond the label, each entity also includes:

  • frequency — how many times the entity is mentioned in the article.
  • sentiment — the sentiment expressed toward that specific entity (score, polarity, and a breakdown of mentions into positive, neutral and negative).
  • title.pos and body.pos — the character positions where the entity appears, so you can highlight mentions.
  • links — direct wikipedia and wikidata URLs when the entity is known.

Location entities are additionally collected into a locations_mentioned array with name, country, lat, lng and type, which is handy for mapping where a story takes place. For a deeper walkthrough of the entity model, see Understanding entities.

What sentiment does each article include?

APITube returns sentiment at three levels inside the sentiment object: overall, title and body. Each level has a numeric score and a polarity string that is one of positive, negative or neutral. Splitting title sentiment from body sentiment lets you detect mismatches — for example, a neutral body under an alarmist headline.

On top of the article-level sentiment, every entity in the entities array has its own sentiment block, so you can measure how a story feels about a particular company or person rather than the article as a whole. How the scores are produced is covered in How does sentiment analysis work?.

How is each article classified into categories, topics and industries?

APITube applies three parallel layers of classification, each returned as an array:

  • categories — mapped to the IPTC Media Topics taxonomy. Each entry has an id, a name, a relevance score and the taxonomy name.
  • topics — a topic label with its own relevance score.
  • industries — the industry the article relates to.

Because categories and topics each carry a score, you can rank how strongly an article belongs to a subject instead of treating classification as a simple yes/no.

What summary, keywords and readability data is included?

Three more enrichment fields describe the text itself:

  • summary — an array of key sentences extracted from the article. Each sentence comes with its own sentiment score and polarity.
  • keywords — a list of extracted keywords for the article.
  • readability — reading-difficulty metrics including flesch_kincaid_grade, flesch_reading_ease, automated_readability_index, a plain-language difficulty_level and target_audience, reading_age, avg_words_per_sentence and avg_syllables_per_word.

You also get an estimated read_time plus words_count, sentences_count, paragraphs_count and characters_count for quick filtering by length.

How to request only the enrichment fields you need

The full object is large, so use the fl parameter to return just the fields you care about. fl takes a comma-separated list and uses dot notation for nested fields:

curl "https://api.apitube.io/v1/news/everything?title=Tesla&fl=title,entities,sentiment.overall,categories,summary&api_key=YOUR_API_KEY"

That response contains only the title plus the requested enrichment blocks. See How to select specific response fields for the full rules, and the official News API parameters reference for every field.

Common Questions

Do I need extra API calls to get the NLP data?

No. The enrichment is embedded in the same article object returned by a normal search on /v1/news/everything, so entities, sentiment, categories, summary, keywords and readability all come back in a single request.

Which entity types does APITube recognize?

The type field on each entity is one of: person, organization, location, brand, product, natural-disaster, disease, event or sport. Location entities are also aggregated into the article’s locations_mentioned array.

Is enrichment available on the free plan?

Yes. The enrichment fields — entities, sentiment, categories, topics, industries, summary, keywords and readability — are returned regardless of plan. On the free plan and with test keys, only the long text and URL fields — such as body, description, href, image, and the link, media and source URLs — are truncated (marked with ...[Upgrade subscription plan]); the NLP fields themselves are not masked.


Related Articles