diff --git a/engineapi/engineapi/contracts_actions.py b/engineapi/engineapi/contracts_actions.py index 15f46ccc..f3378410 100644 --- a/engineapi/engineapi/contracts_actions.py +++ b/engineapi/engineapi/contracts_actions.py @@ -581,6 +581,7 @@ def complete_call_request( db_session: Session, tx_hash: str, call_request_id: uuid.UUID, + caller: str, ) -> CallRequest: results = ( db_session.query(CallRequest, RegisteredContract) @@ -589,6 +590,7 @@ def complete_call_request( CallRequest.registered_contract_id == RegisteredContract.id, ) .filter(CallRequest.id == call_request_id) + .filter(CallRequest.caller == caller) .all() ) diff --git a/engineapi/engineapi/routes/metatx.py b/engineapi/engineapi/routes/metatx.py index 913bf2b5..dd1ef148 100644 --- a/engineapi/engineapi/routes/metatx.py +++ b/engineapi/engineapi/routes/metatx.py @@ -48,7 +48,7 @@ whitelist_paths = { "/metatx/contracts/types": "GET", "/metatx/requests/types": "GET", "/metatx/requests": "GET", # Controls by custom authentication check - "/metatx/requests/complete": "POST", # Controls by metatx authentication check + "/metatx/requests/complete": "POST", # Controls by metatx authentication check } app = FastAPI( @@ -449,6 +449,7 @@ async def complete_call_request_route( db_session=db_session, tx_hash=tx_hash, call_request_id=call_request_id, + caller=message["caller"], ) except contracts_actions.CallRequestNotFound: raise EngineHTTPException(