Executando verificação de segurança...
1

[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.



Você utilizaria a DerxAPI em seus projetos? Onde podemos melhorar?

Carregando publicação patrocinada...