SMS

What are SMS quiet hours?

SMS quiet hours are periods when a law, carrier rule or platform policy restricts sending certain messages, often promotional texts.

A campaign released at breakfast in one time zone can reach another audience overnight. Your scheduling decision needs the recipient's relevant local time and the rules covering that message.

Who sets the restricted hours?

Laws, carrier requirements and provider policies can each restrict when you send covered texts.

The rule determines the message types, time zone and exceptions. A country-wide summary may not capture every local restriction that applies to your recipients.

For example, 47 CFR 64.1200(c)(1) restricts covered US telephone solicitations before 8 a.m. or after 9 p.m. It uses the called party's local time. Paragraph (e) extends the relevant provisions to wireless telemarketing texts.

Under that restriction, a covered text at 7 a.m. recipient time is too early even if your server reads noon. The TCPA explanation covers the rule's scope.

Do not treat every quiet-hours rule as an arrival-time guarantee. Check whether the applicable wording controls sending, initiating contact or delivery before designing the schedule.

Does Bird hold my message until sending is allowed?

Bird's SMS endpoint does not defer messages based on quiet hours.

It does not infer a recipient's time zone from their number. It also does not choose a sending window from the message's category. A request proceeds through the ordinary validation and delivery process regardless of the hour. Acceptance still does not guarantee delivery.

The scheduled_at request field is also unavailable: supplying it returns HTTP 422 SMSUnsupportedFeature. Schedule the API call in your own application. Sending the field does not put the message into a waiting queue.

How do I find a destination's rule in Bird?

You can inspect the country policy and the SMS destination page before configuring your scheduler.

Request GET /v1/country-policies/US/messaging-context?platform=sms for the US policy. Replace US with the destination's two-letter country code to check another market.

The response's platforms array contains the SMS policy, including:

  • has_quiet_hours, a boolean or null, indicating whether restrictions are recorded.
  • quiet_hours_is_regulatory, a boolean or null, distinguishing regulation from platform policy.
  • exempt_message_categories, an array naming categories excluded from quiet-hour restrictions.

A missing value does not establish that unrestricted sending is allowed. Check the destination's published guidance and governing rules when the record lacks the detail you need.

These fields describe policy. They do not activate a scheduler in Bird's SMS send endpoint.

How should my application schedule the message?

Hold covered messages until the next permitted time for that recipient. Recheck them before sending.

Record a reliable time zone in the contact profile. A phone's country code alone cannot locate someone who moved or is traveling. Choose an explicit policy for unknown time zones instead of assuming your server's clock applies.

At release, check consent again. Confirm that the message is still useful. An offer may have expired while waiting. Keep the deferred message's identity so a restarted scheduler does not send it twice.

For urgent passcodes, check the applicable category rules before applying a promotional-message window. Delaying a requested code until morning can make it unusable.

Are replies and transactional messages exempt?

Exemptions depend on the governing rule and the message's actual purpose.

Do not assume every delivery update, reminder or passcode has the same exemption everywhere. Check exempt_message_categories and the destination's underlying rule before excluding a category from your schedule.

Bird's built-in keyword confirmations follow their keyword handling without a quiet-hours scheduler. Their exemption from an SMS suppression allows an opt-out confirmation to be sent. That is a separate mechanism from a legal timing exemption. STOP keywords explains that behavior.

Adding an offer to a service message can change its purpose. SMS consent models covers the related permission decision.

In short

  1. Use the clock named by the rule.

    A recipient-local restriction applies where the recipient is, so your server's local time is insufficient.

  2. Bird does not schedule around quiet hours.

    The SMS endpoint does not defer a send based on time of day. It rejects scheduled_at.

  3. Country-policy fields describe the rule.

    Read has_quiet_hours, quiet_hours_is_regulatory and exempt_message_categories alongside the destination's published guidance.

  4. Check each message's purpose.

    A promotional campaign and a requested passcode need different treatment when the applicable rule distinguishes them.

Build on the same network.

A test API key is yours immediately. Production unlocks when you add a payment method and verify a sender.

Your next idea.
Ready to connect.