Call speed
Send at most 1 call per second per account. This applies toPOST /calls/trigger and campaign requests. Put calls in your own queue and send them one by one.
Concurrency
Concurrency is how many calls can be live at the same time. It is set per account by Scalysis, not per API key or per campaign.- To know your limit, check your dashboard or email contact@scalysis.com.
- All your campaigns share the same lines.
maxConcurrencyon a campaign cannot go above the free lines. - If no line is free when you start or resume a campaign, you get
400witherror_code: CONCURRENCY_POOL_EXHAUSTED. The response showspool_freeandpool_limit. Wait, or pause another campaign, then try again.
Balance
Calls need money in your wallet. When it runs out, every call request returns status402:
Retries
EachPOST /calls/trigger creates a new order and a new call. If you send the same request twice, the customer gets called twice.
400,401,404: something is wrong with the request. Fix it. Do not retry as-is.402: recharge first, then send again.502or a timeout: the order may already exist. Check with theorder_id(or your ownorderNumber) before sending again.
order_id from every response.
Campaign size
At most 2000 contacts perPOST /campaigns request. For more, split into several campaigns.
Calling hours
Campaigns call between 9:00 AM and 8:00 PM IST, every day, unless your account has different hours. Contacts outside this window wait for the next slot.POST /calls/trigger dials right away. Only send it during hours your customers expect a call.
Phone numbers
Send the full number with country code, like+911234567899. One number per contact.
Field limits
Getting results
Calls take time. Use the agent webhook to get results as soon as a call ends. If you pollGET /orders/{orderId}/outcome instead, wait at least 15 seconds between checks.
API keys
- Keep keys on your server only.
- A deleted key stops working right away. Calls already started still finish.

