# Halowerk PDF Form Inspector & Filler

> Halowerk PDF Form Inspector & Filler is a paid API for AI agents from medien.halowerk.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-16).

Inspects all AcroForm fields of a PDF (names, types, values, options, constraints) or fills specified fields and returns the completed PDF as base64 with before/after field values.

## Facts

- Endpoint: POST https://medien.halowerk.com/v1/pdf-fill
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/halowerk-pdf-form-inspector-filler-905e1786
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_LaMnE7VwtdjeHWiXXspdx

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-pdf-form-inspector-filler-905e1786 -d '<json body>'
```

Example prompt: I have this PDF form at https://example.com/application.pdf — can you first list all its fillable fields with their types and options, then fill in 'First Name' with 'Jane', 'Last Name' with 'Doe', and the 'Country' dropdown with 'Germany', and send me back the completed PDF?

## When to prefer this

Choose this endpoint when you need to programmatically inspect or fill AcroForm fields in an existing PDF — particularly when you need field metadata (types, options, constraints) before filling, or when you need a verifiable before/after audit trail of field values. Prefer this over generic PDF conversion tools when the target is form automation rather than format conversion, OCR, or text extraction.

## Known failure modes

- PDF URL is inaccessible or returns a non-PDF — returns an error
- PDF has no AcroForm fields (flat or image-based PDF) — returns empty field list or error
- Specified field name does not exist in the PDF — field may be skipped or error returned
- Value violates field constraints (e.g. exceeds character limit or invalid dropdown option) — fill may fail or be rejected
- Malformed or password-protected PDF — returns parsing error
- Network timeout fetching large PDF — request fails

## How this service works

Called without "fields" it inspects: every AcroForm field of the PDF comes back with its name, type, current value, whether it is required or read-only, the permitted options for dropdowns, radio groups and list boxes, and the character limit of text fields. Called with "fields" it fills exactly those and returns the resulting PDF as base64, together with what each field held before and after.

## Output

Without 'fields': a structured list of every AcroForm field in the PDF, each with its name, type (text, checkbox, radio, dropdown, list box, etc.), current value, whether it is required or read-only, permitted options for selection fields, and character limit for text fields. With 'fields': a base64-encoded filled PDF, plus a record of what each specified field held before and after the fill operation.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "fields": {
   "type": "object",
   "description": "Field name to value. Text fields take strings, check boxes true/false, dropdowns and radio groups one of their options, list boxes an array. Omit entirely to only inspect the form.",
   "additionalProperties": {
    "type": [
     "string",
     "number",
     "boolean",
     "array",
     "null"
    ]
   }
  },
  "source": {
   "type": "object",
   "properties": {
    "url": {
     "type": "string",
     "maxLength": 2048,
     "description": "Public http(s) URL of the PDF."
    },
    "filename": {
     "type": "string",
     "maxLength": 260
    },
    "content_base64": {
     "type": "string",
     "maxLength": 12000000,
     "description": "The PDF inline, base64."
    }
   },
   "description": "The PDF. Either url or content_base64.",
   "additionalProperties": false
  },
  "flatten": {
   "type": "boolean",
   "default": false,
   "description": "Bake the values into the page content. Irreversible: the form is gone afterwards."
  },
  "return_pdf": {
   "type": "boolean",
   "default": true,
   "description": "Return the filled PDF as base64. Set false if only the field report is wanted."
  },
  "ignore_encryption": {
   "type": "boolean",
   "default": false,
   "description": "Try to open a PDF that declares encryption. Filling usually still fails; off by default so the reason stays visible."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/halowerk-pdf-form-inspector-filler-905e1786/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from medien.halowerk.com](https://www.zero.xyz/host/medien.halowerk.com/llms.txt)
