about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gn3/api/general.py16
1 files changed, 9 insertions, 7 deletions
diff --git a/gn3/api/general.py b/gn3/api/general.py
index c1b6aa7..91a113c 100644
--- a/gn3/api/general.py
+++ b/gn3/api/general.py
@@ -11,20 +11,22 @@ from gn3.file_utils import extract_uploaded_file
 general = Blueprint("general", __name__)
 
 
-@general.route("/metadata/upload", methods=["POST"])
-def upload_metadata():
-    """Extract uploaded file to gn3 temporary directory; and if successful return
-a TOKEN to the user
+@general.route("/metadata/upload/<token>", methods=["POST"],
+               strict_slashes=False)
+def upload_metadata(token):
+    """Extract uploaded file to a some TMPDIR/TOKEN/ with a TTL(Time To Live). The
+TTL is set in the metadata file. If none is provided, the default is 1
+week. If a TOKEN is not provided, generate a token for the new user.
 
     """
     file_ = request.files.get("file")
     if not file_:
         return jsonify(status=128, error="Please provide a file!"), 400
-
     status = 201
     results = extract_uploaded_file(
-        gzipped_file=request.files["file"],
-        target_dir=current_app.config["APP_DEFAULTS"].get("TMPDIR"))
+        gzipped_file=file_,
+        target_dir=current_app.config["APP_DEFAULTS"].get("TMPDIR"),
+        token=token)
     if results.get("status") > 0:
         status = 500
     return jsonify(results), status