This commit is contained in:
n 2025-07-09 05:54:06 +00:00
parent 1f7d115803
commit 781bdd783c

View File

@ -15,13 +15,13 @@ client_id = os.environ['MONZO_CLIENT_ID']
client_secret = os.environ['MONZO_CLIENT_SECRET']
callback_uri = os.environ['MONZO_CALLBACK_URI']
app = FastAPI()
app = FastAPI('/monzo')
@app.get("/")
def read_root(): return {"version": "v0.0.8"}
@app.get('/')
def read_root(): return {'version': 'v0.0.9'}
@app.get("/redirect", response_class=RedirectResponse)
@app.get('/redirect', response_class=RedirectResponse)
def read_redirect(res: Response):
state = uuid4()
# TODO: store state in a cookie to check it later
@ -35,9 +35,9 @@ def read_redirect(res: Response):
return f"https://auth.monzo.com/?{query}"
@app.get("/callback")
@app.get('/callback')
def read_callback(code: str, state: Annotated[str, UUIDQuery], req: Request, res: Response):
stored_state = req.cookies["monzo-api:state"]
stored_state = req.cookies['monzo-api:state']
if (state != stored_state):
res.status_code = status.HTTP_400_BAD_REQUEST
return { 'error': True, 'data': f"Callback state '{state}' does not match stored state '{stored_state}'." }