def post(self, user_id): parser = reqparse.RequestParser() parser.add_argument("name", type=str, required=True) parameters = parser.parse_args(strict=True) # This function handles all the db logic plaintext_key = ApiKey.generate_key(user_id, parameters.get("name")) # NOTE - this is the ONLY time the key will be in plaintext return {"key": plaintext_key}
def api_key(): """ View and manage API keys. Use forms for CSRF. """ plaintext_key = None key_label = None form = ApiKeyForm() if form.validate_on_submit(): key_label = form.data.get("name") plaintext_key = ApiKey.generate_key(current_user.id, key_label) flash("API Key generated", "success") return render_template("api_key.html", form_title="Issue a New API Key", form=form, key_label=key_label, plaintext_key=plaintext_key)