Skip to main content
POST
/
private
/
Ledgers
Get Ledgers Info
curl --request POST \
  --url https://api.kraken.com/0/private/Ledgers \
  --header 'API-Key: <api-key>' \
  --header 'API-Sign: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "nonce": 1695828490,
  "type": "trade",
  "start": 1695728276,
  "end": 1695828276
}
'
import requests

url = "https://api.kraken.com/0/private/Ledgers"

payload = {
"nonce": 1695828490,
"type": "trade",
"start": 1695728276,
"end": 1695828276
}
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, type: 'trade', start: 1695728276, end: 1695828276})
};

fetch('https://api.kraken.com/0/private/Ledgers', 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/Ledgers"

payload := strings.NewReader("{\n \"nonce\": 1695828490,\n \"type\": \"trade\",\n \"start\": 1695728276,\n \"end\": 1695828276\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": {
    "ledger": {
      "L4UESK-KG3EQ-UFO4T5": {
        "refid": "TJKLXF-PGMUI-4NTLXU",
        "time": 1688464484.1787,
        "type": "trade",
        "subtype": "",
        "aclass": "currency",
        "asset": "ZGBP",
        "amount": "-24.5000",
        "fee": "0.0490",
        "balance": "459567.9171"
      },
      "LMKZCZ-Z3GVL-CXKK4H": {
        "refid": "TBZIP2-F6QOU-TMB6FY",
        "time": 1688444262.8888,
        "type": "trade",
        "subtype": "",
        "aclass": "currency",
        "asset": "ZUSD",
        "amount": "0.9852",
        "fee": "0.0010",
        "balance": "52732.1132"
      }
    },
    "count": 2
  }
}

Authorizations

API-Key
string
header
required

The "API-Key" header should contain your API key.

API-Sign
string
header
required

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
integer<int64>
required

Nonce used in construction of API-Sign header

asset
string
default:all

Filter output by asset or comma delimited list of assets

aclass
string
default:currency

Filter output by asset class

type
enum<string>
default:all

Type of ledger to retrieve

Available options:
all,
trade,
deposit,
withdrawal,
transfer,
margin,
adjustment,
rollover,
credit,
settled,
staking,
dividend,
sale,
nft_rebate
start
integer

Starting unix timestamp or ledger ID of results (exclusive)

end
integer

Ending unix timestamp or ledger ID of results (inclusive)

ofs
integer

Result offset for pagination

without_count
boolean
default:false

If true, does not retrieve count of ledger entries. Request can be noticeably faster for users with many ledger entries as this avoids an extra database query.

rebase_multiplier
enum<string> | null
default:rebased

Optional parameter for viewing xstocks data.

  • rebased: Display in terms of underlying equity.
  • base: Display in terms of SPV tokens.
Available options:
rebased,
base

Response

200 - application/json

Ledgers info retrieved.

result
LedgersInfo · object

Ledgers Info

error
string[]

Kraken API error