📡 Referência da API
Documentação completa da API REST da MozHost para integração com seus sistemas.
Base URL
https://api.mozhost.shop
🔐 Autenticação
Todas as rotas protegidas requerem um token JWT no header Authorization:
Authorization: Bearer SEU_TOKEN_JWT
💡 Como obter o token: Faça login via POST /api/auth/login e use o token retornado.
👤 Autenticação
/api/auth/loginAutentica o usuário e retorna um token JWT.
curl -X POST https://api.mozhost.shop/api/auth/login \
-H "Content-Type: application/json" \
-d '{"username": "meu_user", "password": "minha_senha"}'Resposta:
{
"success": true,
"token": "eyJhbGciOiJIUzI1...",
"user": {
"id": 1,
"username": "meu_user",
"email": "user@email.com",
"plan": "free",
"coins": 1500
}
}/api/auth/registerCria uma nova conta na MozHost.
curl -X POST https://api.mozhost.shop/api/auth/register \
-H "Content-Type: application/json" \
-d '{
"username": "novo_user",
"email": "user@email.com",
"password": "senha_segura"
}'📦 Containers
/api/containersLista todos os containers do usuário autenticado.
curl https://api.mozhost.shop/api/containers \ -H "Authorization: Bearer SEU_TOKEN"
Resposta:
{
"success": true,
"containers": [
{
"id": "abc-123",
"name": "meu-bot",
"type": "nodejs",
"status": "running",
"domain": "meu-bot.mozhost.shop",
"port": 3001
}
]
}/api/containersCria um novo container. Custo: 500 coins.
curl -X POST https://api.mozhost.shop/api/containers \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "meu-bot", "type": "nodejs"}'/api/containers/:id/startInicia um container parado.
/api/containers/:id/stopPara um container em execução.
curl -X POST https://api.mozhost.shop/api/containers/abc-123/start \ -H "Authorization: Bearer SEU_TOKEN"
/api/containers/:idRemove um container permanentemente.
⚠️ Atenção: Esta ação é irreversível. Todos os arquivos e dados do container serão apagados.
📧 Emails
/api/emails/sendEnvia um email transacional.
curl -X POST https://api.mozhost.shop/api/emails/send \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"to": "cliente@email.com",
"subject": "Pedido Confirmado",
"html": "<h1>Obrigado!</h1><p>Seu pedido foi confirmado.</p>",
"fromName": "Minha Loja"
}'/api/emails/quotaVerifica a quota de emails do mês atual.
/api/emails/statsRetorna estatísticas de envio (enviados, falhas, taxa de entrega).
🗄️ Databases
/api/databasesLista todos os databases do usuário.
/api/databasesCria um novo database. Custo: 5 coins/dia.
curl -X POST https://api.mozhost.shop/api/databases \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "meu-db", "type": "mysql"}'/api/databases/:idRemove um database permanentemente.
⚠️ Códigos de Erro
| Código | Significado | Solução |
|---|---|---|
400 | Requisição inválida | Verifique os parâmetros enviados |
401 | Não autorizado | Token inválido ou expirado. Faça login novamente. |
403 | Acesso negado | Sem permissão para este recurso |
404 | Não encontrado | Recurso não existe ou não pertence a você |
429 | Muitas requisições | Aguarde alguns minutos e tente novamente |
500 | Erro interno | Problema no servidor. Contacte o suporte. |