Base URL
Authentication
All API requests use HTTP Basic Authentication with your Plivo credentials:- Username: Your Auth ID
- Password: Your Auth Token
cURL
Request Format
- Content-Type:
application/jsonfor POST requests - Content-Type:
multipart/form-datafor media uploads - All request parameters should be JSON-encoded
Response Format
All responses are JSON with anapi_id for request tracking:
HTTP Status Codes
| Code | Description |
|---|---|
200 | Request executed successfully |
201 | Resource created |
202 | Resource modified |
204 | Resource deleted |
400 | Invalid or missing parameter |
401 | Authentication failed |
404 | Resource not found |
405 | HTTP method not allowed |
429 | Rate limit exceeded |
500 | Server error |
Troubleshooting Common Errors
| Code | Common Causes | Solution |
|---|---|---|
400 | Missing required parameter (src, dst, text), invalid phone number format | Check all required parameters are included. Use E.164 format for numbers (+14155551234) |
401 | Invalid Auth ID or Auth Token, missing authentication header | Verify credentials at Console → API Keys. Ensure Basic Auth header is included |
404 | Invalid Message UUID, number not in account, typo in endpoint URL | Verify the resource UUID exists. Check endpoint spelling |
429 | API rate limit exceeded | Implement exponential backoff. Contact support to increase limits |
500 | Temporary server issue | Retry after a few seconds. Check status.plivo.com for outages |
Pagination
List endpoints return paginated results:| Parameter | Description |
|---|---|
limit | Results per page (1-20). Default: 20 |
offset | Number of results to skip. Default: 0 |
API Resources
Core Resources
Powerpack Resources
| Resource | Description |
|---|---|
| Powerpack | Manage Powerpacks for traffic distribution |
| Number Pool | Manage numbers in Powerpack pools |
Compliance Resources
| Resource | Description |
|---|---|
| 10DLC | Register brands and campaigns for US A2P messaging |
| Toll-free Verification | Verify toll-free numbers for messaging |
Rate Limits
API requests are rate limited. If you exceed the limit, you’ll receive a429 response. Implement exponential backoff for retries.
Related
- Quickstart - Get started with Messaging API
- Concepts - Messaging fundamentals
- XML Reference - Messaging XML elements