Skip to content
InfiQ glossary · Reference sheetMessages & interactivity

Calling Settings

The per-number configuration that switches WhatsApp calling on and sets call-icon visibility, business calling hours and callback behaviour.

Properties

Term
Calling Settings
Abbreviation
None
Level
Practitioner
Audience
Developers, Support teams
Reviewed
Also called
Call settings · Calling configuration · WhatsApp call hours · Business calling hours

01 · Definition

What is a number's calling configuration?

Calling settings are the configuration that controls how the WhatsApp Business Calling API behaves on one business phone number. They live in the calling object of the number's settings — read with GET /{PHONE_NUMBER_ID}/settings, changed with POST /{PHONE_NUMBER_ID}/settings — and decide whether customers see a call button, when they can use it, and what happens when they call outside those hours. Calling can be switched on only for numbers with a messaging limit of at least 2,000.

The policy fields are few. status (ENABLED or DISABLED) switches calling on the number. call_icon_visibility is DEFAULT (the call button shows and users can call you) or DISABLE_ALL (the button and other entry points are hidden and unsolicited calls are blocked, while call buttons in your own messages keep working). call_icons.restrict_to_user_countries limits the button to users whose phone numbers are registered in listed countries. call_hours sets a weekly schedule in an IANA time zone such as Asia/Kolkata, with at most two non-overlapping ranges per day and up to 20 dated holiday overrides. callback_permission_status lets people who call you grant permission to be called back.

The same object also configures plumbing: sip routes calls to a SIP server instead of the calling endpoints and webhooks, audio.additional_codecs adds G.711 (PCMA, PCMU) next to the always-on Opus codec, and voicemail plays a recorded announcement and takes a message when a call is rejected or not answered in time. These settings shape the flows described under user-initiated call and business-initiated call; they never place or answer a call themselves.

Key takeaways

  • Calling settings are the per-number switches for the WhatsApp Calling API, read and changed at /{PHONE_NUMBER_ID}/settings.
  • status turns calling on or off; call_icon_visibility: DISABLE_ALL hides the call button and blocks unsolicited calls.
  • call_hours sets weekly hours in a named time zone, with at most two ranges per day and up to 20 holiday overrides.
  • Outside call hours users cannot call you; with callback permission enabled they can ask for a callback instead.
  • WhatsApp apps can take up to 7 days to show a change, but Meta enforces the new settings on its servers straight away.

See InfiQ pricing

02 · Code samples

A number's calling configuration in code

curl -X POST "https://graph.facebook.com/v26.0/{PHONE_NUMBER_ID}/settings" \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"calling": {
"status": "ENABLED",
"call_icon_visibility": "DEFAULT",
"callback_permission_status": "ENABLED",
"call_hours": {
"status": "ENABLED",
"timezone_id": "Asia/Kolkata",
"weekly_operating_hours": [
{ "day_of_week": "MONDAY", "open_time": "0900", "close_time": "1300" },
{ "day_of_week": "MONDAY", "open_time": "1400", "close_time": "1900" },
{ "day_of_week": "TUESDAY", "open_time": "0900", "close_time": "1300" },
{ "day_of_week": "TUESDAY", "open_time": "1400", "close_time": "1900" },
{ "day_of_week": "SATURDAY", "open_time": "1000", "close_time": "1400" }
],
"holiday_schedule": [
{ "date": "2026-12-25", "start_time": "0000", "end_time": "2359" }
]
}
}
}'
# 200 OK → { "success": true }

Wednesday to Friday entries are left out for brevity. The full call_hours block is replaced on every update, so always send all of it.

03Playground

A working model of Calling Settings. Use its controls to replay it step by step.

See what a call_hours schedule does to a week of calls

Monday · 11:00

96

Inbound calls connected (illustrative, 0–100)

Peak
Mon 11:00
96
Busiest day
Monday
avg 27
Best hour
11:00
avg 70

Weekdays run 09:00–13:00 and 14:00–19:00 IST, Saturday 10:00–14:00, Sunday closed. Monday 11:00 is the peak, so put most counsellors on it.

0100Peak hourBest hour on average

Focus the grid and use the arrow keys (Home / End for 00:00 / 23:00), or point at a cell.

Illustrative inbound calls for the admissions desk above, by day and hour. Empty cells fall outside call_hours, when the call button offers a callback instead. Point at any hour or jump to the peak.

04 · Specifications

A number's calling configuration: key facts and limits

EndpointGET / POST /{PHONE_NUMBER_ID}/settings (calling object)
PrerequisiteMessaging limit of at least 2,000
Call iconDEFAULT or DISABLE_ALL; optional country restriction
Ranges per dayAt most 2, non-overlapping, HHMM
Holiday overridesUp to 20, future dates only
Client propagationUp to 7 days; the server enforces at once
CodecsOpus always; G.711 (PCMA, PCMU) optional
Settings webhookaccount_settings_update

05 · Operation

