API reference / Accounts

put/v2/accounts/me/messaging-consent

Record a messaging opt-in or opt-out

Operation
setMessagingConsent
Authentication
None — public

Appends a consent record; opting out of one channel does not affect the other. A phone number must be on the account first, stored in E.164.

Request

Body

channelstringrequired

one of: smswhatsapp

grantedbooleanrequired
disclosurestring

Responses

200The new state for both channels.
phonestringrequired
consentobjectrequired
400The request body or query failed validation.
errorobjectrequired
401No key, an unknown key, a revoked key, or a key whose tenant is not active. All four return an identical body on purpose: distinguishing them would let a caller discover which partners we have.
errorobjectrequired
403The key is valid but does not hold the scope this route requires.
errorobjectrequired
404Not found, or not yours. A resource belonging to another tenant answers 404 rather than 403, because 403 would confirm the record exists.
errorobjectrequired

Example

curl
curl -X PUT https://api.haavisa.com/v2/accounts/me/messaging-consent \
  -H "Content-Type: application/json" \
  -d '{
    "channel": "sms",
    "granted": true
  }'

More in Accounts

Something unclear? The eligibility guide explains the model behind the answers; the errors guide covers the envelope.