What is SMS Pumping: Plivo’s Quick Guide
Learn about SMS pumping, the risks it poses to businesses, how fraudsters generate fake traffic to exploit them, and how to prevent it.
In the digital age, SMS remains a cornerstone for user authentication, particularly through One-Time Passwords (OTPs). However, this reliance has made businesses vulnerable to a growing threat: SMS pumping fraud.
What is SMS pumping?
SMS pumping, also known as Artificially Inflated Traffic (AIT) or SMS toll fraud, is a fraudulent scheme where attackers exploit SMS-based services to generate large volumes of fake traffic. This is typically achieved by:
- Automated Bots: Using bots to flood online forms with fake OTP requests.
- Premium Rate Numbers: Directing these requests to phone numbers that incur higher charges, often controlled by the fraudsters or complicit telecom operators.
The perpetrators profit by receiving a share of the revenue generated from these inflated SMS charges, leaving businesses to bear the financial burden.
Real-World Impact: The Twitter Case
A notable example of SMS pumping's financial impact is Twitter (now X). In 2023, Elon Musk revealed that the platform was losing approximately $60 million annually due to SMS pumping fraud. The scheme involved over 390 telecom operators worldwide, who were either complicit or negligent in allowing the abuse of SMS services.
How does SMS pumping work?
The process typically unfolds as follows:
- Targeting Vulnerable Endpoints: Attackers identify websites or applications that send OTPs via SMS.
- Flooding with Requests: Bots submit numerous fake requests, often using disposable or premium-rate phone numbers.
- Revenue Generation: Each SMS sent to these numbers incurs a cost, which is shared with the fraudsters.
This leads to significant financial losses for businesses, as they pay for messages that serve no legitimate purpose.
Signs Your Business Might Be a Target
Be vigilant if you notice:
- Unusual Traffic Patterns: A sudden spike in OTP requests, especially from unfamiliar regions.
- Sequential Number Requests: Multiple OTP requests to consecutive phone numbers, indicating automated bot activity.
- Low Conversion Rates: A high number of OTPs sent but a low rate of successful authentications.
Preventive Measures: Safeguarding Your Business
To protect against SMS pumping fraud, consider implementing the following strategies:
- Rate Limiting: Restrict the number of OTP requests per user or IP address within a specified time frame.
- Bot Detection: Use CAPTCHA or other bot detection mechanisms to prevent automated submissions.
- Geo-Blocking: Limit OTP requests to regions where your user base is located.
- Traffic Monitoring: Regularly analyze traffic patterns to identify and mitigate suspicious activities.
Plivo’s Solutions to SMS Pumping
Recognizing the growing threat of SMS pumping, Plivo is proud to offer two innovative tools, free of charge, designed to protect your business from fraudulent SMS traffic:
- SMS Pumping Protection for OTP Traffic: This solution is specifically built to safeguard your SMS API endpoints that handle OTP traffic. By detecting and preventing fraudulent OTP requests, it helps ensure your messaging services remain both secure and cost-effective. Read more about SMS Pumping Protection here.
- Fraud Shield for Verify Applications: Designed for applications leveraging Plivo’s Verify API, Fraud Shield delivers advanced fraud detection by analyzing traffic patterns, identifying anomalies, and blocking suspicious activities. This ensures your verification processes stay protected from abuse. Read more about Fraud Shield here.
Learn more about Plivo’s tools for combating SMS pumping by requesting a trial.
.jpg)
RCS Marketing 101: Your Complete Guide
Discover how RCS marketing delivers rich, branded messages that drive engagement for your business.
SMS marketing works, but let’s be honest: it feels a bit outdated compared to modern apps.
But what if you could send rich, interactive messages with branded content, images, buttons, and carousels straight to your customers’ native messaging apps?
Rich communication services (RCS) makes that possible.
If you’re ready to explore how RCS marketing can transform your engagement strategy, this guide will walk you through everything you need to know. Let’s get started.
What is RCS marketing?
RCS marketing uses rich communication services to send interactive, branded messages through a customer’s default messaging app. It’s a modern upgrade to SMS that lets businesses share images, buttons, carousels, and more — all without needing third-party apps.
A user on Reddit summed up this perfectly:

RCS lets you send messages that are visually branded with logos and colors while remaining interactive. This turns static updates into an app-like experience inside a message.
This shift is part of a broader industry move, led by Google and backed by major mobile carriers, to upgrade messaging infrastructure and make RCS the default standard on Android devices.
As support continues to grow, businesses are adopting RCS as part of their customer engagement strategy. Platforms like Plivo make that adoption easier with a reliable, enterprise-grade gateway to deliver rich, reliable RCS campaigns at scale.
RCS vs. SMS marketing: A quick comparison
Marketers today are looking for ways to deliver more interactive and visual communication, and RCS is clearly leading the way.
While SMS still works well for simple alerts, it lacks the creativity and engagement that RCS marketing offers.
Let’s take a quick look at RCS vs. SMS marketing.
4 key benefits of RCS marketing
RCS marketing makes messaging feel more natural for both you and your customers. And since you can see what’s working and what’s not, it’s easier to pivot your strategy and get better results.
Here are its four key benefits.
1. Improved user interaction
One of the biggest advantages of RCS marketing is how seamless it makes the experience for your customers. Instead of typing out replies or clicking a link to open a website, users can just tap a button right inside the message.
Want them to book a demo, check order status, or browse products? It’s all possible with just a tap.
Fewer steps mean less effort, and that leads to more people following through. In fact, individuals spend up to 37 seconds engaging with RCS messages, which is a lot longer than most other types of mobile messaging.

That extra time and interaction can make all the difference when you’re trying to convert interest into action.
2. Consistent brand experience
RCS marketing doesn’t just tell people who you are — it shows them.
Verified business profiles help people know they’re getting messages from the real brand. Every message shows your brand’s logo, name, colors, and a checkmark. These small details make it clear that the message is coming from a genuine source.

This consistency matters because 88% of people are more likely to buy from a brand they trust.
3. In-depth analytics
With RCS marketing, you can track open rates, button clicks, and how people interact with each part of your message.
You get clear visibility into what’s working and where users are dropping off.
This makes it much easier to measure the return on investment (ROI) and fine-tune your campaigns. The more you understand how people engage, the better you can shape your messaging for results.
4. Higher conversion potential
RCS marketing makes it easier for customers to take action — whether that’s browsing products, booking a service, or making a purchase — all within the message itself.
With fewer clicks and no need to switch apps, the path to conversion feels effortless. And when it’s that easy, more people follow through.
For example, EaseMyTrip used RCS to run a post-COVID travel survey. They added quick-tap answer options and followed up with a thank-you coupon. The campaign saw a 4x higher click-through rate than email, 10x more survey completions, and a 2.7% increase in conversion rate.
5 major use cases of RCS marketing
Here are five major use cases showing how brands are using RCS marketing effectively.
1. Product promotions
RCS makes product promotions feel more like browsing a store than reading a message. Brands can send image carousels that customers can swipe through to explore new arrivals, check product details, and see what’s available without leaving their messaging app.

