Questra Automation Python Package
Project description
seven2one-questra-automation
Type-safe Python client for the Questra Automation GraphQL API.
Features
- Type-safe: All GraphQL types, queries, and mutations are fully typed with Python dataclasses
- Authentication: Integrates with
questra-authenticationfor seamless authentication - Comprehensive: Supports all Automation API operations (workspaces, repositories, schedules, executions)
- Modern: Uses latest Python 3.10+ features (native type hints, dataclasses)
- Well-documented: Extensive docstrings
Installation
Using uv (recommended):
uv add seven2one-questra-automation
Using pip:
pip install seven2one-questra-automation
Requirements
- Python >= 3.10
- seven2one-questra-authentication >= 0.2.1
- gql[all] >= 3.5.0
Setup
Basic Client Initialization
from questra_authentication import QuestraAuthentication
from questra_automation import QuestraAutomation
# Create authentication client
auth_client = QuestraAuthentication(
url="https://authentik.dev.example.com",
username="ServiceUser",
password="secret_password",
oidc_discovery_paths=["/application/o/automation"],
)
# Initialize Automation client
client = QuestraAutomation(
graphql_url="https://automation.dev.example.com/graphql",
auth_client=auth_client,
)
Available API Groups
The client provides access to API operations through namespaces:
client.queries: GraphQL queries (get_workspaces, get_executions, get_service_info, etc.)client.mutations: GraphQL mutations (create_workspace, execute_automation, create_schedule, etc.)client.execute_raw(query): Execute custom GraphQL queries
Available Models
Enums
ExecutionInitiator: MANUAL, SCRIPT, SCHEDULERepositoryAuthenticationMethod: USERNAME_PASSWORD, SSH_KEYAutomationBuildStatus: PENDING, RUNNING, FAILED, SUCCEEDEDAutomationExecutionStatus: PENDING, RUNNING, SUCCEEDED, FAILEDAutomationExecutionDomainStatus: SUCCEEDED, FAILEDSortEnumType: ASC, DESC
Types
WorkspaceView: Workspace detailsAutomationView: Automation detailsAutomationExecutionView: Execution detailsRepositoryView: Repository detailsScheduleView: Schedule detailsScheduledExecutionView: Scheduled execution detailsServiceInfo: Service informationErrorCodeView: Error code details
Connection Types
All list queries return Connection types with pagination support:
AutomationsConnectionExecutionsConnectionWorkspacesConnectionRepositoriesConnectionSchedulesConnectionScheduledExecutionsConnectionErrorCodesConnection
Each Connection provides:
page_info: Pagination informationedges: List of edges with cursornodes: Flat list of itemstotal_count: Total count of items
Development
Install development dependencies:
uv sync --all-groups
Run tests:
uv run pytest
Run linting:
uv run ruff check .
Format code:
uv run ruff format .
Schema
The client is based on the GraphQL schema in schema/automation.sdl.
License
Proprietary - Seven2one GmbH
Project details
Release history Release notifications | RSS feed
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 seven2one_questra_automation-0.2.0.tar.gz.
File metadata
- Download URL: seven2one_questra_automation-0.2.0.tar.gz
- Upload date:
- Size: 35.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e71f1f3748a11e87ecedd284ab6acbcf29e28848c01815d27b6286313b469d5
|
|
| MD5 |
7563bc8f3416ce77fa7a2741ed9ff587
|
|
| BLAKE2b-256 |
481732080849be2ac9c2b3775a51cd79cf34359654b9917b8b7d137c20173ae2
|
File details
Details for the file seven2one_questra_automation-0.2.0-py3-none-any.whl.
File metadata
- Download URL: seven2one_questra_automation-0.2.0-py3-none-any.whl
- Upload date:
- Size: 20.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9884d081c5de2b2645850c8a34e0f6dc19e588c993e27f771871a20286b887f
|
|
| MD5 |
c93327be2cbca512684ceab6b6f86ed3
|
|
| BLAKE2b-256 |
f6e500e419abe675b70850ec42018efbf3c51bc9f825c6ab146600b9a7571712
|