Python3 SDK for the Truto API
Project description
truto-python-sdk
truto-python-sdk is a Python SDK to interact with the Truto API, a powerful integration platform for connecting multiple SaaS applications. The SDK mirrors the Truto REST API endpoints, which are documented in the Truto Postman Collection.
Requires
Python 3.8+
Installation
Install the package via pip:
pip install truto-python-sdk
Usage
import asyncio
from truto_python_sdk import TrutoApi
truto_api = TrutoApi(token="<your_api_token>")
async def main():
# Fetch all installed integrations for the environment
installed_integrations = truto_api.environment_integrations.list()
async for integration in installed_integrations:
print(integration)
# Fetch integrated accounts for a tenant
integrated_accounts = truto_api.integrated_accounts.list(tenant_id="acme-1")
print(await integrated_accounts.to_array())
# Make a request to the unified API
unified_cursor = truto_api.unified_api.list(
"accounting",
"accounts",
{
"integrated_account_id": "766cc1ee-6637-4aa1-a73e-a0c89ccc867c",
"created_at": "2023-05-01T00:00:00.000Z",
},
)
async for account in unified_cursor:
print(account)
unified_resource = await truto_api.unified_api.get(
"accounting",
"accounts",
"1",
{"integrated_account_id": "766cc1ee-6637-4aa1-a73e-a0c89ccc867c"},
)
print(unified_resource)
asyncio.run(main())
List Calls and Pagination
The SDK uses async iterators for list calls. This allows you to iterate through resources without manually handling pagination.
cursor = truto_api.unified_api.list(
"ticketing",
"tickets",
{"integrated_account_id": "c54bc595-486e-4bbb-8c17-20810fa4a86c"},
)
async for ticket in cursor:
print(ticket)
You can also call to_array() to auto-paginate and collect all resources:
tickets = await truto_api.unified_api.list(
"ticketing",
"tickets",
{"integrated_account_id": "c54bc595-486e-4bbb-8c17-20810fa4a86c"},
).to_array()
Or fetch one page at a time with next_page():
page = await truto_api.unified_api.list(
"ticketing",
"tickets",
{"integrated_account_id": "c54bc595-486e-4bbb-8c17-20810fa4a86c"},
).next_page()
Additional Endpoints
The SDK also includes endpoints for Custom API, MCP, Workflows, Workflow Runs, Alarms, Static Gates, Sandbox Integrated Accounts, and Webhooks. See full reference in ADVANCED_USAGE.md.
Contributing
We welcome contributions to improve truto-python-sdk. Please submit issues or pull requests on the GitHub repository.
License
MIT
Project details
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 truto_python_sdk-0.1.4.tar.gz.
File metadata
- Download URL: truto_python_sdk-0.1.4.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.3.4 CPython/3.12.13 Linux/6.17.0-1010-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f3b4ec351b943320f2123b4909e40dd2867fa8762cbd1aa9e3824e1ffc30c65
|
|
| MD5 |
05d1a27995e30fee53fea057c22d2f4a
|
|
| BLAKE2b-256 |
459d15154e45f962e13fcc4c9238994a8153c1afefab254847de02ba99344524
|
File details
Details for the file truto_python_sdk-0.1.4-py3-none-any.whl.
File metadata
- Download URL: truto_python_sdk-0.1.4-py3-none-any.whl
- Upload date:
- Size: 24.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.3.4 CPython/3.12.13 Linux/6.17.0-1010-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f73057fa81fdeaa61aa9acb4f5968b6d4e7da58382c5c40ebcba30c85ae5d47
|
|
| MD5 |
15e4c3f4f89e690bbc4d1bbcc476d7c3
|
|
| BLAKE2b-256 |
8897f6fe689e6f29d285fa217f7594537c0bab7f62b3b78e854b756c8659d720
|