2. Abandoned cart reminders
The average cart abandonment rate is over 70%, which means most shoppers never make it to the finish line. RCS marketing can help bring them back by making the reminder more engaging and easier to act on.
You can send a message that shows exactly what they left behind, along with a clear button to complete the purchase. It’s visual, straightforward, and the entire experience stays within their messaging app.
3. Appointment confirmations and reminders
A PhD thesis from Manchester Metropolitan University found that forgetfulness is the most common reason people skip their appointments.
RCS makes it easier for both businesses and customers to stay on the same page. You can send a message that shows the appointment details along with a simple calendar view. Add buttons to confirm, reschedule, or cancel — all within the chat.

4. Customer surveys and feedback
Getting feedback is important, but most customers lack the time or patience to complete lengthy forms. RCS marketing makes it easier by allowing brands to ask short, targeted questions and receive quick responses.
Plus, the rich features of RCS let you include images, ratings, or multiple-choice options, making feedback feel more like a conversation.
5. Customer support follow-ups
After a support request is resolved, following up shows customers you care and helps close the loop on their experience. But if the follow-up message gets buried in an email inbox or goes unnoticed, that opportunity to connect is lost.
With RCS marketing, you can send a quick message to check if everything’s working fine. You can include helpful buttons like “Change Password,” “Manage Account,” or “Talk to Support.”

RCS marketing myths and realities
Despite RCS marketing’s growing adoption and proven results, some common misconceptions still hold businesses back from trying it. Let’s look at a few of the biggest myths and what’s actually true.
Myth 1: RCS marketing is too expensive
At first glance, RCS business messaging can seem like a pricey upgrade. Rich visuals, tap-to-action buttons, and branded layouts look premium, so it’s easy to assume they come with a hefty cost.
But cost alone doesn’t tell the full story.
What you get in return matters more. RCS drives significantly stronger engagement with higher click-through rates, increased interactions, and better overall outcomes.
Take Club Comex, the loyalty program of North American paint brand Comex. They sent two rich and interactive RCS campaigns to their members and saw a 10x higher click-through rate, which helped increase revenue by 115%.
That’s the value side of the equation. Better targeting and richer content mean more people click, engage, and convert.
Myth 2: RCS marketing doesn’t reach enough users to be worth it
This concern made sense in the early days of RCS, when adoption was still catching up. But the landscape looks very different now.
In June 2024, the 12-month growth of RCS users reached 36.3%, showing faster uptake than other messaging channels. More Android devices support RCS by default, and it’s being rolled out across more networks globally. Even Apple has announced support, which means RCS is on track to reach a massive number of smartphone users worldwide.
With that kind of growth and widespread support, the hesitation around RCS is starting to fade. Brands can confidently invest in RCS marketing knowing it will connect with more customers than ever before.
Myth 3: RCS gets treated like spam and ends up ignored just like emails
Unlike email, RCS messages appear directly in the user’s primary messaging app alongside personal conversations. They include rich media and interactive elements, making them more engaging and less likely to be ignored.
This creates a more natural, conversational experience that drives higher open and response rates than traditional marketing channels.
Why choose Plivo for your RCS marketing needs
With RCS, you can turn simple messages into rich, branded conversations that feel more like chatting than broadcasting.
Plivo gives you the tools to make that shift without the hassle. From verified messaging to smart automation, everything works together to help you connect better and respond faster.
When combined with AI Agents and a unified customer data platform, RCS becomes more than just messaging. You can deliver personalized experiences at scale, automate everyday interactions, and keep conversations flowing without lifting a finger.
Here’s what you get with Plivo’s RCS API:
- Real-time personalization: AI Agents tailor conversations using customer profiles and behavior triggers to improve engagement and conversions.
- Multi-channel fallback: If RCS isn’t supported, messages automatically switch to SMS to ensure delivery and maintain consistent communication.
- Conversational automation: AI Agents handle FAQs, process orders, schedule deliveries, and route complex queries within RCS.
- All-in-one messaging platform: Manage RCS, SMS, WhatsApp, Voice, and more from a single dashboard.
- Reliable performance: 99.99% uptime and global infrastructure keep your campaigns running smoothly.
With Plivo’s no-code tools, you can quickly launch AI-powered RCS messaging across channels and deliver a consistent customer experience from day one.
See how you can launch your first RCS marketing campaign with Plivo by requesting a demo today!

WhatsApp Agent Setup: How to Launch AI-Powered Conversations at Scale
Learn how WhatsApp agent setup works using Plivo to launch AI-powered, no-code agents that handle support, sales, and engagement at scale.
Your customers are on WhatsApp but are your agents?
If you’re still relying on manual replies, scripted chatbots, or email follow-ups, you’re leaving response time and revenue on the table.
The smarter path? AI-powered WhatsApp agents. They’re full-service, no-code agents that can resolve issues, qualify leads, and send personalized offers 24/7.
In this guide, we’ll walk you through WhatsApp agent setup using Plivo and understand how these agents help you automate conversations that convert.
What is a WhatsApp AI agent?
A WhatsApp AI agent is an automation designed to operate over the WhatsApp Business API. Unlike scripted bots, agents are built to understand intent, pull in context from your internal systems, and complete business tasks like answering account-specific questions or initiating transactions.
Plivo’s WhatsApp AI agents can be trained to use your brand voice, integrated with your CRM or helpdesk, and customized to handle specific use cases, such as subscription renewals, cart recovery, refund processing, or customer onboarding.
They are accessible through a no-code interface and support a multilingual, omnichannel customer experience across WhatsApp, SMS, RCS, and voice.
What you need before setting up your agent
To go live with a WhatsApp agent, you need:
- A verified Meta Business Account
- An active WhatsApp Business Account (WABA) tied to a phone number
- Pre-approved message templates for outbound communication
- WhatsApp Business API access through a business solution provider (BSP) (Plivo offers this natively)
- A platform to design, train, and manage agents (Plivo Agent Studio)
Also read: How to Create WhatsApp Message Templates: A Complete Guide
Optional but recommended integrations:
- CRM (like Salesforce, HubSpot, or Zoho)
- Helpdesk (like Zendesk or Freshdesk)
- E-commerce or billing tools (Shopify, Stripe, etc.)
Step-by-step: How to set up a WhatsApp agent with Plivo
Follow this step-by-step guide for a smooth WhatsApp agent setup with Plivo.
Step #1: Choose your primary use case and define agent scope
Don’t build a generic bot. Start with why you’re automating. This could be handling support queries, sending order updates, re-engaging inactive customers, or managing subscription renewals.

Plivo provides a library of prebuilt AI agents for common use cases like cart recovery, lead qualification, appointment reminders, and product recommendations. You can choose to use one as-is or customize it to fit your business process. Each agent is compatible with WhatsApp and designed to operate across channels as needed.
Step #2: Build the agent using Plivo’s no-code platform
Since your API access is already set up, you can begin building your agent in Plivo’s Agent Studio. This is a visual, drag-and-drop builder where you create conversation flows using blocks that represent actions, responses, conditions, and triggers.

