engini
Agent-first Python SDK for the Engini Public API.
Pre-release. The public surface is defined; behavior ships in upcoming alphas. Install with
pip install --pre engini.
from engini import Engini
client = Engini(token="...") # or ENGINI_API_TOKEN env var
tools = client.tools.get(search="create invoice", toolkits=["SAP"])
openai_tools = client.provider.wrap_tools(tools) # plain OpenAI tool-JSON dicts
Command-line interface
The package ships an engini command — a machine-first CLI over the same
surface, with TTY-aware output and --json / --schema on every command. Its
dependencies are an opt-in extra, so install the cli extra to use it:
pip install --pre 'engini[cli]'
engini --help # auth · tools · connections · connect
engini --version
Authenticate by pasting a dashboard-minted Engini API key (the primary path):
engini auth login --api-key eng_… # stored in the active profile's config
engini auth status # shows auth_kind: api-key, masked key
The key is sent in the x-api-key header; the company is bound to the key, so
no company token is needed. Two-token JWT auth
(engini auth login --api-token <jwt> [--company-token <id>]) remains as a
fallback. Set ENGINI_API_KEY to override per-invocation.
Profiles let you keep separate logins (e.g. one per company). The global
--profile flag selects which one a command uses; default when omitted:
engini --profile staging auth login --api-key eng_… --api-url https://staging…/api
engini auth profile list # show profiles + active
engini auth profile use staging # switch the active profile
engini auth profile rename staging stg
engini auth profile remove stg # prompts unless --force
engini auth profile edit # open config.toml in $EDITOR
--api-url points a profile at a non-default API host (staging / self-hosted);
engini auth profile edit opens the config file in $VISUAL/$EDITOR and
re-validates it on save. Logging in over a profile that already has credentials
prompts for confirmation (or pass --force); non-interactive runs must pass
--force.
Scaffold. The command tree, output conventions, TOML config/profiles, and credential resolution are in place; commands that call the API are stubbed (they exit non-zero with a "not yet implemented" message) until an upcoming release.
Built on the autogenerated engini-client
REST client. Source: https://github.com/engini/engini-sdk.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file engini-0.3.0.tar.gz.
File metadata
- Download URL: engini-0.3.0.tar.gz
- Upload date:
- Size: 46.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c50d9c295c785af4dfb8ff7c74c590e8f50fb8593ef9e5ff8254657adb7a2031
|
|
| MD5 |
6f994d86591157fcfb05fe1c4139aee0
|
|
| BLAKE2b-256 |
c1cdf3e841ed137e2d75cec5d90e1a8d7a42675844748e6f931a01e76eeb00c2
|
Provenance
The following attestation bundles were made for engini-0.3.0.tar.gz:
Publisher:
release-python.yml on engini/engini-sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
engini-0.3.0.tar.gz -
Subject digest:
c50d9c295c785af4dfb8ff7c74c590e8f50fb8593ef9e5ff8254657adb7a2031 - Sigstore transparency entry: 1838602764
- Sigstore integration time:
-
Permalink:
engini/engini-sdk@8c052c6daa311df532dfafd56147f110b3232e2a -
Branch / Tag:
refs/tags/py-sdk-v0.3.0 - Owner: https://github.com/engini
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-python.yml@8c052c6daa311df532dfafd56147f110b3232e2a -
Trigger Event:
release
-
Statement type:
File details
Details for the file engini-0.3.0-py3-none-any.whl.
File metadata
- Download URL: engini-0.3.0-py3-none-any.whl
- Upload date:
- Size: 43.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26d6279b03d16a61f0e3118ecc7c76c3f1d66a018953401891be51d19a352446
|
|
| MD5 |
f5e76523061e76e81ce25c7c73c2487f
|
|
| BLAKE2b-256 |
ecdd7252d95bb9876f319dd75cdbf15253200839a9845ff92a23d1d0f7c5b996
|
Provenance
The following attestation bundles were made for engini-0.3.0-py3-none-any.whl:
Publisher:
release-python.yml on engini/engini-sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
engini-0.3.0-py3-none-any.whl -
Subject digest:
26d6279b03d16a61f0e3118ecc7c76c3f1d66a018953401891be51d19a352446 - Sigstore transparency entry: 1838602819
- Sigstore integration time:
-
Permalink:
engini/engini-sdk@8c052c6daa311df532dfafd56147f110b3232e2a -
Branch / Tag:
refs/tags/py-sdk-v0.3.0 - Owner: https://github.com/engini
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-python.yml@8c052c6daa311df532dfafd56147f110b3232e2a -
Trigger Event:
release
-
Statement type: