Skip to main content
POST
/
info
info (legalCheck)
curl --request POST \
  --url https://api.hyperliquid.xyz/info \
  --header 'Content-Type: application/json' \
  --data '
{
  "type": "legalCheck",
  "user": "0x1442ad477ded1b0028b57621aa7b6f7eadb8f568"
}
'
{
  "acceptedTerms": true,
  "userAllowed": true,
  "restrictions": "<string>"
}
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 for the full availability breakdown.
The info endpoint with type: "legalCheck" returns a user’s legal and compliance status — whether they have accepted the terms, whether they are allowed to trade, and any restrictions that apply.
Get your own node endpoint todayStart for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.

Parameters

Request body

  • type (string, required) — The request type. Must be "legalCheck".
  • user (string, required) — Address in 42-character hexadecimal format.

Response

Returns a legal-status object:
  • acceptedTerms (boolean) — Whether the user has accepted the terms.
  • userAllowed (boolean) — Whether the user is allowed to trade.
  • restrictions (string) — A restriction code applied to the user, if any.

Example request

curl -X POST \
  -H "Content-Type: application/json" \
  -d '{"type": "legalCheck", "user": "0x1442ad477ded1b0028b57621aa7b6f7eadb8f568"}' \
  https://api.hyperliquid.xyz/info

Example response

{
  "acceptedTerms": false,
  "userAllowed": true,
  "restrictions": "o"
}

Use cases

The info endpoint with type: "legalCheck" is useful for:
  • Compliance gating before allowing trading actions
  • Surfacing onboarding steps (for example, accepting terms)
  • Displaying any restrictions that apply to a user

Body

application/json
type
enum<string>
default:legalCheck
required

Request type

Available options:
legalCheck
user
string
default:0x1442ad477ded1b0028b57621aa7b6f7eadb8f568
required

User address in 42-character hexadecimal format.

Response

200 - application/json

Legal/compliance status for the user.

acceptedTerms
boolean

Whether the user has accepted the terms.

userAllowed
boolean

Whether the user is allowed to trade.

restrictions
string

Restriction code applied to the user, if any.

Last modified on June 24, 2026