Account
Consent
Your record of who has opted in and who has opted out. Look up one contact when someone asks, export the whole list for an audit, or check opt-out status from your own systems over the API.
Why this page exists
Suppression happens automatically — a STOP reply or an email unsubscribe removes someone from every future send without you doing anything. This page is the other half: being able to show what happened, for a specific person, on a specific date, from a specific sender. That's what a compliance question or a complaint actually needs.
Looking up a contact
Search by phone number, email address, or tracking ID. Phone numbers are normalized to E.164 before the lookup, so how you type it doesn't matter. The tracking ID is the identifier your own system supplied on an open-campaign webhook request — search by it when your CRM knows a customer ID but not their number.
Results are one row per sender, because records are kept per sender: someone can have opted in on your loyalty sender and opted out on your promotions sender, and both facts are preserved with their own dates and sources.
| Column | What it shows |
|---|---|
| Sender | Which sender the record belongs to, with its number. |
| Status | Opted in or opted out — the current state for this contact on this sender. |
| Last opt-in | When they opted in, how (the source), and on which channel. |
| Last opt-out | When they opted out, how, and on which channel. |
| Tracking ID | The external identifier recorded at opt-in, if one was supplied. |
Both dates are kept, not just the current state. A contact who opted in, opted out, then opted back in shows the full sequence — which is exactly the question that comes up when someone disputes having consented.
Where a record came from
The source under each date is how the record was created. It matters: a deliberate opt-out and a dead mailbox both stop the sending, but they mean different things.
- Keyword — the contact texted
STOP,START, or one of their variants. The exact keyword they used is recorded alongside. - Webhook — an open campaign supplied a
trackingId, which RCSync treats as your brand attesting that consent exists upstream. - Unsubscribe — the contact clicked the one-click unsubscribe link in one of your emails.
- Hard bounce — the address permanently rejected mail, so it was suppressed to protect your sending reputation. Not a choice the contact made.
- Complaint — the contact marked an email as junk.
- Manual / system — set by an operator, or by RCSync itself during an automated flow.
Checking opt-out status from your own system
The lookup above is for a person answering a question. When a system needs the same answer — a CRM syncing suppression state, a partner checking before it asks you to send — there is an API for it. Create a key on the Integrations page under API Access, then hand your developer the API reference — it covers authentication, the request and response, and the limits.
The API answers brand-wide, the same way suppression is enforced, so it can differ from a single row in the per-sender table above. That is intentional: it tells you whether a message would actually go out.
Exporting
Export downloads a CSV of your consent records. Choose what to include — Opt-ins, Opt-outs, or Both — and optionally narrow to a single sender and a date range.
Columns
| Column | Description |
|---|---|
| recipient | The phone number for RCS and SMS contacts, or the email address for email contacts. Check the channel column to tell which. |
| status | opted_in or opted_out. |
| opted_in_at / opted_out_at | ISO-8601 timestamps. Both can be populated on the same row. |
| sender_name / sender_phone | The sender this record belongs to. |
| campaign_id / campaign_name | Best-effort: the most recent campaign this contact interacted with under that sender. Blank for bare-number STOPs and for records that predate campaign attribution. |
| source | How the record was created — see above. |
| keyword | The exact keyword texted, for keyword-sourced records. |
| channel | rcs, sms, or email. |
| tracking_id | The external identifier recorded at opt-in, if any. |
How contact details are stored
Phone numbers and email addresses are hashed for matching and separately encrypted for retrieval — plaintext is never persisted in the clear, and lookups run against the hash. The decrypt path exists for exactly one purpose: producing the export above, which is why it leaves an audit trail. See Audiences → data handling.
