Releases: veryfi/veryfi-python
Releases · veryfi/veryfi-python
5.1.0
Highlights
This release ships a full command-line interface for the Veryfi SDK so AI agents and shell users can drive the API from a terminal without writing Python. The CLI is purely additive — Client's constructor and every public method are byte-identical to 5.0.1, and all existing tests pass untouched.
What's new
veryficonsole script (andpython -m veryfi) — one Typer sub-app per resource:documents,bank-statements,checks,business-cards,w2s,w8s,w9s,any-docs,classify, with nestedline-items,tags, and PDF/W-2 split commands.- Env-var-first auth —
VERYFI_CLIENT_ID,VERYFI_USERNAME,VERYFI_API_KEY(plus optionalVERYFI_CLIENT_SECRET,VERYFI_BASE_URL,VERYFI_API_VERSION,VERYFI_TIMEOUT); equivalent--flagsoverride env. Missing creds exit2with a JSON error on stderr. - Agent-friendly I/O — JSON to stdout (with
--output json|raw|pretty), structured JSON errors to stderr, exit codes mapped from the HTTP status (clipped to 1-255) so agents can branch without parsing tracebacks. veryfi schema— emits a machine-readable manifest of every command and parameter for tool/MCP registration.- Repeatable
--field KEY=VALUE/--json-bodyfor endpoints that take**kwargs. Values are JSON-coerced (total=11.23→ number,enabled=true→ bool, full JSON objects accepted). - Pipe-friendly —
--file -reads bytes from stdin. - Dynamic User-Agent —
client_base.pynow resolves the version viaimportlib.metadata, so theUser-Agent: Python Veryfi-Python/<version>header always tracks thepbr-derived release with no manual bumps.
Quick start
pip install -U veryfi
export VERYFI_CLIENT_ID=... VERYFI_USERNAME=... VERYFI_API_KEY=...
veryfi documents process --file /tmp/receipt.jpg --category Travel
veryfi classify file --file /tmp/unknown.pdf --document-type receipt --document-type invoice
veryfi schema | jq '.commands[] | .name'See the new Command-line interface section in the README for the full reference.
Compatibility
- Python 3.9+
- All existing Python (
from veryfi import Client) code works without changes. - New runtime dependency:
typer>=0.12.0.
Pull requests in this release
5.0.1
5.0.0 Add new endpoints
What's Changed
- Update setup.cfg by @manycoding in #48
- Update pyproject.toml by @manycoding in #46
- Update python sdk by @Kaevan89 in #49
New Contributors
Full Changelog: 4.0.1...5.0.0
4.0.1 Support python 3.12
What's Changed
- Python deprecation by @manycoding in #45
- BREAKING -
api_versionparameter removed fromClient. Client usesv8.
Full Changelog: 3.4.2...4.0.1
3.4.1 New tags methods
What's Changed
- Add multiple tags function by @alejouribesanchez in #43
Full Changelog: 3.4.0...3.4.1
3.4.0
What's Changed
- Update README.md by @manycoding in #37
- Add public receipt by @manycoding in #38
- Pin pydantic version by @manycoding in #40
- Add tag function by @alejouribesanchez in #41
- Update User-Agent by @alejouribesanchez in #42
Full Changelog: 3.3...3.4.0
Add parameters to get documents, drop python 3.6
3.2.1
W9
Added support for w9 tax forms processing:
- process_w9_document_url
- process_w9_document
What's Changed
- Install deps in update-docs workflow by @hoanhan101 in #32
- Add sdk functions to extract w9 documents by @HassankSalim in #33
New Contributors
- @HassankSalim made their first contribution in #33
Full Changelog: 3.1.0...3.2.0
Add support for operations with line items
This release adds support for operations with line items:
- Retrieve all line items for a document.
- Retrieve a line item for existing document by ID.
- Add a new line item on an existing document.
- Update an existing line item on an existing document.
- Delete all line items on an existing document.
- Delete an existing line item on an existing document.