SMS API for Puerto Rico: bulk SMS to +1 numbers
Puerto Rico
Calling code +1
- Per SMS segment
- $0.00847
- Messages for $100
- 11,806
- Local language
- Spanish
- Encoding
- GSM-7 or Unicode
What a bulk SMS send to Puerto Rico costs
| Messages | 1 segment | 2 segments |
|---|---|---|
| 1 | $0.00847 | $0.01694 |
| 1,000 | $8.47 | $16.94 |
| 10,000 | $84.70 | $169.40 |
| 100,000 | $847.00 | $1,694.00 |
Number format in Puerto Rico
Puerto Rico uses the North American Numbering Plan: +1, a three-digit area code and a seven-digit number, such as +1 787 234 5678. The API reads the area code (787 here) to price the number as Puerto Rico rather than the United States, so keep the full eleven digits in your list.
Alphabet and segments
Texts in Spanish fit 160 GSM-7 characters per segment until they use á, í, ó and ú: those letters are outside GSM-7 and turn the message into Unicode at 70 characters per segment (67 per part). For short alerts, write them without those letters to keep one segment; for longer texts, the console names each letter that changed the encoding.
Time zone and timing
Puerto Rico keeps UTC-4 all year with no clock change, so 09:00 in Puerto Rico is always 13:00 UTC. send_at takes UTC or any ISO 8601 offset, and the console scheduler converts from your own time zone.
Send to Puerto Rico with one request
The answer comes back at once with the message id, the country the number was matched to (PR) and the price. A delivered or failed event follows on your webhook, and a failed message is refunded.
For a list, send the same text to up to 10,000 numbers with POST /v1/batches, or a personal text per number in messages.
curl https://bulksmsapi.cc/v1/messages \
-H "Authorization: Bearer $BULKSMSAPI_KEY" \
-H "Content-Type: application/json" \
-d '{"to": "+17872345678", "text": "Your Northwind code is 482913. It expires in 10 minutes."}'const res = await fetch("https://bulksmsapi.cc/v1/messages", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.BULKSMSAPI_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({ to: "+17872345678", text: "Your Northwind code is 482913. It expires in 10 minutes." }),
});
console.log(await res.json()); // price: "0.00847", country: "PR"import json, os, urllib.request
req = urllib.request.Request(
"https://bulksmsapi.cc/v1/messages",
data=json.dumps({"to": "+17872345678", "text": "Your Northwind code is 482913. It expires in 10 minutes."}).encode(),
headers={"Authorization": "Bearer " + os.environ["BULKSMSAPI_KEY"], "Content-Type": "application/json", "User-Agent": "northwind-app/1.0"},
method="POST",
)
with urllib.request.urlopen(req) as res:
print(json.load(res)["price"]) # "0.00847"What developers send to Puerto Rico
Flight updates
Airlines send SMS notifications to passengers in San Juan about flight delays or gate changes.
Booking confirmations
Resorts in Puerto Rico send SMS confirmations to guests after booking their stays.
Delivery notifications
Delivery services notify customers in Ponce when their packages are out for delivery.
Event reminders
Event organizers send SMS reminders to attendees in Mayaguez about upcoming concerts or festivals.
More countries in Caribbean
SMS to Puerto Rico: questions
More answers on accounts, payments and the API are in the FAQ.
How much does it cost to send bulk SMS to Puerto Rico?
How many SMS to Puerto Rico does a $100 top-up send?
How do I write Puerto Rico numbers for the API?
Start sending to Puerto Rico
Create an account, top up from $40 and send to Puerto Rico at $0.00847 per segment, from the console or with one API call.