11import time
22
3- from flask import Flask , jsonify , request
3+ from flask import Flask , jsonify
44from flask_caching import Cache
55
66from api import ExternalAPI
77from config import Config
8+ from decorators import json_utf8_response
89from handler .exception_handler import register_exception_handlers
910from handler .logger import get_logger
1011from utils import get_request_params
2021
2122@app .route ("/" )
2223def health_check ():
23- logger .info ("Health check called." )
2424 status = {
2525 "status" : "UP" ,
2626 "timestamp" : time .strftime ("%Y-%m-%d %H:%M:%S" ),
@@ -36,6 +36,7 @@ def favicon(ext):
3636
3737
3838@app .route ("/api/exchange-rate" , methods = ["GET" ])
39+ @json_utf8_response
3940@cache .cached (query_string = True )
4041def get_exchange_rate ():
4142 params = get_request_params ("start_date" , "end_date" , "item_code" )
@@ -45,8 +46,20 @@ def get_exchange_rate():
4546 end_date = params ["end_date" ],
4647 item_code = params ["item_code" ],
4748 )
48- logger .info ("Exchange rate data fetched successfully." )
49- return jsonify (data ), 200
49+ return data , 200
50+
51+
52+ @app .route ("/api/foreign-reserves" , methods = ["GET" ])
53+ @cache .cached (query_string = True )
54+ @json_utf8_response
55+ def get_foreign_reserves ():
56+ params = get_request_params ("start_month" , "end_month" )
57+
58+ data = ExternalAPI .fetch_foreign_reserves (
59+ start_month = params ["start_month" ],
60+ end_month = params ["end_month" ],
61+ )
62+ return data , 200
5063
5164
5265def handler (event , context ):
0 commit comments