Get repayment preview XM
curl --request GET \
--url https://api.exchange.coinbase.com/loans/repayment-preview-xm \
--header 'cb-access-key: <api-key>' \
--header 'cb-access-passphrase: <api-key>' \
--header 'cb-access-sign: <api-key>' \
--header 'cb-access-timestamp: <api-key>'import requests
url = "https://api.exchange.coinbase.com/loans/repayment-preview-xm"
headers = {
"cb-access-key": "<api-key>",
"cb-access-passphrase": "<api-key>",
"cb-access-sign": "<api-key>",
"cb-access-timestamp": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'cb-access-key': '<api-key>',
'cb-access-passphrase': '<api-key>',
'cb-access-sign': '<api-key>',
'cb-access-timestamp': '<api-key>'
}
};
fetch('https://api.exchange.coinbase.com/loans/repayment-preview-xm', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.exchange.coinbase.com/loans/repayment-preview-xm",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"cb-access-key: <api-key>",
"cb-access-passphrase: <api-key>",
"cb-access-sign: <api-key>",
"cb-access-timestamp: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.exchange.coinbase.com/loans/repayment-preview-xm"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("cb-access-key", "<api-key>")
req.Header.Add("cb-access-passphrase", "<api-key>")
req.Header.Add("cb-access-sign", "<api-key>")
req.Header.Add("cb-access-timestamp", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.exchange.coinbase.com/loans/repayment-preview-xm")
.header("cb-access-key", "<api-key>")
.header("cb-access-passphrase", "<api-key>")
.header("cb-access-sign", "<api-key>")
.header("cb-access-timestamp", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.exchange.coinbase.com/loans/repayment-preview-xm")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["cb-access-key"] = '<api-key>'
request["cb-access-passphrase"] = '<api-key>'
request["cb-access-sign"] = '<api-key>'
request["cb-access-timestamp"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"before": {
"open_loan_value": "<string>",
"available_to_borrow": "<string>",
"withdrawal_restricted": true,
"credit_limit_value": "<string>",
"available_credit_value": "<string>",
"pending_loan_value": "<string>",
"margin_requirement": "<string>",
"account_equity": "<string>",
"margin_excess_shortfall": "<string>",
"consumed_credit": "<string>"
},
"after": {
"open_loan_value": "<string>",
"available_to_borrow": "<string>",
"withdrawal_restricted": true,
"credit_limit_value": "<string>",
"available_credit_value": "<string>",
"pending_loan_value": "<string>",
"margin_requirement": "<string>",
"account_equity": "<string>",
"margin_excess_shortfall": "<string>",
"consumed_credit": "<string>"
}
}{
"message": "<string>"
}{
"message": "<string>"
}Loan
Get repayment preview XM
Preview the results of a loan principal repayment for a cross margin user.
GET
/
loans
/
repayment-preview-xm
Get repayment preview XM
curl --request GET \
--url https://api.exchange.coinbase.com/loans/repayment-preview-xm \
--header 'cb-access-key: <api-key>' \
--header 'cb-access-passphrase: <api-key>' \
--header 'cb-access-sign: <api-key>' \
--header 'cb-access-timestamp: <api-key>'import requests
url = "https://api.exchange.coinbase.com/loans/repayment-preview-xm"
headers = {
"cb-access-key": "<api-key>",
"cb-access-passphrase": "<api-key>",
"cb-access-sign": "<api-key>",
"cb-access-timestamp": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'cb-access-key': '<api-key>',
'cb-access-passphrase': '<api-key>',
'cb-access-sign': '<api-key>',
'cb-access-timestamp': '<api-key>'
}
};
fetch('https://api.exchange.coinbase.com/loans/repayment-preview-xm', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.exchange.coinbase.com/loans/repayment-preview-xm",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"cb-access-key: <api-key>",
"cb-access-passphrase: <api-key>",
"cb-access-sign: <api-key>",
"cb-access-timestamp: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.exchange.coinbase.com/loans/repayment-preview-xm"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("cb-access-key", "<api-key>")
req.Header.Add("cb-access-passphrase", "<api-key>")
req.Header.Add("cb-access-sign", "<api-key>")
req.Header.Add("cb-access-timestamp", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.exchange.coinbase.com/loans/repayment-preview-xm")
.header("cb-access-key", "<api-key>")
.header("cb-access-passphrase", "<api-key>")
.header("cb-access-sign", "<api-key>")
.header("cb-access-timestamp", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.exchange.coinbase.com/loans/repayment-preview-xm")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["cb-access-key"] = '<api-key>'
request["cb-access-passphrase"] = '<api-key>'
request["cb-access-sign"] = '<api-key>'
request["cb-access-timestamp"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"before": {
"open_loan_value": "<string>",
"available_to_borrow": "<string>",
"withdrawal_restricted": true,
"credit_limit_value": "<string>",
"available_credit_value": "<string>",
"pending_loan_value": "<string>",
"margin_requirement": "<string>",
"account_equity": "<string>",
"margin_excess_shortfall": "<string>",
"consumed_credit": "<string>"
},
"after": {
"open_loan_value": "<string>",
"available_to_borrow": "<string>",
"withdrawal_restricted": true,
"credit_limit_value": "<string>",
"available_credit_value": "<string>",
"pending_loan_value": "<string>",
"margin_requirement": "<string>",
"account_equity": "<string>",
"margin_excess_shortfall": "<string>",
"consumed_credit": "<string>"
}
}{
"message": "<string>"
}{
"message": "<string>"
}Preview the results of a loan principal repayment for a cross margin user. This endpoint shows the before and after state of your lending overview when repaying a loan.
Repayment Preview for Cross Margin (XM) UsersUse this endpoint to preview how repaying a loan would affect your cross margin account’s margin requirements, account equity, and other lending metrics before actually making the repayment.
CautionThe lending rate limit is 10 RPS per profile.
Authorizations
Was this page helpful?
⌘I