Skip to main content

Valentina Python Client

Async and sync Python client library for accessing the Valentina Noir API.

Features

  • Async and sync clients - Both VClient (async) and SyncVClient (sync) built on httpx2
  • Type-safe - Full type hints with Pydantic models for request/response validation
  • Convenient factory pattern - Create a client once, access services from anywhere
  • Automatic pagination - Stream through large datasets with iter_all() or fetch everything with list_all()
  • Robust error handling - Specific exception types for different error conditions
  • Idempotency support - Optional automatic idempotency keys for safe retries
  • Rate limit handling - Built-in support for automatic rate limit retries

This client is a supported and up-to-date reference implementation for the Valentina Noir API.

Documentation

The full documentation is available at https://natelandau.github.io/valentina-python-client/.

Claude Code Skill

This repo includes a Claude Code skill that gives Claude deep knowledge of vclient's services, models, constants, and testing utilities. Install it so Claude can help you build applications against the Valentina API.

Install

claude install-skill /path/to/valentina-python-client/vclient-guide-skill

Once installed, Claude will automatically activate the skill when you're working with vclient imports, Valentina API endpoints, or FakeVClient testing.

Development Tools

Validate Constants

Verify that the Literal type constants in this package are in sync with the live API's /options endpoint. This catches drift between client and server before a release.

# Via duty task
uv run duty validate_constants

# Via script directly
uv run python scripts/validate_constants.py --api-key <key> --company-id <id>

The script reads configuration from (highest precedence first):

  1. CLI arguments (--api-url, --api-key, --company-id)
  2. System environment variables (VALENTINA_CLIENT_BASE_URL, VALENTINA_CLIENT_API_KEY, VALENTINA_CLIENT_DEFAULT_COMPANY_ID)
  3. A .env.secret file in the project root

Exit codes: 0 = all constants match, 1 = mismatches found, 2 = missing configuration.

Download files

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

Source Distribution

valentina_python_client-3.3.0.tar.gz (127.1 kB view details)

Uploaded Source

Built Distribution

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

valentina_python_client-3.3.0-py3-none-any.whl (183.9 kB view details)

Uploaded Python 3

File details

Details for the file valentina_python_client-3.3.0.tar.gz.

File metadata

  • Download URL: valentina_python_client-3.3.0.tar.gz
  • Upload date:
  • Size: 127.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for valentina_python_client-3.3.0.tar.gz
Algorithm Hash digest
SHA256 7ebb83d4d4408b7f51536b7b857c3a4d6b0505a796f16eae0b356fffcd31abcb
MD5 3f748c1a6935042448d9679650a9b2cf
BLAKE2b-256 4c03c07229ff218ea84e582485aad269086463173700a433d99c5ca045552478

See more details on using hashes here.

File details

Details for the file valentina_python_client-3.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for valentina_python_client-3.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 228b1080f05dd92e9cba28ab088140074ff9339927b7f82b65c2b1398d36e91f
MD5 7dfc920e48781ee9e1295fb9882277a8
BLAKE2b-256 eacb9d7c01ad1d13e753ee5356063672537f606cb423e3f8099d8237dbe7b780

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

3.3.0 This release

2 files

3.2.0

2 files

3.1.1

2 files

3.1.0

2 files

3.0.0

2 files

2.9.0

2 files

2.8.0

2 files

2.7.0

2 files

2.6.0

2 files

2.5.0

2 files

2.4.2

2 files

2.4.1

2 files

2.4.0

2 files

2.3.0

2 files

2.2.0

2 files

2.1.0

2 files

2.0.0

2 files

1.23.0

2 files

1.22.1

2 files

1.22.0

2 files

1.21.0

2 files

1.20.1

2 files

1.20.0

2 files

1.19.0

2 files

1.18.1

2 files

1.18.0

2 files

1.17.0

2 files

1.16.1

2 files

1.16.0

2 files

1.15.1

2 files

1.15.0

2 files

1.14.0

2 files

1.13.0

2 files

1.12.0

2 files

1.11.0

2 files

1.10.0

2 files

1.9.0

2 files

1.8.0

2 files

1.7.4

2 files

1.7.3

2 files

1.7.2

2 files

1.7.1

2 files

1.7.0

1 file

1.6.1

2 files

1.6.0

2 files

1.5.2

2 files

1.5.1

2 files

1.5.0

2 files

1.4.1

2 files

1.4.0

2 files

1.3.2

2 files

1.3.1

2 files

1.3.0

2 files

1.2.1

2 files

1.2.0

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

Supported by

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