You can structure your flow to respond to specific keywords, match customer intent, route inquiries to different departments, or escalate to a live agent when needed. Each step in the journey can include media-rich responses like buttons, product carousels, quick replies, and file attachments.
Beyond logic design, you can also configure fallback rules for when the agent is unsure, and add human handoff conditions to ensure escalations happen smoothly with full context transferred to the live agent.

This step allows you to fully customize the agent’s tone, workflow, and logic to reflect how your brand communicates.4
Step #3: Train your agent with AI
Plivo supports integration with internal systems like your CRM, order management platform, inventory tools, or helpdesk. This means your agent can access real-time customer data, past orders, preferences, and policies to deliver personalized responses.
You can also connect your knowledge base, including FAQs, SOPs, product documentation, or policy articles. These resources train the agent to respond accurately and contextually, without needing scripted answers.

For natural language understanding, Plivo gives you the flexibility to choose the AI model that powers your agent.

Step #4: Test, launch, and monitor your agent
Once your flow is built and trained, run controlled tests:
- Check for flow accuracy and intent matching
- Review how it handles incomplete or unclear inputs
- Test human handoff and see if the agent transfers the full context

Plivo’s real-time dashboard lets you:
- Monitor delivery, engagement, and satisfaction metrics
- Track where users drop off in conversations
- Identify areas to improve agent logic or content
- Compare campaign and agent performance across channels
After launch, your agent keeps learning. As more customers interact, you’ll gather insight to improve how it responds or what paths it offers.
Plivo is purpose-built for WhatsApp AI agent deployment
Plivo’s platform is designed to help you move from idea to live AI-powered engagement without requiring engineering support or external consultants. When you use Plivo for WhatsApp agent setup, you get:
- Access to prebuilt agents for sales, support, and engagement
- Intuitive no-code builder (Agent Studio) that puts you in control
- Deep integration with your business systems for real-time, contextual replies
- Support for the best LLMs on the market, so your agent is trained with intelligence
- Built-in compliance with WhatsApp’s policies and global data laws
- Unified interface to manage messaging across WhatsApp, SMS, RCS, and Voice
- Enterprise-grade infrastructure with 99.99% uptime and expert onboarding support
Automate outcomes with WhatsApp agent setup in Plivo
Smart WhatsApp automation starts with smart setup. With Plivo's no-code platform, you can automate customer conversations, boost sales, and scale support — all without a development team.
Plivo offers the tools to build agents that reflect your brand, the infrastructure to scale securely, and the intelligence to adapt with your customer needs.
Whether you're trying to cut support wait times, recover abandoned carts, or drive upsells through personalized outreach, a well-built WhatsApp agent can make it happen, and Plivo makes it achievable.
Ready to get started? Request a free trial today!

The Definitive Guide to Automating WhatsApp for Business
Learn how WhatsApp automation can simplify customer communication and scale operations. Know about its key benefits and use cases. Get started today.
Remember when WhatsApp was just a simple messaging app? Launched in 2009, it was a tool for friends and family to stay in touch.
Fast-forward to today, and WhatsApp has become a global powerhouse with over 3 billion monthly active users. Businesses worldwide leverage WhatsApp to connect with customers, share updates, and provide support.
Many businesses struggle to keep up with the growing volume of customer messages on WhatsApp. Manually handling inquiries, sending updates, or following up on leads can quickly become overwhelming and inefficient.
This is where WhatsApp automation steps in.
By automating repetitive messaging tasks, businesses can reduce manual workload, respond faster, and deliver more personalized, timely communication.
In this article, we'll explore what WhatsApp automation is, why it's essential for modern businesses, and how you can implement it to improve customer engagement and operational workflows.
What is WhatsApp automation?
WhatsApp automation is the use of technology to automatically send and manage messages on the platform, especially for business and customer engagement purposes.
It doesn’t require human intervention for every interaction. As a result, businesses can handle customer inquiries, deliver updates, and engage with prospects efficiently.

