Update the email escalation settings

posthttps://api.expiryedge.com/v1/updateEscalationConfig
admin (or an organization session JWT)60/min
Request
curl -X POST 'https://api.expiryedge.com/v1/updateEscalationConfig' \
  -H "Authorization: Bearer $EXPIRYEDGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "enabled": true,
  "escalation_window_days": 10,
  "unopened_threshold_days": 3,
  "channels": [
    "sms"
  ],
  "notify_manager": true
}'
Response
{
  "effective": {
    "enabled": true,
    "escalation_window_days": 10,
    "unopened_threshold_days": 3,
    "channels": [
      "sms"
    ],
    "notify_manager": true
  },
  "stored": {
    "enabled": true,
    "escalation_window_days": 10,
    "unopened_threshold_days": 3,
    "channels": [
      "sms"
    ],
    "notify_manager": true
  },
  "bounds": {
    "escalation_window_days": {
      "min": 1,
      "max": 60
    },
    "unopened_threshold_days": {
      "min": 1,
      "max": 30
    },
    "channels_allowed": [
      "sms",
      "whatsapp",
      "email"
    ]
  },
  "defaults": {
    "enabled": false,
    "escalation_window_days": 7,
    "unopened_threshold_days": 2,
    "channels": [
      "sms",
      "whatsapp"
    ],
    "notify_manager": true
  },
  "org_has_saved": true
}

Partial update merged over the saved config. escalation_window_days must be >= unopened_threshold_days when both are sent.

Body parameters

application/json
  • enabledboolean
  • escalation_window_daysinteger
    Days before expiry during which escalation may run.
    min: 1 · max: 60
  • unopened_threshold_daysinteger
    Days a reminder may stay unopened before escalating.
    min: 1 · max: 30
  • channelsarray of string
    Allowedsmswhatsappemail
  • notify_managerboolean

Returns

200
Saved; returns the same shape as getEscalationConfig.
  • effectiveobjectrequired
  • storedobject | nullrequired
  • boundsobjectrequired
  • defaultsobjectrequired
  • org_has_savedbooleanrequired

Errors

400
The request is missing required fields or contains invalid values.
401
Missing, expired or invalid bearer token.
403
Authenticated, but your role or organization does not allow this action.
405
The endpoint does not accept this HTTP method.
429
Too many requests for this endpoint from your IP. Wait Retry-After seconds.
500
Unexpected server error. Retry later; quote requestId to support.