# SignalHarness Markdown Outline Extractor

> SignalHarness Markdown Outline Extractor is a paid API for AI agents from signalharness.ai, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-14).

Parses markdown or plain text and extracts a structured outline of headings, titles, and section hierarchy up to a configurable depth.

## Facts

- Endpoint: POST https://signalharness.ai/api/agent/services/markdown_outline_extract/invoke
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/signalharness-markdown-outline-extractor-d2ea851b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_SK1QruP3JGauE6G2pSRK2

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 signalharness-markdown-outline-extractor-d2ea851b -d '<json body>'
```

Example prompt: Can you extract the heading outline from this markdown document, going no deeper than heading level 3, and also include the section ranges for each heading?

## When to prefer this

Choose this endpoint when you need a lightweight, structured extraction of heading hierarchy from markdown or plain text documents — especially when you need heading counts, section ranges, or depth-limited outlines for navigation, summarization, or document analysis pipelines. It is well-suited for agent workflows that process documentation, README files, or long-form articles and need structured section metadata without full document parsing.

## Known failure modes

- Empty or whitespace-only input returns a result with zero headings and possible warnings
- Text exceeding 65,536 characters is rejected with a validation error
- Invalid maximumHeadingDepth values outside 1–6 are rejected
- Malformed markdown may produce incomplete heading lists with warnings in the warnings array
- Payment failure or insufficient USDC balance results in a 402 error before execution

## How this service works

Explore 330 pay-per-call x402 API services and 27 agent-native digital products, with Base USDC pricing, secure Polar checkout, and free discovery.

## Output

Returns a JSON object containing the document title, an array of heading objects (with text, level, and optionally section line ranges), a total heading count, and any parsing warnings encountered. All results are wrapped in a standard SignalHarness receipt envelope with execution metadata, payment confirmation, and a SHA-256 result hash.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "text": {
   "type": "string",
   "maxLength": 65536,
   "minLength": 1
  },
  "markdown": {
   "type": "string",
   "maxLength": 65536,
   "minLength": 1
  },
  "maximumHeadingDepth": {
   "type": "integer",
   "maximum": 6,
   "minimum": 1
  },
  "includeSectionRanges": {
   "type": "boolean"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "replay": false,
  "result": {
   "title": "example",
   "headings": [
    {
     "end": 0,
     "text": "Example caller-supplied content.",
     "level": 1,
     "start": 0,
     "anchor": "example",
     "ordinal": 0,
     "sectionEnd": 0,
     "sectionStart": 0,
     "parentOrdinal": -1
    }
   ],
   "warnings": [
    "Verify the caller-supplied data before relying on this result."
   ],
   "headingCount": 0
  },
  "status": "succeeded",
  "receipt": {
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "usage": [],
   "status": "succeeded",
   "network": "eip155:8453",
   "artifacts": [],
   "endedAtMs": 0,
   "latencyMs": 0,
   "paymentId": "example-payment",
   "receiptId": "example-receipt",
   "requestId": "example-request",
   "serviceId": "markdown_outline_extract",
   "executionId": "example-execution",
   "startedAtMs": 0,
   "amountAtomic": "5000",
   "resultSha256": "b190eb5a7af63f7c83c3ac8ba3eff252ceebe13556fe09aae25d112fc8ba8219",
   "serviceVersion": "1.0.0",
   "settlementReference": "0x0000000000000000000000000000000000000000000000000000000000000000"
  },
  "artifacts": [],
  "requestId": "example-request",
  "executionId": "example-execution"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/signalharness-markdown-outline-extractor-d2ea851b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from signalharness.ai](https://www.zero.xyz/host/signalharness.ai/llms.txt)
