Conta

A API de conta é utilizada somente para leitura.

Saldo de Créditos

GET /api/saldo_conta

Retorna o saldo de créditos da conta do usuário. O saldo é um float que pode ser negativo.

Exemplo de Chamada

curl -u $usuario:$senha -X GET https://emailfax.com.br/api/saldo_conta

Retorno

Sucesso
Status: 200 OK
		
{"saldo": 627.0}
Login/Senha inválidos
Status: 401 Unauthorized
Erro
Status: 500 Internal Server Error

Criar Conta

POST /api/criar_conta

Cria uma conta no EmailFax. Para utilizar este método, é necessário permissão especial. Se você precisa criar contas no EmailFax, entre em contato.

Exemplo de Chamada

curl -u $usuario:$senha -X POST -H 'Content-Type: application/json' -d '$requisicao' https://emailfax.com.br/api/criar_conta

Requisição

{
 "login":"rafaelp",
 "email":"email@exemplo.com",
 "senha":"senhasecreta",
 "nome":"Rafael",
 "sobrenome":"Lima",
 "cpf":"99999999999",
 "ddd_telefone":"99",
 "numero_telefone":"99999999",
 "ip_remoto":"192.168.0.1"
}

Retorno

Sucesso
Status: 201 Created
Parâmetro 'json' não informado
Status: 400 Bad Request

Parâmetro 'json' não informado
Campos inválidos
Status: 400 Bad Request

[["nome", "Nome n\u00e3o pode ser vazio"], ["senha", "Senha n\u00e3o pode ser vazio"], ["senha", "Senha \u00e9 muito curto (n\u00e3o menos do que 4 caracteres)"], ["sobrenome", "Sobrenome n\u00e3o pode ser vazio"], ["login", "Login n\u00e3o pode ser vazio"], ["login", "Login \u00e9 muito curto (n\u00e3o menos do que 3 caracteres)"], ["email", "Email n\u00e3o pode ser vazio"], ["email", "Email \u00e9 muito curto (n\u00e3o menos do que 3 caracteres)"], ["email", "Email n\u00e3o \u00e9 v\u00e1lido"]]
Usuário sem permissão
Status: 403 Forbidden
Login/Senha inválidos
Status: 401 Unauthorized
Erro
Status: 500 Internal Server Error

Dados da Compra

GET /api/dados_compra?creditos=#{creditos}

Informa o preço e validade de uma determinada compra de créditos. Caso seja passado um valor de créditos inferior à compra mínima, serão retornados os valores para a compra mínima de créditos.

Exemplo de Chamada

curl -u $usuario:$senha -X GET https://emailfax.com.br/api/dados_compra?creditos=50

Retorno

Sucesso
Status: 200 OK

{
 "creditos":50,
 "preco_unitario":0.95,
 "preco_total":47.50,
 "valido_ate":"2011-10-22",
}
Parâmetro 'creditos' não informado
Status: 400 Bad Request

Parâmetro 'creditos' não informado.
Parâmetro 'creditos' diferente de um inteiro maior que zero
Status: 400 Bad Request

Parâmetro 'creditos' inválido.
Login/Senha inválidos
Status: 401 Unauthorized

Comprar Créditos

POST /api/comprar_creditos

Compra créditos através de cartão de crédito. Bandeiras suportadas VISA (visa) e American Express (amex).

Exemplo de Chamada

curl -u $usuario:$senha -X POST -H 'Content-Type: application/json' -d '$requisicao' https://emailfax.com.br/api/criar_conta

Requisição

{
 "creditos": 50,
 "forma_pagamento": "cartao_credito",
 "cartao_credito":
 {
  "bandeira": "visa",
  "numero": "4073020000000002",
  "nome": "Nome do Titular",
  "mes_expiracao": "12",
  "ano_expiracao": "14",
  "codigo_seguranca": "999"
 },
 "ip_remoto": "192.168.0.1",
 "token_afiliado": #{token_afiliado}
}

Retorno

Compra efetuada com sucesso
Status: 201 Created
Parâmetro 'json' não informado
Status: 400 Bad Request

Parâmetro 'json' não informado
Usuário sem permissão para comprar

Um usuário não tem permissão para comprar, quando não possui CPF ou Telefone no cadastro.

Status: 403 Forbidden

Usuário não tem permissão para compra.
Dados do Cartão de Crédito Inválidos
Status: 400 Bad Request
	
Dados do cartão de crédito inválidos
Cartão de Crédito não autorizado
Status: 400 Bad Request
	
O cartão de crédito não foi autorizado. Verifique se os dados foram colocados corretamente.
Erro ao debitar o cartão de crédito
Status: 400 Bad Request
	
Houve um erro ao debitar o cartão de crédito. Por favor, tente novamente.
Forma de pagamento inválida
Status: 400 Bad Request
	
Parâmetro 'forma_pagamento' inválido.
Número de créditos inválido
Status: 400 Bad Request
	
Parâmetro 'creditos' inválido.
Token de afiliado inválido
Status: 400 Bad Request
	
Parâmetro 'token_afiliado' inválido.
Login/Senha inválidos
Status: 401 Unauthorized