With WhatsApp business automation, you can:
- Auto-respond to FAQs and reduce ticket volume.
- Reduce customer support load with proactive messaging.
- Route complex support queries to live agents only when needed.
- Send order confirmations and delivery updates automatically.
- Share return instructions based on customer actions.
- Run re-engagement campaigns with smart timing.
- Integrate with Shopify, Magento, and more for real-time updates.
- Trigger workflows from CRMs or e-commerce platforms.
- Keep messaging compliant with auto opt-outs and logs.
Here’s a breakdown of the three main types of automated messaging on WhatsApp:
Key benefits of WhatsApp automation
By automating routine tasks, WhatsApp can help your business stay responsive and consistent across customer touchpoints. Here’s how it can benefit your business:
Reduce manual workloads and response times
When you automate WhatsApp interactions, every department, from marketing to customer service, runs more smoothly.
By automating routine tasks like order updates, FAQs, and customer inquiries, businesses can significantly reduce the manual effort required.
This means your team spends less time on repetitive tasks and more time focusing on high-priority interactions.
Increases the scalability of customer interactions
As your business grows, the number of customer interactions increases. Automation allows you to scale communication efforts without hiring additional staff or losing the personal touch.
Whether you're dealing with 50 or 5,000 customers, automated responses ensure that each inquiry is handled swiftly and consistently.
Enhances customer experience through personalization
Automated WhatsApp messages can be personalized based on customer data, creating a more relevant and tailored experience.
From addressing customers by name to offering product recommendations based on past purchases, personalization makes customers feel valued. This leads to higher engagement rates and improved loyalty.
Cost-effectiveness compared to manual processes
WhatsApp automation eliminates the need for large customer support teams and reduces the time spent on repetitive tasks.
This saves on operational costs and also leads to a more efficient allocation of resources.
5 popular use cases of WhatsApp automation across industries
Businesses everywhere are finding new ways to use WhatsApp automation. Here are five popular examples:
1. Customer support
Automating common FAQs and routine inquiries on WhatsApp helps customers get instant answers anytime. This reduces the number of tickets support teams have to handle, letting them focus on more complex problems.
2. E-commerce operations
Order confirmations, shipping updates, and delivery notifications keep customers informed every step of the way. Automating returns and collecting feedback via WhatsApp speeds up these processes and improves customer satisfaction.
3.Marketing and lead nurturing
Automated lead follow-ups ensure timely, consistent engagement with prospects, boosting conversion chances. Also, you can use personalized re-engagement campaigns to help bring back inactive customers with offers or updates tailored to their interests.
4.Event management and invitations
Automated WhatsApp invites, updates, and follow-ups keep your audience informed and engaged, boosting the attendance rate. This helps you stay connected and make every event a success.
5.Appointment scheduling and reminders
Timely reminders help customers remember appointments, reducing cancellations and improving the overall experience. Automation makes scheduling easier and more efficient for both businesses and customers.
Step-by-step guide to implement WhatsApp automation for your business
To successfully implement WhatsApp automation, follow these key steps that cover planning, setup, and optimization.
Step 1: Define your use cases and goals
Start by identifying which business functions, such as order updates, customer support, or lead follow-ups, will benefit most from automation.
Set clear, measurable goals like:
- Reducing response times
- Lowering manual workload
- Boosting customer engagement
This will guide your automation strategy and help you track success.
Also, ensure compliance from the start. WhatsApp requires businesses to obtain explicit customer opt-in before sending messages. To stay compliant:
- Use clear, transparent language when requesting consent.
- Collect opt-ins through channels like website forms, checkout flows, or click-to-chat ads.
- Log and manage consent within your systems for audit readiness.
Data privacy and compliance are essential for building trust and maintaining long-term customer relationships.
Step 2: Choose the right WhatsApp business API provider
Select a platform that fits your specific needs. Look for features like:
- Robust CRM integrations
- Audience segmentation
- Flexible automation workflows
These capabilities simplify your communication and scale your efforts efficiently.
Make segmentation a priority, use tagging and grouping strategies to target the right customers with the right messages.
With smart tagging and grouping, you can:
- Deliver personalized messages
- Engage the right people at the right time
- Improve conversion and retention
Step 3: Set up your WhatsApp business account
You must set up a verified WhatsApp Business account to use WhatsApp for automated messaging. This includes:
- Registering your business name and details.
- Verifying a dedicated phone number.
- Getting approval from Meta to use the WhatsApp Business API.
This ensures that your business is recognized as a legitimate sender.
Your WhatsApp API provider will typically assist with onboarding, including submitting documentation and setting up the technical aspects.
Some platforms also offer pre-built tools to help you manage mobile number registration, display name approval, and message template submissions.
Step 4: Create and submit message templates
Start by designing message templates for everyday customer interactions, such as:
- Promotional messages (e.g., limited-time offers)
- Transactional updates (e.g., order confirmations, delivery alerts)
- Support messages (e.g., ticket updates or issue resolution)
Each template must follow WhatsApp’s formatting and content policies.
Once your templates are ready, submit them through your WhatsApp API provider for Meta’s approval. Only approved templates can be used for proactive messaging.
Step 5: Build automation workflows
Now that your account and templates are ready, it’s time to connect WhatsApp with the rest of your tech stack. Integrate with:
- CRM systems (to access customer data)
- Support tools (for query management)
- E-commerce platforms (to track orders and actions)
Use event-based triggers, like a new order, a cart abandonment, or a support ticket, to automatically send relevant messages.
Additionally, plan for human fallback. Automation can’t handle everything. Build intelligent workflows that escalate to a human agent when:
- A customer requests help
- The query is too complex
- Sentiment detection flags a negative experience
This keeps your support experience smooth, responsive, and frustration-free.
Step 6: Test, launch, and optimize
Start with a pilot campaign to ensure everything runs smoothly.
Track key metrics:
- Response time
- Open rate
- Conversion rate
Use these insights to refine your workflows, improve message content, and adjust targeting.
Best practices for WhatsApp automation
Following some proven best practices is essential to get the most out of WhatsApp automation. Here’s what you need to know:
Tips for optimizing messaging frequency and timing
To keep your audience interested, it's vital to message thoughtfully and strategically. Here are some quick tips:
- Avoid over-messaging to prevent unsubscribes.
- Use analytics to identify when your audience is most active and receptive.
- Space out messages to keep it natural.
- Monitor response rates and adjust based on customer behavior and feedback.
Leverage data analytics for campaign performance
By tracking metrics such as open rates, click-through rates, and response times, you gain valuable insights into what works and what doesn’t. Use this data to refine your messaging, target relevant audience segments, and optimize timing.
Regularly reviewing analytics helps you make informed decisions that boost engagement and drive better results over time.
Compliance and customer privacy protection
To protect your customers and stay compliant, focus on these key areas:
Enhance customer communication with Plivo’s AI WhatsApp automation
The growing demand for instant, tailored communication on WhatsApp puts pressure on businesses to respond quickly. Customers expect fast, personalized replies around the clock, and doing this manually often leads to delays, inconsistent service, and missed opportunities.
Finding a way to scale these conversations efficiently is critical for businesses looking to stay competitive.
That’s where Plivo comes in, an industry-leading omnichannel platform that automates and personalizes WhatsApp conversations, delivering timely responses at scale.
By leveraging Plivo’s WhatsApp AI agents, businesses can manage a wide range of customer communication tasks, from pre-sales inquiries to post-purchase support, without increasing their team size.
Here’s how Plivo can enhance your customer communication:
- Brand-aligned AI agents: You can customize the AI agents to reflect your brand’s voice, tone, and style. This makes all customer interactions align with your brand’s identity and deliver a personalized experience.
- AI customer service agent: Plivo’s AI agents work around the clock, ensuring your customers receive timely responses, regardless of the time zone. These agents process orders, resolve support issues, and answer questions.

- Natural, human-like conversations: With AI agents, you can engage in context-aware conversations, mimicking human interactions. They remember customer preferences and history to provide relevant responses like a human agent would.
- Simple, volume-based pricing: Plivo charges a flat fee per conversation rather than per message, making costs predictable and scalable. Volume discounts are available to lower your total spend as your messaging needs grow.

