SysMailEnableAPI é uma API, que roda em Nodejs e permite gerenciar o MailEnable Server utilizando o repositório CtrlMailEnable
A aplicação roda na porta 9092 porém pode ser alterado na variável cfg_porta
O acesso a api é feito utilizando autenticação básica HTTP (Basic Auth), e os usuários/senha são controlados na variável cfg_usuarios
Toda chamada a API é feita via POST enviando no corpo da solicitação o JSON com os parâmetros
Em caso de sucesso, será retornado um json com dois valores:
- httpcode: 200
- body: Json com o resultado da requisição
Exemplo:
{
"httpcode": 200,
"body":{
}
}
Em alguns métodos não é retornado o body, são métodos que apenas retornam o httpcode: 200 para indicar o SUCESSO da requisição
Em caso de erro, será retornado um json com dois valores:
- httpcode: 500
- body/Msg: Mensagem de erro
Exemplo:
{
"httpcode": 500,
"body":{
"Msg": "Alguns dados nao foram preenchidos"
}
}
Para o funcionamento deste método é necessário a dependência do pacote CtrlMailEnable:
Método: contas_listar
Exemplo:
null
Retorno:
{
"httpcode": 200,
"body": {
"cmacetko_teste1.com.br": {
"Conta": "cmacetko_teste1.com.br",
"Status": "1"
}
}
}
Método: contas_is
Exemplo:
{
"Conta": "example.com"
}
Retorno:
{
"httpcode": 200,
"body": true/false
}
Método: contas_status
Exemplo:
{
"Conta": "example.com",
"Status": true
}
Retorno:
{
"httpcode": 200
}
Método: contas_criar
Exemplo:
{
"Conta": "example.com"
}
Retorno:
{
"httpcode": 200
}
Método: contas_deletar
Exemplo:
{
"Conta": "example.com"
}
Retorno:
{
"httpcode": 200
}
Método: emails_listar
Exemplo:
{
"Conta": "example.com"
}
Retorno:
{
"httpcode": 200,
"body": [
{
"Nome":"Postmaster",
"Status":"1",
"Limite":"-1",
"Tamanho":"0"
},
{
"Nome":"teste1",
"Status":"1",
"Limite":"-1",
"Tamanho":"0"
}
]
}
Observalções: Status: 1 - Ativado / 0 - Desativado Limite: Em Kb, onde "-1" indica sem limite Tamanho: Indica quantos Kb já foram utilizados
Método: emails_is
Exemplo:
{
"Conta": "example.com",
"Email": "teste1"
}
Retorno:
{
"httpcode": 200,
"body": true/false
}
Método: emails_criar
Exemplo:
{
"Conta": "example.com",
"Email": "teste1",
"Senha": "123456",
"Limite": "520000"
}
Retorno:
{
"httpcode": 200
}
Método: emails_alterar_senha
Exemplo:
{
"Conta": "example.com",
"Email": "teste1",
"Senha": "123456"
}
Retorno:
{
"httpcode": 200
}
Método: emails_alterar_limite
Exemplo:
{
"Conta": "example.com",
"Email": "teste1",
"Limite": "520000"
}
Retorno:
{
"httpcode": 200
}
Método: emails_alterar_status
Exemplo:
{
"Conta": "example.com",
"Email": "teste1",
"Status": true
}
Retorno:
{
"httpcode": 200
}
Método: emails_deletar
Exemplo:
{
"Conta": "example.com",
"Email": "teste1"
}
Retorno:
{
"httpcode": 200
}
O limite de espaço das contas é gerenciado em kilobytes, você pode também informar "-1" indicando que a caixa tem espaço ilimitado
O controle de status é sempre um boolean, onde:
- true: Ativado
- false: Desativado
Paloma Macetko