Skip to content

Info¤

hl.Info ¤

Info(
    *,
    transport: BaseTransport,
    universe: Universe | None = None,
    account: Account | None = None,
)

The Info class provides methods to interact with the /info endpoint.

The methods return information about the exchange and about specific users. It works for both Perpetuals and Spot.

Parameters:

Name Type Description Default
transport BaseTransport

The transport to use to make the requests.

required
universe Universe | None

The universe to use for the exchange.

None
account Account | None

The default account to use for authenticated requests.

None

Methods:

Name Description
all_mids

Retrieve all mids for all actively traded coins.

candle_snapshot

Retrieve a candle snapshot for a given coin.

funding_history

Retrieve funding history for a given coin.

get_universe

Retrieve the universe for the exchange.

l2_book

Retrieve L2 book for a given coin.

max_builder_fee

Retrieve the max builder fee for a given user and builder.

order_status

Retrieve the status of an order.

perpetual_deploy_auction_status

Retrieve perpetual deploy auction status.

perpetual_dexs

Retrieve perpetual dexs.

perpetual_meta

Retrieve exchange perpetuals metadata.

perpetual_meta_and_asset_ctxs

Retrieve exchange perpetuals metadata and asset context.

perpetuals_at_open_interest_cap

Retrieve perpetuals at open interest cap.

predicted_fundings

Retrieve predicted fundings for a given coin.

spot_deploy_auction_status

Retrieve spot deploy auction status.

spot_meta

Retrieve spot metadata.

spot_meta_and_asset_ctxs

Retrieve spot metadata and asset context.

spot_user_state

Retrieve trading details about a user for spot assets.

token_details

Retrieve token details.

user_delegations

Retrieve a user's delegations.

user_delegator_history

Retrieve a user's delegator history.

user_delegator_rewards

Retrieve a user's delegator rewards.

user_delegator_summary

Retrieve a user's delegator summary.

user_fees

Retrieve a user's fees.

user_fills

Retrieve a user's fills.

user_fills_by_time

Retrieve a user's fills by time.

user_frontend_open_orders

Retrieve a user's open orders with additional frontend info.

user_funding

Retrieve a user's funding history.

user_historical_orders

Retrieve a user's historical orders.

user_non_funding_ledger_updates

Retrieve a user's non-funding ledger updates.

user_open_orders

Retrieve a user's open orders.

user_portfolio

Retrieve a user's portfolio.

user_rate_limit

Retrieve a user's rate limit.

user_referral

Retrieve a user's referral.

user_role

Retrieve a user's role.

user_state

Retrieve trading details about a user.

user_sub_accounts

Retrieve a user's subaccounts.

user_twap_slice_fills

Retrieve a user's TWAP slice fills.

user_vault_equities

Retrieve a user's vault equities.

vault_details

Retrieve vault details for a given user.

all_mids async ¤

all_mids(
    *, dex: str | None = None
) -> Result[AllMidsResponse, ApiError]

Retrieve all mids for all actively traded coins.

POST /info

Parameters:

Name Type Description Default
dex str | None

The dex to retrieve mids for. Defaults to Hyperliquid Perp Dex.

None

Returns:

Type Description
Result[AllMidsResponse, ApiError]

A Result containing a dictionary mapping the coin name to the mid price.

Examples:

Retrieve all mids:

>>> await api.info.all_mids()
{'BTC': 110000.0, 'ETH': 1000.0, ...}

candle_snapshot async ¤

candle_snapshot(
    *,
    asset: int | str,
    interval: CandleInterval,
    start: int | datetime | date,
    end: int | datetime | date | None = None,
) -> Result[CandleSnapshotResponse, ApiError]

Retrieve a candle snapshot for a given coin.

POST /info

Parameters:

Name Type Description Default
asset int | str

Asset ID or name to retrieve the candle snapshot for.

required
interval str

The interval of the candle snapshot.

required
start int | datetime | date

Start time in milliseconds or a datetime or date object.

required
end int | datetime | date | None

End time in milliseconds or a datetime or date object. Will default .

None

Returns:

Type Description
Result[CandleSnapshotResponse, ApiError]

A Result containing a list of lists of candles.

