Diese Seite ist eine Community-Übersetzung und dient nur zur Orientierung; maßgeblich ist die englische Originalversion.
Englisches Original ↗

Spot

Dieser Abschnitt dokumentiert die Info-Endpunkte, die spezifisch für Spot sind.

Spot-Metadaten abrufen

POST https://api.hyperliquid.xyz/info

Header

Name Value
Content-Type* "application/json"

Body

Name Type Description
type* String "spotMeta"

Antwort

{% tabs %}

{
    "tokens": [
        {
            "name": "USDC",
            "szDecimals": 8,
            "weiDecimals" 8,
            "index": 0,
            "tokenId": "0x6d1e7cde53ba9467b783cb7c530ce054",
            "isCanonical": true,
            "evmContract":null,
            "fullName":null
        },
        {
            "name": "PURR",
            "szDecimals": 0,
            "weiDecimals": 5,
            "index": 1,
            "tokenId": "0xc1fb593aeffbeb02f85e0308e9956a90",
            "isCanonical": true,
            "evmContract":null,
            "fullName":null
        },
        {
            "name": "HFUN",
            "szDecimals": 2,
            "weiDecimals": 8,
            "index": 2,
            "tokenId": "0xbaf265ef389da684513d98d68edf4eae",
            "isCanonical": false,
            "evmContract":null,
            "fullName":null
        },
    ],
    "universe": [
        {
            "name": "PURR/USDC",
            "tokens": [1, 0],
            "index": 0,
            "isCanonical": true
        },
        {
            "tokens": [2, 0],
            "name": "@1",
            "index": 1,
            "isCanonical": false
        },
    ]
}

{% endtab %}

Spot-Asset-Kontexte abrufen

POST https://api.hyperliquid.xyz/info

Name Type Description
Content-Type* String "application/json"

Anfrage-Body

Name Type Description
type* String "spotMetaAndAssetCtxs"

{% tabs %}

[
{
    "tokens": [
        {
            "name": "USDC",
            "szDecimals": 8,
            "weiDecimals" 8,
            "index": 0,
            "tokenId": "0x6d1e7cde53ba9467b783cb7c530ce054",
            "isCanonical": true,
            "evmContract":null,
            "fullName":null
        },
        {
            "name": "PURR",
            "szDecimals": 0,
            "weiDecimals": 5,
            "index": 1,
            "tokenId": "0xc1fb593aeffbeb02f85e0308e9956a90",
            "isCanonical": true,
            "evmContract":null,
            "fullName":null
        }
    ],
    "universe": [
        {
            "name": "PURR/USDC",
            "tokens": [1, 0],
            "index": 0,
            "isCanonical": true
        }
    ]
},
[
    {
        "dayNtlVlm":"8906.0",
        "markPx":"0.14",
        "midPx":"0.209265",
        "prevDayPx":"0.20432"
    }
]
]

{% endtab %}

Token-Guthaben eines Nutzers abrufen

POST https://api.hyperliquid.xyz/info

Zeigt die Token-Guthaben eines Nutzers an.

Bei Unified Account oder Portfolio Margin ist dies die maßgebliche Quelle für das Guthaben des Trading-Kontos über Spot und Perps hinweg.

Header

Name Type Description
Content-Type* "application/json"

Anfrage-Body

Name Type Description
type* String "spotClearinghouseState"
user* String On-Chain-Adresse im 42-stelligen Hexadezimalformat; z. B. 0x0000000000000000000000000000000000000000.

{% tabs %}

{
    "balances": [
        {
            "coin": "USDC",
            "token": 0,
            "hold": "0.0",
            "total": "14.625485",
            "entryNtl": "0.0"
        },
        {
            "coin": "PURR",
            "token": 1,
            "hold": "0.0",
            "total": "2000.0",
            "entryNtl": "1234.56"
        },
        {
            "coin": "+1230",
            "hold": "0.0",
            "total": "25.0",
            "entryNtl": "12.5"
        }
    ]
}

{% endtab %}

Informationen zur Spot-Deploy-Auktion abrufen

POST https://api.hyperliquid.xyz/info

Header

Name Value
Content-Type* "application/json"

Body

Name Type Description
type* String "spotDeployState"
user* String On-Chain-Adresse im 42-stelligen Hexadezimalformat; z. B. 0x0000000000000000000000000000000000000000.

Antwort

{% tabs %}

{
  "states": [
    {
      "token": 150,
      "spec" : {
        "name": "HYPE",
        "szDecimals": 2,
        "weiDecimals": 8,
      },
      "fullName": "Hyperliquid",
      "spots": [107],
      "maxSupply": 1000000000,
      "hyperliquidityGenesisBalance": "120000",
      "totalGenesisBalanceWei": "100000000000000000",
      "userGenesisBalances": [
        ("0xdddddddddddddddddddddddddddddddddddddddd", "428,062,211")...
      ],
      "existingTokenGenesisBalances": [
        (1, "0")...
      ]
    }
  ],
  "gasAuction": {
    "startTimeSeconds": 1733929200,
    "durationSeconds": 111600,
    "startGas": "181305.90046",
    "currentGas": null,
    "endGas": "181291.247358"
  }
}

