Skip to main content

CLI for AI-assisted PDF form filling via Simplicity Form-Filler API

Project description

simplicity-cli

CLI for AI-assisted PDF form filling through the Simplicity Form-Filler API.

PyPI package name: ai-pdf-filler
Installed command: simplicity-cli

Install

pip install ai-pdf-filler

Or with uv:

uv tool install ai-pdf-filler

Authentication

Set your API key before running commands:

export SIMPLICITY_AI_API_KEY="your_api_key"

Or save it once locally:

simplicity-cli --api-key "your_api_key"

You can also pass it explicitly:

simplicity-cli --api-key "your_api_key" status TASK_ID

Auth precedence:

  1. --api-key
  2. SIMPLICITY_AI_API_KEY
  3. saved local key (from simplicity-cli --api-key "...")

Quick start

Get a one-page CLI guide:

simplicity-cli help

Create and autofill from a local form PDF using text context:

simplicity-cli new \
  --form-file ./form.pdf \
  --context "first_name: John; last_name: Smoke; dob: 1990-07-07"

Create and autofill using uploaded source documents:

simplicity-cli new \
  --form-file ./form.pdf \
  --source-file ./w2.pdf \
  --source-file ./drivers_license.pdf

Autofill an existing form:

simplicity-cli existing FORM_ID --context "first_name: John; last_name: Smoke; dob: 1990-07-07"

--context is the source data used to fill form fields. --instructions is optional guidance for how autofill should behave.

Check or wait on tasks:

simplicity-cli status TASK_ID
simplicity-cli wait TASK_ID

Command reference

For full syntax/examples at any time, run:

simplicity-cli help

new

Create a digital form from a PDF and run autofill.

Common usage:

simplicity-cli new --form-file ./form.pdf --context "first_name: John; last_name: Smoke; dob: 1990-07-07"
simplicity-cli new --form-file ./form.pdf --source-file ./w2.pdf --source-file ./id.pdf
simplicity-cli new --form-url https://example.com/form.pdf --source-url https://example.com/source.pdf

Validation rules:

  • Exactly one of --form-file or --form-url is required.
  • You must provide at least one source via --source-file/--source-url or --context/--context-file.
  • --context and --context-file are mutually exclusive.
  • --instructions and --instructions-file are mutually exclusive.
  • --output cannot be used with --no-download.

Useful flags:

  • --no-wait returns immediately with a task ID.
  • --no-download skips PDF download after completion.
  • --output PATH writes downloaded output to a specific path.
  • --poll-interval-seconds and --max-wait-seconds control polling behavior.

existing

Autofill an existing form ID.

Common usage:

simplicity-cli existing FORM_ID --context "first_name: John; last_name: Smoke; dob: 1990-07-07"
simplicity-cli existing FORM_ID --context-file ./context.txt --output ./filled.pdf
simplicity-cli existing FORM_ID --no-wait --no-download

Context and instructions semantics:

  • --context / --context-file provide the data to populate form fields.
  • --instructions / --instructions-file provide optional behavior guidance and do not replace form data.

Validation rules:

  • FORM_ID is required.
  • --context and --context-file are mutually exclusive.
  • --instructions and --instructions-file are mutually exclusive.
  • --output cannot be used with --no-download.

status

Get current task details.

simplicity-cli status TASK_ID

wait

Poll until completion, failure, or timeout.

simplicity-cli wait TASK_ID --poll-interval-seconds 2 --max-wait-seconds 1800

Legacy aliases

Backward-compatible nested commands are still accepted:

  • simplicity-cli fill new ...
  • simplicity-cli fill existing ...
  • simplicity-cli task status ...
  • simplicity-cli task wait ...

Output modes

Human-readable output is default. Use strict JSON for scripts:

simplicity-cli --json status TASK_ID

In --json mode, each command writes exactly one JSON object.

Exit codes

  • 0: success
  • 2: usage/validation/auth missing
  • 3: auth rejected (401/403)
  • 4: API/request error
  • 5: task failed
  • 6: wait timeout
  • 7: download error

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ai_pdf_filler-0.1.2.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ai_pdf_filler-0.1.2-py3-none-any.whl (15.5 kB view details)

Uploaded Python 3

File details

Details for the file ai_pdf_filler-0.1.2.tar.gz.

File metadata

  • Download URL: ai_pdf_filler-0.1.2.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.3

File hashes

Hashes for ai_pdf_filler-0.1.2.tar.gz
Algorithm Hash digest
SHA256 b0d4feafeb25904d850b8210d9bb382293ba024ad4d3fa951263ea818f002821
MD5 932960986a1ae6fea05850432a677732
BLAKE2b-256 e7f4ff0e1eaaf5f48f615f257ad1acc96f3d3977d21f6d5ab9a496c78add6510

See more details on using hashes here.

File details

Details for the file ai_pdf_filler-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for ai_pdf_filler-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ad9c339c7f56d91ebf47d1bb8524df6e47cae07b420392f037771c2a6fcd1580
MD5 e1d36b013e29ae8afd3cf91a8f74a18a
BLAKE2b-256 beab21f0091b6426487f41d7ad24987ac490667d147e9142eb1ad81d04769241

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page