{
  "id": "CMP-KEYWORD-FMT",
  "slug": "cmp-keyword-fmt",
  "title": "Opt-out and HELP keywords must be alphanumeric and under 255 characters",
  "statement": "Opt-out and help keyword lists must contain only alphanumeric keywords and must not exceed 255 characters.",
  "rationale": "Keywords are matched as single alphanumeric tokens, so a keyword containing a space or punctuation can never be triggered by an inbound message — it silently never works. The product's own form placeholder currently suggests a non-conforming value, which propagates the defect into every registration that accepts the default.",
  "layer": "CAMPAIGN",
  "layerSlug": "campaign",
  "object": "campaign.optout_keywords + campaign.help_keywords",
  "severity": "BLOCKING",
  "detectability": [
    "DETERMINISTIC"
  ],
  "failureClass": "RETRY_FIELD",
  "authorities": [
    "Twilio",
    "TCR"
  ],
  "applicabilityText": "Applies to every 10DLC registration.",
  "universal": true,
  "remediation": "Use plain alphanumeric keywords separated by commas, e.g. \"STOP, UNSUBSCRIBE, CANCEL\".",
  "example": "STOP, QUIT, END, REVOKE, OPTOUT, CANCEL, UNSUBSCRIBE",
  "notes": "The form placeholder currently suggests \"OPT OUT\" style keywords with a space, which violates this rule — the product ships a non-conforming exemplar.",
  "catalogIds": [
    "CMP-011",
    "CMP-012"
  ],
  "phase": "approval",
  "automated": true,
  "url": "https://ekas.io/rules/10dlc/campaign/cmp-keyword-fmt/",
  "markdown": "https://ekas.io/rules/10dlc/campaign/cmp-keyword-fmt.md",
  "registry": "https://ekas.io/rules/10dlc/",
  "updated": "2026-07-25",
  "licence": "CC BY 4.0 — https://creativecommons.org/licenses/by/4.0/"
}
