First-party SDKs, CLI, official Terraform provider, and a complete REST API. Manage infrastructure however you prefer to work.
Install, authenticate, and manage every resource. Built-in retry, pagination, polling, and typed errors.
Sync and async clients. Context managers, typed errors, and all the same resource methods.
Zero-dependency Go client. Generic pagination, retry, and WaitFor helpers.
Declarative infrastructure management. 12 resources, 4 data sources. Full CRUD, import, and state management.
npm install -g puchify
puchify login\n# Opens browser to authenticate\n# Or set PUCHIFY_API_KEY environment variable
# Servers puchify servers create --name my-server --plan standard-2 --region us-east puchify servers list --output json puchify servers restart server_abc123 # Databases puchify data create --name my-db --engine postgres --plan starter # Logs puchify logs stream --resource server_abc123 --level error # Output formats: table, json, yaml, ids puchify servers list --output json --quiet
The Puchify REST API follows RESTful conventions with cursor-based pagination, Bearer token authentication, and consistent error responses. Every resource supports CRUD operations plus resource-specific actions.
/api/v1/serversList all servers/api/v1/serversCreate a server/api/v1/servers/:idGet server details/api/v1/servers/:idUpdate a server/api/v1/servers/:idDestroy a server/api/v1/servers/:id/restartRestart a server/api/v1/dataList databases/api/v1/dataCreate a database/api/v1/kubernetesList K8s clusters/api/v1/domains/:id/verifyVerify domain DNSReceive real-time events when resources change state. Payloads are signed with HMAC-SHA256 for verification. Automatic retry with exponential backoff (up to 15 attempts) and auto-disable after 50 consecutive failures.
server.createdserver.destroyedbackup.completedincident.triggereddomain.verifiedalert.fired