- Built-in compliance: Plivo ensures compliance with GDPR, HIPAA, PCI DSS, ISO 27001, and SOC 2 standards.
- Guaranteed message delivery with fallback options: The platform delivers billions of messages annually and uses SMS and voice fallback channels to ensure your customers always receive important communications.
- 24/7 availability: Plivo's AI agents provide instant, 24/7 assistance, answering questions, processing orders, and resolving customer issues.
- Multilingual support: With support for 70+ languages, Plivo’s AI agents can engage with customers globally and offer a multilingual customer service experience.
- E-commerce platform integrations: Integrate seamlessly with popular e-commerce platforms like Shopify, BigCommerce, WooCommerce, and Magento to deliver a unified customer experience across all touchpoints.
With Plivo’s vast carrier network spanning over 220 countries, businesses can significantly cut SMS costs by up to 70% while achieving threefold returns on investment.
Many companies using Plivo CX have experienced remarkable results, earning an outstanding $71 for every dollar invested in their SMS marketing efforts.
Book a free demo today and see how Plivo’s AI WhatsApp agents can change your customer communication strategy.
How to Evaluate an SMS API Provider
Consider these criteria when you evaluate which cloud communications platform should be your SMS API provider.
How to evaluate an SMS API provider
Virtually every business can enhance their relationships with their customers by taking advantage of SMS text messaging to stay in touch. Consider some possible use cases:
- Order status updates
- Delivery and shipping notifications
- Financial transaction alerts
- Appointment reminders
- Two-factor authentication and password resets
What about your business? Bet you’ve already thought of a way to use text messaging, and you want to consider how to start a pilot project — or maybe you already use an SMS API, but you want to add a second one for fault tolerance. Now you need to decide what SMS API provider to use.
The simple answer is: use Plivo. But if you’re one of those troublesome people who won’t settle for simple answers and require evidence before making a decision, we’ve put together a guide to choosing an SMS API provider. It walks you through the evaluation process, from figuring out how you want to use text messaging to highlighting the features you should look for. This post gives you a taste of the contents, but you should download the guide for the full story.
What to look for
Focus your evaluation on a few broad factors about each platform: features, geographic reach, and pricing.
By features, we’re talking about support for Multimedia Messaging Service (MMS), long code numbers (including 10DLC), short codes, and toll-free numbers, as well as things like rate limiting and message queuing, support for GSM and Unicode characters and smart encoding, and long message concatenation.
Geographic reach is an obvious factor. Your platform should be able to send messages to every country and region where you might have customers — and where you might have them in the future. Just to be on the safe side, look for a partner with a global presence, including relationships with in-country Tier 1 carriers with direct interconnectivity to local telecom network operators.
And while pricing isn’t necessarily your primary purchase criterion, it’s something everyone has to deal with. Look for transparent pricing, published on the vendor’s website. If you compare other platforms’ rates with Plivo’s prices, you’ll find we’re generally lower across the board.
The best SMS API
Features, reach, and pricing are important factors to consider. Check out our guide for details on those factors and more, then compare SMS API platforms. We think you’ll come to the conclusion that Plivo’s your best choice. Get started today for free.
Take A Multivendor Approach To 2FA
Why and how you should take a multivendor approach to two-factor authentication. Use a second vendor to add fault tolerance to your critical 2FA process.
Authentication is a critical business function because it allows organizations to keep their systems safe. Only authorized users should be able to access protected resources, including data and computing services.
Since computing systems first came online they’ve employed user IDs and passwords to authenticate users, but with today’s powerful systems in the hands of hackers, passwords are easier than ever to crack, potentially leaving systems vulnerable to unauthorized users.
To increase security, organizations often turn to two-factor authentication (2FA), a process that requires users to provide a second form of authorization. That other factor might be something users have (such as a hardware token like a Titan Security Key or Yubikey), something that’s part of them (like a fingerprint, voiceprint, or facial image), or something they know (like the answer to a security question). Many organizations use SMS to get that second factor: Users enter a password and the authentication process sends them a code via SMS that they have to enter in order to get access. This ensures that the person logging in is the person holding the authorized user’s mobile device.
To implement 2FA, businesses integrate their applications with a communications platform — nowadays generally a cloud communications platform, also known as communications platform as a service (CPaaS). These systems provide APIs that developers can add to their applications to integrate sending and receiving text messages for 2FA and many other use cases.
But SMS platforms aren’t bulletproof. Sometimes a CPaaS provider’s messages have trouble getting through to the users that depend on them — and when you’re talking about a critical service like authentication, dropped and delayed text messages are critical failures.
You can make your SMS-based 2FA process more fault-tolerant by taking advantage of a second 2FA provider. That way, if one service fails to deliver, you can quickly switch to the second, which is unlikely to be subject to the same faults. (Disclaimer: Availability of second provider not guaranteed in the event of a global thermonuclear war.)
If you already use a cloud communications platform to power your 2FA process, we suggest you add Plivo as a secondary provider. Plivo offers a 99.99% service-level agreement (SLA) — and earned an overall satisfaction score of 92 on G2’s latest cloud communications report, making us the highest-rated cloud communication platforms on the market.
See for yourself how easy it is to add Plivo to your portfolio of communications tools. Sign up for free today.

How to Send and Receive SMS in Node.js and Express.js Using Plivo's SMS API
Get started with Plivo’ SMS API, Node.js, and Express.js to send and receive SMS text messages.
Your company has settled on Plivo to handle its voice and messaging communications, and now it’s your job to start integrating Plivo into your company’s applications. Don’t worry — Plivo has a Node.js SDK to help you out. You can use it write Node.js applications that send and receive SMS messages.
In this guide, we’ll outline the steps for getting set up to use Node.js and Express.js in Plivo’s SMS API. Start by setting up your Node.js environment and connecting your Plivo account. We’ve also got code snippets for you to leverage to send and receive messaging through our SMS API. By the end, you'll be ready to leverage SMS communication for notifications, alerts, or even two-way interactions in Node.js.
Prerequisites
To send SMS with Node.js, you need the following elements in place:
- A Plivo account - If you don't have one already, sign up with your work email address.
- Install Node
- Install Plivo’s Node SDK
- Install the Express framework.
If this is your first time using Plivo APIs, follow our instructions to set up a Node.js development environment. Once you’re completed these steps, carry on to learn how to send SMS in Node.js.
{{cta-style-1}}
Send SMS in Node.js
Create a file called SendSMS.js and paste this code into it.
Replace the auth placeholders with actual values from the Plivo console. Replace the phone number placeholders with actual phone numbers in E.164 format (for example, +12025551234). In countries other than the US and Canada you can use a sender ID for the message source. You must have a Plivo phone number to send messages to the US or Canada; you can rent a Plivo number from Phone Numbers >Buy Numbers on the Plivo console or via the Numbers API. Save the file and run it.
Note: If you’re using a Plivo Trial account, you can send messages only to phone numbers that have been verified with Plivo. You can verify (sandbox) a number by going to the console’s Phone Numbers > Sandbox Numbers page.
Receive SMS in Node.js
Of course, sending messages is only half of the equation. Plivo supports receiving SMS text messages in many countries (see our SMS API coverage page and click on the countries you’re interested in). When someone sends an SMS message to a Plivo phone number, you can receive it on your server by setting a Message URL in your Plivo application. Plivo will send the message along with other parameters to your Message URL.
Create a file called receive_sms.js (or whatever name you like) and paste into it this code.
Save the file and run it.
You should then be able to see your basic server app in action on http://localhost:3000/receive_sms/.
That’s fine for testing, but it’s not much good if you can’t connect to the internet to receive incoming messages and handle callbacks. For that, we recommend using ngrok, which exposes local servers behind NATs and firewalls to the public internet over secure tunnels. Install it and run ngrok on the command line, specifying the port that hosts the application on which you want to receive messages.
Ngrok will display a forwarding link that you can use as a webhook to access your local server using the public network.

