Skip to content

Commodity perp positions not returned by API (xyz:CL, perpAnnotation) and missing from clearinghouseState #296

@cryp2one

Description

@cryp2one

Hello Hyperliquid team,

I’ve encountered an issue when trying to retrieve open positions for commodity markets through the API.
According to the documentation, querying:

json
{ "coin": "xyz:CL", "type": "perpAnnotation" }
should return the annotation/perp position data.
However, the API returns no data for commodity pairs such as xyz:CL, even when an active position exists.

Additional Observation
All open positions normally appear under the info API response with type: "clearinghouseState".
Crypto perpetual positions show up correctly there, but commodity positions do not appear at all in clearinghouseState, even when they are open and visible in the UI.

What I’ve checked
The same request works correctly for crypto perpetual pairs.

Commodity positions are visible in the trading interface but not returned by:

perpAnnotation

clearinghouseState

I could not find any documentation explaining:

whether commodity markets use a different coin format,

whether perpAnnotation is supported for commodities,

or whether commodity positions require a different endpoint.

Questions
Are commodity perp positions (e.g., xyz:CL) currently supported by the public API?

If yes, what is the correct request format to retrieve them?

Should commodity positions appear in clearinghouseState, or is this expected behavior?

If not supported yet, is there an alternative endpoint or upcoming support planned?

Any clarification or guidance would be greatly appreciated.

Thank you!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions