# Netzhandwerker Secret Scanner

> Netzhandwerker Secret Scanner is a paid API for AI agents from tools.netzhandwerker.de, paid per call via x402, $0.002/call, status unknown (last checked 2026-09-14).

Scans text or source code for hardcoded secrets, credentials, and sensitive strings using entropy analysis and pattern rules

## Facts

- Endpoint: POST https://tools.netzhandwerker.de/v1/secret/scan
- 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/netzhandwerker-secret-scanner-5e17b936
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_gIQPX5oqYAY0ZYPCCByt4

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 netzhandwerker-secret-scanner-5e17b936 -d '<json body>'
```

Example prompt: Can you scan this source code snippet for any hardcoded secrets or credentials? Here's the code: 'const key = "AKIAIOSFODNN7EXAMPLE"; const db = "postgresql://admin:pass@host/db";' — use an entropy threshold of 3.5 to catch general assignments too.

## When to prefer this

Choose this endpoint when you need fast, per-call secret detection in arbitrary text or source code snippets, especially within automated agent pipelines or CI workflows. It is well-suited for scanning code, config files, or environment variable dumps before they are committed, shared, or published. Prefer this over general-purpose regex tools when you need entropy-based detection with severity classification and a structured JSON verdict.

## Known failure modes

- Empty or missing 'text' field returns no findings or an error
- Very short or low-entropy text produces zero findings even if suspicious
- Entropy threshold set too high may miss weaker secrets
- Entropy threshold set too low generates excessive false positives
- Malformed JSON request body returns a 400-level error
- Payment failure via x402 returns 402 Payment Required before processing begins

## How this service works

x402-Werkzeuge für autonome Agenten.

## Output

Returns a JSON object with a list of findings, each containing the matched rule name, line/column position, start/end character offsets, an entropy score, a redacted preview of the secret, and a severity rating (e.g. 'kritisch', 'hoch'). Also includes a summary count of findings grouped by rule, the highest severity found, and a verdict (e.g. 'nicht_veroeffentlichen' meaning 'do not publish'). A note clarifies that a match is a suspicion, not proof of validity.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "text": {
   "type": "string",
   "description": "Text oder Quelltext"
  },
  "min_entropy": {
   "type": "number",
   "default": 3.2,
   "description": "Schwelle fuer allgemeine Zuweisungen"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "note": "Ein Treffer ist ein Verdacht, kein Beweis fuer Gueltigkeit.",
  "by_rule": {
   "aws_access_key_id": 1,
   "db_connection_string": 1
  },
  "verdict": "nicht_veroeffentlichen",
  "findings": [
   {
    "end": 33,
    "line": 1,
    "rule": "aws_access_key_id",
    "start": 13,
    "column": 14,
    "entropy": 3.68,
    "preview": "AKIA************MPLE",
    "severity": "kritisch"
   },
   {
    "end": 112,
    "line": 2,
    "rule": "db_connection_string",
    "start": 49,
    "column": 14,
    "entropy": 4.41,
    "preview": "post*********************tion",
    "severity": "hoch"
   }
  ],
  "findings_count": 2,
  "highest_severity": "kritisch"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/netzhandwerker-secret-scanner-5e17b936/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tools.netzhandwerker.de](https://www.zero.xyz/host/tools.netzhandwerker.de/llms.txt)
