IP pools allow you to group your dedicated SendGrid IP addresses. For example, you could create separate one pool for your transactional email and another for your marketing email. When sending marketing emails, specify that you want to use the marketing IP pool. This allows you to maintain separate reputations for your different email traffic.
A single IP address or a range of IP addresses may be dedicated to an account in order to send email for multiple domains. The reputation of this IP is determined by the aggregate performance of all email traffic sent from it.
IP pools can only be used with IP addresses for which you've set up a reverse DNS record.
If an IP pool is not specified for an email, it will use any IP available, including pooled addresses.
Each user can create up to 100 different IP pools.
This endpoint allows you to add an IP address to an IP pool.
You can add the same IP address to multiple pools. It may take up to 60 seconds for your IP address to be added to a pool after your request is made.
Before you can add an IP to a pool, you need to activate it in your SendGrid account:
You can retrieve all of your available IP addresses from the "Retrieve all IP addresses" endpoint.
Bearer <<YOUR_API_KEY_HERE>>
The name of the IP pool you want to add the address to. If the name contains spaces, they must be URL encoded (e.g., "Test Pool" becomes "Test%20Pool").
application/json
The IP address that you want to add to the named pool.
The IP address.
The IP pools that this IP address has been added to.
A Unix timestamp indicating when the warmup process began for the added IP address.
Indicates if the IP address is in warmup.
1const client = require("@sendgrid/client");2client.setApiKey(process.env.SENDGRID_API_KEY);34const pool_name = "per";5const data = {6ip: "0.0.0.0",7};89const request = {10url: `/v3/ips/pools/${pool_name}/ips`,11method: "POST",12body: data,13};1415client16.request(request)17.then(([response, body]) => {18console.log(response.statusCode);19console.log(response.body);20})21.catch((error) => {22console.error(error);23});