Get Open Positions
curl --request POST \
--url https://api.kraken.com/0/private/OpenPositions \
--header 'API-Key: <api-key>' \
--header 'API-Sign: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"nonce": 1695828490,
"docalcs": false,
"consolidation": "market",
"txid": "STMH53C-C54CG-4SO42I, ST4USDQ-ZQBMB-FGET2G"
}
'import requests
url = "https://api.kraken.com/0/private/OpenPositions"
payload = {
"nonce": 1695828490,
"docalcs": False,
"consolidation": "market",
"txid": "STMH53C-C54CG-4SO42I, ST4USDQ-ZQBMB-FGET2G"
}
headers = {
"API-Key": "<api-key>",
"API-Sign": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'API-Key': '<api-key>',
'API-Sign': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
nonce: 1695828490,
docalcs: false,
consolidation: 'market',
txid: 'STMH53C-C54CG-4SO42I, ST4USDQ-ZQBMB-FGET2G'
})
};
fetch('https://api.kraken.com/0/private/OpenPositions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.kraken.com/0/private/OpenPositions"
payload := strings.NewReader("{\n \"nonce\": 1695828490,\n \"docalcs\": false,\n \"consolidation\": \"market\",\n \"txid\": \"STMH53C-C54CG-4SO42I, ST4USDQ-ZQBMB-FGET2G\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("API-Key", "<api-key>")
req.Header.Add("API-Sign", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"error": [],
"result": {
"TF5GVO-T7ZZ2-6NBKBI": {
"ordertxid": "OLWNFG-LLH4R-D6SFFP",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1605280097.8294,
"type": "buy",
"ordertype": "limit",
"cost": "104610.52842",
"fee": "289.06565",
"vol": "8.82412861",
"vol_closed": "0.20200000",
"margin": "20922.10568",
"value": "258797.5",
"net": "+154186.9728",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
},
"T24DOR-TAFLM-ID3NYP": {
"ordertxid": "OIVYGZ-M5EHU-ZRUQXX",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1607943827.3172,
"type": "buy",
"ordertype": "limit",
"cost": "145756.76856",
"fee": "335.24057",
"vol": "8.00000000",
"vol_closed": "0.00000000",
"margin": "29151.35371",
"value": "240124.0",
"net": "+94367.2314",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
},
"TYMRFG-URRG5-2ZTQSD": {
"ordertxid": "OF5WFH-V57DP-QANDAC",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1610448039.8374,
"type": "buy",
"ordertype": "limit",
"cost": "0.00240",
"fee": "0.00000",
"vol": "0.00000010",
"vol_closed": "0.00000000",
"margin": "0.00048",
"value": "0",
"net": "+0.0006",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
},
"TAFGBN-TZNFC-7CCYIM": {
"ordertxid": "OF5WFH-V57DP-QANDAC",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1610448039.8448,
"type": "buy",
"ordertype": "limit",
"cost": "2.40000",
"fee": "0.00264",
"vol": "0.00010000",
"vol_closed": "0.00000000",
"margin": "0.48000",
"value": "3.0",
"net": "+0.6015",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
},
"T4O5L3-4VGS4-IRU2UL": {
"ordertxid": "OF5WFH-V57DP-QANDAC",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1610448040.7722,
"type": "buy",
"ordertype": "limit",
"cost": "21.59760",
"fee": "0.02376",
"vol": "0.00089990",
"vol_closed": "0.00000000",
"margin": "4.31952",
"value": "27.0",
"net": "+5.4133",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
}
}
}Account Data
Get Open Positions
Get information about open margin positions.
API Key Permissions Required: Orders and trades - Query open orders & trades
POST
/
private
/
OpenPositions
Get Open Positions
curl --request POST \
--url https://api.kraken.com/0/private/OpenPositions \
--header 'API-Key: <api-key>' \
--header 'API-Sign: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"nonce": 1695828490,
"docalcs": false,
"consolidation": "market",
"txid": "STMH53C-C54CG-4SO42I, ST4USDQ-ZQBMB-FGET2G"
}
'import requests
url = "https://api.kraken.com/0/private/OpenPositions"
payload = {
"nonce": 1695828490,
"docalcs": False,
"consolidation": "market",
"txid": "STMH53C-C54CG-4SO42I, ST4USDQ-ZQBMB-FGET2G"
}
headers = {
"API-Key": "<api-key>",
"API-Sign": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'API-Key': '<api-key>',
'API-Sign': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
nonce: 1695828490,
docalcs: false,
consolidation: 'market',
txid: 'STMH53C-C54CG-4SO42I, ST4USDQ-ZQBMB-FGET2G'
})
};
fetch('https://api.kraken.com/0/private/OpenPositions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.kraken.com/0/private/OpenPositions"
payload := strings.NewReader("{\n \"nonce\": 1695828490,\n \"docalcs\": false,\n \"consolidation\": \"market\",\n \"txid\": \"STMH53C-C54CG-4SO42I, ST4USDQ-ZQBMB-FGET2G\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("API-Key", "<api-key>")
req.Header.Add("API-Sign", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"error": [],
"result": {
"TF5GVO-T7ZZ2-6NBKBI": {
"ordertxid": "OLWNFG-LLH4R-D6SFFP",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1605280097.8294,
"type": "buy",
"ordertype": "limit",
"cost": "104610.52842",
"fee": "289.06565",
"vol": "8.82412861",
"vol_closed": "0.20200000",
"margin": "20922.10568",
"value": "258797.5",
"net": "+154186.9728",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
},
"T24DOR-TAFLM-ID3NYP": {
"ordertxid": "OIVYGZ-M5EHU-ZRUQXX",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1607943827.3172,
"type": "buy",
"ordertype": "limit",
"cost": "145756.76856",
"fee": "335.24057",
"vol": "8.00000000",
"vol_closed": "0.00000000",
"margin": "29151.35371",
"value": "240124.0",
"net": "+94367.2314",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
},
"TYMRFG-URRG5-2ZTQSD": {
"ordertxid": "OF5WFH-V57DP-QANDAC",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1610448039.8374,
"type": "buy",
"ordertype": "limit",
"cost": "0.00240",
"fee": "0.00000",
"vol": "0.00000010",
"vol_closed": "0.00000000",
"margin": "0.00048",
"value": "0",
"net": "+0.0006",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
},
"TAFGBN-TZNFC-7CCYIM": {
"ordertxid": "OF5WFH-V57DP-QANDAC",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1610448039.8448,
"type": "buy",
"ordertype": "limit",
"cost": "2.40000",
"fee": "0.00264",
"vol": "0.00010000",
"vol_closed": "0.00000000",
"margin": "0.48000",
"value": "3.0",
"net": "+0.6015",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
},
"T4O5L3-4VGS4-IRU2UL": {
"ordertxid": "OF5WFH-V57DP-QANDAC",
"posstatus": "open",
"pair": "XXBTZUSD",
"time": 1610448040.7722,
"type": "buy",
"ordertype": "limit",
"cost": "21.59760",
"fee": "0.02376",
"vol": "0.00089990",
"vol_closed": "0.00000000",
"margin": "4.31952",
"value": "27.0",
"net": "+5.4133",
"terms": "0.0100% per 4 hours",
"rollovertm": "1616672637",
"misc": "",
"oflags": ""
}
}
}Authorizations
The "API-Key" header should contain your API key.
Authenticated requests should be signed with the "API-Sign" header, using a signature generated with your private key, nonce, encoded payload, and URI path.
Body
application/json
Nonce used in construction of API-Sign header
Comma delimited list of txids to limit output to
Whether to include P&L calculations
Consolidate positions by market/pair
Available options:
market Optional parameter for viewing xstocks data.
rebased: Display in terms of underlying equity.base: Display in terms of SPV tokens.
Available options:
rebased, base Was this page helpful?
⌘I