Sender Pools
Sender Pools allow you to group multiple senders, such as phone numbers, short codes, WhatsApp senders, and RCS senders into a single resource. This enables you to scale your messaging campaigns, optimize throughput, and ensure reliable delivery across channels.
Sender Pools are independent of Messaging Service sender pools. You can use Sender Pools as an additional, flexible abstraction layer for grouping senders. Unlike Messaging Services, a single sender can belong to more than one Sender Pool. Continue associating your senders with Messaging Services to meet A2P 10DLC compliance requirements in the United States.
Every sender (such as a phone number, RCS sender, WhatsApp sender, or email sender) is represented by a Sender in the Communications API. Twilio automatically creates Senders for the senders in your account. To add senders to a Sender Pool, you first need to retrieve their sender_id.
You can retrieve a list of all your Senders using the following API request. You can use this endpoint to retrieve activated Senders that can send messages:
1curl -X GET 'https://comms.twilio.com/preview/Senders?status=ACTIVATED' \2--header 'Content-Type: application/json' \3-u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN
This request returns a list of senders, including each senderId. Look for the id field in the response to find the senderId you need.
Sample response:
1{2"senders": [3{4"id": "comms_sender_01h9krwprkeee8fzqspvwy6nq8",5"displayName": "Cool Support",6"channel": "EMAIL",7"address": "support@coolcompany.com",8"status": "ACTIVATED",9"tags": {},10"createdAt": "2022-08-24T14:15:22Z",11"updatedAt": "2023-09-13T12:00:24Z"12},13{14"id": "comms_sender_01h9krwprkeee8fzqspvwy6nq8",15"displayName": "Cool Support",16"channel": "SMS",17"address": "+12034458910",18"status": "ACTIVATED",19"tags": {},20"createdAt": "2022-08-24T14:15:22Z",21"updatedAt": "2023-09-13T12:00:24Z"22},23{24"id": "comms_sender_01h9krwprkeee8fzqspvwy6nq8",25"displayName": "Cool Support",26"channel": "RCS",27"address": "coolsupport_x12gb_agent",28"status": "ACTIVATED",29"tags": {},30"createdAt": "2022-08-24T14:15:22Z",31"updatedAt": "2023-09-13T12:00:24Z"32}33],34"pagination": {35"next": null,36"self": "https://comms.twilio.com/preview/Senders"37}38}
Note: ACTIVATED means the sender is approved and compliant. Use the above payload to filter for only those with this status.
For more information, see the Senders API reference.
Once you have the senderId values for the senders you want to group, you can create a Sender Pool. Use the following API request to create a new pool:
1curl -X POST 'https://comms.twilio.com/preview/SenderPools' \2--header 'Content-Type: application/json' \3--data '{4"name": "My First Pool",5"senders": [6{ "senderId": "comms_sender_123" },7{ "senderId": "comms_sender_456" }8]9}' \10-u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN
1curl -X GET 'https://comms.twilio.com/preview/SenderPools' \2--header 'Content-Type: application/json' \3-u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN
Sample response:
1{2"senderPools": [3{4"id": "comms_senderpool_01h9krwprkeee8fzqspvwy6nq8",5"name": "string",6"tags": {},7"createdAt": "2019-08-24T14:15:22Z",8"updatedAt": "2019-08-24T14:15:22Z"9}10],11"pagination": {12"next": null,13"self": "https://comms.twilio.com/preview/SenderPools"14}15}
You can send messages using a Sender Pool by specifying the senderPoolId in your API request. This allows you to leverage the grouped senders for message delivery.
When you configure multiple Senders, Twilio selects one of them to deliver your message. If the sender configuration includes both an RCS sender and an SMS-capable phone number, Twilio first attempts to send the message via RCS to recipients whose devices support it.
1curl -X POST 'https://comms.twilio.com/preview/Messages' \2--header 'Content-Type: application/json' \3--data '{4"from": {5"senderPoolId": "comms_senderpool_123"6},7"to": [8{9"address": "+19143188062",10"channel": "PHONE"11},12{13"address": "+19143188063",14"channel": "WHATSAPP"15}16],17"content": {18"text": "Hello, World!"19}20}' \21-u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN
- See the Troubleshooting Guide for guidance on resolving common Communications API issues.
- Learn more about the Twilio Communications API Events to track message delivery, failures, and operational status in real-time.