{% endtab %}

Informationen zur Spot-Pair-Deploy-Auktion abrufen

POST https://api.hyperliquid.xyz/info

Hinweis: Dies gibt den Status der niederländischen Auktion für Spot-Pair-Deployments zwischen bestehenden Base- und Quote-Tokens zurück. Die Teilnahme an dieser Auktion ist über dieselbe Aktion wie die registerSpot-Phase des Base-Token-Deployments erlaubnisfrei möglich.

Header

Name Value
Content-Type* "application/json"

Body

Name Type Description
type* String "spotPairDeployAuctionStatus"

{% tabs %}

{
  "startTimeSeconds":1755468000,
  "durationSeconds":111600,
  "startGas":"500.0",
  "currentGas":"500.0",
  "endGas":null
}

{% endtab %}

Informationen zu einem Token abrufen

POST https://api.hyperliquid.xyz/info

Header

Name Value
Content-Type* "application/json"

Body

Name Type Description
type* String "tokenDetails"
tokenId* String On-Chain-ID im 34-stelligen Hexadezimalformat; z. B. 0x00000000000000000000000000000000.

Antwort

{% tabs %}

{
  "name": "TEST",
  "maxSupply": "1852229076.12716007",
  "totalSupply": "851681534.05516005",
  "circulatingSupply": "851681534.05516005",
  "szDecimals": 0,
  "weiDecimals": 5,
  "midPx": "3.2049",
  "markPx": "3.2025",
  "prevDayPx": "3.2025",
  "genesis": {
    "userBalances": [
      [
        "0x0000000000000000000000000000000000000001",
        "1000000000.0"
      ],
      [
        "0xffffffffffffffffffffffffffffffffffffffff",
        "1000000000.0"
      ]
    ],
    "existingTokenBalances": []
  },
  "deployer": "0x0000000000000000000000000000000000000001",
  "deployGas": "100.0",
  "deployTime": "2024-06-05T10:50:59.434",
  "seededUsdc": "0.0",
  "nonCirculatingUserBalances": [],
  "futureEmissions": "0.0"
}

{% endtab %}

Outcome-Metadaten abrufen

POST https://api.hyperliquid.xyz/info

Die Formate, mit denen die API auf Outcomes verweist, sind im Abschnitt Asset IDs beschrieben. Outcomes und Questions, die aus einer Vorlage erstellt wurden, haben den name template:<id>, wobei <id> die id der Vorlage in der outcomeTemplates-Antwort ist. Das Format ihrer Beschreibung ist in der HIP-4-Deployment-Dokumentation beschrieben.

Wiederkehrende Standalone Outcomes und Questions tragen den Namen Recurring, und ihre description besteht aus |-getrennten key:value-Paaren, die mit class beginnen. expiry ist eine UTC-Zeit im Format YYYYMMDD-HHMM, und underlying ist ein Perp-Coin-Name. Beschreibungen können weitere Schlüssel enthalten, die ignoriert werden können.

  • class:priceBinary ist ein Standalone Outcome, z. B. class:priceBinary|underlying:BTC|expiry:20260526-0600|targetPrice:77363|period:1d. Es wird zu Yes aufgelöst, wenn der Mark-Preis von underlying zum Zeitpunkt expiry über targetPrice liegt.
  • class:priceBucket ist eine Question, z. B. class:priceBucket|underlying:BTC|expiry:20260615-0600|priceThresholds:63250,65831|period:1d, wobei priceThresholds <lower>,<upper> entspricht. Basierend auf dem Mark-Preis von underlying zum Zeitpunkt expiry:
  • Das Outcome mit der Beschreibung index:0 wird zu Yes aufgelöst, wenn der Preis unter lower liegt.
  • Das Outcome mit der Beschreibung index:1 wird zu Yes aufgelöst, wenn der Preis mindestens lower und unter upper liegt.
  • Das Outcome mit der Beschreibung index:2 wird zu Yes aufgelöst, wenn der Preis mindestens upper beträgt.

Header

Name Value
Content-Type* "application/json"

Body

Name Type Description
type* String "outcomeMeta"

Antwort

{% tabs %}

{
  "outcomes": [
    {
      "outcome": 123,
      "name": "Recurring",
      "description": "class:priceBinary|underlying:HYPE|expiry:20260310-1100|targetPrice:34.5|period:3m",
      "sideSpecs": [
        {
          "name": "Yes"
        },
        {
          "name": "No"
        }
      ]
    }
  ]
}

{% endtab %}

Outcome-Vorlagen abrufen

