curl --request GET \
--url https://api.sendpost.io/api/v1/account/ippool/{ippool_id} \
--header 'X-Account-ApiKey: <api-key>'import requests
url = "https://api.sendpost.io/api/v1/account/ippool/{ippool_id}"
headers = {"X-Account-ApiKey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Account-ApiKey': '<api-key>'}};
fetch('https://api.sendpost.io/api/v1/account/ippool/{ippool_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sendpost.io/api/v1/account/ippool/{ippool_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Account-ApiKey: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sendpost.io/api/v1/account/ippool/{ippool_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Account-ApiKey", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sendpost.io/api/v1/account/ippool/{ippool_id}")
.header("X-Account-ApiKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sendpost.io/api/v1/account/ippool/{ippool_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Account-ApiKey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": 74,
"name": "Transactional",
"type": 1,
"routingStrategy": 0,
"routingMetaData": "{}",
"shouldOverflow": true,
"overflowPoolName": "shared-backup",
"ips": [],
"created": 1567512491586102000
}Get IPPool
Retrieve complete details about a specific IP pool, including all IPs and TPSPs assigned to it.
Response Includes:
- Pool name, ID, and creation date
- Complete list of IPs with warmup status
- All configured TPSPs with their settings
- Current routing strategy and metadata
- Warmup and monitoring configuration
Use Cases:
- Verify pool configuration before sending
- Check which IPs/TPSPs are in a pool
- Debug routing issues
- Audit pool settings for compliance
curl --request GET \
--url https://api.sendpost.io/api/v1/account/ippool/{ippool_id} \
--header 'X-Account-ApiKey: <api-key>'import requests
url = "https://api.sendpost.io/api/v1/account/ippool/{ippool_id}"
headers = {"X-Account-ApiKey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Account-ApiKey': '<api-key>'}};
fetch('https://api.sendpost.io/api/v1/account/ippool/{ippool_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sendpost.io/api/v1/account/ippool/{ippool_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Account-ApiKey: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sendpost.io/api/v1/account/ippool/{ippool_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Account-ApiKey", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sendpost.io/api/v1/account/ippool/{ippool_id}")
.header("X-Account-ApiKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sendpost.io/api/v1/account/ippool/{ippool_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Account-ApiKey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": 74,
"name": "Transactional",
"type": 1,
"routingStrategy": 0,
"routingMetaData": "{}",
"shouldOverflow": true,
"overflowPoolName": "shared-backup",
"ips": [],
"created": 1567512491586102000
}Authorizations
This api key can be used for all account level operations
Path Parameters
The unique ID of the IP pool to retrieve.
74
Response
Details of a specific IPPool
An IP Pool groups one or more dedicated IPs and/or third-party sending providers for email delivery. Use IP pools to:
- Separate transactional vs marketing email reputation
- Route emails based on recipient domain (Gmail, Yahoo, etc.)
- Implement volume-based routing strategies
- Configure failover to backup providers
When sending email, specify the ippool parameter to route through a specific pool.
Unique identifier for the IP pool
746
Display name for the IP pool. Must be unique within your account. Use descriptive names like "transactional", "marketing", "high-priority".
100"Transactional"
Type of IP pool:
0= Shared (uses shared IPs with pooled reputation)1= Dedicated (uses dedicated IPs exclusive to your account)
0, 1 1
How emails are distributed across IPs/providers in this pool:
0= Round Robin (equal distribution)1= Email Provider Strategy (route by recipient domain like Gmail, Yahoo)2= Volume Percentage Strategy (weighted distribution)3= Sending Domain Strategy (route by sender domain)
See the IPPools tag description for detailed routing configuration examples.
0, 1, 2, 3 0
JSON-encoded configuration for the selected routing strategy. Format depends on routingStrategy value. See IPPools documentation for examples.
For Round Robin (strategy 0): Use empty object {}
"{}"
Whether to automatically overflow to a backup pool when this pool is unavailable (all IPs down) or at capacity (warmup limits reached).
true
Name of the IP pool to overflow to when shouldOverflow is enabled. The overflow pool must exist. Common pattern: overflow to shared IP pool.
"shared-backup"
List of dedicated IPs assigned to this pool
Show child attributes
Show child attributes
UNIX epoch timestamp in nanoseconds when the IP pool was created
1704067200000000000
Was this page helpful?