blitz-api-py is the official, typed Python SDK for the Blitz API. It ships sync and async clients over httpx, Pydantic v2 response models, TypedDict request filters, and a py.typed marker so mypy/pyright see the types in your own code.
PyPI
blitz-api-py on the Python Package Index.GitHub
Source, changelog, and issues.
Install
Quickstart
Authentication
Pass the key explicitly or via theBLITZ_API_KEY environment variable. It is sent in the x-api-key header on every request.
Async
UseAsyncBlitzAPI for async/await. Every method mirrors the sync client.
Endpoints
All methods are grouped into four namespaces. Enum-backed filter fields (e.g.Industry, JobLevel, Continent) accept either an enum member or a raw string.
client.account
client.search
client.enrichment
client.utils
Pagination
The search methods (people, companies, employee_finder) return an auto-paginating page — iterate it and the SDK fetches each subsequent page for you.
max_items, manual paging, page metadata, and the per-result billing caveat.
Configuration
rate_limit_rps, default 5) and retries automatically on 429 — see Rate limits & retries. Each method also accepts a per-call timeout:
Error handling
401 / 402 / 404 raise immediately; 429 and 5xx are retried automatically; read timeouts surface as APITimeoutError (not retried). See Rate limits & retries for the full retry and timeout behavior.
Types & enums
Response models are Pydantic v2 objects with attribute access and IDE autocomplete. Enum helpers live inblitz_api.types:
Next steps
TypeScript / JavaScript SDK
The same API surface for Node and the browser-adjacent runtimes.
Field Normalization
Accepted values for industry, job level, job function, and geography filters.
API reference
Full request/response schemas and an interactive try-it console.
Recipes
End-to-end workflows: build an ICP list, enrich it, and sync to your CRM.