Now you can create an application to receive SMS messages (follow our Quickstart guide for details).
Why use Node.js to send and receive SMS
Node.js's event-driven, non-blocking architecture is well-suited for handling SMS communications. It excels at handling multiple concurrent SMS requests without blocking the application and can efficiently manage high volumes of SMS traffic.
Applications that use Node.js for backend benefit from all the pros of full-stack JavaScript development, including better efficiency, code sharing and reusability, speed, and productivity. Node.js is well-suited for applications requiring real-time SMS interactions, such as two-factor authentication or live chat.
Get started with Plivo to send SMS in Node.js
That’s all there is to sending and receiving SMS messages using Plivo’s Node.js SDK.
Don’t use Node.js? Don’t worry — we have SDKs for Java, Python, PHP, Ruby, .NET Core, .NET Framework, and Go.
Haven’t tried Plivo yet? Getting started is easy and only takes 5 minutes. Sign up today.
Two CPaaS Platforms Are Better than One
You can use a second cloud communications platform to ensure uptime, balance traffic loads, and reduce your total cost of ownership (TCO).
The COVID-19 pandemic forced businesses to move many customer interactions into remote, mobile, and virtual channels — a process that was already underway, but that has accelerated in the last year. Many businesses now use SMS messaging, which gives companies a direct, automated, scalable, and cost-effective way to reach mobile customers in real time.
Businesses frequently automate voice interactions along with SMS. In addition to providing more personalized service than text messaging, voice can act as a backup communications channel, providing services if anything goes wrong with SMS.
That notion of having a backup is a good one. In addition to having a backup channel, you should also have a backup communication platform — a second SMS and voice provider, to ensure that your mission-critical communications channels stay up and running.
Network outages happen, and when they do, you want to be sure that your customers can still receive messages and critical information, and can access their accounts using two-factor authentication and one-time passwords — a common use case for SMS.
Multicloud CPaaS
Many organizations add fault tolerance to their IaaS and PaaS platforms by using multiple providers. In a report based on the 451 Research Voice of the Enterprise (VOTE) survey, 451 Senior Analyst Raul Castanon says, “As mainstream enterprise adoption continues to grow, we expect CPaaS will mirror key trends driving the evolution of the larger IaaS/PaaS market.” In a joint webinar with Plivo he reinforced that notion, saying, “CPaaS remains a fragmented space, highlighting the complexities in delivering real-time communications. Multicloud CPaaS can address challenges related to resiliency, scalability, coverage, and regulation.”
A multivendor approach reduces the risk of you going silent on your customers, but it has other benefits as well. Chief among them is cost savings. A multivendor approach lets you lower your total cost of ownership by using the provider that has the best quality and price in specific countries, regions, and networks.
What to look for
As you consider adding a second CPaaS platform to your infrastructure, you should consider two key factors: availability and support.
Availability and uptime
Any network platform can encounter unplanned outages. When that happens with a cloud communications platform, users can fail to receive important information such as account alerts, delivery notifications, and appointment reminders. Worse, they can experience issues with sign-in workflows. If someone doesn’t retrieve a text message for 2FA, they can’t access the resources they need on your systems.
Plivo promises 99.99% uptime. In practice we generally do better than that — check our status page for proof. That enables us to deliver more than a billion transactions every month. Any CPaaS provider should offer you service-level agreements (SLA) with similar uptime guarantees. If you have both a primary and a secondary CPaaS provider with those kinds of SLAs, chances are you’ll never lose touch with your customers.
Customer support
When downtime happens, as it inevitably does, you need to be able to get in touch with your provider to diagnose the issue and get it solved, whether it stems from your application, the CPaaS platform, or a carrier network. You want a partner that claims responsibility for getting you back in service, regardless of where the issue arose. You want to work with an organization that understands the unique telco laws and regulations in each country and works with carrier networks.
That’s a difficult task for some CPaaS providers that lack direct connections with carriers. Problem resolution takes a lot longer when your provider lacks visibility into the network. Other providers have limited support hours, or their support staff is unreachable unless you’re a top-tier enterprise customer.
Plivo is known for being one of the few providers that can offer technical help as needed on a per-customer basis. Customers can talk with solution engineers for guidance on complex integrations for fast issue resolution.
Plivo works directly with in-country Tier 1 carriers with direct interconnectivity to local telecom network operators in more than 100 countries. We have network engineers standing by 24/7 in network operations centers (NOC) in Austin, Texas, and Bengaluru, India, who can diagnose and solve problems quickly and get you back online.
These relationships enable our customers to make calls and send SMS messages to every country in the world without routing dilution or route blending. We offer the best possible connections worldwide, so you aren’t paying for undelivered messages.
Second to none
If you’re considering Plivo as a second CPaaS, we make it easy for you to get started. We have solution templates for several use cases, clear getting-started documentation, and flexible pay-as-you-go pricing for both SMS and Voice. (You’ll notice our rates are lower than those of most of our competitors.)
Businesses need to stay close to customers, prospects, and partners. Adding automated SMS and voice communications to their portfolio through a cloud communications platform lets businesses deliver the kinds of experiences their customers expect — and having a second platform to fall back on and spread the load lets them keep delivering even when things go wrong.
See for yourself — sign up for a free trial today.

How to Make and Receive Phone Calls Using Plivo’s Voice API and PHP
How to make and receive outgoing and incoming voice calls using PHP with the Plivo Voice API.
Your company has settled on Plivo to handle its voice and messaging communications, and now it’s your job to start integrating Plivo into your company’s applications. Don’t worry — Plivo has an SDK to help you out. Let’s see how to make outbound calls and handle incoming calls through Plivo in a PHP application.
Install the Plivo SDK
We’ll presume you already have PHP and Composer installed. Change to the directory into which you want to install the Plivo PHP release and run
or you can download the source from our GitHub repository, then run
Find your Auth ID and Auth Token
You have to have proper credentials before you can use the Plivo API. We provide an Auth ID and Auth Token in the Account section at the top of the overview page of the Plivo console.

Choose a phone number
You need an voice-enabled Plivo phone number if you want to receive incoming calls. Check the Numbers screen of your Plivo console to see what numbers you have available. You can also rent numbers from this screen.

Use PHLO to set up an outbound call
Now you can turn to PHLO, Plivo’s visual workflow design studio, to set up the workflow for an outbound call. Click on the PHLO icon on the left-side navigation bar, then on Create New PHLO. In the window that pops up, click Build My Own.
Let’s start with a very simple workflow. From the list of components on the left side, drag and drop the Initiate Call component onto the canvas, then connect the Start node to the Initiate Call node using the API Request trigger state.
Now you can add configuration information for the call in the right pane. Valid phone numbers begin with a plus sign and a country code. Add a caller ID number in the From field and a destination number in the To field, then click Validate to save the configuration.
PHLO lets you use variables for From and To values, but we’re keeping it simple for this example.
Now drag the Play Audio component onto the canvas. Connect the Initiate Call node to Play Audio using the Answered trigger state. In the Configuration panel, enter the text you want to play for the call recipient, then click Validate.

That’s all we’re going to do for now — we told you it was simple. Give the PHLO a name by clicking on the pencil icon in the upper left, then click the Save button in the upper right.
Run the PHLO to make a call
Now you can trigger the PHLO and test it out. Copy the PHLO ID from the end of the URL of the workflow you just created. You’re also going to need your Auth ID and Auth Token. Create a PHP source code file — let’s call it TriggerPhlo.php — and paste this code into it:
Substitute actual values for <auth_id>, <auth_token>, and <PHLO_ID>. Save the file and run it with the command
Boom — you’ve made an outbound call.
Set up inbound calls
Of course outbound calls are only half of the equation. Plivo supports inbound calls as well. To see how, let’s create another PHLO and again specify Build My Own. This time, drag the Play Audio component onto the canvas and connect the Start node to it using the Incoming Call trigger state. In the Configuration panel, enter some text to speak to the caller when the call is answered, then click Validate to save the configuration. Give this PHLO a name, then click Save.
Before you can receive a call using this PHLO, you have to assign it to a Plivo number. Go back to the Plivo console and click on Phone Numbers on the left nav bar. From the list of Your Numbers, click on the number you want to use. On the next screen, from the Application Type dropdown, choose PHLO. From the PHLO Name dropdown, choose the PHLO you just created. Then click Update Number at the bottom of the screen.

