docs(hyperliquid): fix 4 flagged HL method pages (syncing WS, perp-dex-limits, 2 deprecations)#462
Conversation
- perp-dex-limits: add the required `dex` param to the curl + OpenAPI spec, document the real response (open interest caps), and add Python (hyperliquid-python-sdk) + TypeScript (@nktkas/hyperliquid) examples. Verified live with dex="xyz" (curl, Python SDK, and nktkas all match). - eth-subscribe-syncing: add a WebSocket `## Example request` CodeGroup (wscat + web3.py + ethers + viem), matching the other eth_subscribe pages. All four transports verified against the live endpoint. - aligned-quote-token-info: deprecate in place — Hyperliquid removed the method (~Jun 2026, nktkas #154); the API no longer recognizes the type. - batch-clearinghouse-states: deprecate in place — never an official public method; returns null for every address. Points to clearinghouseState per-user. Endpoints/keys unchanged. Deprecations keep the URLs (both still get agent-read traffic, now corrected instead of misleading).
|
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
|
Warning Review limit reached
More reviews will be available in 34 minutes and 24 seconds. Learn how PR review limits work. Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file). ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits. 🚦 How do rate limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughThe OpenAPI spec for ChangesperpDexLimits spec and reference doc
Documentation corrections
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 9
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@openapi/hyperliquid_node_api/hypercore_info/info_perp_dex_limits.json`:
- Around line 36-40: The `dex` field in the schema currently only states that an
empty string is not allowed, but it is not actually enforced. Update the `dex`
property in the `info_perp_dex_limits` schema to add a non-empty constraint such
as `minLength: 1`, so spec validation rejects empty values. Keep the change
scoped to the `dex` definition in `info_perp_dex_limits.json` and ensure the
existing description remains consistent with the validation rule.
- Around line 71-79: The coinToOiCap schema is too loose because it is
documented as [coin, oiCap] but its items currently allow variable-length string
arrays. Tighten the schema in the coinToOiCap definition by constraining each
entry to an exact 2-item tuple, using the existing coinToOiCap property shape in
the openapi/hyperliquid_node_api/hypercore_info/info_perp_dex_limits JSON so
generated clients enforce the fixed pair contract.
In `@reference/hyperliquid-evm-eth-subscribe-syncing.mdx`:
- Line 382: The MDX snippet in the example for the websocket command uses an
unescaped shell prompt dollar sign, which violates the MDX escaping rule. Update
the example content in the relevant MDX section to escape the leading dollar
sign as a literal prompt marker, and ensure any similar shell command examples
in this document follow the same convention.
- Line 454: Update the Hyperliquid EVM subscription syncing doc so the link text
for the console URL follows the docs linking standard. In the referenced
markdown content, replace the current Chainstack console label with the required
“[Chainstack account](https://console.chainstack.com/)” wording wherever that
console link appears, keeping the destination unchanged and ensuring consistency
with the existing linking convention used across the docs.
In `@reference/hyperliquid-info-aligned-quote-token-info.mdx`:
- Line 8: The internal MDX link in this reference page uses the wrong path
convention and should be updated to the required /docs/ prefix. In the
hyperliquid-info-aligned-quote-token-info.mdx content, change the tokenDetails
link to use the internal docs path format used across docs pages, keeping the
link target consistent with the referenced tokenDetails page.
- Around line 7-13: The OpenAPI contract for aligned quote token info is still
advertising a live operation while the reference page says it is removed, so
make the spec match the documented status. Update the infoAlignedQuoteTokenInfo
operation in the OpenAPI definition to be deprecated or removed/annotated as
unsupported, and ensure its request/response schema no longer implies a usable
API. Keep the documentation warning and generated client behavior aligned with
the status described on the alignedQuoteTokenInfo reference page.
In `@reference/hyperliquid-info-batch-clearinghouse-states.mdx`:
- Line 8: The internal link in the batch clearinghouse states doc uses the wrong
docs convention, so update the `clearinghouseState` reference to the required
`/docs/`-prefixed internal path format. Locate the markdown link in the MDX
content for `clearinghouseState` and change its href from the current
`/reference/...` style to the corresponding `/docs/...` path, keeping the link
text unchanged.
In `@reference/hyperliquid-info-perp-dex-limits.mdx`:
- Line 28: The internal docs link in the `hyperliquid-info-perp-dex-limits.mdx`
content uses the wrong path style; update the `perpDexs` reference to follow the
docs linking convention with a `/docs/`-prefixed relative internal link. Locate
the markdown around the `dex` field description and change the link target so it
points to the corresponding docs page using the same relative internal-link
style used elsewhere in the MDX docs.
- Line 75: The link text for https://console.chainstack.com/ should use the
required label format, so update the reference in the documentation to use
[Chainstack account](...) instead of [Chainstack console](...) while keeping the
surrounding guidance in the same section of
hyperliquid-info-perp-dex-limits.mdx.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: f2e4c4fc-3b79-4b50-b14b-3ecc0f2bd37c
📒 Files selected for processing (5)
openapi/hyperliquid_node_api/hypercore_info/info_perp_dex_limits.jsonreference/hyperliquid-evm-eth-subscribe-syncing.mdxreference/hyperliquid-info-aligned-quote-token-info.mdxreference/hyperliquid-info-batch-clearinghouse-states.mdxreference/hyperliquid-info-perp-dex-limits.mdx
| <CodeGroup> | ||
|
|
||
| ```shell wscat | ||
| $ wscat -c wss://hyperliquid-mainnet.core.chainstack.com/4f8d8f4040bdacd1577bff8058438274/evm |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Escape the shell prompt dollar sign in MDX.
Use \$ instead of $ in this MDX code block to satisfy the MDX escaping rule.
As per coding guidelines, “Always escape dollar signs with backslash (\$) in MDX files.”
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@reference/hyperliquid-evm-eth-subscribe-syncing.mdx` at line 382, The MDX
snippet in the example for the websocket command uses an unescaped shell prompt
dollar sign, which violates the MDX escaping rule. Update the example content in
the relevant MDX section to escape the leading dollar sign as a literal prompt
marker, and ensure any similar shell command examples in this document follow
the same convention.
Source: Coding guidelines
| </CodeGroup> | ||
|
|
||
| <Note> | ||
| **Use your own endpoint in your code.** The code examples use a placeholder Chainstack endpoint (YOUR_CHAINSTACK_ENDPOINT) — replace it with your own Hyperliquid node endpoint from the [Chainstack console](https://console.chainstack.com/). The curl above uses a shared public endpoint for quick checks only; do not use it in production. |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Use the required link text for console.chainstack.com.
Change [Chainstack console](https://console.chainstack.com/) to [Chainstack account](https://console.chainstack.com/) for consistency with the docs linking standard.
As per coding guidelines, “Use [Chainstack account](link) to link to console.chainstack.com and [Chainstack](link) for chainstack.com; do not mix these.”
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@reference/hyperliquid-evm-eth-subscribe-syncing.mdx` at line 454, Update the
Hyperliquid EVM subscription syncing doc so the link text for the console URL
follows the docs linking standard. In the referenced markdown content, replace
the current Chainstack console label with the required “[Chainstack
account](https://console.chainstack.com/)” wording wherever that console link
appears, keeping the destination unchanged and ensuring consistency with the
existing linking convention used across the docs.
Source: Coding guidelines
| <Warning> | ||
| **Removed by Hyperliquid (~June 2026).** The Hyperliquid API no longer recognizes the `alignedQuoteTokenInfo` request type — requests fail to deserialize — and the method has been dropped from the official SDKs. There is no direct replacement. For the aligned quote asset mechanism, see [Aligned quote assets](https://hyperliquid.gitbook.io/hyperliquid-docs/hypercore/aligned-quote-assets) in the Hyperliquid docs; for spot token metadata, see [tokenDetails](/reference/hyperliquid-info-token-details). This page is kept for reference. | ||
| </Warning> | ||
|
|
||
| The `info` endpoint with `type: "alignedQuoteTokenInfo"` retrieves supply, rate, and pending payment information for an aligned quote token. Aligned quote tokens are HIP-1 spot tokens that deployers have registered as collateral for HIP-3 perpetual DEXes through the CoreWriter contract on HyperEVM. | ||
| The `info` endpoint with `type: "alignedQuoteTokenInfo"` returned supply, rate, and pending payment information for an aligned quote token. Aligned quote tokens are HIP-1 spot tokens that deployers had registered as collateral for HIP-3 perpetual DEXes through the CoreWriter contract on HyperEVM. | ||
|
|
||
| Returns `null` if the token has not been registered as an aligned quote asset. | ||
| It returned `null` if the token had not been registered as an aligned quote asset. |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift
OpenAPI contract and page status are currently inconsistent.
This page says alignedQuoteTokenInfo is removed, but the OpenAPI spec still exposes infoAlignedQuoteTokenInfo with a normal request/response schema. Please align the spec (e.g., deprecate/remove/annotate) so generated API behavior matches this warning.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@reference/hyperliquid-info-aligned-quote-token-info.mdx` around lines 7 - 13,
The OpenAPI contract for aligned quote token info is still advertising a live
operation while the reference page says it is removed, so make the spec match
the documented status. Update the infoAlignedQuoteTokenInfo operation in the
OpenAPI definition to be deprecated or removed/annotated as unsupported, and
ensure its request/response schema no longer implies a usable API. Keep the
documentation warning and generated client behavior aligned with the status
described on the alignedQuoteTokenInfo reference page.
| This method is available on Chainstack. Not all Hyperliquid methods are available on Chainstack, as the open-source node implementation does not support them yet — see [Hyperliquid methods](/docs/hyperliquid-methods) for the full availability breakdown. | ||
| </Info> | ||
| <Warning> | ||
| **Removed by Hyperliquid (~June 2026).** The Hyperliquid API no longer recognizes the `alignedQuoteTokenInfo` request type — requests fail to deserialize — and the method has been dropped from the official SDKs. There is no direct replacement. For the aligned quote asset mechanism, see [Aligned quote assets](https://hyperliquid.gitbook.io/hyperliquid-docs/hypercore/aligned-quote-assets) in the Hyperliquid docs; for spot token metadata, see [tokenDetails](/reference/hyperliquid-info-token-details). This page is kept for reference. |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Use the internal docs link format required for MDX pages.
The internal link to tokenDetails uses /reference/...; update it to the required internal docs path convention.
As per coding guidelines, “Use relative paths with the /docs/ prefix for internal linking (Platform pages: /docs/page-name, Self-Hosted pages: /docs/self-hosted/page-name)”.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@reference/hyperliquid-info-aligned-quote-token-info.mdx` at line 8, The
internal MDX link in this reference page uses the wrong path convention and
should be updated to the required /docs/ prefix. In the
hyperliquid-info-aligned-quote-token-info.mdx content, change the tokenDetails
link to use the internal docs path format used across docs pages, keeping the
link target consistent with the referenced tokenDetails page.
Source: Coding guidelines
| You can only use this endpoint on the official Hyperliquid public API. It is not available through Chainstack, as the open-source node implementation does not support it yet. See [Hyperliquid methods](/docs/hyperliquid-methods) for the full availability breakdown. | ||
| </Info> | ||
| <Warning> | ||
| **Not available.** This batch method is not served by the public Hyperliquid API — requests return `null` for every address — and it is not available through Chainstack. To fetch perpetuals account state for multiple users, call [clearinghouseState](/reference/hyperliquid-info-clearinghousestate) once per address. Some third-party providers offer their own batch aggregators built on per-user calls. This page is kept for reference. |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Update internal link path to the MDX docs convention.
The clearinghouseState link uses /reference/...; please switch it to the required internal docs path format.
As per coding guidelines, “Use relative paths with the /docs/ prefix for internal linking (Platform pages: /docs/page-name, Self-Hosted pages: /docs/self-hosted/page-name)”.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@reference/hyperliquid-info-batch-clearinghouse-states.mdx` at line 8, The
internal link in the batch clearinghouse states doc uses the wrong docs
convention, so update the `clearinghouseState` reference to the required
`/docs/`-prefixed internal path format. Locate the markdown link in the MDX
content for `clearinghouseState` and change its href from the current
`/reference/...` style to the corresponding `/docs/...` path, keeping the link
text unchanged.
Source: Coding guidelines
| ### Request body | ||
|
|
||
| * `type` (string, required) — The request type. Must be `"perpDexLimits"`. | ||
| * `dex` (string, required) — The name of the builder-deployed perp DEX, for example `"xyz"`. The empty string is not allowed. Use [perpDexs](/reference/hyperliquid-info-perpdexs) to list deployed perp DEX names. |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Use /docs/-prefixed internal links for docs pages.
Line 28 links to /reference/hyperliquid-info-perpdexs, which conflicts with the internal-link rule for MDX pages. As per coding guidelines: “Use relative paths with the /docs/ prefix for internal linking” and “Use relative paths for internal links.”
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@reference/hyperliquid-info-perp-dex-limits.mdx` at line 28, The internal docs
link in the `hyperliquid-info-perp-dex-limits.mdx` content uses the wrong path
style; update the `perpDexs` reference to follow the docs linking convention
with a `/docs/`-prefixed relative internal link. Locate the markdown around the
`dex` field description and change the link target so it points to the
corresponding docs page using the same relative internal-link style used
elsewhere in the MDX docs.
Source: Coding guidelines
| </CodeGroup> | ||
|
|
||
| <Note> | ||
| **Use your own endpoint in your code.** The code examples use a placeholder Chainstack endpoint (YOUR_CHAINSTACK_ENDPOINT) — replace it with your own Hyperliquid node endpoint from the [Chainstack console](https://console.chainstack.com/). The curl above uses a shared public endpoint for quick checks only; do not use it in production. |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Use the required label for console links.
For https://console.chainstack.com/, use [Chainstack account](...) instead of [Chainstack console](...). As per coding guidelines: “Use [Chainstack account](link) to link to console.chainstack.com.”
Suggested wording fix
-... from the [Chainstack console](https://console.chainstack.com/).
+... from the [Chainstack account](https://console.chainstack.com/).📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| **Use your own endpoint in your code.** The code examples use a placeholder Chainstack endpoint (YOUR_CHAINSTACK_ENDPOINT) — replace it with your own Hyperliquid node endpoint from the [Chainstack console](https://console.chainstack.com/). The curl above uses a shared public endpoint for quick checks only; do not use it in production. | |
| **Use your own endpoint in your code.** The code examples use a placeholder Chainstack endpoint (YOUR_CHAINSTACK_ENDPOINT) — replace it with your own Hyperliquid node endpoint from the [Chainstack account](https://console.chainstack.com/). The curl above uses a shared public endpoint for quick checks only; do not use it in production. |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@reference/hyperliquid-info-perp-dex-limits.mdx` at line 75, The link text for
https://console.chainstack.com/ should use the required label format, so update
the reference in the documentation to use [Chainstack account](...) instead of
[Chainstack console](...) while keeping the surrounding guidance in the same
section of hyperliquid-info-perp-dex-limits.mdx.
Source: Coding guidelines
…OiCap tuple shape, mark removed methods deprecated in specs
Follow-up to the SDK-examples pass (#461): the 4 pages that were flagged/reverted during that run, each handled per-page.
Changes
1.
perp-dex-limits— fixed (was erroring)The method requires a
dexparam that the page omitted, so the documented curl returned "Failed to deserialize the JSON body". Added the requireddex(builder-deployed perp DEX name, e.g."xyz") to the curl and the OpenAPI spec, rewrote the intro/params/response to the real shape (open-interest caps), and added Python (hyperliquid-python-sdk) + TypeScript (@nktkas/hyperliquid) examples.Verified live: curl, Python SDK, and nktkas all return identical data (
totalOiCap 7000000000.0, 94 coins). Endpoint/host/key unchanged — only the request body gained the required param.2.
eth-subscribe-syncing— added WebSocket examplesAdded the
## Example request<CodeGroup>(wscat + web3.py + ethers + viem), matching the othereth_subscribepages. ethers/viem have no high-level syncing helper, so those tabs use the underlying-socket / low-level transport subscribe. All four transports verified against the live endpoint (each subscribed and received theresult:falsenotification).3.
aligned-quote-token-info— deprecated in placeHyperliquid removed this info method (~Jun 2026; dropped in nktkas #154 "to align with the Hyperliquid API"). The live API no longer recognizes the type (every request fails to deserialize). No replacement exists. Replaced the misleading "available on Chainstack" note with a
<Warning>pointing to the aligned-quote-assets concept +tokenDetails.4.
batch-clearinghouse-states— deprecated in placeNever an official public method (0 commits in nktkas or the official Python SDK across full history; absent from the official docs). The public API deserializes it but returns
nullfor every address. Replaced the note with a<Warning>pointing toclearinghouseState(per-user).Why deprecate (not delete) the two dead methods
Both URLs still get traffic —
batch-clearinghouse-states~242 views/30d (207 from agents),aligned-quote-token-info~19/30d (mostly agents). Deleting them 404s those hits and loses SEO; deprecating keeps the URL and converts every agent read from "here's a dead method" into correct guidance.Verification
type:null.