# 402utils Keyword Extraction (TextRank)

> 402utils Keyword Extraction (TextRank) is a paid API for AI agents from 402utils.com, paid per call via x402, $0.002/call, status unknown (last checked 2026-09-14).

Extracts top keywords and key-phrases from text using TextRank (word co-occurrence graph + PageRank), returning normalized scores — deterministic, model-free, and reproducible.

## Facts

- Endpoint: POST https://402utils.com/v1/keywords
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/402utils-keyword-extraction-textrank-d7d80909
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ItsW_yqK5_-b-lHgh2BBC

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability 402utils-keyword-extraction-textrank-d7d80909 -d '<json body>'
```

Example prompt: Pull the top 15 keywords and key-phrases from this article text using TextRank so I can tag it for our content index: [article text here].

## When to prefer this

Use this endpoint when you need reproducible, deterministic keyword extraction with no ML inference cost or LLM dependency. Ideal for content tagging, document indexing, and pre-RAG preprocessing where consistency matters more than semantic understanding. Prefer over LLM-based keyword extraction when you need zero variance across runs, lower cost, or auditability. Supports English and French text best.

## Known failure modes

- Text too large (>1 MB UTF-8) — input is silently truncated at 100k tokens, potentially losing content
- topK out of range (must be 1–50) — API returns validation error
- Empty or whitespace-only text — may return empty keywords array
- Non-English/non-French text — stopword removal only covers EN/FR, other languages may yield lower-quality results
- Payment failure — x402 protocol payment not completed, request rejected

## How this service works

Extract salient keywords/key-phrases from text via TextRank (word co-occurrence graph + PageRank), merging adjacent high-ranked words into phrases. Pure, deterministic, model-free — extractive, NOT ML/NER or an LLM (the point: reproducible, no inference cost). English + French stopwords removed. Returns keywords[] with normalized scores (top ≈ 1). For content tagging/indexing and pre-RAG. Over 100k tokens is truncated.

## Output

Returns an array of keywords/key-phrases with normalized relevance scores (top score ≈ 1), extracted via TextRank graph ranking. Adjacent high-ranked words are merged into phrases. English and French stopwords are removed. Input over 100k tokens is truncated.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "text": {
   "type": "string",
   "description": "The text to analyze (max 1 MB UTF-8; larger is truncated)."
  },
  "topK": {
   "type": "integer",
   "default": 10,
   "maximum": 50,
   "minimum": 1,
   "description": "How many key-phrases to return."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/402utils-keyword-extraction-textrank-d7d80909/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 402utils.com](https://www.zero.xyz/host/402utils.com/llms.txt)
