invinite-api
Typed Python client for the Invinite Web API — the
workspace REST API at api.invinite.com. It is generated from the same endpoint
registry that powers the REST API and the inv CLI, so its request and response
models always match the reference.
The client is built on urllib3 + pydantic and imports as invinite_api.
The generated surface includes the curated team activity stream and its full-fidelity per-entity history, plus alert fire-history time ranges, per-alert events, and summary counts.
Install
pip install invinite-api
Authentication
Create a Configuration with your invw_ Web API token as the access token.
The client sends it as an Authorization: Bearer <token> header on every
request.
import invinite_api
config = invinite_api.Configuration(access_token=token)
Team-scoped endpoints take the team as a per-method x_team_id argument — not a
global default header.
Quickstart
Configure the client, call users/me to discover your team id, then make a
team-scoped list call.
import invinite_api
from invinite_api import WorkspaceApi, CompaniesListsApi
config = invinite_api.Configuration(access_token=token)
with invinite_api.ApiClient(config) as client:
# 1. Find the team to operate on.
me = WorkspaceApi(client).users_me()
team_id = me.data.teams[0].id
# 2. Make a team-scoped list call.
lists = CompaniesListsApi(client).company_lists_list(x_team_id=team_id, limit=50)
for company_list in lists.data.items:
print(company_list)
Pagination
List methods return data.items plus data.next_cursor. Pass the cursor back
on the next call until it is None.
api = CompaniesListsApi(client)
cursor = None
while True:
page = api.company_lists_list(x_team_id=team_id, limit=50, cursor=cursor)
for company_list in page.data.items:
pass # process company_list ...
cursor = page.data.next_cursor
if cursor is None:
break
Error handling
On a non-2xx response the client raises ApiException (with per-status
subclasses). Inspect error.status and parse the standard
{ "ok": false, "error": ..., "code": ... } envelope from error.body:
import json
from invinite_api.exceptions import ApiException
try:
CompaniesListsApi(client).company_lists_list(x_team_id=team_id)
except ApiException as error:
body = json.loads(error.body) # { "ok": false, "error": ..., "code": ... }
print(error.status, body["code"], body["error"])
Regeneration
This client is a generated artifact. If an endpoint's types look wrong, the fix
belongs in the endpoint registry rather than in hand-written client code —
regenerating re-derives every model from the schema. Releases are published on
sdk-v* tags.
Links
Metadata
Release files for invinite-api 0.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| invinite_api-0.8.0.tar.gz | 1.6 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| invinite_api-0.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.6 MB
Release files / invinite_api-0.8.0.tar.gz
| Download URL | invinite_api-0.8.0.tar.gz |
|---|---|
| Size | 1.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6886f38dc3f3c73c5b043e9e92064bc0df165fc14b2d378f7ca2adb21cb771d1
|
|
BLAKE2b-256 checksum How to use checksums |
298f899f7a20f43d9f549db938f4458ea98204d55357ac5cc9b4512af06d2699
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / invinite_api-0.8.0-py3-none-any.whl
| Download URL | invinite_api-0.8.0-py3-none-any.whl |
|---|---|
| Size | 4.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
54de24cae97656b1c408ee071de73d4dcda136f2c4adb3c4cbba8fc4018f768f
|
|
BLAKE2b-256 checksum How to use checksums |
3c38eeae61242775ece000a0711cb9c0e809c34cd91b0db1490f452eb7c66f95
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Security for invinite-api 0.8.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.