curl --request POST \
--url https://access.utgl.io/v1/cards/notification-settings \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"cardAccountId": "9e5aa301-6fa5-4526-98ac-12c1343e63fc",
"cardId": "373fa422-0b8c-4f09-ac74-64a5a2c4241e",
"purchaseNotification": "off",
"atmNotification": "off",
"onlinePurchaseVerification": "auto",
"fraudAlert": "whatsapp"
}
'import requests
url = "https://access.utgl.io/v1/cards/notification-settings"
payload = {
"cardAccountId": "9e5aa301-6fa5-4526-98ac-12c1343e63fc",
"cardId": "373fa422-0b8c-4f09-ac74-64a5a2c4241e",
"purchaseNotification": "off",
"atmNotification": "off",
"onlinePurchaseVerification": "auto",
"fraudAlert": "whatsapp"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
cardAccountId: '9e5aa301-6fa5-4526-98ac-12c1343e63fc',
cardId: '373fa422-0b8c-4f09-ac74-64a5a2c4241e',
purchaseNotification: 'off',
atmNotification: 'off',
onlinePurchaseVerification: 'auto',
fraudAlert: 'whatsapp'
})
};
fetch('https://access.utgl.io/v1/cards/notification-settings', 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://access.utgl.io/v1/cards/notification-settings",
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([
'cardAccountId' => '9e5aa301-6fa5-4526-98ac-12c1343e63fc',
'cardId' => '373fa422-0b8c-4f09-ac74-64a5a2c4241e',
'purchaseNotification' => 'off',
'atmNotification' => 'off',
'onlinePurchaseVerification' => 'auto',
'fraudAlert' => 'whatsapp'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$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://access.utgl.io/v1/cards/notification-settings"
payload := strings.NewReader("{\n \"cardAccountId\": \"9e5aa301-6fa5-4526-98ac-12c1343e63fc\",\n \"cardId\": \"373fa422-0b8c-4f09-ac74-64a5a2c4241e\",\n \"purchaseNotification\": \"off\",\n \"atmNotification\": \"off\",\n \"onlinePurchaseVerification\": \"auto\",\n \"fraudAlert\": \"whatsapp\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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://access.utgl.io/v1/cards/notification-settings")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"cardAccountId\": \"9e5aa301-6fa5-4526-98ac-12c1343e63fc\",\n \"cardId\": \"373fa422-0b8c-4f09-ac74-64a5a2c4241e\",\n \"purchaseNotification\": \"off\",\n \"atmNotification\": \"off\",\n \"onlinePurchaseVerification\": \"auto\",\n \"fraudAlert\": \"whatsapp\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://access.utgl.io/v1/cards/notification-settings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cardAccountId\": \"9e5aa301-6fa5-4526-98ac-12c1343e63fc\",\n \"cardId\": \"373fa422-0b8c-4f09-ac74-64a5a2c4241e\",\n \"purchaseNotification\": \"off\",\n \"atmNotification\": \"off\",\n \"onlinePurchaseVerification\": \"auto\",\n \"fraudAlert\": \"whatsapp\"\n}"
response = http.request(request)
puts response.read_body{
"cardAccountId": "9e5aa301-6fa5-4526-98ac-12c1343e63fc",
"cardId": "373fa422-0b8c-4f09-ac74-64a5a2c4241e",
"purchaseNotification": "off",
"atmNotification": "off",
"onlinePurchaseVerification": "auto",
"fraudAlert": "whatsapp"
}Update Card Notification Settings
Update the notification settings for different types of transactions.
From 2026-07-01 00:00 Asia/Hong_Kong, SMS and WhatsApp are no longer supported for Access API card transaction notification settings. Post-cutoff updates using sms or whatsapp are accepted for backward compatibility but ignored, and the response returns the current effective setting. auto must not resolve to SMS or WhatsApp for transaction notifications. Online purchase verification, approval, OTP, 3DS, Google Pay binding, and authentication flows are not changed by this transaction notification policy.
curl --request POST \
--url https://access.utgl.io/v1/cards/notification-settings \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"cardAccountId": "9e5aa301-6fa5-4526-98ac-12c1343e63fc",
"cardId": "373fa422-0b8c-4f09-ac74-64a5a2c4241e",
"purchaseNotification": "off",
"atmNotification": "off",
"onlinePurchaseVerification": "auto",
"fraudAlert": "whatsapp"
}
'import requests
url = "https://access.utgl.io/v1/cards/notification-settings"
payload = {
"cardAccountId": "9e5aa301-6fa5-4526-98ac-12c1343e63fc",
"cardId": "373fa422-0b8c-4f09-ac74-64a5a2c4241e",
"purchaseNotification": "off",
"atmNotification": "off",
"onlinePurchaseVerification": "auto",
"fraudAlert": "whatsapp"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
cardAccountId: '9e5aa301-6fa5-4526-98ac-12c1343e63fc',
cardId: '373fa422-0b8c-4f09-ac74-64a5a2c4241e',
purchaseNotification: 'off',
atmNotification: 'off',
onlinePurchaseVerification: 'auto',
fraudAlert: 'whatsapp'
})
};
fetch('https://access.utgl.io/v1/cards/notification-settings', 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://access.utgl.io/v1/cards/notification-settings",
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([
'cardAccountId' => '9e5aa301-6fa5-4526-98ac-12c1343e63fc',
'cardId' => '373fa422-0b8c-4f09-ac74-64a5a2c4241e',
'purchaseNotification' => 'off',
'atmNotification' => 'off',
'onlinePurchaseVerification' => 'auto',
'fraudAlert' => 'whatsapp'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$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://access.utgl.io/v1/cards/notification-settings"
payload := strings.NewReader("{\n \"cardAccountId\": \"9e5aa301-6fa5-4526-98ac-12c1343e63fc\",\n \"cardId\": \"373fa422-0b8c-4f09-ac74-64a5a2c4241e\",\n \"purchaseNotification\": \"off\",\n \"atmNotification\": \"off\",\n \"onlinePurchaseVerification\": \"auto\",\n \"fraudAlert\": \"whatsapp\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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://access.utgl.io/v1/cards/notification-settings")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"cardAccountId\": \"9e5aa301-6fa5-4526-98ac-12c1343e63fc\",\n \"cardId\": \"373fa422-0b8c-4f09-ac74-64a5a2c4241e\",\n \"purchaseNotification\": \"off\",\n \"atmNotification\": \"off\",\n \"onlinePurchaseVerification\": \"auto\",\n \"fraudAlert\": \"whatsapp\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://access.utgl.io/v1/cards/notification-settings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cardAccountId\": \"9e5aa301-6fa5-4526-98ac-12c1343e63fc\",\n \"cardId\": \"373fa422-0b8c-4f09-ac74-64a5a2c4241e\",\n \"purchaseNotification\": \"off\",\n \"atmNotification\": \"off\",\n \"onlinePurchaseVerification\": \"auto\",\n \"fraudAlert\": \"whatsapp\"\n}"
response = http.request(request)
puts response.read_body{
"cardAccountId": "9e5aa301-6fa5-4526-98ac-12c1343e63fc",
"cardId": "373fa422-0b8c-4f09-ac74-64a5a2c4241e",
"purchaseNotification": "off",
"atmNotification": "off",
"onlinePurchaseVerification": "auto",
"fraudAlert": "whatsapp"
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
Card account ID of the card to update notification settings.
Card ID of the card to update notification settings.
Notification method for purchase transactions.
sms, whatsapp, auto, off Notification method for ATM withdrawals.
sms, whatsapp, auto, off Notification method for online purchase verification codes.
sms, whatsapp, auto, off Notification method for fraud alerts.
sms, whatsapp, auto, off Response
Successful Response
Card account ID of the card for which notification settings were updated.
Card ID of the card for which notification settings were updated.
Notification method for purchase transactions.
sms, whatsapp, auto, off Notification method for ATM withdrawals.
sms, whatsapp, auto, off Notification method for online purchase verification codes.
sms, whatsapp, auto, off Notification method for fraud alerts.
sms, whatsapp, auto, off Was this page helpful?

