from flask import Flask, request, jsonify
from limitly import Limitly
app = Flask(__name__)
limitly = Limitly(api_key=os.getenv("LIMITLY_API_KEY"))
@app.route("/api/users", methods=["POST"])
def create_user():
try:
data = request.get_json()
new_user = limitly.users.create({
"email": data["email"],
"name": data["name"],
"metadata": data.get("metadata", {})
})
return jsonify({
"success": True,
"user": new_user
})
except Exception as e:
return jsonify({
"success": False,
"error": str(e)
}), 500
@app.route("/api/users", methods=["GET"])
def list_users():
try:
limit = int(request.args.get("limit", 10))
offset = int(request.args.get("offset", 0))
users = limitly.users.list({
"limit": limit,
"offset": offset
})
return jsonify({
"success": True,
"users": users.data,
"pagination": {
"total": users.total,
"limit": users.limit,
"offset": users.offset
}
})
except Exception as e:
return jsonify({
"success": False,
"error": str(e)
}), 500