# Halowerk Grounding Score

> Halowerk Grounding Score is a paid API for AI agents from research.halowerk.com, paid per call via x402, $0.002/call, status unknown (last checked 2026-09-14).

Scores how well a set of source documents supports each sentence in an answer, detecting hallucinations and unsupported claims via coverage and override checks.

## Facts

- Endpoint: POST https://research.halowerk.com/v1/grounding-score
- 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/halowerk-grounding-score-26ad65ae
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_xQ-eB5I_BTBvqQX0eO7Rw

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 halowerk-grounding-score-26ad65ae -d '<json body>'
```

Example prompt: Can you check how well this AI-generated answer is grounded in the sources I retrieved? Score each sentence for how much of it is actually covered by the source documents, and flag any sentences that aren't supported.

## When to prefer this

Choose this endpoint when you need fine-grained, sentence-level grounding verification of AI-generated text against source documents — especially for RAG pipelines, hallucination detection, or research quality assurance. Unlike simple string matching, it uses asymmetric coverage (a long source can cover a short claim) and combines unigram and bigram overlap to account for word-order sensitivity. Prefer it over generic similarity metrics when you need both a nuanced coverage score and the ability to override coverage with hard rule checks.

## Known failure modes

- missing or empty answer text returns an error
- no source documents provided results in zero coverage scores
- very short single-word sources may produce unreliable overlap metrics
- override conditions may suppress coverage scores unexpectedly if not understood
- large inputs with many long documents may exceed payload limits

## How this service works

Splits the answer into sentences and measures, for each one, how much of it is covered by the supplied sources. Coverage is asymmetric on purpose: the question is what share of the statement appears in the source, so a long source can fully cover a short claim, and it combines single-word overlap with word-pair overlap because the same words in a different order can mean something else. Two checks override coverage and this is the point of the endpoint.

## Output

Returns a per-sentence breakdown of grounding coverage scores indicating what share of each statement appears in the provided sources, combining single-word and word-pair overlap metrics, plus override flags that can supersede coverage scores when specific conditions are met.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "answer": {
   "type": "string",
   "maxLength": 40000,
   "minLength": 10,
   "description": "The answer or text to be checked against the sources."
  },
  "sources": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "text"
    ],
    "properties": {
     "id": {
      "type": "string",
      "maxLength": 100,
      "description": "Optional identifier, echoed back on every match."
     },
     "url": {
      "type": "string",
      "maxLength": 2000,
      "description": "Optional origin, passed through unchanged."
     },
     "text": {
      "type": "string",
      "maxLength": 200000,
      "minLength": 1,
      "description": "Full text of the source."
     }
    },
    "additionalProperties": false
   },
   "maxItems": 50,
   "minItems": 1,
   "description": "The sources the answer is supposed to rest on."
  },
  "min_coverage": {
   "type": "number",
   "default": 0.6,
   "maximum": 1,
   "minimum": 0.1,
   "description": "Coverage from which a sentence counts as supported. Default 0.6."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/halowerk-grounding-score-26ad65ae/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from research.halowerk.com](https://www.zero.xyz/host/research.halowerk.com/llms.txt)
