Skip to main content

General

  • How to control your data logging preference on Plivo's infrastructure

    Plivo's Messaging Platform lets you customize data storage preferences for your SMS, MMS, and WhatsApp messages.

    Outbound Messages

    The data logging preference for outbound messages is set as a parameter in the Send Message endpoint and is applied at the message level. There are four settings for adjusting your data storage preferences as follows:

    Setting option Description Log Parameter Status Destination Number Stored Message Content Stored

    Store Both Number and Message Content

    (Default)

    Stores the destination number for 90 days and message content for 7 days. Set to ‘true’ Yes, for 90 days Yes, for 7 days
    Redact Both Number and Message Content Partially redacts destination numbers. Does not store the message content. Set to ‘false’ Partially redacted Not stored
    Store Only Number Stores the destination numbers 90 days. Does not store the message content.  Set to ‘number_only’ Yes, for 90 days Not stored
    Store Only Content Stores the message content for 7 days. Partially redacts destination numbers. Set to ‘content_only’ Partially redacted Yes, for 7 days

    Illustration

    Here's an example message processed under each storage setting option, using the destination number ‘+12025550123’ and the content: 'Hello, your appointment is confirmed for tomorrow at 3 PM.'

    Setting option Processed Destination Number Processed Message Content

    Store Both Number and Message Content

    (Default)

    +12025550123

    (Stored for 90 days)

    Hello, your appointment is confirmed for tomorrow at 3 PM. 

    (Stored for 7 days)

    Redact Both Number and Message Content +12025550*** ***Text Content Redacted***
    Store Only Number

    +12025550123

    (Stored for 90 days)

    ***Text Content Redacted***
    Store Only Content +12025550***

    Hello, your appointment is confirmed for tomorrow at 3 PM. 

    (Stored for 7 days)

     

    Important Note: Redacting the content of messages prevents Plivo from debugging issues or recovering messages if there are any issues. The default value is to store both Number and Message Content, so outbound messages are not redacted unless the log request parameter is explicitly set to false.

    Default Settings for Outbound Messages

    Our standard policy ensures access to the content of outbound messages for 7 days, while access to numbers is available for 90 days. Post this stipulated time period, the message content and numbers are redacted and stored in compliance with GDPR.

    Inbound Messages

    The data logging preference for Inbound messages are set at the application level

    Setting the application-level flag log_incoming_messages to ‘false’ enables redaction. When message redaction is enabled for an application, incoming messages associated with the application are redacted. Both the message content and from_number fields are redacted, as demonstrated in the example above.

    The default value for the flag log_incoming_messages  is set to ‘true’, so inbound message content and from_numbers  are stored by default.  . 

    Important Note: If inbound messages are redacted, Plivo cannot debug or recover message content if there are any issues with the callback URL.

    Default Settings for Inbound Messages

    Our standard policy ensures access to the content of inbound messages for 7 days, while access to numbers is available for 90 days. Post this stipulated time period, the message content and numbers are redacted and stored in compliance with GDPR.

    You can read more about data logging preferences in our concepts section here.

  • Messaging Content Guidelines and Non-Compliance Fines

    Unlawful, unapproved, or illicit content

    No messaging programs are permitted to promote unlawful, unapproved, or illicit content on carrier networks. Prohibited content includes, but is not limited to:

    • Spam
    • Fraudulent or misleading messages
    • Depictions or endorsements of violence
    • Inappropriate content
    • Profanity or hate speech
    • Endorsement of illegal drugs

    All messaging programs must comply with federal and state laws and regulations across all 50 states. Content must be suitable for the intended audience. Additionally, marketing aimed at children under the age of 13 requires heightened legal and ethical obligations and may undergo further review by the carrier.

    Age gating

    Carriers reserve the right to suspend, terminate, or decline approval for any messaging program that does not promote a legal, age-appropriate, or positive customer experience. All content must comply with relevant laws and incorporate a functional age gate, especially concerning age-restricted content like Sex, Hate, Alcohol, Firearms, Tobacco (S.H.A.F.T.), or any other regulated material. The age-gate mechanism should verify the date of birth during consumer consent opt in.

    Implementation of non-compliance fees

    Effective January 1, 2024, T-Mobile will impose non-compliance fees for mobile messaging violations on all mobile channels operating on the T-Mobile Network (SMS/MMS, short code, toll-free, and 10DLC numbers).

    If you are determined to be in violation by T-Mobile, Plivo will pass the non-compliance fines on to you as follows:

    • Tier 1: $2,000 US for phishing, smishing, and social engineering
    • Tier 2: $1,000 US for illegal content 
    • Tier 3: $500 US for all other violations, including but not limited to S.H.A.F.T.

    Refer to the T-Mobile Code of Conduct for more details.

  • Messages per Second (MPS)

    Messages per second (MPS) refers to limits on your account for sending messages. By default, we assign an outbound MPS limit of 5 for SMS and 0.25 for MMS at signup time. Plivo offers MMS services in the US and Canada only and the messages are dispatched as per the allocated MPS. You can find your allocated outbound MPS by visiting the SMS Overview page of the Plivo console and looking in the Account section.

    Outbound MPS

    For outbound messaging, MPS represents a limit on the rate at which messages are initiated for a specific account. If you exceed your allotted outbound MPS, your messages will not be dropped; instead, they will be queued and dispatched once the MPS rate falls below the limit.

    You can send as many messages as required, but the rate at which messages are dispatched adheres to the allocation in your account. Here are a couple of examples.

    Scenario 1: If a user has an allocated outbound limit of 5 MPS and sends 5 API messages in a second, all 5 messages will be dispatched simultaneously.

    Scenario 2: If a user has an allocated outbound limit of 5 MPS and places 10 API messages in a second, the first 5 messages will be dispatched simultaneously, and the remaining 5 messages will be queued and executed during the next available MPS interval.

    Can I increase my allocated MPS?

    If you have a use case that requires a higher MPS limit, contact the Plivo support team. Please be advised that extra fees will be incurred for additional MPS.

  • A2P Messaging Throughput in Canada

    A2P messaging throughput in Canada depends on the type of service (SMS or MMS) and the type of number that you use.

    Throughput for long code, toll-free, and short code numbers is set at a per-number level. 

    Number Type SMS MMS
    Long code 15 per minute 15 per minute
    Toll-free 25 per second 2 per second
    Short code 10 per second Not supported

     

    You must verify your toll-free numbers to avoid running into sending limits.

     

  • A2P Messaging Throughput in the US

    Application-to-peer (A2P) messaging in the US is subject to throughput limits depending on the type of number and the type of service you use. In practice, that means you are only permitted to send a certain number of messages per minute and per day according to carrier regulations. 

    This guide breaks down everything Plivo customers need to know about A2P messaging throughput limits in the US. Use this resource to avoid going over your allocated number of messages and risking a disruption in your A2P communication. 

    A2P throughput limits by number type

    Shortcode, toll-free, and long-code numbers each have different A2P messaging throughput limits. Short code and toll-free number messaging limits are set at a per-number level as outlined in the table below. Verify your toll-free numbers to avoid running into sending limits. 

     

    Number Type SMS MMS
    Toll-free 25 per second 2 per second
    Short code 100 per second 100 per second

     

    Messaging limits for long code numbers depend on your 10DLC registration.

    These limits are imposed by the carriers. If your use case requires higher throughput for toll-free or short code numbers, contact your customer success manager or our support team.

    A2P throughput limits by message type

    A2P messaging throughput limits are also impacted by the message type (either SMS or MMS). SMS throughput is defined by the carriers and depends on your vetting score, as shown in the table below. 

    The carriers define their throughput limits on a throughput per minute (TPM) metric. Your brand’s TPM is determined by its vetting score. For example, if your brand receives a vetting score of 80, then all campaigns collectively under that brand can send up to 4,500 messages per minute towards AT&T, T-Mobile, and Verizon numbers.

     

    Use Case

    Type

    Vetting Score AT&T TPM T-Mobile* TPM Verizon TPM
    Dedicated, Mixed/Marketing 75–100 4,500 4,500 4,500
    Dedicated, Mixed/Marketing 50–74 2,400 2,400 2,400
    Dedicated, Mixed/Marketing 1–49 240 240 240
    Low-Volume 1–100 75 75 75
    Brands that skip secondary vetting 0 240 240 240

     

    *Including T-Mobile, Sprint, and Metro by T-Mobile

    Smaller carriers (<5% of US messaging volume) have not explicitly declared their throughput assignment details but we expect them to be in similar ranges for a given vetting score.

    Unlike SMS throughput, which depends on vetting score and campaign type, MMS throughput has been defined at a per-number level by the carriers. Each number linked to a campaign can send up to 50 messages per minute per carrier. For higher throughput, you can link multiple numbers to the same campaign.

    T-Mobile TPD restrictions

    T-Mobile (including Sprint) also applies a throughput per day (TPD) limit to SMS and MMS messages. Like TPM, this limit varies according to a brand’s vetting score. 

    Note that T-Mobile’s TPD limit takes into account both SMS and MMS messages; in other words, the daily limit is shared across SMS and MMS services. This means that even if you are vetted for a throughput of 4,500 TPM towards T-Mobile, any messages sent after the 200,000 limit will fail.

     

    Use Case

    Type

    Vetting Score T-Mobile TPD
    All 75–100 200,000
    All 50–74 40,000
    All 25–49 10,000
    All 1–24 2,000

     

    What if I reach the TPD limit set by T-Mobile for my brand?

    Check your T-Mobile TPD cap on the Plivo console. Once you hit the TPD limit, any additional messages sent to T-Mobile by your brand will fail for the remainder of the day. T-Mobile operates on Pacific Time (PT), and your message limit resets at the beginning of each day.

    Note that Your messages directed to AT&T, Verizon, and other carriers remain unaffected by the T-Mobile quota.

    Can I increase my throughput?

    Plivo recommends undergoing vetting during the brand registration process to unlock higher throughputs. If, even after your business has been vetted, the allocated throughput (TPM) remains insufficient, you can appeal your vetting score by collaborating with our support team. Should your appeal be rejected and your daily messaging volume toward T-Mobile exceeds the allocated TPD (throughput per day), you have the option to request a Special Business Review (SBR) from T-Mobile. The purpose of the SBR is to grant access to higher daily volumes.

    Additionally, if your campaign necessitates linking more than 49 phone numbers, T-Mobile mandates that you submit a Number Pool Request (NPR).

    T-Mobile imposes a fee for each SBR or NPR. Plivo transparently passes on carrier fees to its customers without any additional markup. Before submitting an SBR or NPR request, ensure that your brand and campaign are registered with TCR (T-Mobile Compliance Registry).

    To initiate an SBR or NPR, please reach out to your customer success manager or our support team.

    Messages per Second (MPS) Limits

    Plivo imposes Messages per Second (MPS) limits on accounts to manage the rate at which messages are dispatched. These limits are essential to understand for maintaining efficient messaging operations without exceeding allocated capacities. Below, find key details about outbound MPS limits and procedures for adjustments if necessary.

     

    Account Type SMS MPS Limit MMS MPS Limit
    Default at Sign-up 5 0.25

     

    MPS Management

    Messages exceeding the MPS limit are queued, not dropped, ensuring all your messages are eventually dispatched according to the specified rate.

    • Scenario 1: Sending 5 API messages in a second with a 5 MPS limit results in simultaneous dispatch.
    • Scenario 2: Sending 10 API messages in a second with a 5 MPS limit leads to the first 5 being dispatched immediately, with the remaining 5 queued for the next interval.

    MPS Details and Adjustments

    Find your MPS allocation under the SMS Overview page in the Plivo console, within the Account section. Adjustments to MPS settings are facilitated through support, with the assurance that exceeding limits does not result in message loss but rather in queued dispatch.

    Increasing MPS Limits

    Should your operational requirements exceed the standard MPS allocations, our support team is ready to assist in evaluating and implementing suitable adjustments. Note that additional fees will be incurred for extra MPS.

     

  • Message Expiry

    What is message expiry?

    Some text messages have a limited useful lifetime. If they’re not delivered within a certain period, they become useless. By default, Plivo expires messages that remain in the messaging queues after three hours. These messages are marked “failed” with error code 420 and are not charged to customers.

    Why might a message expire?

    When customers send a message through Plivo, it spends a short time in Plivo’s messaging queue before we forward it to a carrier. Typically this time is on the order of seconds, but it might be longer, typically due to messaging rate limits or an outage.

    Each Plivo account and sender (the source number in the API) has an upper cap of how many messages it can handle, because we need to comply with carrier-level guidelines in each country. For instance, a short code in the US supports throughput of 100 messages per second. Sending messages at a higher rate results in queuing delays.

    Another common cause of message expiry is an outage, either on Plivo’s side or on carriers’, that causes messages to be delayed.

    In such cases your users might be getting messages at a time later than you expected — sometimes too late to be useful. A one-time password (OTP) that gets delayed by 15 minutes is no good when your application expects the OTP to be entered within one minute.

    How can I customize the expiry of my messages with Plivo?

    You can set the expiry time for each message with our send message API by passing the parameter message_expiry. Its default value is 10,800 seconds (three hours); you can set the expiry time to be 5 to 10,799 seconds. 

    When Plivo dequeues each message to send it to the carrier, we evaluate the time it has spent in Plivo’s messaging queue and compare that value with the expiry interval. If the elapsed time is more than the expiry period of the message, we mark the messages as failed and don’t charge for it.

    What does Plivo recommend for message expiry values?

    If your use case revolves around authentication, set message expiry to a value of between 60 and 600 seconds, depending on the time your application allows for a value to be input. For less time-sensitive use cases, such as promotional messaging, you can keep the default value of three hours or lower it to one hour (3,600 seconds).

    Setting a too aggressive message expiry period might mean your messages don’t reach your customers, so choose your expiry period based on the upper limit of when the message will be useful.

    You can check for message expiry by filtering your message log for an error code of 420.

    Expiry.pngIf you see messages expiring frequently, you might be sending too many messages in too short a period, beyond the allowed limit for your account or number type. Your customer success manager or our support team can help you resolve the issue.

  • Bitrix24 Integration

    Sign up for a free Plivo account, and register for or log in to a Bitrix24 account. Then search for Plivo in the Bitrix24 Marketplace, and install Plivo by clicking on the Install button.

    image2.gif

    You'll then be redirected to the Plivo Application page. Enter your Plivo Auth ID, Auth Token, and sender ID details. Save the details, then click on the Test SMS button to validate the integration. 

    image1.gif

    Please note that sender ID refers to the source number. You can rent a Plivo US/Canada number if the destination number is a US/Canada number.   

    Test and validate

    Once you're done with the implementation, you can test the setup from the Test SMS page. You can trigger a test SMS message by entering a destination number and message content. 

    Note: 

    • You can trigger bulk SMS messages to multiple recipients by providing a list of destination numbers separated with the delimiter "<" (e.g. 14156667777<14157778888<14158889999).
    • Bitrix24/Plivo integration supports only outbound SMS.
  • How can I enable SMS and MMS through toll-free numbers?

    To utilize toll-free numbers for Application-to-Person (A2P) messaging in the US and Canada, completing the toll-free number verification process is imperative. This verification process serves to identify the sender, ensure adherence to best practices in toll-free messaging, and prevent unauthorized access by malicious entities.

    During the verification procedure, pertinent details about the company and reasons for employing A2P messaging on toll-free numbers must be furnished. For resellers, providing information regarding the customers on whose behalf text messages will be sent is necessary.

    Commencing January 31, 2024, messages sent from unverified Toll-Free numbers will be blocked and might incur messaging fees. 

     

    How do I submit a verification request for a toll-free number?

    You can submit a verification request using the Plivo console or Plivo's Verification API. Please refer to our quick guide on submitting a toll-free verification request via Plivo Console.

    Please note that it can take three to seven business days to complete the verification process.

     

    What if I want to change the content of a message on a verified toll-free number?

    You must submit a new verification request if you wish to change the content of a message on a verified toll-free number.  This ensures that messages with revised content will not be filtered by the network.

     

    Can I port a verified toll-free number to another carrier?

    You can obtain a toll-free number from any vendor and have it verified. If you port the number to a different vendor, you must submit a new request for verification.

  • How can I add a line break in my SMS or MMS message?

    To include line breaks in messages sent from Plivo, you may need to encode the newline escape sequence "\n" in your code. Here’s an example of how this works:

    curl -X POST https://api.plivo.com/v1/Account/<auth_id>/Message/ \
      -u <auth_id>:<auth_token> -H 'Content-Type: application/json' \
      -d '{  "src" : "14845355114", 
      "dst" : "14845355111"  , 
      "text": "Here is my first line\nHere is my second line" 
    }'

    This example sends an outbound message from the sender (484) 535-5114 (+14845355114) to the recipient at (484) 535-5111 (+14845355111), and includes the message:

    Here is my first line
    Here is my second line

    In your own applications, you can use similar syntax, updating several <variables> and strings:

    • Line 1 — your Auth ID
    • Line 2 — your Auth ID and Auth Token
    • Line 3 — a valid sender/from number
    • Line 4 — a valid destination number
    • Line 5 — the desired message text
  • What countries do you support for SMS?

    We support inbound SMS in the following countries:

    Australia
    Austria
    Belgium
    Canada
    France
    Netherlands
    Sweden
    United Kingdom
    United States

    We support outbound SMS in more than 200 countries.

  • What's the difference between promotional and transactional SMS messages?

    A promotional SMS message is sent with the objective of promoting a product or service. These are sales and marketing messages which may or may not be solicited by the recipient.

    A transactional SMS message is sent to customers with the purpose of passing on information necessary for using your product or service. For example: 

    • Messages sent for two-factor authentication or one-time passwords
    • Notifications regarding a product or service used by a customer, such as an appointment reminder
  • How to Export Message Detail Records (MDR)

    Customers can generate Message Detail Record (MDR) reports directly from the Plivo console

     To find your MDRs, log in to your account. Navigate to SMS, then Logs. Filter the logs by clicking on Filter Logs. From the drop-down list select either "Select MDRs on this page" or "Select all MDRs," then click Export.

    If the logs are of downloadable size, the file will automatically be downloaded to your device. If the logs are too large, exported logs will be emailed to your registered email address.

    Note: For outbound messages, the 'From' number will be the source number that belongs to the customer, and the 'To' number will be the destination number that belongs to the receiver. In the case of inbound messages, the 'From' number will be the number of the end user sending the message, and the 'To' number will be the number that belongs to the customer.

    The information included in your MDR export includes: 

    For a downloaded file:

    Message UUID

    From

    To    

    To Country ISO2

    Direction    

    Message Time    

    Status    

    Error Code    

    Error Reason    

    Units    

    Rate Per Unit (USD)    

    Carrier Surcharge Per Unit (USD)    

    Total Charge Per Unit (USD)    

    Total Charge (USD)

    For an emailed file:

    Message UUID

    From    

    To    

    Direction    

    Time    

    Status    

    Units    

    Amount    

    Message Rate    

    Message Charge

     

    We retain MDRs in our transactional databases for 90 days.