Control
An AI or artificial-voice outbound call is placed without a recorded prior express consent of the called party (written, for telemarketing)
An AI voice agent or text-to-speech dialer places an outbound call only after checking, for the number it is about to call, a stored prior express consent of the called party; for a call that introduces an advertisement or is telemarketing, the stored consent is a signed written agreement naming the seller and the number.
Informational data, not legal advice. Summaries and rules have not been reviewed by a lawyer: always verify official law text for decisions. A suggested guard is intended to address each rule; adding it is not a statement of compliance to that law.
Reach
Law in force in United States (federal) (US).
Trust and provenance
How far the rules this guard addresses have been checked. Each rule links to its provision, with its citation, official text and its own panel.
- This control
- Audit-grade: meets all 3 checks of the TwinEthos audit standard that apply to it.
- Lanes
- Binding law — in force 1
- Verification
- Sources last verified 4 Oct 2026; each provision states how.
- Data release
- Data release 2026.10.05, data as of 4 Oct 2026, schema 0.3.10.
- Legal review
- None of the 1 rule has been reviewed by a lawyer; no TwinEthos rule has been legally reviewed yet. Treat each as research to check against the official text; it is not legal advice. Open questions for counsel on them: 1.
- Audit standard
- 1 of 1 rule audit-grade. The audit standard is TwinEthos's own quality bar for provenance, dates, applicability, detectors, fixtures, remediation and licences; it is not a legal review.
- Detectors
- 1 detector, all experimental: written from the rule's text and not yet measured for precision on real code, so treat a hit as a lead to verify. Each provision lists its detectors' known limits.
The guard to add
Check a stored prior express consent (written, for telemarketing) for the number before the voice agent places any outbound call.
Before the call-placement API (Twilio calls.create, Vonage create_call, Telnyx, Retell create_phone_call, Vapi calls.create, Bland /v1/calls, ElevenLabs outbound_call, LiveKit create_sip_participant), look up the called number in a consent store and refuse to dial unless a current consent exists: prior express consent for an informational call, and, for a call that includes or introduces an advertisement or is telemarketing, a signed written agreement (electronic signatures count) that names the seller and the number and says consent is not a condition of purchase. Revocations set the record inactive at once. Emergency and exempt calls carry an explicit, logged reason instead of a consent id.
Where it goes: 1 application source code, 2 data models, 6 API calls and integrations, 15 agent action surface.
What reviewers look for: a consent lookup (has_tcpa_consent, consent_record, prior_express_written_consent) on the number immediately before every outbound-call API; the call purpose (informational or telemarketing) decides which consent is required; no batch dialer that loops over a lead list without the check; the consent id or exemption written to the call log.
Example (Python + Twilio + AI voice), before:
for lead in leads:
client.calls.create(to=lead.phone, from_=FROM, url=VOICE_AGENT_TWIML)After:
for lead in leads:
consent = consents.prior_express_consent(lead.phone, purpose='telemarketing')
if not consent or not consent.written:
continue # no prior express written consent: do not dial
call = client.calls.create(to=lead.phone, from_=FROM, url=VOICE_AGENT_TWIML)
call_log.record(call.sid, consent_id=consent.id)Engineering guidance, not legal advice. Each provision below may add its own details (a cadence, a deadline, a required notice element): open it for those.
Every rule this guard addresses
Binding law — in force (1)
- United States (federal) (US)
- Obtain the called party's prior express consent (written, for telemarketing) before an AI voice agent places a call (TCPA; FCC 24-17) FCC 24-17, para. 5 (first two sentences)
Informational data, not legal advice. Summaries are TwinEthos's own words and rules have not been reviewed by a lawyer: check the official text before relying on any of it. A guard addresses an item; adding it is not a statement that your code meets any law.