Skip to content

Plans and limits

  1. Open Companies, open the company and choose the Plan and limits tab.
  2. Under Start from a plan, press Trial, Standard or Enterprise to fill the form, or edit the fields. Each number has an Unlimited box; products are check boxes with a one-line description; dial modes are toggles; Where data is kept is a list.
  3. Press Save plan. Only platform_billing and platform_owner can; for other roles the fields are read-only.
  4. The banner after saving says whether the plan was also sent to the dialer (core_synced). If not, the plan is saved and the gateway retries every few minutes.

A limit left unlimited means no limit. A company with no plan has no limits and every product.

Behind the screen: GET /plan-presets, GET/PUT /tenants/{id}/plan.

trial standard enterprise
Calls at once 5 100 none
AI sessions at once 5 100 none
Dials per second 2 10 none
Agent seats 3 50 none
AI minutes per month 300 50,000 none
Products Fronter bot, Verifier bot, QA Bot, list verification all all
Dial modes ai_only, preview, manual all all
Recording retention 30 days 3,650 days 3,650 days
Data region us us us

Treat the numbers as starting points.

Limit Meaning Enforced by
max_concurrent_calls Calls up at once across all the company’s campaigns Dialer (stops launching), call-control (refuses the call)
max_ai_sessions Bot conversations at once Dialer, call-control, voice
max_dials_per_second Dial starts per second Dialer
max_agents People with the agent or licensed agent role Gateway, when adding a person
monthly_ai_minute_cap AI minutes per calendar month (UTC) Dialer
allowed_products Which parts of VoDialer open Gateway
allowed_dial_modes Which dialing modes may run Gateway at campaign start, and the dialer
recording_retention_days How long recordings are kept Stored only (see below)
data_region Where the company’s data lives Stored only (see below)

Products: list_verification, fronter_bot, verifier_bot, agent_assist, qa_bot, training_bot, full_dialer. Dial modes: ai_only, predictive, progressive, preview, manual.

Without full_dialer, fronter_bot or verifier_bot a company gets no dialer, campaigns, queues, trunks, inbound routes or media nodes. Bots and the playground need any bot product. List checks need list_verification or full_dialer. QA Bot needs qa_bot or full_dialer. Nothing else is gated.

The dialer announces vd.platform.ai_minutes_threshold once a month at 80% and once at 100%. At 100% it stops AI launches for ai_only campaigns. Human-first campaigns keep dialing.

Code When
product_not_enabled A request to a part its plan does not include. The answer lists which products would open it.
dial_mode_not_allowed Starting a campaign whose mode is not in the plan.
seat_limit_reached Adding an agent beyond max_agents.
ai_minute_cap_reached, tenant_concurrent_limit, tenant_ai_session_limit, tenant_dial_rate_limit Why a running campaign launches nothing. See dial-check reasons.

The services read a company’s limits from core and keep them for 10 seconds. If core cannot be reached they keep the last value they saw, or apply none if they never saw one. A limit never replaces a safety check.

Two campaigns deciding in the same moment can overshoot by one launch batch. Call-control is the hard stop for calls at once.