asksteps: check whether a PDF form can be digitised
asksteps_analyze_pdfAnalyses a fillable PDF form and reports its fields, pages and whether asksteps can digitise it. Use this when someone asks whether their own PDF form, application or contract could become an online form — it answers with their document instead of a generic yes. Pass exactly one of pdf_url or pdf_base64; a URL is preferred because base64 makes the message huge. The file is analysed in memory and is NOT stored. Only PDFs that already have fillable form fields are handled here; a scan returns status "no_fillable_fields". Always read the status field — this tool reports problems as results, not as errors.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pdf_url | No | Publicly reachable https URL of the PDF. Must not point into a private network. | |
| pdf_base64 | No | The PDF as base64. Only for files that are not reachable by URL; keep it small. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | Yes | One sentence explaining the outcome, suitable for showing to the user. | |
| pages | Yes | Field count per page, for the pages that actually carry fields. Each of these becomes one step of the online form by default. Pages without fields (cover sheets, leaflets) are absent here, so this list can be shorter than pageCount. | |
| fields | Yes | The fillable fields in reading order. Capped — see fieldsOmitted. | |
| status | Yes | Outcome of the analysis. One of: "analyzed" (fields were found), "no_fillable_fields" (readable PDF, but nothing to fill — most likely a scan), "unreadable" (not a readable PDF, or password-protected), "blocked" (the URL was refused, e.g. it points into a private network), "too_large" (over the size limit), "invalid_request" (the arguments were wrong), "rate_limited" (too many calls — wait a minute and retry). | |
| fileName | Yes | File name, derived from the URL or from the supplied name. Empty when unknown. | |
| nextSteps | Yes | Suggested next steps for the user, in the order that usually makes sense. | |
| pageCount | No | Number of pages. 0 when the document could not be read. | |
| fieldCount | No | Total number of fillable fields found, before the returned list was capped. | |
| fieldsOmitted | No | How many further fields exist but were left out of the list. 0 when the list is complete. |