minor refactorings
This commit is contained in:
parent
29c3f37a65
commit
c667c70a64
208
main.py
208
main.py
|
|
@ -49,6 +49,7 @@ def shutdown_handler(signum, _):
|
|||
signal.signal(signal.SIGINT, shutdown_handler)
|
||||
signal.signal(signal.SIGTERM, shutdown_handler)
|
||||
|
||||
|
||||
def seconds_to_time(total_seconds: float) -> str:
|
||||
'''
|
||||
Takes an int or float as an input and it returns a D:HH:MM:SS formatted string.
|
||||
|
|
@ -473,9 +474,10 @@ def return_global_status():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_global_status()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_global_status()
|
||||
|
||||
|
||||
@base_api.route("/paused_traders", methods=['GET'])
|
||||
def return_paused_status():
|
||||
|
|
@ -485,9 +487,10 @@ def return_paused_status():
|
|||
Parameters:
|
||||
None
|
||||
'''
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_paused_traders()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_paused_traders()
|
||||
|
||||
|
||||
@base_api.route("/worker_status", methods=['GET'])
|
||||
def return_worker_status():
|
||||
|
|
@ -499,7 +502,8 @@ def return_worker_status():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
base = request.args.get("base")
|
||||
quote = request.args.get("quote")
|
||||
|
|
@ -507,7 +511,7 @@ def return_worker_status():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/view_old_long", methods=["GET"])
|
||||
def return_old_long():
|
||||
|
|
@ -520,7 +524,8 @@ def return_old_long():
|
|||
from_file: bool
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
base = request.args.get("base")
|
||||
quote = request.args.get("quote")
|
||||
|
|
@ -529,7 +534,7 @@ def return_old_long():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/switch_to_long_price", methods=["GET"])
|
||||
def return_switch_price():
|
||||
|
|
@ -541,7 +546,8 @@ def return_switch_price():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
base = request.args.get("base")
|
||||
quote = request.args.get("quote")
|
||||
|
|
@ -549,7 +555,7 @@ def return_switch_price():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
|
||||
@base_api.route("/base_add_so_calculation", methods=["GET"])
|
||||
|
|
@ -562,7 +568,8 @@ def return_base_add_so_calculation():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
base = request.args.get("base")
|
||||
quote = request.args.get("quote")
|
||||
|
|
@ -570,7 +577,6 @@ def return_base_add_so_calculation():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/get_all_worker_status", methods=['GET'])
|
||||
|
|
@ -582,9 +588,10 @@ def return_all_worker_status():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_return_all_worker_status()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_return_all_worker_status()
|
||||
|
||||
|
||||
@base_api.route("/add_pair", methods=['POST'])
|
||||
def add_pair():
|
||||
|
|
@ -596,7 +603,8 @@ def add_pair():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -607,7 +615,7 @@ def add_pair():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/remove_pair", methods=['POST'])
|
||||
def remove_pair():
|
||||
|
|
@ -619,7 +627,8 @@ def remove_pair():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -630,7 +639,7 @@ def remove_pair():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/restart_pair", methods=['POST'])
|
||||
def restart_pair():
|
||||
|
|
@ -642,7 +651,8 @@ def restart_pair():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -653,7 +663,7 @@ def restart_pair():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/import_pair", methods=['POST'])
|
||||
def import_pair():
|
||||
|
|
@ -667,7 +677,8 @@ def import_pair():
|
|||
forced_so_id: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -680,7 +691,7 @@ def import_pair():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/switch_to_long", methods=['POST'])
|
||||
def switch_to_long():
|
||||
|
|
@ -693,7 +704,8 @@ def switch_to_long():
|
|||
calculate_profits: int
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -705,7 +717,7 @@ def switch_to_long():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/switch_to_short", methods=['POST'])
|
||||
def switch_to_short():
|
||||
|
|
@ -717,7 +729,8 @@ def switch_to_short():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -728,7 +741,7 @@ def switch_to_short():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/load_old_long", methods=['POST'])
|
||||
def load_old_long():
|
||||
|
|
@ -740,7 +753,8 @@ def load_old_long():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -751,7 +765,7 @@ def load_old_long():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/add_so", methods=['POST'])
|
||||
def add_so():
|
||||
|
|
@ -764,7 +778,8 @@ def add_so():
|
|||
amount: int
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -776,7 +791,6 @@ def add_so():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/mod_tp_level", methods=['POST'])
|
||||
|
|
@ -790,7 +804,8 @@ def mod_tp_level():
|
|||
amount: float
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -802,7 +817,6 @@ def mod_tp_level():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/mod_order_size", methods=['POST'])
|
||||
|
|
@ -816,7 +830,8 @@ def mod_order_size():
|
|||
amount: float
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -828,7 +843,6 @@ def mod_order_size():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/mod_default_order_size", methods=['POST'])
|
||||
|
|
@ -840,7 +854,8 @@ def mod_default_order_size():
|
|||
amount: float
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -850,7 +865,6 @@ def mod_default_order_size():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/mod_global_tp_level", methods=['POST'])
|
||||
|
|
@ -862,7 +876,8 @@ def mod_global_tp_level():
|
|||
amount: float
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -872,7 +887,7 @@ def mod_global_tp_level():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/last_call", methods=['POST'])
|
||||
def last_call():
|
||||
|
|
@ -884,7 +899,8 @@ def last_call():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -895,7 +911,7 @@ def last_call():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/deferred_last_call", methods=['POST'])
|
||||
def deferred_last_call():
|
||||
|
|
@ -908,7 +924,8 @@ def deferred_last_call():
|
|||
yyyymmdd: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -920,7 +937,7 @@ def deferred_last_call():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/toggle_pause", methods=['POST'])
|
||||
def toggle_pause():
|
||||
|
|
@ -932,7 +949,8 @@ def toggle_pause():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -943,7 +961,7 @@ def toggle_pause():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/global_last_call", methods=['POST'])
|
||||
def global_last_call():
|
||||
|
|
@ -954,9 +972,10 @@ def global_last_call():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_global_last_call()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_global_last_call()
|
||||
|
||||
|
||||
@base_api.route("/cancel_global_last_call", methods=['POST'])
|
||||
def cancel_global_last_call():
|
||||
|
|
@ -967,9 +986,10 @@ def cancel_global_last_call():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_cancel_global_last_call()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_cancel_global_last_call()
|
||||
|
||||
|
||||
@base_api.route("/add_quote", methods=['POST'])
|
||||
def add_quote():
|
||||
|
|
@ -982,7 +1002,8 @@ def add_quote():
|
|||
amount: float
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -994,7 +1015,7 @@ def add_quote():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/missing_pairs", methods=['GET'])
|
||||
def missing_pairs():
|
||||
|
|
@ -1005,9 +1026,10 @@ def missing_pairs():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_missing_pairs()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_missing_pairs()
|
||||
|
||||
|
||||
@base_api.route("/toggle_cleanup", methods=['POST'])
|
||||
def toggle_cleanup():
|
||||
|
|
@ -1019,7 +1041,8 @@ def toggle_cleanup():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1030,7 +1053,7 @@ def toggle_cleanup():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/toggle_autoswitch", methods=['POST']) #type:ignore
|
||||
def toggle_autoswitch():
|
||||
|
|
@ -1042,7 +1065,8 @@ def toggle_autoswitch():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1053,7 +1077,7 @@ def toggle_autoswitch():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/toggle_liquidate_after_switch", methods=['POST']) #type:ignore
|
||||
def toggle_liquidate_after_switch(): #type:ignore
|
||||
|
|
@ -1065,7 +1089,8 @@ def toggle_liquidate_after_switch(): #type:ignore
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1076,7 +1101,7 @@ def toggle_liquidate_after_switch(): #type:ignore
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/toggle_check_old_long_price", methods=['POST'])#type:ignore
|
||||
def toggle_check_old_long_price():
|
||||
|
|
@ -1088,7 +1113,8 @@ def toggle_check_old_long_price():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1099,7 +1125,7 @@ def toggle_check_old_long_price():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/switch_quote_currency", methods=['POST'])
|
||||
def switch_quote_currency():
|
||||
|
|
@ -1112,7 +1138,8 @@ def switch_quote_currency():
|
|||
new_quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1124,7 +1151,7 @@ def switch_quote_currency():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/toggle_restart", methods=['POST'])
|
||||
def toggle_restart():
|
||||
|
|
@ -1135,9 +1162,10 @@ def toggle_restart():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_toggle_restart()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_toggle_restart()
|
||||
|
||||
|
||||
@base_api.route("/toggle_telegram", methods=['POST'])
|
||||
def toggle_telegram():
|
||||
|
|
@ -1148,9 +1176,9 @@ def toggle_telegram():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_toggle_telegram()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_toggle_telegram()
|
||||
|
||||
|
||||
@base_api.route("/server_time", methods=['GET'])
|
||||
|
|
@ -1162,9 +1190,9 @@ def server_time():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_server_time()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_server_time()
|
||||
|
||||
|
||||
@base_api.route("/get_log_list", methods=['GET'])
|
||||
|
|
@ -1176,9 +1204,9 @@ def get_log_list():
|
|||
coin: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_get_log_list()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_get_log_list()
|
||||
|
||||
|
||||
@base_api.route("/get_balance", methods=['GET'])
|
||||
|
|
@ -1190,10 +1218,10 @@ def get_balance():
|
|||
coin: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
coin = request.args.get("coin")
|
||||
return unwrapped_get_balance(coin)
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/get_deals_cache", methods=['GET'])
|
||||
|
|
@ -1205,9 +1233,9 @@ def get_deals_cache():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_get_deals_cache()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_get_deals_cache()
|
||||
|
||||
|
||||
@base_api.route("/trader_time", methods=['GET'])
|
||||
|
|
@ -1219,9 +1247,10 @@ def trader_time():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
return unwrapped_trader_time()
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_trader_time()
|
||||
|
||||
|
||||
@base_api.route("/edit_loop_wait_time", methods=['POST'])
|
||||
def loop_wait_time():
|
||||
|
|
@ -1232,7 +1261,8 @@ def loop_wait_time():
|
|||
wait_time: float
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1242,8 +1272,6 @@ def loop_wait_time():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
|
||||
@base_api.route("/edit_call_wait_time", methods=['POST'])
|
||||
|
|
@ -1255,7 +1283,8 @@ def call_wait_time():
|
|||
wait_time: float
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1265,7 +1294,6 @@ def call_wait_time():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/edit_cooldown_multiplier", methods=['POST'])
|
||||
|
|
@ -1277,7 +1305,8 @@ def edit_cooldown_multiplier():
|
|||
cooldown_multiplier: float
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1287,7 +1316,6 @@ def edit_cooldown_multiplier():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/reload_markets", methods=['POST'])
|
||||
|
|
@ -1300,10 +1328,10 @@ def reload_markets():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
return unwrapped_reload_markets()
|
||||
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
@base_api.route("/reload_safety_order", methods=['POST'])
|
||||
def reload_safety_order():
|
||||
|
|
@ -1314,7 +1342,8 @@ def reload_safety_order():
|
|||
None
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1325,7 +1354,6 @@ def reload_safety_order():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@base_api.route("/reload_trader_config", methods=['POST'])#type:ignore
|
||||
|
|
@ -1338,7 +1366,8 @@ def reload_trader_config():
|
|||
quote: str
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in valid_keys:
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in valid_keys:
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
if request.json is None:
|
||||
return jsonify({'Error': 'request.json is None'})
|
||||
|
|
@ -1349,7 +1378,6 @@ def reload_trader_config():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
def run_API():
|
||||
|
|
@ -1367,7 +1395,6 @@ def unwrapped_global_status():
|
|||
'''
|
||||
return jsonify(global_status)
|
||||
|
||||
|
||||
def unwrapped_paused_traders():
|
||||
'''
|
||||
Returns the paused_traders field from the global status dictionary of the instance.
|
||||
|
|
@ -1375,7 +1402,6 @@ def unwrapped_paused_traders():
|
|||
return jsonify(global_status["paused_traders"])
|
||||
|
||||
|
||||
|
||||
def unwrapped_return_worker_status(base,quote):
|
||||
'''
|
||||
Returns the individual status dictionary of the trader.
|
||||
|
|
|
|||
|
|
@ -5,9 +5,10 @@ import calendar
|
|||
import logging
|
||||
import threading
|
||||
import os
|
||||
import functools
|
||||
from collections import deque
|
||||
from typing import Iterable, List, Tuple
|
||||
from contextlib import contextmanager
|
||||
from flask import Flask, jsonify, request
|
||||
from flask import Flask, jsonify, request, Response
|
||||
from waitress import serve
|
||||
|
||||
|
||||
|
|
@ -225,15 +226,6 @@ def daily_and_monthly_totals() -> tuple[float, float]:
|
|||
row = cur.fetchone()
|
||||
daily_total = float(row["daily_total"])
|
||||
monthly_total = float(row["monthly_total"])
|
||||
# query = """SELECT * FROM profits_table
|
||||
# WHERE timestamp >= ?
|
||||
# ORDER BY timestamp DESC;"""
|
||||
# with db_cursor() as cursor:
|
||||
# cursor.execute(query, (start_of_month_unix,))
|
||||
# query_result = cursor.fetchall()
|
||||
|
||||
# monthly_total = sum([item[2] for item in query_result])
|
||||
# daily_total = sum([item[2] for item in query_result if item[0]>=start_of_day_unix])
|
||||
|
||||
return (daily_total, monthly_total)
|
||||
|
||||
|
|
@ -378,13 +370,14 @@ def fetch_profit_report():
|
|||
Returns: JSON object with profit report data
|
||||
'''
|
||||
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
return jsonify(profit_report())
|
||||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({"Error": f"{e}"})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
|
||||
@stats_api.route("/fetch_last_n_deals")
|
||||
|
|
@ -393,7 +386,8 @@ def fetch_last_n_deals():
|
|||
GET request
|
||||
Parameter: 'amount_of_deals' -> int
|
||||
'''
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
parameter = request.args.get("amount_of_deals")
|
||||
response_value = last_n_deals(parameter)
|
||||
|
|
@ -401,7 +395,6 @@ def fetch_last_n_deals():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({"last_deals":""})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/fetch_last_n_deals_without_history")
|
||||
|
|
@ -410,7 +403,8 @@ def fetch_last_n_deals_without_history():
|
|||
GET request
|
||||
Parameter: 'amount_of_deals' -> int
|
||||
'''
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
parameter = request.args.get("amount_of_deals")
|
||||
#return jsonify({"last_deals": last_n_deals_without_history(parameter)})
|
||||
|
|
@ -419,7 +413,6 @@ def fetch_last_n_deals_without_history():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({"last_deals":""})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/fetch_full_log")
|
||||
|
|
@ -430,17 +423,16 @@ def fetch_full_log():
|
|||
|
||||
It trims the full log to 200 lines, to avoid sending too much data to the client.
|
||||
'''
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
exchange_name = request.args.get("exchange_name")
|
||||
width = 0
|
||||
#last_lines,amount_of_lines = last_n_lines(f"../logs/{exchange_name}.log",width,0,full_log=True)
|
||||
last_lines, amount_of_lines = tail_log(f"../logs/{exchange_name}.log", 200)
|
||||
return jsonify({"line": last_lines[-200:], "amount_of_lines": amount_of_lines})
|
||||
except Exception as e:
|
||||
print(e)
|
||||
return {"line": [""]*width,"amount_of_lines": 0}
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/fetch_log")
|
||||
|
|
@ -451,7 +443,8 @@ def fetch_log():
|
|||
'width' -> int
|
||||
'amount' -> int
|
||||
'''
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
exchange_name = request.args.get("exchange_name")
|
||||
width = int(request.args.get("width")) # type: ignore
|
||||
|
|
@ -461,23 +454,22 @@ def fetch_log():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return {"line": [""]*10,"amount_of_lines": 0}
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/combined_totals")
|
||||
def combined_totals():
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
daily_totals = daily_and_monthly_totals()
|
||||
return jsonify({"combined": daily_totals})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/daily_totals")
|
||||
def get_daily_totals():
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
daily_totals = query_daily_totals()
|
||||
return jsonify(daily_totals)
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/daily_totals_by_pair")
|
||||
|
|
@ -487,7 +479,8 @@ def get_daily_totals_by_pair():
|
|||
Parameters: 'base' -> string
|
||||
'quote' -> string
|
||||
'''
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
base = request.args.get("base")
|
||||
quote = request.args.get("quote")
|
||||
|
|
@ -496,15 +489,14 @@ def get_daily_totals_by_pair():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/monthly_totals")
|
||||
def get_monthly_totals():
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
monthly_totals = query_monthly_totals()
|
||||
return jsonify(monthly_totals)
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/monthly_totals_by_pair")
|
||||
|
|
@ -514,7 +506,8 @@ def get_monthly_totals_by_pair():
|
|||
Parameters: 'base' -> string
|
||||
'quote' -> string
|
||||
'''
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
base = request.args.get("base")
|
||||
quote = request.args.get("quote")
|
||||
|
|
@ -523,27 +516,19 @@ def get_monthly_totals_by_pair():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/get_averages")
|
||||
def get_averages():
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
daily_totals = query_daily_totals()
|
||||
|
||||
val_30 = 0
|
||||
val_7 = 0
|
||||
#acc_30 = []
|
||||
#acc_7 = []
|
||||
#for x in sorted(daily_totals):
|
||||
# acc_30.append(daily_totals[x])
|
||||
# acc_7.append(daily_totals[x])
|
||||
|
||||
recent_days = sorted(daily_totals.keys(), reverse=True)[:30]
|
||||
acc_30 = [daily_totals[date] for date in recent_days[:30]]
|
||||
acc_7 = [daily_totals[date] for date in recent_days[:7]]
|
||||
|
||||
length_30 = min(30,len(acc_30)) #Last 30 days
|
||||
length_7 = min(7,len(acc_7)) #Last 7 days
|
||||
for _ in range(length_30):
|
||||
|
|
@ -554,15 +539,14 @@ def get_averages():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/total_profit")
|
||||
def total_profit():
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
total = query_total_profit()
|
||||
return jsonify({"Total profit": total})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
@stats_api.route("/total_profit_by_pair")
|
||||
|
|
@ -572,7 +556,8 @@ def total_profit_by_pair():
|
|||
Parameters: 'base' -> string
|
||||
'quote' -> string
|
||||
'''
|
||||
if "X-API-KEY" in request.headers and request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
if not "X-API-KEY" in request.headers or not request.headers.get("X-API-KEY") in get_valid_keys():
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
try:
|
||||
base = request.args.get("base")
|
||||
quote = request.args.get("quote")
|
||||
|
|
@ -581,13 +566,10 @@ def total_profit_by_pair():
|
|||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({'Error': 'Halp'})
|
||||
return jsonify({'Error': 'API key invalid'}), 401
|
||||
|
||||
|
||||
|
||||
if __name__=="__main__":
|
||||
# Load valid keys from database
|
||||
#valid_keys = load_keys_from_db("api_credentials.db")
|
||||
|
||||
#Waitress
|
||||
logger = logging.getLogger('waitress')
|
||||
|
|
|
|||
Loading…
Reference in New Issue