NewAPIVerve Academy: free courses and certifications anyone can verify.Explore the Academy →

Text Lemmatizer API

POST

Normalize inflected words back to their dictionary forms.

Text Lemmatizer reduces inflected words in submitted text down to their dictionary base forms. It confirms when valid lemmas exist, while paid plans return full word-by-word mappings.

Try it — live request, no key required

Request
POSTapi.apiverve.com/v1/lemmatizer
Body
Verification
Format

No key required to try it. Get a key to use it in your app.

Example
{
  "status": "ok",
  "error": null,
  "data": {
    "found": 3,
    "lemmas": {
      "cat": 1,
      "ran": 1,
      "door": 2
    }
  }
}

About the Text Lemmatizer API

A text lemmatizer API that reduces words to their dictionary base form. Lemmatizer looks up each word in the text and returns its dictionary base form: plurals become singular (geese to goose), verbs become their base form (went to go, running to run) and comparatives their root (better to good). Common short words such as "the" and "of" are skipped.

Lemmatization is a standard text normalization step in NLP work. Grouping "run", "runs" and "running" under one lemma gives cleaner keyword counts, better search matching and tidier features for classifiers and topic models than raw word counts, and unlike crude suffix stemming it keeps real words, so "fences" becomes "fence" rather than "fenc".

The response counts how many distinct lemmas were found. On the Free plan you receive only that count. Paid plans also receive the lemmas themselves, each mapped to how many times it occurs in the text, which is what you need to build a word-frequency table or index documents by root form.

How it works

Lemmatizer parses text with the compromise natural-language library and asks it to compute a root for every term. compromise tags each word with its part of speech and uses that to find the dictionary form, which is why irregular forms such as "geese" and "went" resolve to "goose" and "go". Before parsing, the first tab, carriage return and line feed in the text are replaced with spaces and the text is trimmed.

For each term the normalized word is checked against a short stopword list (the, a, an, in, on, at, to, from, for, with, by, of), and those words are skipped. The root has any trailing possessive "'s" removed. Because compromise maps forms of "be", "have" and "do" inconsistently, the service applies its own table on top: is, am, are, was, were, been and being become be; has, had and having become have; does, did and done become do. Each resulting lemma is counted, and different surface forms of the same word add to the same count.

lemmas is an object keyed by lemma with an integer occurrence count as the value, and found is the number of keys. The object is capped at the first 50 distinct lemmas in the order they first appear; later ones are dropped and found reports the capped total. Words that are already in base form are included, and words compromise cannot resolve fall back to their normalized spelling, so some past-tense forms can appear unchanged. If no lemma is produced, the request returns a 404. On the Free plan lemmas is null and only found is returned.

What people use it for

Search Query Normalization
Search engines convert user queries into root words to match plural or conjugated variations against indexed product titles.
Customer Feedback Clustering
Group incoming support tickets by topic after reducing verbs and nouns to base forms for cleaner text classification.
Vocabulary Learning Systems
Language learning platforms detect inflected verb forms across reading exercises and map them back to headwords in student flashcards.
SEO Content Auditing
Before scanning articles for keyword density, content marketing platforms strip grammatical suffixes to measure true term frequencies across drafts.

Ways to call it

One endpoint, many ways in — REST with JSON, XML, YAML and CSV, plus GraphQL and an MCP interface for AI agents.

JSON
Default REST response
XML
Markup format
YAML
Human-readable
CSV
Tabular export
Beta
GraphQL
Query language
New
MCP
For AI agents

Other ways to use Text Lemmatizer

Same data, same APIVerve account, same credit balance — one key works on all of them.

Questions.

Common questions about the Text Lemmatizer API.

Read the docs →
How many texts does the Free plan cover?
The Free plan provides 200 credits per month, covering 100 text lemmatization requests at 2 credits per call. For higher volumes, the Starter plan covers up to 100,000 requests each month, which works out to about $0.30 per 1,000 calls.
Can I get the word-by-word lemma mappings on the Free plan?
No, the lemmas mapping is a premium field. On the Free plan, access to this field is restricted. Subscribing to the Starter plan or any paid tier unlocks the full mapping of each word to its lemma.
Can I submit full sentences or multi-word passages?
Yes, the text parameter accepts complete strings of text. You can pass phrases, full sentences, or multi-word passages in a single call rather than sending individual words one by one.
How are lemmatized words organized in the response?
On paid plans, the response provides a lemmas object keyed by each base form found in your text, with how many times it occurs. Inflected variants are counted together, so "dogs" and "dog" both add to dog and "geese" adds to goose.
What natural language processing tasks is this tool suited for?
Text Lemmatizer is designed for text analysis, language processing, content generation, and text mining. It helps normalize vocabulary and reduce inflected word variants before you index documents, search text, or analyze sentiment.

Ready to build with Text Lemmatizer? Start with 200 free credits — one key unlocks all 300+ APIs.

Explore the catalog

300+ APIs on the same key and the same response shape.

Browse all APIs