Skip to contentSkip to navigationSkip to topbar
Rate this page:
On this page

Retrieve all IP addresses



API Overview

api-overview page anchor

Elements that can be shared among more than one endpoint definition.


GET/v3/ips

Base url: https://api.sendgrid.com

This endpoint allows you to retrieve a paginated list of all assigned and unassigned IPs.

Response includes warm up status, pools, assigned subusers, and reverse DNS info. The start_date field corresponds to when warmup started for that IP.

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.

You can use the limit query parameter to set the page size. If your list contains more items than the page size permits, you can make multiple requests. Use the offset query parameter to control the position in the list from which to start retrieving additional items.


Authentication

authentication page anchor
Property nameTypeRequiredDescription
Authorizationstringrequired
Default: Bearer <<YOUR_API_KEY_HERE>>
Property nameTypeRequiredDescription
ipstringOptional

The IP address to get


exclude_whitelabelsbooleanOptional

Should we exclude reverse DNS records (whitelabels)?


limitintegerOptional

limit sets the page size, i.e. maximum number of items from the list to be returned for a single API request. If omitted, the default page size is used.

Minimum: 1Default: 10

offsetintegerOptional

The number of items in the list to skip over before starting to retrieve the items for the requested page. The default offset of 0 represents the beginning of the list, i.e. the start of the first page. To request the second page of the list, set the offset to the page size as determined by limit. Use multiples of the page size as your offset to request further consecutive pages. E.g. assume your page size is set to 10. An offset of 10 requests the second page, an offset of 20 requests the third page and so on, provided there are sufficiently many items in your list.

Minimum: 0Default: 0

subuserstringOptional

The subuser you are requesting for.


sort_by_directionenum<string>Optional

The direction to sort the results.

Possible values:
descasc
200
SchemaExample

Array of:

Property nameTypeRequiredDescriptionChild properties
ipstring

An IP address.


subusersarray[string]

The subusers that are able to send email from this IP.


rdnsstring

The reverse DNS record for this IP address.


poolsarray[string]

The IP pools that this IP has been added to.


warmupboolean

Indicates if this IP address is currently warming up.


start_datenumber or null

The date that the IP address was entered into warmup.


whitelabeledboolean

Indicates if this IP address is associated with a reverse DNS record.


assigned_atinteger or null

The date that the IP address was assigned to the user.


Retrieving paginated results

retrieving-paginated-results page anchor

To perform a request for the first page of the paginated list of all IP addresses using the default page size, you can omit the limit and offset query parameters:

Retrieve first page from list of all IP addresses

retrieve-first-page-from-list-of-all-ip-addresses page anchor
Node.js
Python
C#
Java
Go
PHP
Ruby
curl

_21
const client = require('@sendgrid/client');
_21
client.setApiKey(process.env.SENDGRID_API_KEY);
_21
_21
const queryParams = {
_21
"limit": 10
_21
};
_21
_21
const request = {
_21
url: `/v3/ips`,
_21
method: 'GET',
_21
qs: queryParams
_21
}
_21
_21
client.request(request)
_21
.then(([response, body]) => {
_21
console.log(response.statusCode);
_21
console.log(response.body);
_21
})
_21
.catch(error => {
_21
console.error(error);
_21
});

If you want to specify a page size of your choice, you can use the limit query parameter. Assume you want a page size of no more than 5 items per request, to retrieve the first page you can use the limit parameter without specifying an offset:

Retrieve first page from list of all IP addresses with a specified page size

retrieve-first-page-from-list-of-all-ip-addresses-with-a-specified-page-size page anchor

Setting page size to 5 using the limit query parameter

Node.js
Python
C#
Java
Go
PHP
Ruby
curl

_21
const client = require('@sendgrid/client');
_21
client.setApiKey(process.env.SENDGRID_API_KEY);
_21
_21
const queryParams = {
_21
"limit": 5
_21
};
_21
_21
const request = {
_21
url: `/v3/ips`,
_21
method: 'GET',
_21
qs: queryParams
_21
}
_21
_21
client.request(request)
_21
.then(([response, body]) => {
_21
console.log(response.statusCode);
_21
console.log(response.body);
_21
})
_21
.catch(error => {
_21
console.error(error);
_21
});

If you want to retrieve items beyond the first page, you can use the offset parameter as follows. Assume you are still working with a page size of 5 as determined by your limit query parameter and you have more than 15 items. To request the fourth page of items, you can use the offset parameter to skip over the first 15 items, i.e. you start retrieving items starting after the first three pages of 5 items each:

Retrieve a specific page from the list of all IP addresses

retrieve-a-specific-page-from-the-list-of-all-ip-addresses page anchor

Using the offset query parameter in combination with the limit query parameter

Node.js
Python
C#
Java
Go
PHP
Ruby
curl

_22
const client = require('@sendgrid/client');
_22
client.setApiKey(process.env.SENDGRID_API_KEY);
_22
_22
const queryParams = {
_22
"limit": 5,
_22
"offset": 15
_22
};
_22
_22
const request = {
_22
url: `/v3/ips`,
_22
method: 'GET',
_22
qs: queryParams
_22
}
_22
_22
client.request(request)
_22
.then(([response, body]) => {
_22
console.log(response.statusCode);
_22
console.log(response.body);
_22
})
_22
.catch(error => {
_22
console.error(error);
_22
});


Rate this page: