Each declared method needs its own complete workflow paragraph
The requirementstatement
Every declared opt-in method must carry its own description satisfying that method's own rule set.
- Severityseverity
- BlockingBLOCKINGBreaking this rule gets the submission rejected. There is no partial credit.
- When it bitesphase
- Gates approvalapprovalGet this wrong and the brand or campaign is refused at registration.
- What is checkedobject
- campaign.message_flow
- Where it liveslayer
- CampaignCAMPAIGN
- How Ekas settles itdetectability
- AI · formAI_FORM
- A semantic question about what you wrote: whether a description matches a use case, whether a name looks like a filed entity. Judged by a model against written criteria.
- What the fix involvesfailureClass
- Fix the fieldRETRY_FIELD
- A better value in the form fixes it. Ekas can rewrite it and re-check.
- Who requires itauthorities
- TCRTwilio
- When it appliesapplicabilityText
- Applies to every 10DLC registration.
Why this rule existsrationale
How to fix itremediation
Give each method its own paragraph carrying that method's required elements: the web form needs the checkbox and disclosure, the verbal path needs the script elements, the keyword path needs the advertised CTA and confirmation. Done when each paragraph would pass on its own if the others were deleted.
A compliant exampleexample
Web: customers tick an unchecked box at acmecoffee.com/checkout reading "…". Verbal: agents read the attached script capturing an explicit yes. Keyword: in-store signage reads "Text JOIN to 55512. Msg frequency varies…".
Notesnotes
Rules you will hit next
6 other rules read campaign.message_flow. Fixing one field to satisfy a single rule is how a resubmission trades one rejection for another, so read these before you change anything.
CMP-061 is one of 94 campaign rules in the 915-rule 10DLC registry. Free to cite under CC BY 4.0.