Skip to main content
POST
/
private
/
AmendOrder
Amend Order
curl --request POST \
  --url https://api.kraken.com/0/private/AmendOrder \
  --header 'API-Key: <api-key>' \
  --header 'API-Sign: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "nonce": 1695828490,
  "cl_ord_id": "6d1b345e-2821-40e2-ad83-4ecb18a06876",
  "order_qty": "1.25"
}
'
import requests

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

payload = {
"nonce": 1695828490,
"cl_ord_id": "6d1b345e-2821-40e2-ad83-4ecb18a06876",
"order_qty": "1.25"
}
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,
cl_ord_id: '6d1b345e-2821-40e2-ad83-4ecb18a06876',
order_qty: '1.25'
})
};

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

payload := strings.NewReader("{\n \"nonce\": 1695828490,\n \"cl_ord_id\": \"6d1b345e-2821-40e2-ad83-4ecb18a06876\",\n \"order_qty\": \"1.25\"\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": {
    "amend_id": "TEZA4R-DSDGT-IJBOJK"
  }
}

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

txid
string

The Kraken identifier for the order to be amended. Either txid or cl_ord_id is required.

cl_ord_id
string

The client identifier for the order to be amended. Either txid or cl_ord_id is required.

order_qty
string

The new order quantity in terms of the base asset.

display_qty
string

For iceberg orders only, it defines the new quantity to show in the book while the rest of order quantity remains hidden. Minimum value is 1 / 15 of remaining order quantity.

limit_price
string

The new limit price restriction on the order (for order types that support limit price only).

The relative pricing can be set by using the +, - prefixes and/or % suffix.

  • + adds the amount from the reference price, i.e. market rises 50 USD "+50".
  • - subtracts the amount from the reference price, i.e. market drops 100 USD "-100".
trigger_price
string

The new trigger price to activate the order (for triggered order types only).

The relative pricing can be set by using the +, - prefixes and/or % suffix.

  • + adds the amount from the reference price, i.e. market rises 50 USD "+50".
  • - subtracts the amount from the reference price, i.e. market drops 100 USD "-100".
pair
string

The pair is required on amends for non-crypto pairs, i.e. provide the pair symbol for xstocks.

post_only
boolean
default:false

An optional flag for limit_price amends. If true, the limit price change will be rejected if the order cannot be posted passively in the book.

deadline
string

RFC3339 timestamp (e.g. 2021-04-01T00:18:45Z) after which the matching engine should reject the new order request, in presence of latency or order queueing. min now() + 2 seconds, max now() + 60 seconds.

Response

200 - application/json

A successful amend request will return the unique Kraken amend identifier.

result
OrderAmended · object
error
string[][]

Kraken API error