[PITCH]: Templates com traduções em três línguas e um plano gratuito. Implemente a confirmação de emails com apenas um endpoint
Recentemente publiquei um artigo falando sobre meu projeto DerxAPI. A versão era de teste e foi lançada para colher feedbacks, encontrar erros e melhorar meu produto. Se quiser, leia o artigo sobre a DerxAPI no TabNews.
A DerxAPI é uma API onde os desenvolvedores podem implementar e enviar emails de confirmação para seus usuários utilizando apenas dois endpoints, deixando de lado a configuração de servidores SMTP, domínios, banco de dados e livrando o desenvolvedor de criar sua própria lógica. A DerxAPI foi desenvolvida para economizar o tempo do desenvolvedor e poupar recursos no seu servidor.
Qual o problema que nós resolvemos?
Durante o desenvolvimento de algumas aplicações, eu percebi que era sempre necessário criar um sistema de confirmação de email para não encharcar minha base de dados de emails inexistentes. A cada novo projeto, eu repetia o mesmo processo:
- Encontrar um serviço SMTP
- Comprar um domínio
- Associar o domínio ao servidor SMTP
- Configurar banco de dados para armazenar temporariamente os códigos
- Escrever meu próprio código para enviar e confirmar os códigos
Esse processo leva tempo. Realizar todo esse trabalho consome muito tempo do desenvolvedor e aumenta o consumo de recursos no servidor.
Com base nesse problema, minha ideia foi centralizar todo esse processo chato e disponibilizar uma API para que desenvolvedores pudessem enviar e confirmar os emails de seus clientes. Assim, desenvolvendo essa solução, tudo fica mais fácil:
- Confirme emails utilizando apenas dois endpoints da API
- Economize recursos no seu servidor
- Utilize templates prontos, sem se preocupar com HTML
- Não é necessário ter um domínio próprio
- Esqueça servidor SMTP ou banco de dados para armazenar código
- Uma conta, vários projetos. Você pode utilizar seu token de acesso DerxAPI para todos os seus projetos.
Como funciona a DerxAPI
Para utilizar a DerxAPI, você só precisa criar uma conta e obter seu token de acesso para implementar nossa API em seu produto. Você não vai gastar mais que 5 minutos para fazer isso.
Veja um exemplo de uso da nossa API e perceba o quão simples é enviar um código de confirmação com nosso serviço:
import requests
req = requests.post(
url='https://service.derxapi.com/send-code',
headers={'X-API-Token': '<seu_token_aqui>'},
json={
'email': '[email protected]',
'template': {
'name': '001',
'placeholder': {
'company': 'TabNews'
}
}
}
)
Se você fosse desenvolver seu próprio sistema para isso, seria necessário configurar e desenvolver todo esse código:
O código abaixo foi gerado com ChatGPT
import smtplib
import random
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
import sqlite3
from datetime import datetime, timedelta
conn = sqlite3.connect("verification.db")
cursor = conn.cursor()
cursor.execute("""
CREATE TABLE IF NOT EXISTS verification_codes (
email TEXT PRIMARY KEY,
code INTEGER,
expiration DATETIME
)
""")
conn.commit()
def generate_code():
return random.randint(100000, 999999)
def send_email(to_email, code):
from_email = "[email protected]"
password = "your_app_password"
subject = "Verification Code"
message = f"Your verification code is: {code}"
msg = MIMEMultipart()
msg["From"] = from_email
msg["To"] = to_email
msg["Subject"] = subject
msg.attach(MIMEText(message, "plain"))
with smtplib.SMTP("smtp.gmail.com", 587) as server:
server.starttls()
server.login(from_email, password)
server.send_message(msg)
def store_code(email, code):
expiration = datetime.now() + timedelta(minutes=5)
cursor.execute("""
INSERT INTO verification_codes (email, code, expiration)
VALUES (?, ?, ?)
ON CONFLICT(email) DO UPDATE SET code = excluded.code, expiration = excluded.expiration
""", (email, code, expiration))
conn.commit()
def verify_code(email, user_code):
cursor.execute("SELECT code, expiration FROM verification_codes WHERE email = ?", (email,))
result = cursor.fetchone()
if result:
code, expiration = result
if datetime.now() > datetime.fromisoformat(expiration):
return "expired"
return "valid" if user_code == str(code) else "invalid"
return "not_found"
def confirm_email(email):
code = generate_code()
send_email(email, code)
store_code(email, code)
while True:
user_input = input("Enter the code sent to your email: ")
status = verify_code(email, user_input)
if status == "valid":
print("Email successfully verified!")
break
elif status == "expired":
print("Code expired. Please request a new one.")
break
else:
print("Invalid code. Try again.")
if __name__ == "__main__":
user_email = input("Enter your email: ")
confirm_email(user_email)
Funcionalidades da nossa API
As funcionalidades estão disponíveis de acordo com o plano escolhido pelo usuário, mas aqui vai uma lista geral de funcionalidades da nossa API:
- 03 Templates HTML estilizados: Todos os templates foram testados para evitar spam e são compatíveis com a maioria dos clientes de email.
- Tradução em 03 idiomas: Sua aplicação recebe usuários estrangeiros? Você pode selecionar os idiomas Inglês, Português e Espanhol para traduzir os templates.
- Placeholders: Adicione o nome da sua empresa ao email enviado e aumente a confiança dos seus usuários.
- Nossos emails são enviados com o endereço
[email protected]
, configurado e testado para evitar que o email caia na caixa de spam.
Em versões futuras, diversas funcionalidades serão implementadas para melhorar nosso produto e atender as necessidades dos nossos usuários
Faça seu teste gratuito
Nós fornecemos um plano gratuito para qualquer pessoa utilizar a DerxAPI. Nesse plano, você possui acesso a 50 códigos por mês para enviar a qualquer email e um template HTML disponível, sem traduções.
- Criar uma conta DerxAPI
- Fique por dentro das novidades, questione ou relate problemas
- Documentação DerxAPI
- Desenvolvido por @jaedsonpys
Você utilizaria a DerxAPI em seus projetos? Onde podemos melhorar?