How does a number's calling configuration work?

  1. Read the current state

    GET /{PHONE_NUMBER_ID}/settings returns the calling object, including any calling restriction Meta has placed on the number. Start every change from it, because an update to call_hours replaces the whole block.

  2. Switch calling on

    Set calling.status to ENABLED and subscribe your app to the calls webhook field. Changes to status, icon visibility, callback permission and SIP can also fire an account_settings_update webhook.

  3. Decide who sees the button

    Keep call_icon_visibility: DEFAULT for a support line, or use DISABLE_ALL when you only want calls started from buttons in your own messages. Restrict by users' countries if the team serves only some markets.

  4. Set hours and holidays

    Send call_hours with status, timezone_id, weekly_operating_hours (day_of_week, open_time, close_time as HHMM) and holiday_schedule. Leaving out holiday_schedule deletes the holidays already saved.

  5. Offer callbacks

    With callback_permission_status: ENABLED, a user who calls — including outside your hours, when they are offered a callback and shown the next open slot — can give permission to be called back, feeding your business-initiated call queue.

  6. Allow for propagation

    WhatsApp apps can take up to 7 days to reflect a change (opening the chat info page refreshes it), but Meta enforces the new settings immediately, so a customer's app may briefly show a button the server no longer honours.

06 · Cautions

Common mistakes with a number's calling configuration

  • Wiping holidays by accident

    Every call_hours update replaces the previous one, and omitting holiday_schedule deletes the saved holidays. Generate the full block from one source of truth and send all of it.

  • Using the wrong time zone

    Hours are read in timezone_id. Assuming UTC shifts an Indian schedule by five and a half hours; set Asia/Kolkata explicitly.

  • Hiding the icon and expecting silence

    DISABLE_ALL blocks unsolicited calls, but call buttons in your templates and interactive messages still start calls. Remove those too if nobody can answer.

  • Voicemail that never triggers

    With call hours on, users cannot call outside them, so a voicemail meant for nights never plays. Meta advises turning call hours off when voicemail is the after-hours plan.

  • Trusting one handset after a change

    A phone may show the old button for days. Check the GET response and real call behaviour, not one device's interface.

07 · Worked example: An admissions desk with a lunch break

Example: An admissions desk with a lunch break

A Lucknow coaching institute's admissions desk works 9 am to 1 pm and 2 pm to 7 pm on weekdays and 10 am to 2 pm on Saturdays. It sets call_hours in Asia/Kolkata with two ranges for each weekday, one for Saturday, and a holiday override for 25 December. Students who tap the call icon at 8 pm see that the desk is closed and can request a callback; from 9 the next morning counsellors work through the callback list as business-initiated calls. The heatmap shows the resulting week: nothing connects outside the configured hours, and Monday late morning is the peak to staff for.

08 · Rationale

Why does a number's calling configuration matter?

Calling settings are where a support head's operating decisions become product behaviour. A call button that rings at 2 am into an empty contact centre creates missed calls and annoyed customers, and Meta can restrict calling on numbers with low pickup rates or heavy negative feedback. Hours that match staffing, holiday closures set in advance, callbacks offered when the team is away and the icon hidden on a number nobody answers keep calling an asset rather than a liability.

09 · Recommended practice

Best practices for a number's calling configuration

  • Generate weekly_operating_hours from your staff roster so the WhatsApp schedule never drifts from who is on shift.
  • Load the year's public holidays in one update — up to 20 fit — and review them every quarter.
  • Pair after-hours callbacks with a callback queue worked first thing next morning; an ignored callback request is worse than none.
  • Watch pickup rate by hour; Meta can restrict calling on numbers that rarely answer.

10 · Questions and answers

Calling Settings FAQs

How do I enable calling on a WhatsApp Business API number?
Set calling.status to ENABLED with POST /{PHONE_NUMBER_ID}/settings. The number must be on the Cloud API with a messaging limit of at least 2,000, and your app should subscribe to the calls webhook field to receive calls.
Can I set business hours for WhatsApp calls?
Yes. call_hours takes an IANA time zone, up to two opening ranges per day and up to 20 holiday overrides. Outside those hours users cannot call, and can request a callback if callback permission is enabled.
How do I hide the call button on a WhatsApp Business API number?
Set call_icon_visibility to DISABLE_ALL. It hides the button and other external entry points and blocks unsolicited calls, while call buttons inside your own messages keep working.
Why does the call button still show after I changed the settings?
WhatsApp apps can take up to 7 days to refresh calling settings, though most update sooner. Meta enforces the new settings on its servers straight away, and opening the chat info page forces a refresh.
What does callback_permission_status do?
It lets callers give the business permission to call them back. With it enabled, a user who calls — including outside call hours — can grant callback permission, so the team can return the call later as a business-initiated call.

Put Calling Settings to work

InfiQ is an official Meta Business Partner. Start a 7-day free trial — no card needed — and see this running on your own number.