Como validar CPF automaticamente com Flask e FastAPI

Introdução
A validação de CPF é um processo essencial para garantir segurança e conformidade em sistemas que exigem identificação de usuários. Com o uso de APIs de consulta de CPF, é possível automatizar essa validação de forma eficiente e segura.
Neste artigo, explicamos como integrar a validação automática de CPF usando os frameworks Flask e FastAPI, duas das principais opções para desenvolvimento de APIs em Python.
1. Escolhendo a API de CPF correta
Antes de iniciar a implementação, é importante escolher uma API confiável para validação de CPF. Os critérios principais incluem:
✅ Consulta em tempo real na Receita Federal.
✅ Baixo tempo de resposta (1800-2000ms).
✅ Conformidade com a LGPD.
✅ Geração de comprovante oficial.
2. Como validar CPF com Flask
O Flask é um microframework leve e fácil de usar para criar APIs em Python. Vamos construir uma API simples para validar CPF.
Passo 1: Instalar dependências
pip install flask requests
Passo 2: Criar o arquivo app.py
app.py
from flask import Flask, request, jsonify
import requests
app = Flask(__name__)
API_URL = "https://api.cpfhub.io/v1/cpf/validate"
API_KEY = "SUA_CHAVE_DE_API"
@app.route("/validar_cpf", methods=["POST"])
def validar_cpf():
data = request.get_json()
cpf = data.get("cpf")
birth_date = data.get("birthDate")
headers = {"Content-Type": "application/json", "x-api-key": API_KEY}
payload = {"cpf": cpf, "birthDate": birth_date}
response = requests.post(API_URL, json=payload, headers=headers)
if response.status_code == 200:
return jsonify(response.json())
else:
return jsonify({"error": "Falha na consulta", "status_code": response.status_code, "message": response.text})
if __name__ == "__main__":
app.run(debug=True)
Passo 3: Testar a API com cURL
curl -X POST "http://127.0.0.1:5000/validar_cpf" \
-H "Content-Type: application/json" \
-d '{"cpf": "123.456.789-00", "birthDate": "15/06/1990"}'
✅ Se tudo estiver correto, a API retornará os dados do CPF validado!
3. Como validar CPF com FastAPI
O FastAPI é um framework moderno e otimizado para alta performance em APIs.
Passo 1: Instalar dependências
pip install fastapi uvicorn requests
Passo 2: Criar o arquivo main.py
main.py
from fastapi import FastAPI
from pydantic import BaseModel
import requests
app = FastAPI()
API_URL = "https://api.cpfhub.io/api/cpf"
API_KEY = "SUA_CHAVE_DE_API"
class CPFRequest(BaseModel):
cpf: str
birthDate: str
@app.post("/validar_cpf")
def validar_cpf(data: CPFRequest):
headers = {"Content-Type": "application/json", "x-api-key": API_KEY}
payload = {"cpf": data.cpf, "birthDate": data.birthDate}
response = requests.post(API_URL, json=payload, headers=headers)
return response.json()
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="127.0.0.1", port=8000)
Passo 3: Testar a API com cURL
curl -X POST "http://127.0.0.1:8000/validar_cpf" \
-H "Content-Type: application/json" \
-d '{"cpf": "123.456.789-00", "birthDate": "15/06/1990"}'
✅ Se tudo estiver correto, o FastAPI responderá com os dados validados!
4. Comparação entre Flask e FastAPI para validação de CPF
Característica | Flask | FastAPI |
---|---|---|
Facilidade | Simples e flexível | Mais estruturado |
Performance | Boa, mas não otimizada | Muito rápido |
Validação de dados | Manual | Pydantic embutido |
Ideal para | Pequenos projetos | APIs de alta performance |
✅ Conclusão: Se você busca simplicidade, use Flask. Se precisa de alta performance, prefira FastAPI.
Conclusão
A integração de APIs de CPF em Flask e FastAPI torna o processo de validação rápido, seguro e eficiente.
Se sua empresa precisa de uma API confiável, a CPFHub.io é a solução ideal para automação de validação de CPF.🚀 Implemente agora mesmo e melhore a segurança dos seus processos!