Update Transfer Limits
curl --request PUT \
--url https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits \
--header 'Content-Type: application/json' \
--header 'apikey: <api-key>' \
--header 'x-carbon-key: <x-carbon-key>' \
--data '
{
"per_transaction_limit": 500000,
"daily_transfer_limit": 2000000
}
'const options = {
method: 'PUT',
headers: {
'x-carbon-key': '<x-carbon-key>',
apikey: '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({per_transaction_limit: 500000, daily_transfer_limit: 2000000})
};
fetch('https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits', 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://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'per_transaction_limit' => 500000,
'daily_transfer_limit' => 2000000
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"apikey: <api-key>",
"x-carbon-key: <x-carbon-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}import requests
url = "https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits"
payload = {
"per_transaction_limit": 500000,
"daily_transfer_limit": 2000000
}
headers = {
"x-carbon-key": "<x-carbon-key>",
"apikey": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)require 'uri'
require 'net/http'
url = URI("https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["x-carbon-key"] = '<x-carbon-key>'
request["apikey"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"per_transaction_limit\": 500000,\n \"daily_transfer_limit\": 2000000\n}"
response = http.request(request)
puts response.read_bodypackage main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits"
payload := strings.NewReader("{\n \"per_transaction_limit\": 500000,\n \"daily_transfer_limit\": 2000000\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-carbon-key", "<x-carbon-key>")
req.Header.Add("apikey", "<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))
}{
"status": "success",
"message": "Transfer limits updated successfully",
"data": {
"per_transaction_limit": 500000,
"daily_transfer_limit": 2000000
}
}Accounts
Update Transfer Limits
Update the transfer limits for a specific account.
PUT
/
v1
/
accounts
/
{account_number}
/
transfer-limits
Update Transfer Limits
curl --request PUT \
--url https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits \
--header 'Content-Type: application/json' \
--header 'apikey: <api-key>' \
--header 'x-carbon-key: <x-carbon-key>' \
--data '
{
"per_transaction_limit": 500000,
"daily_transfer_limit": 2000000
}
'const options = {
method: 'PUT',
headers: {
'x-carbon-key': '<x-carbon-key>',
apikey: '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({per_transaction_limit: 500000, daily_transfer_limit: 2000000})
};
fetch('https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits', 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://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'per_transaction_limit' => 500000,
'daily_transfer_limit' => 2000000
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"apikey: <api-key>",
"x-carbon-key: <x-carbon-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}import requests
url = "https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits"
payload = {
"per_transaction_limit": 500000,
"daily_transfer_limit": 2000000
}
headers = {
"x-carbon-key": "<x-carbon-key>",
"apikey": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)require 'uri'
require 'net/http'
url = URI("https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["x-carbon-key"] = '<x-carbon-key>'
request["apikey"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"per_transaction_limit\": 500000,\n \"daily_transfer_limit\": 2000000\n}"
response = http.request(request)
puts response.read_bodypackage main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://carbonapistagingsecure.getcarbon.co/baas/api/v1/accounts/{account_number}/transfer-limits"
payload := strings.NewReader("{\n \"per_transaction_limit\": 500000,\n \"daily_transfer_limit\": 2000000\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-carbon-key", "<x-carbon-key>")
req.Header.Add("apikey", "<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))
}{
"status": "success",
"message": "Transfer limits updated successfully",
"data": {
"per_transaction_limit": 500000,
"daily_transfer_limit": 2000000
}
}Overview
This endpoint updates the transfer limits for the specified account. At least one of the limit fields must be provided.Request
Method:PUTURL:
/v1/accounts/{account_number}/transfer-limits
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
x-carbon-key | Header | string | Yes | API key for authentication. |
account_number | Path | string | Yes | The account number to update limits for. |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
per_transaction_limit | integer | No | Maximum amount per single transaction. Must be ≥ 1. |
daily_transfer_limit | integer | No | Maximum total amount transferable per day. Must be ≥ 1 and cannot be less than per_transaction_limit. |
daily_transfer_limit must be ≥ per_transaction_limit.
{
"per_transaction_limit": 500000,
"daily_transfer_limit": 2000000
}
Response
Status Code:200 OKContent-Type:
application/json
Example Response
{
"status": "success",
"message": "Transfer limits updated successfully",
"data": {
"per_transaction_limit": 500000,
"daily_transfer_limit": 2000000
}
}
Note: All limit values are in naira. The data shape in successful responses mirrors what the upstream banking service returns and may include additional fields.
Authorizations
Provide your API key in the 'apikey' header.
Headers
Path Parameters
Body
application/json
Provide at least one transfer limit field to update.
Response
OK
The response is of type object.