Python SDK
Async-first Python SDK for data science pipelines and automation.
Package: puchify-sdk
pip install puchify-sdkQuick start
from puchify import Puchify
puchify = Puchify(api_key="pk_xxxx")
# List servers
servers = puchify.servers.list(status="running")
for server in servers:
print(f"{server.name}: {server.ipv4}")Resources
Servers
# List
servers = puchify.servers.list()
all_servers = puchify.servers.list_all() # generator for all pages
# CRUD
server = puchify.servers.get("svr_123")
created = puchify.servers.create(name="web-01", plan="shared-2", region="us-east")
puchify.servers.update("svr_123", name="web-01-renamed")
puchify.servers.delete("svr_123")
puchify.servers.restart("svr_123")
# Wait for state
running = puchify.servers.wait_for("svr_123", "running", timeout=300)Async support
import asyncio
from puchify import AsyncPuchify
async def main():
async with AsyncPuchify(api_key="pk_xxxx") as puchify:
servers = await puchify.servers.list()
for s in servers:
print(s.name)
asyncio.run(main())Webhook verification
from puchify import verify_webhook_signature
is_valid = verify_webhook_signature(payload, signature_header, secret)Typed errors
from puchify import Puchify, NotFoundError
try:
puchify.servers.get("nonexistent")
except NotFoundError as e:
print(f"Not found: {e}")