Announcing Powerpack GA for Improved SMS Delivery

Plivo makes it very simple for businesses to send SMS text messages.  With a couple of lines of code, your application is ready to start sending SMS across 190 countries. On average, our customers send out their first text message within 15 minutes of signing up. The complexities of SMS messaging often surface only once you start sending a high volume of messages. 

For example, managing country-specific restrictions, per source number SMS limits, and daily SMS volumes are some of the frequent challenges customers face at scale. Customers usually have to write additional software logic for such complexities to ensure high SMS delivery. 

To help our customers improve SMS delivery and go-live faster for high-scale messaging use cases, today, we’re excited to announce the general availability of Powerpack for SMS. Powerpack ensures that your SMS just gets delivered. At any scale. To any country. Over the last 6 months, Powerpack has significantly improved delivery rates for hundreds of customers using long codes in the US and Canada. 

How Powerpack Helps

Number Pools For Easy Scaling

With Powerpack, you construct a pool of source numbers optimal for your daily volume and peak send rate. Your messages are automatically distributed across this source number pool. All you have to do is specify the Powerpack’s unique identifier in the Send SMS API request. 

You can add more numbers to your Powerpack Number Pool in seconds, right from your Plivo console. This lets you scale infinitely without having to make any code changes.

Sticky Sender For A Consistent Experience

To ensure that your end-users receive messages from the same source number always, Powerpack establishes a sticky mapping between the recipient’s number and the source number used from the Powerpack for the first text message to that recipient. 

This stickiness enables two-way conversations by keeping the conversation thread on the recipient’s handset intact.

Smart Queueing For Carrier Compliance

Powerpack maintains an internal rate-limiting queue for every source number in the pool and sends out messages to downstream carriers at a rate that is compliant with industry defined best practices. 

Source number specific rate-limiting queues, in conjunction with Powerpack’s message distribution logic, ensure you meet your overall volume and throughput requirements while staying compliant with per number limits. 

Local Connect For Higher Open Rates

Powerpack prioritizes source numbers in the pool which are from the same geographic region as the destination number. The highest priority is given to numbers of the same area code, followed by the same state, then country. 

For example, when sending an SMS to a San Francisco number starting with +1-415, Powerpack will use a number in the pool that begins with +1-415. If no +1-415 numbers are found in the pool, the message would be sent through any of the available California state numbers. 

The Powerpack management UI within your console allows provisioning of number pools and all the other features with a few clicks.

Getting Started With Powerpack

Getting started with Powerpack is easy. If you are an existing customer, log-in to your Plivo dashboard and navigate to powerpack under SMS. 

Follow the instructions on the console to create a new Powerpack.

To send messages with your newly created Powerpack, invoke Plivo’s Send SMS API with the powerpack_uuid request parameter set to the Powerpack’s UUID.

Code

1
2
3
4
5
6
7
8
import plivo

client = plivo.RestClient('AUTH_ID','AUTH_TOKEN')
message_created = client.messages.create(
    powerpack_uuid='your_powerpack_uuid',
    dst='destination_number',
    text='Test Message'
)
1
2
3
4
5
6
7
8
9
10
11
12
13
require 'rubygems'	
require 'plivo'	

include Plivo	

client = RestClient.new("AUTH_ID","AUTH_TOKEN")
response = client.messages.create(	
  nil,	
  [destination_number],	
  'Test Message',	
  powerpack_uuid: 'your_powerpack_uuid'	
)	
puts response
1
2
3
4
5
6
7
8
9
10
11
12
let plivo = require('plivo');
let client = new plivo.Client('AUTH_ID','AUTH_TOKEN');

client.messages.create(
  null,
  'destination_number',
  'Test Message',
  {},
  'your_powerpack_uuid'
).then(function (message_created) {
  console.log(message_created)
})
1
2
3
4
5
6
7
8
9
10
11
require 'vendor/autoload.php';	
use Plivo\RestClient;	

$client = new RestClient('AUTH_ID', 'AUTH_TOKEN');	
$message_created = $client->messages->create(	
    null,	
    ['destination_number'],	
    'Test Message',	
    [],	
    'your_powerpack_uuid'	
);	
1
2
3
4
5
6
7
8
9
10
11
12
13
package com.plivo.api;

import com.plivo.api.models.message.Message;
import com.plivo.api.exceptions.PlivoRestException;
import java.io.IOException;
import java.util.Collections;

class Example {
  public static void main(String[] args) throws IOException, PlivoRestException {
    Plivo.init("AUTH_ID", "AUTH_TOKEN");
    Message.creator(Collections.singletonList("destination_number"), "Test Message", "your_powerpack_uuid").create();
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package main

import "github.com/plivo/plivo-go"

func main() {
	client, err := plivo.NewClient("AUTH_ID", "AUTH_TOKEN", &plivo.ClientOptions{})
	if err != nil {
		panic(err)
	}
	client.Messages.Create(plivo.MessageCreateParams{
		PowerpackUUID: "your_powerpack_uuid",
		Dst:           "destination_number",
		Text:          "Test Message",
	})
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
using System;	
using System.Collections.Generic;	
using Plivo;	

internal class Program	
{	
    public static void Main(string[] args)	
    {	
        var api = new PlivoApi("AUTH_ID", "AUTH_TOKEN");	
        var response = api.Message.Create(	
            powerpack_uuid:"your_powerpack_uuid",	
            dst:new List<String>{"destination_number"},	
            text:"Test Message"	
        );	
        Console.WriteLine(response);	
    }	
}	

Your message will be sent via any one of the phone numbers in the Powerpack Number Pool. 

For more information, visit our Powerpack docs page.

Pricing

As your SMS messaging API partner, you trust us to deliver your messages regardless of scale or destination country. We’ve launched Powerpack to ensure we exceed your expectations for message deliverability. Powerpack is enabled on your account at no extra cost and you only pay for the actual text messages sent or received.

Upcoming Enhancements

We’re actively working on new Powerpack features. Some of the enhancements planned for the coming months are -

Alphanumeric Sender Ids: Many countries across the globe allow using brand names and key words as Sender-ids. Soon, customers will have the option to configure Powerpack to use Alphanumeric Sender-ids for SMS messages to such countries.

Powerpack Management APIs: APIs to create new Powerpacks and manage Number Pools programmatically will be available soon. 

Content Optimization Features: Features to better manage the content of your text messages based on country-specific support for characters sets and message length.

Not yet using Plivo? Getting started takes just 5 minutes. Sign-up and get started today.

comments powered by Disqus