Jentic SDK [Beta]
Jentic SDK is a comprehensive library for discovery and execution of APIs and workflows.
The Jentic SDK is backed by the data in the Jentic Public APIs repository.
Core API & Use Cases
The main entry point is the Jentic class.
Quick Start – search → load → execute
import asyncio
from jentic import Jentic, SearchRequest, LoadRequest, ExecutionRequest
async def main():
client = Jentic()
# 1️⃣ find a capability
results = await client.search(SearchRequest(query="send a Discord DM"))
entity_id = search.results[0].id # op_... or wf_...
# 2️⃣ load details (inspect schemas / auth, see inputs for operations)
resp = await client.load(LoadRequest(ids=[entity_id]))
inputs = resp.tool_info[entity_id].inputs
# 3️⃣ run it
result = await client.execute(
ExecutionRequest(id=entity_id, inputs={"recipient_id": "123", "content": "Hello!"})
)
print(result)
asyncio.run(main())
LLM Tool Definition & Execution
A typical agent loop with tool use looks like this:
from jentic.lib.agent_runtime import AgentToolManager
manager = AgentToolManager(format="anthropic")
llm_tools = manager.generate_tool_definitions() # pass to your LLM
# --- within your agent loop ---
while response.stop_reason == "tool_use":
tool_call = next(b for b in response.content if b.type == "tool_use")
name = tool_call.name
inputs = tool_call.input
result = await manager.execute_tool(name, inputs)
# ... handle result ...
Components
agent_runtime
A library for generating, managing, and executing LLM-compatible tools from Arazzo workflows and OpenAPI operations.
Features:
- Generate dynamic tool definitions for OpenAI and Anthropic LLMs from project workflows and API operations
- Execute workflows and operations as tools via a unified interface
- Provide runtime classes for tool management (
AgentToolManager), tool specification (LLMToolSpecManager), and execution (TaskExecutor) - Return standardized results for workflow and operation execution
api
A client for the Jentic API Knowledge Hub.
Set JENTIC_API_URL to set the base URL for the API hub client for local testing or testing against the development environment.
Installation
For Development
To install the package in development mode:
# From the current directory
pip install -e .
Then you can import it in your projects:
import jentic
You can also import it to other projects by referencing the package directory by specifying the following in your pyproject.toml:
dependencies = [
"jentic @ file:///path/to/jentic/sdk"
]
For Production
pip install jentic
API Key
See the root README for instructions on creating an agent and exporting your JENTIC_AGENT_API_KEY. Remember to set it in the environment before running any examples.
Testing
# Run unit tests for jentic
pdm run test
# Run integration tests for dev environment
pdm run integration-dev
# Run integration tests for production environment
pdm run integration
Integration Test Configuration
Integration tests require environment variables to be set in environment-specific files. An example file is provided that you need to copy and configure:
# For development testing
cp tests/integration/.env.example tests/integration/.env.dev
# For production testing
cp tests/integration/.env.example tests/integration/.env.prod
After copying, edit these files to include your API credentials and configuration:
- For development testing:
tests/integration/.env.dev - For production testing:
tests/integration/.env.prod
Example configuration:
# Required UUIDs for Discord API testing
DISCORD_GET_MY_USER_OPERATION_UUID="your_operation_uuid_here"
DISCORD_GET_USER_DETAILS_WORKFLOW_UUID="your_workflow_uuid_here"
# Base URL for Jentic API (Uncomment for Dev)
JENTIC_API_URL=https://directory-api.qa1.eu-west-1.jenticdev.net
# Your Discord bot token
DISCORD_BOTTOKEN="your_bot_token_here"
The integration tests validate:
- Loading operation and workflow execution information
- Executing Discord operations and workflows
- Searching API capabilities
- Generating LLM tool definitions
- Running LLM tools including both operations and workflows
Linting & Formatting
# Run all linting for jentic
pdm run lint
Metadata
Release files for jentic 0.10.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 | |
|---|---|---|---|
| jentic-0.10.0.tar.gz | 56.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jentic-0.10.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 97.7 kB
Release files / jentic-0.10.0.tar.gz
| Download URL | jentic-0.10.0.tar.gz |
|---|---|
| Size | 56.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4bec8b7549c44005c861f930085aa78dcc12605ee23ae65dd48b0145f8029d39
|
|
BLAKE2b-256 checksum How to use checksums |
f3d203a27712812c328ff1d4c7ad54d872564cb7c2a6af96817b95bfb1d1acf8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 24, 2026.
Transparency logRelease files / jentic-0.10.0-py3-none-any.whl
| Download URL | jentic-0.10.0-py3-none-any.whl |
|---|---|
| Size | 40.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
78c89e42fed8b634134e4ff9417ae3f3919453def9e1f511fb3bf467e8a25d07
|
|
BLAKE2b-256 checksum How to use checksums |
81170f5575d901a94f77e917bb817fc9fdf858bdde7eb0b5438854d4371895cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 24, 2026.
Transparency log