Typed Python client library for SatxCloud API
Project description
satxcloud
Typed Python client library for the SatxCloud API.
Features
- Layered architecture:
client->services->transport - Typed dataclass models for core entities
- Explicit error hierarchy (
ApiError,TransportError,AuthenticationError) - Support for
X-API-KeyandBearerauth modes - Public endpoints available without API key
Installation
pip install satxcloud
Quick Start
from satxcloud import SatxCloudClient, ApiError
client = SatxCloudClient(api_key="YOUR_KEY")
try:
plans = client.catalog.list_plans() # no auth required
print(plans[0].id, plans[0].name)
servers = client.servers.list_servers() # auth required
for s in servers:
print(s.vmid, s.name, s.server_type, s.status)
except ApiError as e:
print(e.status_code, e.error_code, e.message)
Architecture
satxcloud.client.SatxCloudClient: composition root and public facadesatxcloud.transport.HttpTransport: HTTP concerns, auth headers, error mappingsatxcloud.services.catalog.CatalogService: plans and availabilitysatxcloud.services.servers.ServersService: server lifecycle operationssatxcloud.models: typed API entities and operation results
Service Methods
Catalog
list_plans()plans_availability()
Servers
list_servers()create_server(...)server_details(vmid)server_status(vmid)start(vmid)stop(vmid)restart(vmid)renew(vmid, months=None)change_password(vmid, new_password=None)create_backup(vmid)list_backups(vmid)restore_backup(vmid, volid)delete_backup(vmid, volid)reinstall_os(vmid, template, password=None)
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
satxcloud-0.2.1.tar.gz
(30.8 kB
view details)
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 satxcloud-0.2.1.tar.gz.
File metadata
- Download URL: satxcloud-0.2.1.tar.gz
- Upload date:
- Size: 30.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb23f615f56b2d6a998c90b7a644f162e621cf465f880f36fbbcbf3850de7195
|
|
| MD5 |
41a68b74249f31c7464208c8bb6ce440
|
|
| BLAKE2b-256 |
3719cb59ff2340f913dde6562e1e79853c522fdb2155d5c7ed13b40ca1faae94
|
File details
Details for the file satxcloud-0.2.1-py3-none-any.whl.
File metadata
- Download URL: satxcloud-0.2.1-py3-none-any.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0cafc78e554c2b2b9af25282fda09b0629ad47bd4df6afb326c33e1d5334deea
|
|
| MD5 |
4b0aa412e2a16b3dbb011b4770d98295
|
|
| BLAKE2b-256 |
f2d36e9ca852a82caf56a890137841b545c8a2f6aa0bb3fea37a51b76c0caf37
|