funding_history async ¤

funding_history(
    *,
    asset: int | str,
    start: int | datetime | date,
    end: int | datetime | date | None = None,
) -> Result[FundingHistoryResponse, ApiError]

Retrieve funding history for a given coin.

POST /info

Parameters:

Name Type Description Default
asset int | str

Asset ID or name to retrieve funding history for.

required
start int | datetime | date

Start time in milliseconds or a datetime or date object.

required
end int | datetime | date | None

End time in milliseconds or a datetime or date object. Will default to the current time.

None

Returns:

Type Description
Result[FundingHistoryResponse, ApiError]

A Result containing a list of funding history items.

get_universe async ¤

get_universe() -> Universe

Retrieve the universe for the exchange.

l2_book async ¤

l2_book(
    *,
    asset: int | str,
    n_sig_figs: int | None = None,
    mantissa: int | None = None,
) -> Result[L2BookResponse, ApiError]

Retrieve L2 book for a given coin.

POST /info

Parameters:

Name Type Description Default
asset int | str

Asset ID or name to retrieve the L2 book for.

required
n_sig_figs int | None

Optional field to aggregate levels to nSigFigs significant figures. Valid values are 2, 3, 4, 5, and null, which means full precision.

None
mantissa int | None

Optional field to aggregate levels. This field is only allowed if nSigFigs is 5. Accepts values of 1, 2 or 5.

None

Returns:

Type Description
Result[L2BookResponse, ApiError]

A Result containing the L2 book data.

max_builder_fee async ¤

max_builder_fee(
    *,
    builder: str,
    address: str | None = None,
    account: Account | None = None,
) -> Result[MaxBuilderFeeResponse, ApiError]

Retrieve the max builder fee for a given user and builder.

POST /info

Parameters:

Name Type Description Default
builder str

Onchain address in 42-character hexadecimal format; e.g. 0x0000000000000000000000000000000000000000.

required
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[MaxBuilderFeeResponse, ApiError]

A Result containing maximum builder fee approved in tenths of a basis point i.e. 1 means 0.001%

order_status async ¤

order_status(
    *,
    order_id: int | str | Cloid,
    address: str | None = None,
    account: Account | None = None,
) -> Result[OrderStatusResponse, ApiError]

Retrieve the status of an order.

POST /info

Parameters:

Name Type Description Default
order_id int | str | Cloid

The order ID as int or the cloid as Cloid or as raw str.

required
address str

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[OrderStatusResponse, ApiError]

A Result containing the status of the order.

perpetual_deploy_auction_status async ¤

perpetual_deploy_auction_status() -> Result[
    PerpDeployAuctionStatusResponse, ApiError
]

Retrieve perpetual deploy auction status.

POST /info

Returns:

Type Description
Result[PerpDeployAuctionStatusResponse, ApiError]

A Result containing the perpetual deploy auction status.

perpetual_dexs async ¤

perpetual_dexs() -> Result[PerpDexsResponse, ApiError]

Retrieve perpetual dexs.

POST /info

Returns:

Type Description
Result[PerpDexsResponse, ApiError]

A Result containing the perpetual dexs.

perpetual_meta async ¤

perpetual_meta() -> Result[MetaResponse, ApiError]

Retrieve exchange perpetuals metadata.

POST /info

Returns:

Type Description
Result[MetaResponse, ApiError]

A Result containing the metadata dictionary for perpetual assets.

perpetual_meta_and_asset_ctxs async ¤

perpetual_meta_and_asset_ctxs() -> Result[
    MetaAndAssetCtxsResponse, ApiError
]

Retrieve exchange perpetuals metadata and asset context.

POST /info

Returns:

Type Description
Result[MetaAndAssetCtxsResponse, ApiError]

A Result containing a tuple of the metadata dictionary and a list of asset contexts for perpetual assets.

perpetuals_at_open_interest_cap async ¤

perpetuals_at_open_interest_cap() -> Result[
    PerpsAtOpenInterestCapResponse, ApiError
]

Retrieve perpetuals at open interest cap.

POST /info

Returns:

Type Description
Result[PerpsAtOpenInterestCapResponse, ApiError]

A Result containing a list of perpetuals at open interest cap items.

