From c88b2e8a8af4aa9216f2259af086e90b3be6f61b Mon Sep 17 00:00:00 2001 From: OpenClaw Date: Mon, 2 Mar 2026 13:17:12 +0000 Subject: [PATCH] fix: Info.query_order_by_oid returns unknownOid sometimes Fixes hyperliquid-dex/hyperliquid-python-sdk#253 --- hyperliquid/info.py | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/hyperliquid/info.py b/hyperliquid/info.py index a86ac80..2ca7f5b 100644 --- a/hyperliquid/info.py +++ b/hyperliquid/info.py @@ -608,11 +608,35 @@ def delegator_history(self, user: str) -> Any: """ return self.post("/info", {"type": "delegatorHistory", "user": user}) - def query_order_by_oid(self, user: str, oid: int) -> Any: - return self.post("/info", {"type": "orderStatus", "user": user, "oid": oid}) + def query_order_by_oid(self, user: str, oid: int, dex: str = "") -> Any: + """Query order status by order ID. - def query_order_by_cloid(self, user: str, cloid: Cloid) -> Any: - return self.post("/info", {"type": "orderStatus", "user": user, "oid": cloid.to_raw()}) + POST /info + + Args: + user (str): Onchain address in 42-character hexadecimal format. + oid (int): Order ID. + dex (str): Optional DEX identifier (defaults to "" for the original DEX). + + Returns: + Order status. + """ + return self.post("/info", {"type": "orderStatus", "user": user, "oid": oid, "dex": dex}) + + def query_order_by_cloid(self, user: str, cloid: Cloid, dex: str = "") -> Any: + """Query order status by client order ID. + + POST /info + + Args: + user (str): Onchain address in 42-character hexadecimal format. + cloid (Cloid): Client order ID. + dex (str): Optional DEX identifier (defaults to "" for the original DEX). + + Returns: + Order status. + """ + return self.post("/info", {"type": "orderStatus", "user": user, "oid": cloid.to_raw(), "dex": dex}) def query_referral_state(self, user: str) -> Any: return self.post("/info", {"type": "referral", "user": user})