{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/sinch/main/json-schema/sinch-webhook-webhook-input-dto-schema.json",
  "title": "WebhookWebhookInputDto",
  "x-generated": "2026-10-08",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/sinch-provisioning-api-openapi.yml#/components/schemas/WebhookWebhookInputDto",
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "A valid target url where events should be sent to.",
      "maxLength": 742,
      "minLength": 1,
      "format": "url",
      "uniqueItems": false
    },
    "secret": {
      "type": "string",
      "description": "Secret to be used to sign contents of webhooks sent by the provisioning API. You can then use the secret to verify the signature. Please not that secret should have a high entropy to be considered secure.",
      "maxLength": 128,
      "minLength": 1,
      "uniqueItems": false
    },
    "triggers": {
      "type": "array",
      "x-enumDescriptions": {
        "BUNDLE_DONE": "Webhook event triggered when a bundle processing flow is completed.",
        "RCS_BRAND_REGISTRATION_PROCESS_STATUS_UPDATED": "Webhook event triggered when the RCS brand registration process status changes.",
        "RCS_SENDER_COMMENT_ADDED": "Webhook event triggered when a new comment is added to an RCS sender.",
        "RCS_SENDER_OPERATOR_STATUS_UPDATED": "Webhook event triggered when an RCS sender operator status changes.",
        "RCS_SENDER_STATUS_UPDATED": "Webhook event triggered when an RCS sender status changes.",
        "RCS_ACCOUNT_COMMENT_ADDED": "Webhook event triggered when a new comment is added to an RCS account.",
        "KAKAOTALK_SENDER_ACTIVE": "Webhook event triggered when a KakaoTalk sender becomes active.",
        "KAKAOTALK_SENDER_INACTIVE": "Webhook event triggered when a KakaoTalk sender becomes inactive.",
        "KAKAOTALK_SENDER_REJECTED": "Webhook event triggered when a KakaoTalk sender is rejected.",
        "KAKAOTALK_SENDER_COMMENT_ADDED": "Webhook event triggered when a new comment is added to a KakaoTalk sender.",
        "KAKAOTALK_TEMPLATE_APPROVED": "Webhook event triggered when a KakaoTalk template is approved.",
        "KAKAOTALK_TEMPLATE_COMMENT_ADDED": "Webhook event triggered when a new comment is added to a KakaoTalk template.",
        "KAKAOTALK_TEMPLATE_REJECTED": "Webhook event triggered when a KakaoTalk template is rejected.",
        "WHATSAPP_ACCOUNT_ONBOARDED": "Webhook event triggered when a WhatsApp account onboarding is completed.",
        "WHATSAPP_ACCOUNT_PENDING_VERIFICATION": "Webhook event triggered when a WhatsApp account is pending verification.",
        "WHATSAPP_ACCOUNT_REJECTED": "Webhook event triggered when a WhatsApp account is rejected.",
        "WHATSAPP_ACCOUNT_COMMENT_ADDED": "Webhook event triggered when a new comment is added to a WhatsApp account.",
        "WHATSAPP_ACCOUNT_DAILY_LIMIT_CHANGED": "Webhook event triggered when a WhatsApp account daily messaging limit changes.",
        "WHATSAPP_WABA_ACCOUNT_CHANGED": "Webhook event triggered when the linked WhatsApp Business Account changes.",
        "WHATSAPP_SENDER_ACTIVE": "Webhook event triggered when a WhatsApp sender becomes active.",
        "WHATSAPP_SENDER_INACTIVE": "Webhook event triggered when a WhatsApp sender becomes inactive.",
        "WHATSAPP_SENDER_REJECTED": "Webhook event triggered when a WhatsApp sender is rejected.",
        "WHATSAPP_SENDER_DELETED": "Webhook event triggered when a WhatsApp sender is deleted.",
        "WHATSAPP_SENDER_DISPLAY_NAME_UPDATED": "Webhook event triggered when a WhatsApp sender display name is updated.",
        "WHATSAPP_SENDER_ERROR": "Webhook event triggered when a WhatsApp sender enters an error state.",
        "WHATSAPP_SENDER_PENDING_VERIFICATION": "Webhook event triggered when a WhatsApp sender is pending verification.",
        "WHATSAPP_SENDER_COMMENT_ADDED": "Webhook event triggered when a new comment is added to a WhatsApp sender.",
        "WHATSAPP_SENDER_DAILY_LIMIT_CHANGED": "Webhook event triggered when a WhatsApp sender daily messaging limit changes.",
        "WHATSAPP_SENDER_QUALITY_RATING_CHANGED": "Webhook event triggered when a WhatsApp sender quality rating changes.",
        "WHATSAPP_SENDER_USERNAME_UPDATED": "Webhook event triggered when a WhatsApp sender username is updated.",
        "WHATSAPP_TEMPLATE_APPROVED": "Webhook event triggered when a WhatsApp template is approved.",
        "WHATSAPP_TEMPLATE_REJECTED": "Webhook event triggered when a WhatsApp template is rejected.",
        "WHATSAPP_TEMPLATE_DELETED": "Webhook event triggered when a WhatsApp template is deleted.",
        "WHATSAPP_TEMPLATE_COMMENT_ADDED": "Webhook event triggered when a new comment is added to a WhatsApp template.",
        "WHATSAPP_TEMPLATE_STATUS_UPDATED": "Webhook event triggered when a WhatsApp template status changes.",
        "WHATSAPP_TEMPLATE_CATEGORY_UPDATED": "Webhook event triggered when a WhatsApp template category changes.",
        "WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE": "Webhook event triggered when a future WhatsApp template category update is scheduled.",
        "WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED": "Webhook event triggered when a WhatsApp template quality score changes.",
        "ALL": "Webhook event triggered for all supported events."
      },
      "uniqueItems": true,
      "minItems": 1,
      "description": "List of triggers you want to be notified about on your webhook. To be able to listen to all type of events use `ALL`.\n- Common: `ALL`\n- Bundles: `BUNDLE_DONE`\n- WhatsApp Sender: `WHATSAPP_SENDER_ACTIVE`, `WHATSAPP_SENDER_COMMENT_ADDED`, `WHATSAPP_SENDER_DAILY_LIMIT_CHANGED`, `WHATSAPP_SENDER_DELETED`, `WHATSAPP_SENDER_DISPLAY_NAME_UPDATED`, `WHATSAPP_SENDER_ERROR`, `WHATSAPP_SENDER_INACTIVE`, `WHATSAPP_SENDER_PENDING_VERIFICATION`, `WHATSAPP_SENDER_QUALITY_RATING_CHANGED`, `WHATSAPP_SENDER_REJECTED` or `WHATSAPP_SENDER_USERNAME_UPDATED`\n- WhatsApp Template: `WHATSAPP_TEMPLATE_APPROVED`, `WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE`, `WHATSAPP_TEMPLATE_CATEGORY_UPDATED`, `WHATSAPP_TEMPLATE_COMMENT_ADDED`, `WHATSAPP_TEMPLATE_DELETED`, `WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED`, `WHATSAPP_TEMPLATE_REJECTED` or `WHATSAPP_TEMPLATE_STATUS_UPDATED`\n- WhatsApp Account: `WHATSAPP_ACCOUNT_COMMENT_ADDED`, `WHATSAPP_ACCOUNT_DAILY_LIMIT_CHANGED`, `WHATSAPP_ACCOUNT_ONBOARDED`, `WHATSAPP_ACCOUNT_PENDING_VERIFICATION`, `WHATSAPP_ACCOUNT_REJECTED` or `WHATSAPP_WABA_ACCOUNT_CHANGED`\n- RCS Sender: `RCS_BRAND_REGISTRATION_PROCESS_STATUS_UPDATED`, `RCS_SENDER_COMMENT_ADDED`, `RCS_SENDER_OPERATOR_STATUS_UPDATED` or `RCS_SENDER_STATUS_UPDATED`\n- KakaoTalk Sender: `KAKAOTALK_SENDER_ACTIVE`, `KAKAOTALK_SENDER_COMMENT_ADDED`, `KAKAOTALK_SENDER_INACTIVE` or `KAKAOTALK_SENDER_REJECTED`\n- KakaoTalk Template: `KAKAOTALK_TEMPLATE_APPROVED`, `KAKAOTALK_TEMPLATE_COMMENT_ADDED` or `KAKAOTALK_TEMPLATE_REJECTED`",
      "items": {
        "$ref": "#/$defs/WebhookWebhookTriggersEnum"
      }
    }
  },
  "required": [
    "target",
    "secret",
    "triggers"
  ],
  "$defs": {
    "WebhookWebhookTriggersEnum": {
      "type": "string",
      "enum": [
        "ALL",
        "BUNDLE_DONE",
        "KAKAOTALK_SENDER_ACTIVE",
        "KAKAOTALK_SENDER_COMMENT_ADDED",
        "KAKAOTALK_SENDER_INACTIVE",
        "KAKAOTALK_SENDER_REJECTED",
        "KAKAOTALK_TEMPLATE_APPROVED",
        "KAKAOTALK_TEMPLATE_COMMENT_ADDED",
        "KAKAOTALK_TEMPLATE_REJECTED",
        "RCS_BRAND_REGISTRATION_PROCESS_STATUS_UPDATED",
        "RCS_SENDER_COMMENT_ADDED",
        "RCS_SENDER_OPERATOR_STATUS_UPDATED",
        "RCS_SENDER_STATUS_UPDATED",
        "RCS_ACCOUNT_COMMENT_ADDED",
        "WHATSAPP_ACCOUNT_COMMENT_ADDED",
        "WHATSAPP_ACCOUNT_DAILY_LIMIT_CHANGED",
        "WHATSAPP_ACCOUNT_ONBOARDED",
        "WHATSAPP_ACCOUNT_PENDING_VERIFICATION",
        "WHATSAPP_ACCOUNT_REJECTED",
        "WHATSAPP_WABA_ACCOUNT_CHANGED",
        "WHATSAPP_SENDER_ACTIVE",
        "WHATSAPP_SENDER_COMMENT_ADDED",
        "WHATSAPP_SENDER_DAILY_LIMIT_CHANGED",
        "WHATSAPP_SENDER_DELETED",
        "WHATSAPP_SENDER_DISPLAY_NAME_UPDATED",
        "WHATSAPP_SENDER_ERROR",
        "WHATSAPP_SENDER_INACTIVE",
        "WHATSAPP_SENDER_PENDING_VERIFICATION",
        "WHATSAPP_SENDER_QUALITY_RATING_CHANGED",
        "WHATSAPP_SENDER_REJECTED",
        "WHATSAPP_SENDER_USERNAME_UPDATED",
        "WHATSAPP_TEMPLATE_APPROVED",
        "WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE",
        "WHATSAPP_TEMPLATE_CATEGORY_UPDATED",
        "WHATSAPP_TEMPLATE_COMMENT_ADDED",
        "WHATSAPP_TEMPLATE_DELETED",
        "WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED",
        "WHATSAPP_TEMPLATE_REJECTED",
        "WHATSAPP_TEMPLATE_STATUS_UPDATED"
      ],
      "description": "List of triggers this webhook is triggered by."
    }
  }
}