predicted_fundings async ¤

predicted_fundings() -> Result[
    PredictedFundingsResponse, ApiError
]

Retrieve predicted fundings for a given coin.

POST /info

Returns:

Type Description
Result[PredictedFundingsResponse, ApiError]

A Result containing a list of predicted funding items.

spot_deploy_auction_status async ¤

spot_deploy_auction_status(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[SpotDeployAuctionStatusResponse, ApiError]

Retrieve spot deploy auction status.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[SpotDeployAuctionStatusResponse, ApiError]

A Result containing the spot deploy auction status.

spot_meta async ¤

spot_meta() -> Result[SpotMetaResponse, ApiError]

Retrieve spot metadata.

POST /info

Returns:

Type Description
Result[SpotMetaResponse, ApiError]

A Result containing the spot metadata dictionary.

spot_meta_and_asset_ctxs async ¤

spot_meta_and_asset_ctxs() -> Result[
    SpotMetaAndAssetCtxsResponse, ApiError
]

Retrieve spot metadata and asset context.

POST /info

Returns:

Type Description
Result[SpotMetaAndAssetCtxsResponse, ApiError]

A Result containing a tuple of the spot metadata dictionary and a list of asset contexts for spot assets.

spot_user_state async ¤

spot_user_state(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[SpotUserStateResponse, ApiError]

Retrieve trading details about a user for spot assets.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[SpotUserStateResponse, ApiError]

A Result containing the user state dictionary for spot assets.

token_details async ¤

token_details(
    *, token_id: str
) -> Result[TokenDetailsResponse, ApiError]

Retrieve token details.

POST /info

Parameters:

Name Type Description Default
token_id str

The token onchain ID in 34-character hexadecimal format.

required

Returns:

Type Description
Result[TokenDetailsResponse, ApiError]

A Result containing the token details.

user_delegations async ¤

user_delegations(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[DelegationsResponse, ApiError]

Retrieve a user's delegations.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[DelegationsResponse, ApiError]

A Result containing the user's delegations.

user_delegator_history async ¤

user_delegator_history(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[DelegatorHistoryResponse, ApiError]

Retrieve a user's delegator history.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[DelegatorHistoryResponse, ApiError]

A Result containing the user's delegator history.

user_delegator_rewards async ¤

user_delegator_rewards(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[DelegatorRewardsResponse, ApiError]

Retrieve a user's delegator rewards.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[DelegatorRewardsResponse, ApiError]

A Result containing the user's delegator rewards.

user_delegator_summary async ¤

user_delegator_summary(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[DelegatorSummaryResponse, ApiError]

Retrieve a user's delegator summary.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[DelegatorSummaryResponse, ApiError]

A Result containing the user's delegator summary.

user_fees async ¤

user_fees(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserFeesResponse, ApiError]

Retrieve a user's fees.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserFeesResponse, ApiError]

A Result containing the user's fees.

user_fills async ¤

user_fills(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserFillsResponse, ApiError]

Retrieve a user's fills.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserFillsResponse, ApiError]

A Result containing a list of user fills.

user_fills_by_time async ¤

user_fills_by_time(
    *,
    start: int | datetime | date,
    end: int | datetime | date | None = None,
    aggregate_by_time: bool | None = None,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserFillsResponse, ApiError]

Retrieve a user's fills by time.

POST /info

Parameters:

Name Type Description Default
start int | datetime | date

Start time in milliseconds or a datetime or date object.

required
end int | datetime | date | None

End time in milliseconds or a datetime or date object. Will default .

None
aggregate_by_time bool | None

When true, partial fills are combined when a crossing order gets filled by multiple different resting orders. Resting orders filled by multiple crossing orders will not be aggregated.

None
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserFillsResponse, ApiError]

A Result containing a list of user fills.

user_frontend_open_orders async ¤

user_frontend_open_orders(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[FrontendOpenOrdersResponse, ApiError]

Retrieve a user's open orders with additional frontend info.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[FrontendOpenOrdersResponse, ApiError]

A Result containing a list of open orders with additional frontend info.

user_funding async ¤

user_funding(
    *,
    start: int | datetime | date,
    end: int | datetime | date | None = None,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserFundingResponse, ApiError]

Retrieve a user's funding history.

POST /info

Parameters:

Name Type Description Default
start int | datetime | date

Start time in milliseconds or a datetime or date object.

required
end int | datetime | date | None

End time in milliseconds or a datetime or date object. Will default to the current time.

None
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserFundingResponse, ApiError]

A Result containing a list of user funding history entries.

user_historical_orders async ¤

user_historical_orders(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[HistoricalOrdersResponse, ApiError]

Retrieve a user's historical orders.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[HistoricalOrdersResponse, ApiError]

A Result containing a list of historical orders.

user_non_funding_ledger_updates async ¤

user_non_funding_ledger_updates(
    *,
    start: int | datetime | date,
    end: int | datetime | date | None = None,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserNonFundingLedgerUpdatesResponse, ApiError]

Retrieve a user's non-funding ledger updates.

Note: Non-funding ledger updates include deposits, transfers, and withdrawals.

POST /info

Parameters:

Name Type Description Default
start int | datetime | date

Start time in milliseconds or a datetime or date object.

required
end int | datetime | date | None

End time in milliseconds or a datetime or date object. Will default to the current time.

None
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserNonFundingLedgerUpdatesResponse, ApiError]

A Result containing a list of user funding history entries.

user_open_orders async ¤

user_open_orders(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[OpenOrdersResponse, ApiError]

Retrieve a user's open orders.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[OpenOrdersResponse, ApiError]

A Result containing a list of open orders.

Examples:

Using class-level account:

>>> info = Info(transport, universe, account=my_account)
>>> orders = await info.user_open_orders()

Using specific address:

>>> orders = await info.user_open_orders(address="0x...")

Using different account:

>>> orders = await info.user_open_orders(account=other_account)

user_portfolio async ¤

user_portfolio(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[PortfolioResponse, ApiError]

Retrieve a user's portfolio.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[PortfolioResponse, ApiError]

A Result containing the user's portfolio.

user_rate_limit async ¤

user_rate_limit(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserRateLimitResponse, ApiError]

Retrieve a user's rate limit.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserRateLimitResponse, ApiError]

A Result containing the user rate limit dictionary.

user_referral async ¤

user_referral(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[ReferralResponse, ApiError]

Retrieve a user's referral.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[ReferralResponse, ApiError]

A Result containing the user's referral.

user_role async ¤

user_role(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserRoleResponse, ApiError]

Retrieve a user's role.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserRoleResponse, ApiError]

A Result containing the user role.

user_state async ¤

user_state(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserStateResponse, ApiError]

Retrieve trading details about a user.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserStateResponse, ApiError]

A Result containing the user state dictionary.

user_sub_accounts async ¤

user_sub_accounts(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[SubAccountsResponse, ApiError]

Retrieve a user's subaccounts.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[SubAccountsResponse, ApiError]

A Result containing a list of subaccounts.

user_twap_slice_fills async ¤

user_twap_slice_fills(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserTwapSliceFillsResponse, ApiError]

Retrieve a user's TWAP slice fills.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserTwapSliceFillsResponse, ApiError]

A Result containing a list of user TWAP slice fills.

user_vault_equities async ¤

user_vault_equities(
    *,
    address: str | None = None,
    account: Account | None = None,
) -> Result[UserVaultEquitiesResponse, ApiError]

Retrieve a user's vault equities.

POST /info

Parameters:

Name Type Description Default
address str | None

Onchain address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request (mutually exclusive with address)

None

Returns:

Type Description
Result[UserVaultEquitiesResponse, ApiError]

A Result containing a list of user vault equities.

vault_details async ¤

vault_details(
    *,
    vault_address: str | None = None,
    account: Account | None = None,
) -> Result[VaultDetailsResponse, ApiError]

Retrieve vault details for a given user.

POST /info

Parameters:

Name Type Description Default
vault_address str | None

Vault address in 42-character hexadecimal format (mutually exclusive with account)

None
account Account | None

Account object to use for the request must have vault address set (mutually exclusive with vault_address)

None

Returns:

Type Description
Result[VaultDetailsResponse, ApiError]

A Result containing the vault details dictionary.