For AI assistants: this page as plain markdown is at https://docs.voicelogica.ai/raw/outbound-calls/call-limits.md, and https://docs.voicelogica.ai/llms.txt lists the docs by topic, one file each, small enough to read whole. Read those rather than this HTML page.
Call limits and calling hours
How often Voice Logica will call the same person, and at what hours. These rules protect the people you call (and your number’s reputation with carriers). They apply to outbound calls only. People calling you are never limited.
Calling hours
Section titled “Calling hours”- Outbound calls go out only between 09:00 and 21:00, in your company’s country time (Greek time for a company in Greece).
- Single calls (API, workflows, scheduled calls) also skip Saturday and Sunday.
- A call asked for outside these hours is not lost. It is scheduled for the next allowed time, and the API answers
"scheduled": truewithscheduleTime. - Campaigns call only inside their own schedule days and hours, and never outside 09:00–21:00.
- Transfers and calls a person places from the apps or a desk phone are not limited.
API requests can bypass the hours with overrideTimeRestriction: true and the weekend rule with overrideDayRestriction: true. Calling people at night or on weekends can break consumer-protection law in your country. Use these only for people who asked to be called then.
Single calls: at most 3 a day per number
Section titled “Single calls: at most 3 a day per number”Every call placed one at a time (the API, a workflow, a scheduled call) is protected by default. For each phone number, per day:
| Rule | Limit | If you go over |
|---|---|---|
| Calls that went through | 3 | daily_call_limit_reached |
| Failed attempts (no route, rejected) | 3 | failed_call_limit_reached |
| Time between calls that went through | 1 hour | cooldown_period_active |
| Calls to the same number at the same time | 1 | call_already_in_progress |
- Calls the person makes to you do not count.
- A callback the person asked for (“call me at 7”) is always made: it skips these limits and the campaign max retries. Calling hours still apply.
- Requests that were refused do not count either.
- The day resets at midnight UTC (02:00 or 03:00 in Greece).
- A refused request answers HTTP 429 (409 for a call already in progress), with
details.retryAfterSeconds,details.nextAllowedAtand aRetry-Afterheader. Wait until then. Don’t send it again in a loop. - An API request can turn these limits off with
useAntiHarassmentProtection: false. Do that only for numbers that belong to you or people who expect the calls.
Campaigns: how many times one person is called
Section titled “Campaigns: how many times one person is called”Campaigns don’t use the 3-a-day rule. You decide how often each person on the list (each lead) is called, on the campaign’s Stages tab.
When nobody answers
Section titled “When nobody answers”Open Stages → When nobody answers and set how many times to call back and how long to wait between calls.
- “Nobody answered” means a busy line, voicemail, no answer, or a call that did not connect. A number that does not exist is not called again.
- Retries (0 to 10, default 3) are the calls after the first one. 3 retries = up to 4 calls in total. 0 = one call only.
- Wait between calls: 1 hour to 4 weeks, default 4 hours.
When someone answers
Section titled “When someone answers”After each answered call the AI picks the stage that fits how the call went, for example Succeeded, Failed or Try later. A stage set to Try again calls the person again later. You set Calls on this stage (1 to 10) and the wait (30 minutes to 1 week). Calls on this stage includes the call that put the person on the stage. Example: Try later set to 5 = up to 4 more calls, every 5 days. Someone who declines is closed as Cancelled and not called again.
Both settings share one limit
Section titled “Both settings share one limit”Nobody is called more than the first call + the larger of the two numbers: the retries under When nobody answers, or the highest Try again count. The two numbers are not added.
| Retries | Try later | Most calls one person can get |
|---|---|---|
| 3 | 5 | 6 (1 + 5), not 9 |
| 3 | 2 | 4 (1 + 3) |
| 0 | 5 | 6 (1 + 5) |
Unanswered calls and Try later calls come out of the same allowance. Someone who did not answer three times has fewer Try later calls left. With a Try later stage, even 0 retries can mean more than one call to someone who never answers. To call people less, lower both numbers.
Each call counts once, however it ends. If an answered call drops, we call back about a minute later. That call-back counts as one of the person’s calls, and it is not made once their calls are used up.
Extra numbers and “call me at 6”
Section titled “Extra numbers and “call me at 6””- More than one number: if the first number is not answered, we try the next one about a minute later. That does not use up a retry; the wait starts once every number was tried.
- The person asks for a time (“call me tomorrow at 6”): that call always happens, even when the calls are used up, inside the calling hours and the campaign’s days and hours. It still counts as one of their calls, so afterwards there may be none left. If they asked to be called back but gave no time, we call again after the wait you set (2 days on appointment campaigns).
- The Schedule Callback tool is something else: it creates a callback task for your team and does not place the campaign call. Its Max callbacks per caller (1 to 3) limits those tasks, not campaign calls. See Tools & Workflows.
Calls wait for the campaign’s hours
Section titled “Calls wait for the campaign’s hours”Every retry and callback goes out only on the campaign’s Schedule days and hours. One that falls outside them is not lost: it goes out when they next open. Example: hours 09:00–20:00, wait 4 hours, unanswered call at 18:00. The next call goes out at 09:00 on the next calling day.
Never too often for one person
Section titled “Never too often for one person”On top of the settings above, a campaign never calls the same number:
- within 30 minutes of the last outbound call to it (answered or not, from any campaign or call of your company);
- after 3 answered calls in the last 24 hours.
The person is not lost: their call waits and goes out as soon as it is allowed again. Callbacks the person asked for and the redial after a dropped call are not held. Allowed test numbers skip this too.
Changing the settings while the campaign runs
Section titled “Changing the settings while the campaign runs”You can change the retries, the wait and the stages at any time. The change applies within seconds:
- People already waiting for a call at a set time keep that time. The new wait applies after that call.
- Fewer retries: people who already had that many calls are not called again.
- More retries: people already marked All attempts used stay closed. To call them again, add them to the campaign again.
How many times each person was called
Section titled “How many times each person was called”In the campaign’s leads table, Call attempts shows the calls made to each person so far. The status shows Retry scheduled while they wait for the next call and All attempts used when no calls are left. Open a lead to see each call and its stage.
A message when the calls run out
Section titled “A message when the calls run out”Under When a lead runs out of calls, choose an SMS, an email, or both, and for an SMS the sender (From: Automatic uses your agent’s SMS sender or your company’s own verified sender). It is sent once per person when they reach All attempts used: the call-backs or a stage’s own call limit ran out without a result, also if the person picked up and hung up. It goes out within the campaign’s calling hours (a lead that runs out of calls in the evening gets it when the next calling window opens), never to a number that asked not to be called, and not if an appointment was booked on one of their calls.
Numbers in the campaign’s Allowed test numbers skip every limit. Use that only for your own phones while testing.
Opt-out is permanent
Section titled “Opt-out is permanent”When someone asks not to be called again, their number is marked opted out:
- No agent or campaign of your company calls it again (
callee_opted_out). - Their campaign leads are parked, in every campaign, and any calls already scheduled for them are cancelled right away.
- The opt-out is matched on the number itself, so every lead with that number (in any stored form) is covered, and re-adding or re-uploading it will not call them.
- Don’t re-add them as a new contact or in a new campaign.
Blocking a contact in Contacts, or merging a number into an opted-out one, parks their leads the same way.
Blocked contacts
Section titled “Blocked contacts”Block a contact in Contacts when that person should only talk to your team, never to an AI agent. Their calls to a number an agent answers are declined before the agent picks up (SIP 603 Decline), so your carrier or phone system can send them to your team instead. No agent or campaign calls them (callee_opted_out, reason contact_blocked). Calls routed to a user or user group, and calls your team places, are not affected. Unblock the contact to undo it.
Do-not-call registry (Μητρώο 11)
Section titled “Do-not-call registry (Μητρώο 11)”Numbers on your company’s do-not-call registry are never called either (callee_opted_out, reason do_not_call_registry), and their campaign leads are set to Do not call.
Deleting or erasing a lead stops its calls
Section titled “Deleting or erasing a lead stops its calls”Opting out is not the only thing that stops a campaign from calling a lead. Deleting the lead and erasing the person’s data each cancel the calls already scheduled for them, too:
- Delete a lead - one lead, several at once, or by deleting the whole campaign - and the calls it had scheduled are cancelled. A call already queued for a lead that no longer exists is dropped instead of placed.
- A data-erasure (GDPR) request cancels the person’s scheduled calls and removes their leads. If the person had opted out, their number stays suppressed, so a later add or upload will not call them.
Common questions
Section titled “Common questions”Can the agent call the same person 10 times in one day?
Not with single calls: the limit is 3 calls a day to the same number, 1 hour apart. A campaign set to 10 retries with a 1-hour delay can. Set the retry delay so the calls are spread over days.
Why was my outbound API call scheduled instead of placed?
It was outside 09:00–21:00 or on a weekend in your company’s country. The call goes out automatically at the scheduleTime in the response.
I sent more calls than the dashboard shows. Where are the rest?
They wait their turn. Your plan sets how many calls run at the same time, and a call takes its line for the whole ring and conversation, so extra calls queue and go out as lines free up. Under Calls on the dashboard, waiting to be dialled shows how many are queued now and took place in this period how many were actually made. The big number counts calls by when they were sent or retried, so a call queued yesterday and made today counts for yesterday. To get through a list faster, ask us for more simultaneous calls.
I'm testing outbound calls on my own phone and hit the call limit. What do I do?
Add your number to a campaign’s Allowed test numbers, or send useAntiHarassmentProtection: false on your test API requests.
I set 3 retries and Try later to 5. Why was one lead called 6 times?
A campaign with stages has one limit per lead: the first call plus the larger of the two numbers, here 1 + 5 = 6. Unanswered calls and Try later call-backs both count toward it. To call fewer times, lower the Try again count on the stage as well.
The lead had no retries left but was still called. Why?
The person asked to be called back at a set time. A callback the person asked for always happens, within the calling hours and the campaign schedule. If they ask for a time outside the schedule (“call me tonight at 10”), the agent offers the nearest time inside it. It still counts as one of the lead’s calls.