POST https://api.hyperliquid.xyz/info

Header

Name Value
Content-Type* "application/json"

Body

Name Type Description
type* String "outcomeTemplates"

Gibt alle Outcome-Vorlagen zurück. role ist entweder {"standaloneOutcome": {"sideNames": [...]}}, "question" oder {"questionOutcome": {"parent": <question template id>}}. name und description enthalten {keyword}-Platzhalter, und keywords listet jedes Schlüsselwort mit seinem Typ als [keyword, type]-Paare auf. Das Wertformat der einzelnen Typen ist in der HIP-4-Deployment-Dokumentation beschrieben.

Antwort

{% tabs %}

[
  {
    "id": "binaryPrice",
    "role": { "standaloneOutcome": { "sideNames": ["Yes", "No"] } },
    "name": "{perp} above {threshold} at {time}?",
    "description": "The market resolves to Yes if the {perp} price is above {threshold} at {time}, and otherwise resolves to No. Settlement is according to the {seconds}-second TWAP of {priceDescription} price ending at {time}. If {perp} is delisted before this market settles, settlement is instead according to the {perp} settlement price at delisting. metadata=category:price|subCategory:N/A|semanticRestriction:This market must refer to the price of a Hyperliquid perp.",
    "keywords": [["perp", "hlPerp"], ["priceDescription", "string"], ["seconds", "uInt"], ["threshold", "uDecimal"], ["time", "dateTime"]]
  },
  {
    "id": "policyRateDecision",
    "role": "question",
    "name": "{institution} {decisionLabel} rate decision",
    "description": "This market has three possible results: No change, Decrease, or Increase. Exactly one corresponding named outcome resolves to Yes; the other two and the protocol-created fallback resolve to No. It covers the {decisionLabel} {institution} decision concerning {policyMeasure}, scheduled for {scheduledDecision} UTC (the \"Decision\"). The Decision Value is the numeric value of {policyMeasure} announced by {officialSource}. The Prior Value is the value of that same measure in effect immediately before the Decision. No change resolves to Yes if the Decision Value equals the Prior Value. Decrease resolves to Yes if the Decision Value is lower. Increase resolves to Yes if the Decision Value is higher. If the Decision is rescheduled, the rescheduled decision applies if {officialSource} publishes it by {decisionDeadline} UTC. If the Decision is canceled or postponed without a replacement decision, or no official Decision Value is published by {decisionDeadline} UTC, No change resolves to Yes. Policy changes outside the scheduled Decision are ignored except when establishing the Prior Value. If {institution} replaces {policyMeasure}, the closest official successor measure identified by {officialSource} is used. Resolution uses the initially published decision; later revisions do not change the resolution. {officialSource} is the primary resolution source; independent reputable reporting may be used if it has not published the relevant decision. No change resolves to Yes under the deadline rule above only if neither {officialSource} nor independent reputable reporting establishes a Decision Value by {decisionDeadline} UTC. metadata=category:economics|subCategory:N/A|semanticRestriction:This market must refer to a scheduled policy rate decision by an official institution.",
    "keywords": [["decisionDeadline", "dateTime"], ["decisionLabel", "string"], ["institution", "string"], ["officialSource", "string"], ["policyMeasure", "string"], ["scheduledDecision", "dateTime"]]
  },
  {
    "id": "policyRateDecrease",
    "role": { "questionOutcome": { "parent": "policyRateDecision" } },
    "name": "Decrease",
    "description": "This outcome resolves to Yes if the Decision Value is lower than the Prior Value under the parent question's rules.",
    "keywords": []
  }
]

{% endtab %}

Informationen zu einem abgewickelten Outcome abrufen

POST https://api.hyperliquid.xyz/info

Header

Name Value
Content-Type* "application/json"

Body

Name Type Description
type* String "settledOutcome"
outcome* int outcome

Antwort

{% tabs %}

{
  "spec": {
    "outcome": 95,
    "name": "Recurring",
    "description": "class:priceBinary|underlying:BTC|expiry:20260526-0600|targetPrice:77363|period:1d",
    "sideSpecs": [
      {
        "name": "Yes"
      },
      {
        "name": "No"
      }
    ],
    "quoteToken": "USDC"
  },
  "settleFraction": "0.0",
  "details": "price:76876.9"
}

{% endtab %}

Limits für Outcome-Deployer abrufen

POST https://api.hyperliquid.xyz/info

Header

Name Value
Content-Type* "application/json"

Body

Name Type Description
type* String "outcomeDeployerLimits"
venue* String Venue-Name

Antwort

{% tabs %}

{
  "nDailyOutcomesRemaining": 50,
  "nActiveOutcomesRemaining": 14
}

{% endtab %}

Inoffizielle Community-Übersetzung der Hyperliquid-Dokumentation. Inhalte © Hyperliquid; maßgeblich ist die englische Version. Quelle: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot