pydantic openapi v2 rest client for Atamya
- Python 94.5%
- PowerShell 3.1%
- Shell 2.4%
| .vscode | ||
| docs | ||
| examples | ||
| src/atamya_client | ||
| tests | ||
| .gitignore | ||
| .pypirc.example | ||
| AGENTS.md | ||
| build_requirements.txt | ||
| build_wheel.ps1 | ||
| build_wheel.py | ||
| build_wheel.sh | ||
| LICENSE | ||
| openapi.json | ||
| pyproject.toml | ||
| README.md | ||
| requirements-dev.txt | ||
| requirements.txt | ||
| upload_to_forgejo_pypi.ps1 | ||
| upload_to_forgejo_pypi.py | ||
| upload_to_forgejo_pypi.sh | ||
atamya_client
Typed Python REST client for the Atamya Neo API (v2).
Generated from the OpenAPI 3.0.3 specification. Uses pydantic>=2.0 for
models and requests for HTTP transport. MIT license.
Quick Start
from atamya_client import AtamyaClient
# Configure from environment variables:
# ATAMYA_BASE_URL (default: https://hoerl.internal.atamya.cloud/api/v2)
# ATAMYA_API_KEY or ATAMYA_TOKEN
client = AtamyaClient()
# List domains
domains = client.get_domains()
for d in domains.content:
print(d.id, d.name)
# Get a single domain
domain = client.get_domain_by_id("bikes")
print(domain.id)
# Don't forget to close
client.close()
# Or use as a context manager:
with AtamyaClient() as c:
bo_page = c.get_business_objects("bikes")
for bo in bo_page.content:
print(bo.id)
Installation
pip install atamya-client
Development
# Install dev dependencies
pip install -r requirements-dev.txt
# Run tests
pytest --cov=atamya_client
# Type check
mypy src/atamya_client
# Format
black src/ tests/
ruff check src/ tests/
# Build wheel
python build_wheel.py
Regenerate
If the openapi.json specification changes, re-run the generator to keep
models and client methods in sync.