curl --request PUT \
--url https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"collection_url": "https://yourapp.com/webhooks/collection",
"payout_url": "https://yourapp.com/webhooks/payout",
"kyc_url": "https://yourapp.com/webhooks/kyc"
}
'import requests
url = "https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook}"
payload = {
"collection_url": "https://yourapp.com/webhooks/collection",
"payout_url": "https://yourapp.com/webhooks/payout",
"kyc_url": "https://yourapp.com/webhooks/kyc"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
collection_url: 'https://yourapp.com/webhooks/collection',
payout_url: 'https://yourapp.com/webhooks/payout',
kyc_url: 'https://yourapp.com/webhooks/kyc'
})
};
fetch('https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));require 'uri'
require 'net/http'
url = URI("https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"collection_url\": \"https://yourapp.com/webhooks/collection\",\n \"payout_url\": \"https://yourapp.com/webhooks/payout\",\n \"kyc_url\": \"https://yourapp.com/webhooks/kyc\"\n}"
response = http.request(request)
puts response.read_body<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook}",
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([
'collection_url' => 'https://yourapp.com/webhooks/collection',
'payout_url' => 'https://yourapp.com/webhooks/payout',
'kyc_url' => 'https://yourapp.com/webhooks/kyc'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"message": "Webhook record updated successfully"
}{
"message": "Invalid or missing access token"
}Update webhook URL
Update your registered webhook URLs. Your collection_url receives collection events, virtual account events, and customer KYC events. Your optional kyc_url receives Merchant KYC verification session events; omit the field to leave it unchanged, or send null to clear it. Required scope: webhook:write.
curl --request PUT \
--url https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"collection_url": "https://yourapp.com/webhooks/collection",
"payout_url": "https://yourapp.com/webhooks/payout",
"kyc_url": "https://yourapp.com/webhooks/kyc"
}
'import requests
url = "https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook}"
payload = {
"collection_url": "https://yourapp.com/webhooks/collection",
"payout_url": "https://yourapp.com/webhooks/payout",
"kyc_url": "https://yourapp.com/webhooks/kyc"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
collection_url: 'https://yourapp.com/webhooks/collection',
payout_url: 'https://yourapp.com/webhooks/payout',
kyc_url: 'https://yourapp.com/webhooks/kyc'
})
};
fetch('https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));require 'uri'
require 'net/http'
url = URI("https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"collection_url\": \"https://yourapp.com/webhooks/collection\",\n \"payout_url\": \"https://yourapp.com/webhooks/payout\",\n \"kyc_url\": \"https://yourapp.com/webhooks/kyc\"\n}"
response = http.request(request)
puts response.read_body<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-prod.blaaiz.com/api/external/webhook/{businessWebhook}",
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([
'collection_url' => 'https://yourapp.com/webhooks/collection',
'payout_url' => 'https://yourapp.com/webhooks/payout',
'kyc_url' => 'https://yourapp.com/webhooks/kyc'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"message": "Webhook record updated successfully"
}{
"message": "Invalid or missing access token"
}Authorizations
Use your OAuth client credentials to obtain a short-lived Bearer token from POST /oauth/token.
Path Parameters
Webhook ID or reference to update.
Body
Collection webhook URL. This receives collection events, virtual account events, and customer KYC events.
Payout webhook URL
Optional. URL to receive Merchant KYC verification session events (merchant.kyc.session.completed and merchant.kyc.session.expired). Omit it if you do not use Merchant KYC. Send null to clear a URL you set before. If you omit the field entirely, the stored kyc_url is left unchanged.
Response
Webhook record updated successfully
Was this page helpful?