Skip to content

Twilio (channel provider)

Voice and SMS run on telephony accounts that Ultimate Quantum AI operates (Twilio, with a Twilio-compatible SignalWire backend). You do not bring your own Twilio account, API keys, or A2P 10DLC registration; those are platform configuration. What you control is which agents have a phone number, and the limits and compliance records that govern how they use it.

The CRO uses phone for outbound prospecting calls and SMS follow-ups; the CFO uses it for invoice-collection calls (with the FDCPA Regulation F seven-in-seven-days cap enforced before the call dials) and in-call payment collection.

  • Plan: Phone & SMS is a Professional ($2,499/mo) and above capability (feature gate phone_sms). Voice sessions additionally require the platform’s voice provider to be enabled for your environment.
  • Consent records. TCPA enforcement is fail-closed: an agent cannot text or call a number without a prior-express-consent record for it. Import consent (type, source, timestamp) for your contacts before expecting outreach; the STOP keyword and your do-not-call list are honored automatically.

Phone numbers are provisioned per agent through the identity API (there is no Settings form for this yet). Request a number in a local area code:

Terminal window
curl -X POST https://app.ultimateteam.ai/api/v1/agents/cro/identity \
-H "Authorization: Bearer <owner session token>" \
-H "Content-Type: application/json" \
-d '{"type": "phone", "config": {"area_code": "415"}}'

The response returns the E.164 number, its provider SID, and the agent’s per-day call and SMS limits. The platform publishes identity.provisioned so the agent can start using the number on its next cadence. If the telephony provider cannot allocate a number, the identity is enabled but the number is left empty and the error is logged; retry the call.

Every outbound call and SMS passes these gates before the carrier is contacted:

  1. Prior express consent exists for the number.
  2. The number is not on your do-not-call list (STOP replies land here immediately).
  3. The recipient’s local time is between 8:00 AM and 9:00 PM.
  4. The contact-timeline spacing rule for the channel has elapsed; for collections, the Regulation F seven-touch cap has not been reached.
  5. The per-contact rate limit has not been exceeded.
  6. The AI-assistance disclosure is injected — as the opening statement of a call, and in every SMS. It cannot be disabled.

Every send and call writes an audit entry and a contact-timeline touch, and a blocked attempt is logged with the rule that blocked it.

Terminal window
curl -X DELETE https://app.ultimateteam.ai/api/v1/agents/cro/identity/phone \
-H "Authorization: Bearer <owner session token>"

This disables the agent’s phone identity and clears the number and SID. The platform publishes identity.revoked; the agent can no longer call or text.