Update merchant-wide notification preferences (owner only; security mandatory)
PATCH
/dashboard/v1/merchants/{merchantId}/{mode}/notification-preferences
const url = 'https://api.xaalis.org/dashboard/v1/merchants/example/test/notification-preferences';const options = { method: 'PATCH', headers: { cookie: 'better-auth.session_token=<better-auth.session_token>', 'idempotency-key': 'example', 'Content-Type': 'application/json' }, body: '{"kyc":{"email":true,"whatsapp":true},"payments":{"email":true,"whatsapp":true},"payouts":{"email":true,"whatsapp":true},"security":{"email":true,"whatsapp":true}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api.xaalis.org/dashboard/v1/merchants/example/test/notification-preferences \ --header 'Content-Type: application/json' \ --header 'idempotency-key: example' \ --cookie better-auth.session_token=<better-auth.session_token> \ --data '{ "kyc": { "email": true, "whatsapp": true }, "payments": { "email": true, "whatsapp": true }, "payouts": { "email": true, "whatsapp": true }, "security": { "email": true, "whatsapp": true } }'Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters”merchantId
required
string
mode
required
string
Header Parameters
Section titled “Header Parameters”idempotency-key
required
Required retry-safe key; reuse it only for the same operation and request body
string
Required retry-safe key; reuse it only for the same operation and request body
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
kyc
object
email
boolean
whatsapp
boolean
payments
object
email
boolean
whatsapp
boolean
payouts
object
email
boolean
whatsapp
boolean
security
object
email
boolean
whatsapp
boolean
Responses
Section titled “ Responses ”Updated notification preferences
Media typeapplication/json
object
object
required
string
id
required
string
preferences
required
object
kyc
required
object
email
required
boolean
whatsapp
required
boolean
payments
required
object
email
required
boolean
whatsapp
required
boolean
payouts
required
object
email
required
boolean
whatsapp
required
boolean
security
required
object
email
required
boolean
whatsapp
required
boolean
Example
{ "object": "notification_preferences", "preferences": { "security": { "email": true, "whatsapp": true } }}Invalid request
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": "example" }}Sign-in required
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": "example" }}Forbidden
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": "example" }}Not found
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": "example" }}Idempotency conflict or invalid state
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": "example" }}Rate limited; see Retry-After response header
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": "example" }}Rate limiter or service unavailable
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
details
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": "example" }}