Get principal repayment preview
curl --request GET \
--url https://api.exchange.coinbase.com/loans/repayment-preview \
--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"
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', 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",
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"
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")
.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")
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>",
"collateral_value": "<string>",
"collateralization_percentage": "<string>",
"available_to_borrow": "<string>",
"available_per_asset": {},
"withdrawal_restricted": true,
"credit_limit_value": "<string>",
"available_credit_value": "<string>",
"collateralization_percentage_open_only": "<string>",
"pending_loan_value": "<string>",
"initial_margin_percentage": "<string>",
"minimum_margin_percentage": "<string>",
"unlock_margin_percentage": "<string>"
},
"after": {
"open_loan_value": "<string>",
"collateral_value": "<string>",
"collateralization_percentage": "<string>",
"available_to_borrow": "<string>",
"available_per_asset": {},
"withdrawal_restricted": true,
"credit_limit_value": "<string>",
"available_credit_value": "<string>",
"collateralization_percentage_open_only": "<string>",
"pending_loan_value": "<string>",
"initial_margin_percentage": "<string>",
"minimum_margin_percentage": "<string>",
"unlock_margin_percentage": "<string>"
}
}{
"message": "<string>"
}Loan
Get principal repayment preview
Preview the results of a loan principal repayment.
GET
/
loans
/
repayment-preview
Get principal repayment preview
curl --request GET \
--url https://api.exchange.coinbase.com/loans/repayment-preview \
--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"
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', 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",
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"
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")
.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")
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>",
"collateral_value": "<string>",
"collateralization_percentage": "<string>",
"available_to_borrow": "<string>",
"available_per_asset": {},
"withdrawal_restricted": true,
"credit_limit_value": "<string>",
"available_credit_value": "<string>",
"collateralization_percentage_open_only": "<string>",
"pending_loan_value": "<string>",
"initial_margin_percentage": "<string>",
"minimum_margin_percentage": "<string>",
"unlock_margin_percentage": "<string>"
},
"after": {
"open_loan_value": "<string>",
"collateral_value": "<string>",
"collateralization_percentage": "<string>",
"available_to_borrow": "<string>",
"available_per_asset": {},
"withdrawal_restricted": true,
"credit_limit_value": "<string>",
"available_credit_value": "<string>",
"collateralization_percentage_open_only": "<string>",
"pending_loan_value": "<string>",
"initial_margin_percentage": "<string>",
"minimum_margin_percentage": "<string>",
"unlock_margin_percentage": "<string>"
}
}{
"message": "<string>"
}Like the Get lending overview API, all values are notional except
available_per_asset which returns both notional and native values per currency.
Coinbase Exchange Loans ProgramSee Coinbase Exchange Loans Program for program details including qualification criteria and sample terms.
CautionThe lending rate limit is 10 RPS per profile.
Authorizations
Was this page helpful?
⌘I