curl --request POST \
--url https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"name": "<string>",
"currency_code": "USD",
"interest": {
"rate": "<string>",
"effective_rate": "<string>",
"effective_apr": "<string>"
},
"details": {
"structure": "revolving",
"repayment_details": {
"expected_payment_frequency": "fixed_interval",
"expected_payment_frequency_interval_days": 365
}
},
"metadata": {}
}
'import requests
url = "https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances"
payload = {
"name": "<string>",
"currency_code": "USD",
"interest": {
"rate": "<string>",
"effective_rate": "<string>",
"effective_apr": "<string>"
},
"details": {
"structure": "revolving",
"repayment_details": {
"expected_payment_frequency": "fixed_interval",
"expected_payment_frequency_interval_days": 365
}
},
"metadata": {}
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: '<string>',
currency_code: 'USD',
interest: {rate: '<string>', effective_rate: '<string>', effective_apr: '<string>'},
details: {
structure: 'revolving',
repayment_details: {
expected_payment_frequency: 'fixed_interval',
expected_payment_frequency_interval_days: 365
}
},
metadata: {}
})
};
fetch('https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances', 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.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'currency_code' => 'USD',
'interest' => [
'rate' => '<string>',
'effective_rate' => '<string>',
'effective_apr' => '<string>'
],
'details' => [
'structure' => 'revolving',
'repayment_details' => [
'expected_payment_frequency' => 'fixed_interval',
'expected_payment_frequency_interval_days' => 365
]
],
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"currency_code\": \"USD\",\n \"interest\": {\n \"rate\": \"<string>\",\n \"effective_rate\": \"<string>\",\n \"effective_apr\": \"<string>\"\n },\n \"details\": {\n \"structure\": \"revolving\",\n \"repayment_details\": {\n \"expected_payment_frequency\": \"fixed_interval\",\n \"expected_payment_frequency_interval_days\": 365\n }\n },\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Authorization", "Bearer <token>")
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))
}HttpResponse<String> response = Unirest.post("https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"currency_code\": \"USD\",\n \"interest\": {\n \"rate\": \"<string>\",\n \"effective_rate\": \"<string>\",\n \"effective_apr\": \"<string>\"\n },\n \"details\": {\n \"structure\": \"revolving\",\n \"repayment_details\": {\n \"expected_payment_frequency\": \"fixed_interval\",\n \"expected_payment_frequency_interval_days\": 365\n }\n },\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"currency_code\": \"USD\",\n \"interest\": {\n \"rate\": \"<string>\",\n \"effective_rate\": \"<string>\",\n \"effective_apr\": \"<string>\"\n },\n \"details\": {\n \"structure\": \"revolving\",\n \"repayment_details\": {\n \"expected_payment_frequency\": \"fixed_interval\",\n \"expected_payment_frequency_interval_days\": 365\n }\n },\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"user_account_id": "<string>",
"name": "Personal Loan - Jane Smith",
"status": "active",
"status_reason": "active",
"currency_code": "USD",
"amount": 123,
"amount_in_usd": 123,
"amount_breakdown": {
"principal": 123,
"interest": 123,
"fees": 123
},
"fees": {
"accrued": 123
},
"rewards": {
"amount": 123,
"unit": "USD"
},
"dispute": {
"amount": 123,
"amount_breakdown": {
"principal": 123,
"interest": 123,
"fees": 123
}
},
"charge_off": {
"amount": 123,
"amount_breakdown": {
"principal": 123,
"interest": 123,
"fees": 123
}
},
"past_due": {
"amount": 123,
"past_due_days": 123,
"amount_breakdown": {
"principal": 123,
"interest": 123,
"fees": 123
}
},
"interest": {
"rate": "<string>",
"effective_rate": "<string>",
"effective_apr": "<string>"
},
"autopay_method": "ach",
"details": {
"structure": "revolving",
"expected_maturity_date": "2023-12-25",
"repayment_details": {
"expected_payment_frequency": "business_daily",
"expected_payment_frequency_interval_days": 123,
"expected_number_of_payments": 123,
"expected_first_payment_date": "2023-12-25",
"expected_first_payment_amount": 123,
"expected_last_payment_date": "2023-12-25",
"expected_last_payment_amount": 123,
"expected_payment_amount": 123
},
"max_funding_amount": 123,
"term": {
"length": 123,
"unit": "days"
},
"expected_finance_charge_amount": 123
},
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"closed_at": "2023-11-07T05:31:56Z"
}{
"code": "request_malformed",
"message": "The request is invalid and cannot be parsed by the server.",
"errors": [
{
"code": "payload_invalid",
"message": "The request body is not valid JSON."
}
]
}{
"code": "authentication_missing",
"message": "The request has no authentication credentials. Send your API token in the Authorization header.",
"errors": [
{
"code": "authentication_missing",
"message": "The Authorization header is missing. Send your API token as a bearer token.",
"parameters": [
"Authorization"
]
}
]
}{
"code": "object_not_found",
"message": "No object exists at the requested ID, or it is not visible to this caller."
}{
"code": "idempotency_key_in_use",
"message": "A concurrent request using this Idempotency-Key is still in flight."
}{
"code": "parameters_invalid",
"message": "One or more parameters are invalid.",
"errors": [
{
"code": "required",
"message": "name is required.",
"parameters": [
"name"
]
}
]
}{
"code": "rate_limit_exceeded",
"message": "You have exceeded the rate limit for this endpoint. Retry with backoff."
}{
"code": "internal_server_error",
"message": "An unexpected error occurred. Contact support with the Request-Id header value."
}{
"code": "endpoint_disabled",
"message": "This endpoint is temporarily disabled. Retry after the interval given in the Retry-After header."
}{
"code": "gateway_timeout",
"message": "An upstream system timed out. Retry with backoff."
}Create a User Credit Balance
Create a User Credit Balance under an existing User Account. user_account_id comes from the URL path, not the request body. New User Credit Balances have status: active.
curl --request POST \
--url https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"name": "<string>",
"currency_code": "USD",
"interest": {
"rate": "<string>",
"effective_rate": "<string>",
"effective_apr": "<string>"
},
"details": {
"structure": "revolving",
"repayment_details": {
"expected_payment_frequency": "fixed_interval",
"expected_payment_frequency_interval_days": 365
}
},
"metadata": {}
}
'import requests
url = "https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances"
payload = {
"name": "<string>",
"currency_code": "USD",
"interest": {
"rate": "<string>",
"effective_rate": "<string>",
"effective_apr": "<string>"
},
"details": {
"structure": "revolving",
"repayment_details": {
"expected_payment_frequency": "fixed_interval",
"expected_payment_frequency_interval_days": 365
}
},
"metadata": {}
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: '<string>',
currency_code: 'USD',
interest: {rate: '<string>', effective_rate: '<string>', effective_apr: '<string>'},
details: {
structure: 'revolving',
repayment_details: {
expected_payment_frequency: 'fixed_interval',
expected_payment_frequency_interval_days: 365
}
},
metadata: {}
})
};
fetch('https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances', 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.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'currency_code' => 'USD',
'interest' => [
'rate' => '<string>',
'effective_rate' => '<string>',
'effective_apr' => '<string>'
],
'details' => [
'structure' => 'revolving',
'repayment_details' => [
'expected_payment_frequency' => 'fixed_interval',
'expected_payment_frequency_interval_days' => 365
]
],
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"currency_code\": \"USD\",\n \"interest\": {\n \"rate\": \"<string>\",\n \"effective_rate\": \"<string>\",\n \"effective_apr\": \"<string>\"\n },\n \"details\": {\n \"structure\": \"revolving\",\n \"repayment_details\": {\n \"expected_payment_frequency\": \"fixed_interval\",\n \"expected_payment_frequency_interval_days\": 365\n }\n },\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Authorization", "Bearer <token>")
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))
}HttpResponse<String> response = Unirest.post("https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"currency_code\": \"USD\",\n \"interest\": {\n \"rate\": \"<string>\",\n \"effective_rate\": \"<string>\",\n \"effective_apr\": \"<string>\"\n },\n \"details\": {\n \"structure\": \"revolving\",\n \"repayment_details\": {\n \"expected_payment_frequency\": \"fixed_interval\",\n \"expected_payment_frequency_interval_days\": 365\n }\n },\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.lead.bank/v2/user_accounts/{user_account_id}/user_credit_balances")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"currency_code\": \"USD\",\n \"interest\": {\n \"rate\": \"<string>\",\n \"effective_rate\": \"<string>\",\n \"effective_apr\": \"<string>\"\n },\n \"details\": {\n \"structure\": \"revolving\",\n \"repayment_details\": {\n \"expected_payment_frequency\": \"fixed_interval\",\n \"expected_payment_frequency_interval_days\": 365\n }\n },\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"user_account_id": "<string>",
"name": "Personal Loan - Jane Smith",
"status": "active",
"status_reason": "active",
"currency_code": "USD",
"amount": 123,
"amount_in_usd": 123,
"amount_breakdown": {
"principal": 123,
"interest": 123,
"fees": 123
},
"fees": {
"accrued": 123
},
"rewards": {
"amount": 123,
"unit": "USD"
},
"dispute": {
"amount": 123,
"amount_breakdown": {
"principal": 123,
"interest": 123,
"fees": 123
}
},
"charge_off": {
"amount": 123,
"amount_breakdown": {
"principal": 123,
"interest": 123,
"fees": 123
}
},
"past_due": {
"amount": 123,
"past_due_days": 123,
"amount_breakdown": {
"principal": 123,
"interest": 123,
"fees": 123
}
},
"interest": {
"rate": "<string>",
"effective_rate": "<string>",
"effective_apr": "<string>"
},
"autopay_method": "ach",
"details": {
"structure": "revolving",
"expected_maturity_date": "2023-12-25",
"repayment_details": {
"expected_payment_frequency": "business_daily",
"expected_payment_frequency_interval_days": 123,
"expected_number_of_payments": 123,
"expected_first_payment_date": "2023-12-25",
"expected_first_payment_amount": 123,
"expected_last_payment_date": "2023-12-25",
"expected_last_payment_amount": 123,
"expected_payment_amount": 123
},
"max_funding_amount": 123,
"term": {
"length": 123,
"unit": "days"
},
"expected_finance_charge_amount": 123
},
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"closed_at": "2023-11-07T05:31:56Z"
}{
"code": "request_malformed",
"message": "The request is invalid and cannot be parsed by the server.",
"errors": [
{
"code": "payload_invalid",
"message": "The request body is not valid JSON."
}
]
}{
"code": "authentication_missing",
"message": "The request has no authentication credentials. Send your API token in the Authorization header.",
"errors": [
{
"code": "authentication_missing",
"message": "The Authorization header is missing. Send your API token as a bearer token.",
"parameters": [
"Authorization"
]
}
]
}{
"code": "object_not_found",
"message": "No object exists at the requested ID, or it is not visible to this caller."
}{
"code": "idempotency_key_in_use",
"message": "A concurrent request using this Idempotency-Key is still in flight."
}{
"code": "parameters_invalid",
"message": "One or more parameters are invalid.",
"errors": [
{
"code": "required",
"message": "name is required.",
"parameters": [
"name"
]
}
]
}{
"code": "rate_limit_exceeded",
"message": "You have exceeded the rate limit for this endpoint. Retry with backoff."
}{
"code": "internal_server_error",
"message": "An unexpected error occurred. Contact support with the Request-Id header value."
}{
"code": "endpoint_disabled",
"message": "This endpoint is temporarily disabled. Retry after the interval given in the Retry-After header."
}{
"code": "gateway_timeout",
"message": "An upstream system timed out. Retry with backoff."
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Idempotency key
255Path Parameters
The parent User Account's ID
^user_account_\w+$Body
Request body for creating a new User Credit Balance.
1 - 64\SA three-letter currency code as defined in ISO 4217.
USD "USD"
Show child attributes
Show child attributes
ach, debit_card, wire, virtual_wallet, credit_card, none - Option 1
- Option 2
Show child attributes
Show child attributes
A set of key-value pairs that can be used to store additional information related to this object.
Show child attributes
Show child attributes
Response
Credit Balance created successfully
A user credit balance — a virtual end-customer credit position.
^user_credit_balance_\w+$The parent User Account's ID.
Human-readable name.
"Personal Loan - Jane Smith"
active, inactive, closed, reporting_stopped active, frozen, dormant, other, entity_closed, client_closed, paid_off, charged_off, canceled, receivables_sold_to_partner, data_not_available A three-letter currency code as defined in ISO 4217.
USD "USD"
Signed, minor units.
Signed, minor units, in USD.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
ach, debit_card, wire, virtual_wallet, credit_card, none Show child attributes
Show child attributes
A set of key-value pairs that can be used to store additional information related to this object.
Show child attributes
Show child attributes
Was this page helpful?

