Trading
Amend Order
The amend request enables clients to modify the order parameters in-place without the need to cancel the existing order and create a new one.
- The order identifiers assigned by Kraken and/or client will stay the same.
- Queue priority in the order book will be maintained where possible.
- If an amend request will reduce the order quantity below the existing filled quantity, the remaining quantity will be cancelled.
For more detail, see amend transaction guide.
API Key Permissions Required: Orders and trades - Create & modify orders or Orders and trades - Cancel & close orders
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
Body
application/json
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".
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".
⌘I
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"
}
}