Since last week, we have started receiving direct complaints from B2B businesses reporting unwanted or out-of-hours calls originating from our agent. This raises a serious compliance and reputational concern for our organization.
As mentioned previously, we have already taken multiple actions on our side (including disabling workflows and phone numbers), yet outbound calls appear to continue from within the Retell AI platform.
Given the complaints already received, we urgently need your guidance on the following:
Immediate steps we must take within Retell AI to ensure all outbound calling is fully stopped or strictly limited to approved business hours.
Best practices or required settings to ensure B2B compliance (time windows, agent restrictions, campaign controls, retries, etc.).
Confirmation of whether Retell AI provides account-level safeguards to prevent calls outside configured hours.
Any logs, dashboards, or indicators we should monitor to prove that outbound calling has been successfully halted or constrained.
Recommended actions to prevent future complaints while we investigate and stabilize the configuration.
Due to the fact that external complaints have already been received, this matter is time-sensitive and critical. We would appreciate explicit, step-by-step instructions to ensure we are operating the platform in a compliant and controlled manner.
Please let us know if you require any additional details from our side.
I understand the urgency, and I’m here to help you get this sorted quickly. Here’s a clear action plan to stop unwanted outbound calls and ensure full compliance:
Immediate Steps to Stop Calls:
Disable Active Campaigns: Make sure all outbound campaigns are paused or disabled in the Campaign Management section.
Set Business Hour Restrictions: Go to Campaign Settings and set specific time windows for when calls can be made (e.g., 9 AM to 6 PM). This will ensure no calls go out of hours.
Best Practices for Compliance:
Agent Restrictions: Limit calling access to only approved agents via the Agent Management section.
Retry Settings: Set limits on retry attempts for each campaign to avoid repeated calls outside of business hours.
Account Safeguards:
Retell AI offers account-level safeguards that can block outbound calls outside your designated time window. Make sure these are enabled in the global settings.
Monitoring & Logs:
Monitor Call Activity: Use the real-time dashboard to track ongoing campaigns and ensure they’re operating within business hours.
Check Call Logs: Review the call history to ensure no calls were made outside approved hours.
Next Steps:
I recommend auditing your current campaigns and workflows immediately. You’ll also want to set up regular compliance reviews to keep things in check moving forward.
If you’d like, I can walk you through these steps in a quick call to make sure everything is properly configured. Let me know how you’d like to proceed.
Did you get this resolved yet? If not, feel free to message me, we have dealt with the issues you mentioned above with past projects (the solution would be highly dependent on your business context and tools, so I’d rather share more via DM).
Thank you for flagging this with the urgency it deserves. To completely freeze outbound activity, you must shut down both internal campaigns and external API access points simultaneously, as disabling an agent or workflow alone will not cancel ongoing batch campaigns or block external systems using a valid API key.
Step-by-Step Compliance Action Plan
Revoke API Keys: Navigate to Settings > API Keys and delete or restrict all active keys to prevent external systems from triggering new calls.
Pause Upstream Automations: Immediately pause any workflows or dialing queues inside your CRM, n8n, Make, or HubSpot integrations.
Cancel Active Batches: Check the Batch Call tab and manually delete or cancel any campaigns marked as Ongoing or Planned.
Unbind Phone Numbers: Remove assigned agent profiles from your outbound phone numbers to ensure lines cannot originate calls.
Terminate Live Calls: Use the Live Monitoring dashboard to check for active connections in real time and force-hang up any lingering streams.
Key Compliance Safeguards & Monitoring
Enforce Batch Time Windows: Retell’s business-hours restrictions apply strictly to native Batch campaigns, which physically block out-of-hours dialing.
Secure Upstream API Logic: Because Retell will execute an ad-hoc single-call API request immediately at any hour, you must build time-zone and compliance checks directly into your own automation scripts before hitting our endpoint.
Verify the Freeze: Monitor the Live Monitoring and Call History logs (filtered by Outbound) to confirm that your concurrent call volume drops to zero and stays there.
We highly recommend keeping your API keys restricted until you isolate the exact system responsible for the out-of-hours calls. If you can gather a few sample phone numbers and timestamps from the complaints, you can trace them in your Call History logs to see exactly which API credential or batch opened the door.
Good advice above on cutting off the sources. One thing nobody has mentioned yet: you can build a runtime kill switch that catches any call, no matter what triggered it.
Retell fires a call_started webhook the moment a call begins, and you can register it at account level so it covers every agent. The payload includes direction, agent_id and from_number. Point it at a small n8n or Make workflow that checks the local time, and if an outbound call starts outside your window, hit POST /v2/stop-call/{call_id} to drop it on the spot. That way even a forgotten batch or an external system holding an old key gets cut off, and the webhook log tells you exactly which agent and number fired, which helps trace where the out-of-hours calls are coming from. Two caveats. The call still connects for a second or two before it drops, so treat this as a backstop, not the fix. And agent level webhooks override the account level one, so check none of your agents have their own webhook set or they will slip past it.
Worth pairing with Retell’s alerting too. Set a Call Count alert with an email or webhook notification and you will hear about any unexpected activity without watching the dashboard. I have not run this exact kill switch in production myself, but both pieces are documented (register-webhook and the stop-call endpoint), so it is quick to test in n8n.