aboutsummaryrefslogtreecommitdiff
path: root/gn3/api
diff options
context:
space:
mode:
authorBonfaceKilz2021-02-24 22:38:22 +0300
committerBonfaceKilz2021-03-08 21:09:58 +0300
commit37b1a5da433d1976ff81a566c0fd022127f9fdb7 (patch)
treeed591de4b743ec6680034e98f783d05ba523b7d3 /gn3/api
parentd266756d26e78e77b99515802de51ec1151a7abb (diff)
downloadgenenetwork3-37b1a5da433d1976ff81a566c0fd022127f9fdb7.tar.gz
Add extra endpoint for checking the status of a command
Diffstat (limited to 'gn3/api')
-rw-r--r--gn3/api/gemma.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/gn3/api/gemma.py b/gn3/api/gemma.py
index bdba26e..effae8a 100644
--- a/gn3/api/gemma.py
+++ b/gn3/api/gemma.py
@@ -73,3 +73,17 @@ file output is returned.
status="queued",
output_file=(f"{data.get('dataset_name')}_GWA_"
f"{__hash}.txt"))
+
+
+@gemma.route("/status/<unique_id>", methods=["GET"])
+def check_cmd_status(unique_id):
+ """Given a (url-encoded) UNIQUE-ID which is returned when hitting any of the
+gemma endpoints, return the status of the command
+
+ """
+ status = redis.Redis().hget(name=unique_id,
+ key="status")
+ if not status:
+ return jsonify(status=128,
+ error="The unique id you used does not exist!"), 500
+ return jsonify(status=status.decode("utf-8"))