Zbuduj z MurmurHost API.
REST API przez HTTPS, JSON w / JSON na zewnątrz, uwierzytelnianie tokenem bearer. Provisioning VPS, zarządzanie usługami, lista planów, webhooki. Zaprojektowany tak, aby był ergonomiczny z jednego wiersza Bash lub dowolnego nowoczesnego klienta HTTP.
Adres URL bazowy
https://api.murmurhost.com/v1Szybki start
Wdróż swój pierwszy VPS przez API w 4 liniach curl.
Wygeneruj klucz API w panelu klienta
Otwórz /client/settings → Klucze API → Generuj. Klucze są pokazywane raz; przechowuj bezpiecznie.
Lista dostępnych planów
curl https://api.murmurhost.com/v1/plans \
-H "Authorization: Bearer sh_live_••••••••"Wdróż VPS-2 na Islandii
curl -X POST https://api.murmurhost.com/v1/services \
-H "Authorization: Bearer sh_live_••••••••" \
-H "Content-Type: application/json" \
-d '{
"plan": "vps-2",
"location": "iceland",
"billing_cycle": "monthly",
"addons": ["ddos-premium", "backup"],
"payment_method": "crypto"
}'Zapłać fakturę i otrzymaj dane uwierzytelniające przez webhook
{
"id": "srv_3a8f2d6e",
"status": "pending_payment",
"invoice": "inv_91f7cb01",
"pay_url": "https://oxapay.com/pay/12345",
"webhook_event": "service.provisioned"
}Uwierzytelnianie
Tokeny okaziciela o zakresie per klucz. Bez OAuth, bez JWT, bez podpisywania.
Format klucza API
Klucze to 48-znakowe losowe ciągi poprzedzone sh_live_ do produkcji i sh_test_ dla sandboxa. Przekaż przez Autoryzacja: Bearer ... nagłówek.
Zakresy
Każdy klucz niesie jeden lub więcej zakresów: services:read, services:write, billing:read, billing:write, tickets:write. Generuj klucze o najmniejszych uprawnieniach dla CI / Terraform / skryptów.
Co się dzieje na dużą skalę
Domyślny limit: 60 żądań/minutę na klucz API dla punktów odczytu, 20/minutę na punktach końcowych zapisu. Pojemność szczytowa jest 2× większa niż stan ustalony.
Nagłówki w każdej odpowiedzi: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset. Po osiągnięciu limitu API zwraca 429 Too Many Requests z Retry-After nagłówek wskazujący sekundy oczekiwania.
Wyższe limity są dostępne dla zweryfikowanych przypadków produkcyjnych — panele resellerów, floty CI, narzędzia monitorujące. E-mail [email protected] z oczekiwanym RPS i uzasadnieniem.
Obwiednia błędu
Każda odpowiedź nie-2xx ma ten sam kształt, aby biblioteki klienckie mogły czysto rozgałęziać.
{ "error": { "code": "service_not_found", "message": "Usługa srv_3a8f2d6e nie istnieje lub nie należy do tego konta.", "param": "id", "request_id": "req_8c9c11ef" } }Typowe kody: invalid_request, authentication_failed, forbidden, not_found, rate_limit_exceeded, insufficient_funds, plan_unavailable, location_unavailable, internal_error. Zawsze dołączaj request_id podczas kontaktu ze wsparciem — to najszybszy sposób na [email protected] aby znaleźć pasujący wpis w dzienniku.
API usług
Provision, lista, aktualizacja, anulowanie, restart, migawka, migracja.
services
/v1/servicesLista wszystkich usług należących do uwierzytelnionego konta.
/v1/servicesWdróż nowy VPS / RDP / serwer dedykowany.
/v1/services/{id}Pobierz pojedynczą usługę po id.
/v1/services/{id}Zaktualizuj usługę (zmień nazwę, zmień automatyczne odnawianie, dołącz dodatki).
/v1/services/{id}Anuluj i usuń usługę. Zwrot przysługuje, jeśli mieścisz się w 7-dniowym oknie.
/v1/services/{id}/rebootTwardy lub miękki restart działającej usługi.
/v1/services/{id}/snapshotUtwórz ręczną migawkę. Zwraca identyfikator migawki.
/v1/services/{id}/migratePrzenieś usługę do innej jurysdykcji. Migracja na żywo, gdzie jest obsługiwana.
API lokalizacji
Tylko do odczytu — lista 8 jurysdykcji, pojemność na lokalizację.
/v1/locationsLista 8 jurysdykcji centrów danych i ich aktualna pojemność.
/v1/locations/{slug}Szczegóły dla jednej jurysdykcji: postawa prawna, operatorzy, certyfikaty, ping w czasie rzeczywistym z Twojego IP.
API planów
Pełny katalog 35 planów. Ceny, specyfikacje i zgodność dodatków.
/v1/plansWymień wszystkie 35 planów w 11 kategoriach produktów.
/v1/plans/{slug}Szczegóły dla jednego planu: pełna specyfikacja, ceny za cykl, dostępność w lokalizacjach, zalecane dodatki.
/v1/categoriesLista 11 kategorii produktów z metadanymi podsumowującymi.
API do rozliczeń i faktur
Lista faktur, pobieranie PDF-ów, opłacanie otwartych faktur przez Card2Crypto lub OxaPay.
/v1/invoicesWyświetl wszystkie faktury dla uwierzytelnionego konta.
/v1/invoices/{id}Pobierz pojedynczą fakturę z pozycjami.
/v1/invoices/{id}/payZainicjuj płatność za otwartą fakturę. Zwraca URL płatności (Card2Crypto lub OxaPay).
/v1/invoices/{id}/pdfPobierz fakturę PDF do księgowości.
Subskrybuj zdarzenia cyklu życia
Skonfiguruj adres URL webhook raz; otrzymuj POST-y podpisane HMAC-SHA256 dla każdego istotnego zdarzenia.
Weryfikacja podpisów
Każdy webhook zawiera X-MurmurHost-Podpis nagłówek — HMAC-SHA256 surowego ciała żądania przy użyciu Twojego sekretu webhook. Zweryfikuj przed przetworzeniem.
import crypto from "node:crypto"; function verify(rawBody, signature, secret) { const expected = crypto .createHmac("sha256", secret) .update(rawBody) .digest("hex"); return crypto.timingSafeEqual( Buffer.from(expected, "hex"), Buffer.from(signature, "hex"), ); }Wydarzenia
service.provisionedUruchamia się, gdy usługa zakończy provisioning i dane logowania zostaną wysłane.
service.suspendedUruchamia się przy zawieszeniu (brak płatności, naruszenie AUP, prośba klienta).
service.cancelledUruchamia się przy twardym anulowaniu. Usługa jest usuwana w ciągu 60 sekund.
invoice.createdWyzwalane, gdy generowana jest nowa faktura (zwykle przy odnowieniu).
invoice.paidUruchamiane po udanej płatności. Zawiera payment_method (karta / krypto) i txid.
invoice.failedUruchamiane, gdy próba płatności nie powiedzie się lub wygaśnie.
ticket.repliedUruchamia się, gdy członek zespołu wsparcia odpowie na jedno z Twoich zgłoszeń.
incident.publishedWyzwalane, gdy opublikowany zostanie incydent na stronie statusu dotyczący Twoich usług.
SDK i CLI
API to zwykły HTTP — każdy klient działa. Publikujemy również Node SDK, Go SDK i CLI hostctl.
@silenthosts/sdk (Node.js)
npm install @silenthosts/sdk · TypeScript-first, w pełni typowane odpowiedzi, payloady walidowane przez Zod.
murmurhost-go (Go)
go get github.com/murmurhost/go · Świadomy kontekstu, z typami generycznymi, bez dodatkowych zależności.
hostctl (CLI)
brew install murmurhost/tap/hostctl · Wdrażaj, sprawdzaj, restartuj, migruj z terminala.
Dostawca Terraform — dostępny w Q3 2026
Oficjalny murmurhost/murmurhost Dostawca Terraform jest w planach. Zapisz się na wczesny dostęp.
Publiczna beta
API jest w publicznej becie od Q2 2026
Punkty końcowe opisane powyżej są stabilne i nie ulegną zmianie w przestrzeni nazw v1. Zmiany przełomowe są wprowadzane jako v2 z minimalnym okresem wycofania wynoszącym 6 miesięcy. Znalazłeś błąd? Otwórz zgłoszenie z /client/tickets/new z request_id z nieudanej odpowiedzi.
Wdróż swój pierwszy serwer offshore w 60 sekund.
Anonimowa rejestracja. Akceptujemy Bitcoin i Monero. Provisioning w 8 jurysdykcjach.
Karta kredytowa nie wymagana · Gwarancja zwrotu 7 dni