Construa com o MurmurHost API.
Uma API REST sobre HTTPS, JSON in / JSON out, autenticação por token bearer. Provisione VPS, gerencie serviços, liste planos, ingira webhooks. Projetada para ser ergonômica a partir de um one-liner em Bash ou qualquer cliente HTTP moderno.
URL base
https://api.murmurhost.com/v1Início rápido
Implante seu primeiro VPS via API em 4 linhas de curl.
Gere uma chave de API no seu painel de cliente
Abrir /client/settings → Chaves de API → Gerar. As chaves são mostradas uma vez; armazene com segurança.
Listar planos disponíveis
curl https://api.murmurhost.com/v1/plans \
-H "Authorization: Bearer sh_live_••••••••"Provisione um VPS-2 na Islândia
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"
}'Pague a fatura e receba as credenciais por webhook
{
"id": "srv_3a8f2d6e",
"status": "pending_payment",
"invoice": "inv_91f7cb01",
"pay_url": "https://oxapay.com/pay/12345",
"webhook_event": "service.provisioned"
}Autenticação
Tokens de portador com escopo por chave. Sem OAuth, sem truques de JWT, sem dança de assinatura.
Formato da chave de API
As chaves são strings aleatórias de 48 caracteres prefixadas com sh_live_ para produção e sh_test_ para sandbox. Passe via Autorização: Bearer ... cabeçalho.
Escopos
Cada chave carrega um ou mais escopos: serviços:leitura, services:write, billing:read, cobrança:escrita, tickets:escrita. Gere chaves de privilégio mínimo para CI / Terraform / scripts.
O que acontece em escala
Limite padrão: 60 solicitações/minuto por chave de API em endpoints de leitura, 20/minuto em endpoints de escrita. A capacidade de pico é 2× o estado estável.
Cabeçalhos em cada resposta: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset. Quando você atingir o limite, a API retorna 429 Muitas Solicitações com um Retry-After cabeçalho indicando segundos de espera.
Limites maiores estão disponíveis para casos de uso de produção verificados — painéis de revenda, frotas de CI, ferramentas de monitoramento. E-mail [email protected] com seu RPS esperado e a justificativa.
Envelope de erro
Toda resposta não-2xx tem a mesma forma para que as bibliotecas de cliente possam ramificar de forma limpa.
{ "error": { "code": "service_not_found", "message": "O serviço srv_3a8f2d6e não existe ou não pertence a esta conta.", "param": "id", "request_id": "req_8c9c11ef" } }Códigos comuns: invalid_request, authentication_failed, forbidden, not_found, rate_limit_exceeded, insufficient_funds, plan_unavailable, location_unavailable, internal_error. Sempre inclua request_id ao entrar em contato com o suporte — é a maneira mais rápida para [email protected] para encontrar a entrada de log correspondente.
API de serviços
Provisionar, listar, atualizar, cancelar, reiniciar, snapshot, migrar.
services
/v1/servicesListar todos os serviços pertencentes à conta autenticada.
/v1/servicesProvisione um novo VPS / RDP / servidor dedicado.
/v1/services/{id}Recupere um único serviço por id.
/v1/services/{id}Atualizar um serviço (renomear, alterar renovação automática, anexar complementos).
/v1/services/{id}Cancele e derrube um serviço. O reembolso se aplica se estiver dentro do período de 7 dias.
/v1/services/{id}/rebootReinicialização forçada ou suave de um serviço em execução.
/v1/services/{id}/snapshotCrie um snapshot manual. Retorna o id do snapshot.
/v1/services/{id}/migrateMigre um serviço para uma jurisdição diferente. Migração ao vivo onde suportada.
API de localizações
Somente leitura — lista as 8 jurisdições, obtém capacidade por localização.
/v1/locationsListe as 8 jurisdições de data center e sua capacidade atual.
/v1/locations/{slug}Detalhe de uma jurisdição: postura legal, carriers, certificações, ping em tempo real do seu IP.
API de planos
O catálogo completo de 35 planos. Preços, especificações e compatibilidade de complementos.
/v1/plansListe todos os 35 planos nas 11 categorias de produtos.
/v1/plans/{slug}Detalhe de um plano: especificações completas, preço por ciclo, disponibilidade por localização, complementos recomendados.
/v1/categoriesListe as 11 categorias de produtos com metadados resumidos.
API de cobrança e faturas
Liste faturas, recupere PDFs, pague faturas em aberto via Card2Crypto ou OxaPay.
/v1/invoicesListe todas as faturas para a conta autenticada.
/v1/invoices/{id}Recupere uma única fatura com itens de linha.
/v1/invoices/{id}/payInicie o pagamento de uma fatura em aberto. Retorna uma URL de pagamento (Card2Crypto ou OxaPay).
/v1/invoices/{id}/pdfBaixe o PDF da fatura para contabilidade.
Assinar eventos do ciclo de vida
Configure uma URL de webhook uma vez; receba POSTs assinados com HMAC-SHA256 para cada evento relevante.
Verificando assinaturas
Cada webhook carrega um X-MurmurHost-Assinatura cabeçalho — HMAC-SHA256 do corpo bruto da solicitação usando seu segredo de webhook. Verifique antes de processar.
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"), ); }Eventos
service.provisionedDispara quando um serviço termina o provisionamento e as credenciais são enviadas.
service.suspendedDispara na suspensão (não pagamento, violação da AUP, solicitação do cliente).
service.cancelledDispara no cancelamento definitivo. O serviço é derrubado em até 60 segundos.
invoice.createdDispara quando uma nova fatura é gerada (tipicamente na renovação).
invoice.paidDispara no pagamento bem-sucedido. Inclui payment_method (cartão / cripto) e txid.
invoice.failedDispara quando uma tentativa de pagamento falha ou expira.
ticket.repliedDispara quando um membro da equipe de suporte responde a um dos seus tickets.
incident.publishedDispara quando um incidente na página de status que afeta seus serviços é publicado.
SDKs e CLI
A API é HTTP simples — qualquer cliente funciona. Também publicamos um SDK Node, um SDK Go e uma CLI hostctl.
@silenthosts/sdk (Node.js)
npm install @silenthosts/sdk · TypeScript-first, respostas totalmente tipadas, payloads validados com Zod.
murmurhost-go (Go)
go get github.com/murmurhost/go · Sensível ao contexto, tipado com genéricos, sem dependências extras.
hostctl (CLI)
brew install murmurhost/tap/hostctl · Implante, inspecione, reinicie, migre a partir do seu terminal.
Provedor Terraform — lançamento no 3º trimestre de 2026
O oficial murmurhost/murmurhost O provedor Terraform está no roadmap. Inscreva-se para acesso antecipado.
Beta pública
A API está em beta público a partir do Q2 2026
Os endpoints documentados acima são estáveis e não quebrarão dentro do namespace v1. Mudanças que quebram são lançadas como v2 com um período mínimo de depreciação de 6 meses. Encontrou um bug? Abra um ticket a partir de /client/tickets/new com o request_id da resposta com falha.
Implante seu primeiro servidor offshore em 60 segundos.
Cadastro anônimo. Bitcoin e Monero aceitos. Provisionado em 8 jurisdições.
Sem necessidade de cartão de crédito · Garantia de reembolso de 7 dias