from flask import Blueprint from flask_apispec import doc, marshal_with, use_kwargs from http import HTTPStatus from src.db.users.emails import get_emails_query from src.schemas.users import emails as serializers blueprint = Blueprint("users_emails", __name__) @blueprint.route("/users/emails/", methods=["GET"]) @doc("Get email by user_id.") @use_kwargs(serializers.UsersEmails.Request, location="query") @marshal_with(serializers.UsersEmails.Response, code=HTTPStatus.OK, apply=True) @marshal_with(None, code=HTTPStatus.UNAUTHORIZED, description="Authentication failed") @marshal_with(None, code=HTTPStatus.BAD_REQUEST, description="Bad request") def get_users_emails(**data): return {"items": get_emails_query(**data).all()}