vyenxhost-sdk
v1.0.1
Published
SDK oficial para interagir com a API da VyenX Hosting e gerenciar suas aplicações de forma programática.
Downloads
5
Maintainers
Readme
VyenX Host SDK v1.0 ??
Bem-vindo à documentação oficial do VyenX Host SDK, a ferramenta definitiva para interagir programaticamente com nossa plataforma de hospedagem. Automatize deploys, gerencie suas aplicações e integre a hospedagem da VyenX em seus próprios projetos com facilidade e segurança.
✨ Features
- Arquitetura Segura: Autenticação via chaves de API específicas para cada plano.
- Interface Fluente: Métodos simples e intuitivos (
deploy,start,stop,logs,delete). - Upload Simplificado: Envie suas aplicações em
.zipdiretamente pelo SDK. - Gerenciamento Completo: Controle todo o ciclo de vida de suas aplicações via código.
- Tipagem para TypeScript: Suporte completo a IntelliSense e verificação de tipos.
?? O Conceito Principal: Chaves de API por Plano
Diferente de sistemas tradicionais, a VyenX adota uma abordagem mais segura e granular. Cada plano de hospedagem que você adquire possui sua própria e única Chave de API.
Isso significa que, ao usar uma chave, você está automaticamente autorizando ações apenas naquele plano específico. Isso impede que uma chave comprometida afete todas as suas aplicações e lhe dá controle total sobre os recursos que cada integração pode acessar.
?? Obtendo sua Chave de API (Passo a Passo)
Você encontrará a chave de API necessária dentro do painel de gerenciamento do plano que deseja usar.
Acesse o Painel Principal: No Discord, use o comando
/vyenxhost.Selecione "Gerenciar meu plano": No menu suspenso, escolha a primeira opção para ver a lista de seus planos.
Escolha o Plano Desejado: Outro menu aparecerá com seus planos ativos e expirados. Selecione o plano que você quer usar para o deploy via SDK.
Copie sua Chave: O painel de gerenciamento do plano será exibido. Nele, você encontrará a "?? API Key do Plano". É essa chave, começando com
VnX-, que você usará para inicializar o SDK.
⚠️ AVISO DE SEGURANÇA Sua Chave de API de Plano concede permissão para gerenciar aplicações naquele plano. Trate-a como uma senha. Nunca a exponha em código público (como repositórios no GitHub ou em sites front-end). Armazene-a de forma segura em variáveis de ambiente (
.env).
?? Instalação
npm install vyenxhost-sdk?? Uso e Referência da API
Inicializando o Cliente
Primeiro, importe e crie uma instância do cliente com a Chave de API do seu plano.
const VyenxHost = require('vyenxhost-sdk');
const PLAN_API_KEY = process.env.VYENX_PLAN_API_KEY; // 'VnX-xxxx...'
const client = new VyenxHost(PLAN_API_KEY);client.deploy(appName, zipPath)
Faz o deploy de uma nova aplicação no plano associado à chave.
appName(string): O nome da sua aplicação.zipPath(string): O caminho local para o arquivo.zipdo seu projeto.
Exemplo:
async function deployMyBot() {
try {
console.log('Iniciando deploy...');
const app = await client.deploy(
'meu-bot',
'./dist/bot.zip'
);
console.log(`✅ Deploy concluído com sucesso! App ID: ${app.botId}`);
console.log(app);
} catch (error) {
console.error(`❌ Falha no deploy: ${error.message}`);
}
}
deployMyBot();client.listApps()
Lista todas as aplicações em toda a sua conta, não apenas no plano da chave.
Exemplo:
async function showMyApps() {
const apps = await client.listApps();
console.log('Suas aplicações na VyenX:');
apps.forEach(app => {
console.log(`- ${app.name} (ID: ${app.id}, Tipo: ${app.type})`);
});
}
showMyApps();client.start(appId)
Inicia (ou reinicia) uma aplicação.
appId(string): O ID da aplicação a ser iniciada.
Exemplo:
client.start('meu-bot-a1b2c3d4')
.then(res => console.log(res.message))
.catch(err => console.error(err.message));client.stop(appId)
Para uma aplicação em execução.
appId(string): O ID da aplicação a ser parada.
Exemplo:
client.stop('meu-bot-a1b2c3d4')
.then(res => console.log(res.message))
.catch(err => console.error(err.message));client.logs(appId)
Obtém os logs mais recentes da aplicação.
appId(string): O ID da aplicação.
Exemplo:
async function checkLogs(appId) {
const appLogs = await client.logs(appId);
console.log(`--- LOGS PARA ${appId} ---`);
console.log(appLogs);
console.log(`--- FIM DOS LOGS ---`);
}
checkLogs('meu-bot-telegram-a1b2c3d4');client.delete(appId)
Deleta uma aplicação permanentemente. Use com extremo cuidado.
appId(string): O ID da aplicação a ser deletada.
Exemplo:
// Descomente apenas se tiver certeza absoluta
// client.delete('meu-bot-a1b2c3d4')
// .then(res => console.log(res.message))
// .catch(err => console.error(err.message));?? Tratamento de Erros
O SDK lança Error em caso de falha. As mensagens de erro vêm diretamente da API, fornecendo um feedback claro. Sempre use blocos try...catch com funções async/await ou .catch() com Promises.
try {
// Tenta fazer deploy com uma chave inválida ou sem slots no plano
const app = await client.deploy('app-teste', './app.zip');
} catch (error) {
console.error(error.message);
// Possível saída: "Falha no deploy: Limite de 2 apps para este plano atingido."
// ou "Falha no deploy: API Key inválida ou o plano associado expirou."
}