Guess what? You’re done! You don’t have to run a program for this PHLO to work. Just call the Plivo number you specified and you should hear the message you configured read by Plivo’s text-to-speech processor.
Conclusion
And that’s all there is to sending and receiving voice calls using Plivo’s PHP SDK. Don’t use PHP? Don’t worry — we have SDKs for Ruby, Java, Node.js, Python, .NET Core, .NET Framework, and Go.
Haven’t tried Plivo yet? Getting started takes only five minutes. Sign up today.
Lessons in CPaaS Leadership: Reliability Rules
CPaaS Lessons: How Plivo builds reliability into its cloud communication platform.
Successful businesses maintain reliable communication with their customers. That doesn’t necessarily mean more communication, as anyone who’s opted out of too-frequent marketing emails would agree. It means that important information from the company gets to its customers, and vice versa.
To foster reliable communications, businesses need a reliable communications platform. That’s why Plivo puts so much effort into maintaining high deliverability and reliability for its communications platform as a service (CPaaS).
It starts with our internal infrastructure. Plivo is hosted on a cloud platform with high availability built in. We guarantee 99.99% uptime.
Messages and network traffic then go out over redundant links to the carriers in our network. We connect directly with Tier 1 telecom network operators in more than 100 countries, and have direct connectivity with carriers in more than 190 countries overall. Having those direct relationships means fewer interconnections and less chance of packets being dropped or misrouted.
We have seven points of presence (PoP) strategically located near high-traffic internet exchange points (IXP) on five continents, which helps us deliver sub-50-millisecond connections to carriers to give customers the best voice call experience. We staff geographically distributed network operations centers (NOC) in Austin, Texas, and Bangalore, India, to deliver round-the-clock support from trained engineers. All of which is to say that Plivo builds in high performance along with reliability.
Thanks to our investment in our global network, we ensure that customers’ messages take the fastest, most reliable routes. By doing that we provide low latency for both SMS and voice traffic and clearer voice calls. How do we know what routes are reliable? By getting constant feedback. Plivo sets up company-owned handsets as test nodes across all the countries we serve, using real phone numbers from carriers local to each region. We send messages to these test nodes and receive data back about voice and SMS deliverability and delivery speed. If we encounter issues, we dynamically and automatically reroute traffic to better-performing carriers.
Is all that effort working? According to our customers, yes. Here’s a sample of comments they’ve left in G2 reviews:
- If you are looking for a simple and robust SMS API both for international or local use, Plivo is by far the most affordable and reliable choice. — Kaleab t
- Having tried other vendors, we found Plivo to be easy and customisable, not to mention super reliable too. — Kaushik K
- Their service is very reliable… even during events like hurricane Harvey (I live in Houston) their service was there 100% on-line for me and my clients. — Jorge Eliecer V
- If you’re looking for a reliable alternative to the likes of Twilio, look no further. It’s simple to use, reliable, with plenty of features. — Tommy N
Plivo’s voice and SMS APIs let businesses incorporate phone calls and send and receive SMS messages within their own applications. Nowadays a reliable CPaaS makes more sense than building similar functionality in-house. No business should have to buy and maintain expensive equipment, handle carrier relationships, or hire additional developers to write and maintain their communication platform software.
Reliability is one of the factors, along with a strong carrier network and consultative customer support, that make Plivo stand out among cloud communications platforms, and that we’re highlighting in this post in our Lessons in CPaaS Leadership blog series. For a CPaaS, reliability isn’t something you build into your infrastructure and then ignore. It’s a constant process of checking routes and testing deliverability, which all goes on behind the scenes out of view of users. Plivo tries to make it look easy so you can rest assured that your messages will get through, because we’re not satisfied until you connect with your customers.
First, though, connect with us. Sign up for a free trial — it takes only five minutes.

How to Send and Receive SMS Messages in PHP Using Plivo’s SMS API
Get started with Plivo’s SMS API and PHP to send and receive SMS text messages.
Your company has chosen Plivo to handle its voice and messaging communications. Now, it’s your job to integrate Plivo into your company’s applications. Don’t worry — you can send SMS in PHP using the PHP SDK and easily write PHP applications that send and receive SMS messages.
This guide will explain the steps for sending and receiving SMS messages in PHP. We'll cover everything from setting up your account to crafting the code snippets for sending messages and handling incoming replies. By the end, you'll be ready to leverage Plivo’s SMS API to send notifications, alerts, or even two-way interactions within your PHP applications.
{{cta-style-1}}
Prerequisites
Before diving into the steps in this guide, make sure you have the following prerequisites ready to go.
- A Plivo account — sign up with your work email address if you don’t have one already.
- Install PHP
- Install Composer
- Install Laravel and create a Laravel project
- Install the PHP Plivo SDK
Send an SMS in PHP
Now you’re ready to start. Create a file called SendSMS.php and paste into it this code.
Replace the auth placeholders with actual values from the Plivo console. Replace the phone number placeholders with actual phone numbers in E.164 format (for example, +12025551234). In countries other than the US and Canada you can use a sender ID for the message source. You must have a Plivo phone number to send messages to the US or Canada; you can rent a Plivo number from Phone Numbers > Buy Numbers on the Plivo console or via the Numbers API. Save the file and run it.
Note: If you’re using a Plivo Trial account, you can send messages only to phone numbers that have been verified with Plivo. You can verify (sandbox) a phone number by going to the console’s Phone Numbers > Sandbox Numbers page.
Receive SMS in PHP
Of course sending messages is only half of the equation. Plivo supports receiving SMS text messages in many countries (see our SMS API coverage page and click on the countries you’re interested in). When someone sends an SMS message to a Plivo phone number, you can receive it on your server by setting a Message URL in your Plivo application. Plivo will send the message along with other parameters to your Message URL.
Create a file called receive_sms.php (or whatever name you like) and paste into it this code.
Save the file and run it.
You should then be able to see your basic server app in action at http://localhost:8000/receive_sms/.
That’s fine for testing, but it’s not much good if you can’t connect to the internet to receive incoming messages and handle callbacks. For that, we recommend using ngrok, which exposes local servers behind NATs and firewalls to the public internet over secure tunnels. Install it and run ngrok on the command line, specifying the port that hosts the application on which you want to receive messages.
Ngrok will display a forwarding link that you can use as a webhook to access your local server using the public network.

