Opt-Out Entry Points by Channel
A revocation request arrives on whichever channel your contact happens to be using. On some channels Orbit recognises and records it on its own; on others nothing parses aSTOP, so the request only becomes a suppression entry when your team logs it. This page lists, per channel, what is recognised automatically, what each path writes, and exactly how to record revocations that arrive on channels without automatic recognition.
These are tenant-owned controls. The matrix below describes what the
platform recognises today; the keyword vocabulary on the editable channels
remains yours to seed, prune and extend per the
alias table, and the manual
logging procedure for the non-automated channels is your team’s to run.
Per-channel recognition matrix
The
scope column is what the send gates read: an all entry fences the address on every channel, a single-channel entry fences only that channel, and a telegram entry fences your bot messages to that chat. The scope semantics are documented in Consent Management; this page covers where the revocation enters, not what the scope means once stored.
Channels without automatic recognition
On LINE, Instagram, Messenger, WeChat, Kakao, Zalo and Apple Messages, an inboundSTOP (or any other revocation phrasing) creates no suppression row and sends no confirmation. Two structural reasons, the same ones that bound the Telegram slash commands:
- Those connectors hand Orbit the app’s chat or user identifier, not a phone number. There is no number on the inbound event to fence.
- No keyword parser runs on those inbound paths, so even a textbook
STOPis just a message your team receives in the unified inbox.
all.
Log the revocation through the Consent API
The call is the same one documented in the Consent Management worked example. Setsource to a tag your team audits against, for example inbound_keyword when the request arrived as a keyword in an app chat:
opt_in: false on a phone identifier writes scope all, the same fence a keyword STOP writes on SMS.
Or use the surfaces your team already works in
- Preference Center — record the revocation the same way a self-service subscriber would: Preference Center.
- Bulk CSV import — for a backlog of app-chat revocations collected over a period, import them in one pass with an explicit channel or scope per row: bulk CSV import.
Put the logging obligation in your agent scripts
On the non-automated channels, the first person to see a revocation is usually one of your agents in the inbox console. Agent scripts are the tenant-owned tool for making the logging step part of the flow instead of a matter of memory: add a step to the scripts that run on those channels instructing the agent to record the revocation before closing the conversation. A step of this shape works in any script:Verify every revocation landed
For every revocation, automated or manually logged, close the loop with a read-back before you rely on it in a campaign:- Consent history.
GET /api/v1/compliance/consent/history?identifier=<address>&channel=<channel>shows the newest row withconsent_state: "opted_out"and arevoked_at— the no-send-after instant you present in an audit. - Suppression export. Export the ledger from Opt-Out & Suppression Lists with
status=activeand confirm the address is listed with the scope you expect (allfor a phone-keyed revocation). - Opt-outs console. The Opt-outs console channel filters isolate the slice per channel when you want the dashboard view instead of the export.
all suppression entry. For a non-automated channel, run the negative case once per connector you operate: send STOP from a test account, confirm that no suppression row appears (that absence is expected and is exactly why the manual procedure above exists), then log it through the Consent API and confirm all three read-backs.
Related pages
- Opt-Out Keyword Alias Table — the shipped STOP/START vocabulary and the Telegram slash-command reference.
- Consent Management — the consent ledger, revocation scopes, and the API worked example reused above.
- Opt-Out & Suppression Lists — the ledger these entries land in, with bulk CSV import and export.
- Preference Center — the self-service revocation surface.
- Agent scripts — guided flows that put the manual logging step in front of your agents.
- Keyword opt-outs on WhatsApp, RCS & Viber — per-channel rule setup for the editable channels.