@aburrows Ages ago I wrote an API wrapper for communicating with Hetzner. I mocked the API responses using copies of actual API response.