Now you can create an application to receive SMS messages (follow our Quickstart guide for details).
Best practices for sending SMS with PHP
Make sure your SMS messages are received and read by following these best practices.
1. Send using a valid phone number
Use a phone number that is registered with your gateway provider or a valid number associated with your account.
2. Use E.164 formatting
E.164 is an international standard numbering format developed for telephone systems worldwide. Numbers are a maximum of 15 digits starting with a plus sign (+) followed by the country code (e.g. 1 for the U.S.) and the mobile number.
3. Keep messages concise
Stick to around 160 characters to stay within GSM-7 encoding limits.
4. Provide an opt-out option
The Cellular Telecommunications Industry Association’s (CTIA) guidelines require brands to give their audience a way to opt-out of receiving future text messages (such as, “reply STOP to stop receiving these messages”).
To learn more about sending SMS with PHP, check out our developer documentation.
Get started with Plivo to send SMS in PHP
And that’s all there is to sending and receiving SMS messages using Plivo’s PHP SDK. Don’t use PHP? Don’t worry — we have SDKs for Java, Python, Node.js, Ruby, .NET Core, .NET Framework, and Go.
Haven’t tried Plivo yet? Getting started is easy and takes only five minutes. Sign up today.

Announcing Configurable Callback Retries for Voice
Override default connection settings for Plivo’s Voice API to fit your needs with the configurable callback retries feature.
With Plivo’s Voice API platform, you can programmatically make, receive, and control calls across the world by integrating voice calling within your applications using only a few lines of code.
However, calls sometimes fail, often as a result of intermittent network issues, and we want to give our customers the flexibility to decide what happens when those errors occur. Maybe you want longer timeouts to better support intermittent network issues between Plivo and your server or application. Or maybe you want to enable HTTP callback connection retries on any failures and timeouts. Or maybe you want to pair those retries with shorter connection timeouts to ensure faster failover to your fallback URL for a better user experience.
With our latest release, the choice is yours. Plivo’s new configurable callback retries feature for our Voice API lets you override our default connection settings to fit your needs and give our Voice customers the ultimate flexibility and control.
How it worksPlivo makes HTTP posts to webhooks as callbacks during different states of a call and to many URLs, such as answer_url, fallback_url, hangup_url, action, and callback_url. Webhooks act as an extension of an API, but instead of your code requesting data from our API platform, Plivo sends the data directly to you.
Whenever a webhook request fails due to some destination server issue, you can configure HTTP callback connection overrides on a per-webhook URL basis. To set a nondefault callback retry configuration for any given URL, you can append configuration parameters to the URL in the form of extensions (also known as fragments) as key-value pairs with the following syntax:
the first key-value pair should start with #key and value should be separated by =the key-value pairs should be separated by &The result might look like https://example.com/answer_url?query=123#ct=2000&rt=3000.
For a full breakdown of the timeouts available for the webhook URLs and their respective allowed values and default values, as well as how to configure the number of retries, see our product documentation.
If you already use Plivo’s Voice API and are familiar with HTTP callbacks, we encourage you to start using these new parameters in your applications. They add great flexibility to Plivo’s webhook callback requests.
Haven’t built a Plivo voice application before? No problem; we have Getting Started guides that can help you start adding voice capabilities to your applicat.

How to Make and Receive Phone Calls Using Plivo’s Voice API and Ruby
How to make and receive outgoing and incoming voice calls using Ruby with the Plivo Voice API.
Your company has settled on Plivo to handle its voice and messaging communications, and now it’s your job to start integrating Plivo into your company’s applications. Don’t worry — Plivo has an SDK to help you out. Let’s see how to make outbound calls and handle incoming calls through Plivo's vOice API in a Ruby application.
Install the Plivo SDK
We’ll presume you already have Ruby installed. Change to the directory into which you want to install the Plivo Ruby gem and run
or you can follow the instructions in our Quickstart guide.
Find your Auth ID and Auth Token
You have to have proper credentials before you can use the Plivo API. We provide an Auth ID and Auth Token in the Account section at the top of the overview page of the Plivo console.

Choose a phone number
You need an voice-enabled Plivo phone number if you want to receive incoming calls. Check the Numbers screen of the Plivo console to see what numbers you have available. You can also rent numbers from this screen.

Use PHLO to set up an outbound call
Now you can turn to PHLO, Plivo’s visual workflow design studio, to set up the workflow for an outbound call. Click on the PHLO icon on the left navigation bar, then on Create New PHLO. In the window that pops up, click Build My Own.
Let’s start with a simple workflow. From the list of components on the left side, drag and drop the Initiate Call component onto the canvas, then connect the Start node to the Initiate Call node using the API Request trigger state.
Now you can add configuration information for the call in the right pane. Valid phone numbers begin with a plus sign and a country code. Add a caller ID number in the From field and a destination number in the To field, then click Validate to save the configuration.
PHLO lets you use variables for From and To values, but we’re keeping it simple for this example.
Now drag the Play Audio component onto the canvas. Connect the Initiate Call node to Play Audio using the Answered trigger state. In the Configuration panel, enter the text you want to play for the call recipient, then click Validate.

That’s all we’re going to do for now — we told you it was simple. Give the PHLO a name by clicking on the pencil icon in the upper left, then click the Save button in the upper right.
Run the PHLO to make a call
Now you can trigger the PHLO and test it out. Copy the PHLO ID from the end of the URL of the workflow you just created. You’re also going to need your Auth ID and Auth Token. Create a Ruby source code file — let’s call it trigger_phlo.rb — and paste this code into it:
Substitute actual values for <auth_id>, <auth_token>, and <PHLO_ID>. Save the file and run it with the command
Boom — you’ve made an outbound call.
Set up inbound calls
Of course outbound calls are only half of the equation. Plivo supports inbound calls as well. To see how, let’s create another PHLO and again specify Build My Own. This time, drag the Play Audio component onto the canvas and connect the Start node to it using the Incoming Call trigger state. In the Configuration panel, enter some text to speak to the caller when the call is answered, then click Validate to save the configuration. Give this PHLO a name, then click Save.
Before you can receive a call using this PHLO, you have to assign it to a Plivo number. Go back to the Plivo console and click on Phone Numbers on the left nav bar. From the list of Your Numbers, click on the number you want to use. On the next screen, from the Application Type dropdown, choose PHLO. From the PHLO Name dropdown, choose the PHLO you just created. Then click Update Number at the bottom of the screen.

Guess what? You’re done! You don’t have to run a program for this PHLO to work. Just call the Plivo number you specified and you should hear the message you configured read by Plivo’s text-to-speech processor.
Conclusion
And that’s all there is to sending and receiving voice calls using Plivo’s Ruby SDK. Don’t use Ruby? Don’t worry — we have SDKs for PHP, Java, Node.js, Python, .NET Core, .NET Framework, and Go.
Haven’t tried Plivo yet? Getting started takes only five minutes! Sign up today.
It’s easy to get started. Sign up for free.
Create your account and receive trial credits or get in touch with us.