info
Exchange API calls do not consume Quicknode API credits. Transactions through this endpoint are appended with a builder fee. See hyperliquidapi.com for a full breakdown. To white-label with your own builder code, contact us.
This endpoint is not a drop-in replacement for Hyperliquid's native /exchange endpoint. See the Exchange API Overview for key differences.
Body Parameters
action
object
REQUIRED
Loading...
type
string
Loading...
nonce
integer
REQUIRED
Loading...
signature
object
REQUIRED
Loading...
r
string
Loading...
s
string
Loading...
v
integer
Loading...
Returns
success
boolean
Loading...
user
string
Loading...
exchangeResponse
object
Loading...
Request
1curl -s -X POST https://docs-demo.hype-mainnet.quiknode.pro/hypercore/exchange \2-H "Content-Type: application/json" \3-d '{4"action": {5"type": "updateLeverage",6"asset": 0,7"isCross": true,8"leverage": 109},10"nonce": 1234567890,11"signature": {12"r": "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab",13"s": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12",14"v": 2815}16}'17
1curl -s -X POST https://docs-demo.hype-mainnet.quiknode.pro/hypercore/exchange \2-H "Content-Type: application/json" \3-d '{4"action": {5"type": "updateLeverage",6"asset": 0,7"isCross": true,8"leverage": 109},10"nonce": 1234567890,11"signature": {12"r": "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab",13"s": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12",14"v": 2815}16}'17
1const axios = require('axios');23const data = {4action: {5type: "updateLeverage",6asset: 0,7isCross: true,8leverage: 109},10nonce: 1234567890,11signature: {12r: "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab",13s: "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12",14v: 2815}16};1718axios.post('https://docs-demo.hype-mainnet.quiknode.pro/hypercore/exchange', data, {19headers: { 'Content-Type': 'application/json' }20})21.then(response => console.log(response.data))22.catch(error => console.error(error));23
1const axios = require('axios');23const data = {4action: {5type: "updateLeverage",6asset: 0,7isCross: true,8leverage: 109},10nonce: 1234567890,11signature: {12r: "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab",13s: "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12",14v: 2815}16};1718axios.post('https://docs-demo.hype-mainnet.quiknode.pro/hypercore/exchange', data, {19headers: { 'Content-Type': 'application/json' }20})21.then(response => console.log(response.data))22.catch(error => console.error(error));23
1import requests2import json34url = "https://docs-demo.hype-mainnet.quiknode.pro/hypercore/exchange"5payload = json.dumps({6"action": {7"type": "updateLeverage",8"asset": 0,9"isCross": True,10"leverage": 1011},12"nonce": 1234567890,13"signature": {14"r": "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab",15"s": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12",16"v": 2817}18})19headers = { 'Content-Type': 'application/json' }20response = requests.request("POST", url, headers=headers, data=payload)21print(response.text)22
1import requests2import json34url = "https://docs-demo.hype-mainnet.quiknode.pro/hypercore/exchange"5payload = json.dumps({6"action": {7"type": "updateLeverage",8"asset": 0,9"isCross": True,10"leverage": 1011},12"nonce": 1234567890,13"signature": {14"r": "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab",15"s": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12",16"v": 2817}18})19headers = { 'Content-Type': 'application/json' }20response = requests.request("POST", url, headers=headers, data=payload)21print(response.text)22
1require "uri"2require "json"3require "net/http"45url = URI("https://docs-demo.hype-mainnet.quiknode.pro/hypercore/exchange")6https = Net::HTTP.new(url.host, url.port)7https.use_ssl = true8request = Net::HTTP::Post.new(url)9request["Content-Type"] = "application/json"10request.body = JSON.dump({11action: {12type: "updateLeverage",13asset: 0,14isCross: true,15leverage: 1016},17nonce: 1234567890,18signature: {19r: "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab",20s: "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12",21v: 2822}23})24response = https.request(request)25puts response.read_body26
1require "uri"2require "json"3require "net/http"45url = URI("https://docs-demo.hype-mainnet.quiknode.pro/hypercore/exchange")6https = Net::HTTP.new(url.host, url.port)7https.use_ssl = true8request = Net::HTTP::Post.new(url)9request["Content-Type"] = "application/json"10request.body = JSON.dump({11action: {12type: "updateLeverage",13asset: 0,14isCross: true,15leverage: 1016},17nonce: 1234567890,18signature: {19r: "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab",20s: "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12",21v: 2822}23})24response = https.request(request)25puts response.read_body26
Don't have an account yet?
Create your Quicknode endpoint in seconds and start building
Get started for free