Skip to contentSkip to navigationSkip to topbar
On this page

List all authenticated domains



API Overview

api-overview page anchor

An authenticated domain allows you to remove the "via" or "sent on behalf of" message that your recipients see when they read your emails. Authenticating a domain allows you to replace sendgrid.net with your personal sending domain. You will be required to create a subdomain so that SendGrid can generate the DNS records which you must give to your host provider. If you choose to use Automated Security, SendGrid will provide you with 3 CNAME records. If you turn Automated Security off, you will get 2 TXT records and 1 MX record.

Domain Authentication was formerly called "Domain Whitelabel".

For more information, please see How to set up domain authentication.

(information)

Info

Each user may have a maximum of 3,000 authenticated domains and 3,000 link brandings. This limit is at the user level, meaning each Subuser belonging to a parent account may have its own 3,000 authenticated domains and 3,000 link brandings.


GET/v3/whitelabel/domains

Base url: https://api.sendgrid.com (for global users and subusers)

Base url: https://api.eu.sendgrid.com (for EU regional subusers)

This endpoint allows you to retrieve a paginated list of all domains you have authenticated.

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>>

on-behalf-ofstring

Optional

The on-behalf-of header allows you to make API calls from a parent account on behalf of the parent's Subusers or customer accounts. You will use the parent account's API key when using this header. When making a call on behalf of a customer account, the property value should be "account-id" followed by the customer account's ID (e.g., on-behalf-of: account-id <account-id>). When making a call on behalf of a Subuser, the property value should be the Subuser's username (e.g., on-behalf-of: <subuser-username>). See On Behalf Of for more information.

Property nameTypeRequiredDescription
limitinteger

Optional

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.


offsetinteger

Optional

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

exclude_subusersboolean

Optional

Exclude subuser domains from the result.


usernamestring

Optional

The username associated with an authenticated domain.


domainstring

Optional

Search for authenticated domains.

200

Success response

SchemaExample

Array of:

Property nameTypeRequiredDescriptionChild properties
idnumber

The ID of the authenticated domain.


user_idnumber

The ID of the user that this domain is associated with.


subdomainstring

The subdomain to use for this authenticated domain.


domainstring

The domain to be authenticated.


usernamestring

The username that this domain will be associated with.


ipsarray[string]

The IPs to be included in the custom SPF record for this authenticated domain.


custom_spfboolean

Indicates whether this authenticated domain uses custom SPF.


defaultboolean

Indicates if this is the default authenticated domain.


legacyboolean

Indicates if this authenticated domain was created using the legacy whitelabel tool. If it is a legacy whitelabel, it will still function, but you'll need to create a new authenticated domain if you need to update it.


automatic_securityboolean

Indicates if this authenticated domain uses automated security.


validboolean

Indicates if this is a valid authenticated domain.


dnsobject

The DNS records used to authenticate the sending domain.


subusersarray[object]

last_validation_attempt_atinteger

A Unix epoch timestamp representing the last time of a validation attempt.


Retrieving paginated results

retrieving-paginated-results page anchor

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

Retrieve first page from list of all authenticated domainsLink to code sample: Retrieve first page from list of all authenticated domains
1
const client = require("@sendgrid/client");
2
client.setApiKey(process.env.SENDGRID_API_KEY);
3
4
const request = {
5
url: `/v3/whitelabel/domains`,
6
method: "GET",
7
};
8
9
client
10
.request(request)
11
.then(([response, body]) => {
12
console.log(response.statusCode);
13
console.log(response.body);
14
})
15
.catch((error) => {
16
console.error(error);
17
});

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 authenticated domains with a specified page sizeLink to code sample: Retrieve first page from list of all authenticated domains with a specified page size
1
const client = require("@sendgrid/client");
2
client.setApiKey(process.env.SENDGRID_API_KEY);
3
4
const queryParams = {
5
limit: 5,
6
};
7
8
const request = {
9
url: `/v3/whitelabel/domains`,
10
method: "GET",
11
qs: queryParams,
12
};
13
14
client
15
.request(request)
16
.then(([response, body]) => {
17
console.log(response.statusCode);
18
console.log(response.body);
19
})
20
.catch((error) => {
21
console.error(error);
22
});

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 authenticated domainsLink to code sample: Retrieve a specific page from the list of all authenticated domains
1
const client = require("@sendgrid/client");
2
client.setApiKey(process.env.SENDGRID_API_KEY);
3
4
const queryParams = {
5
limit: 5,
6
offset: 15,
7
};
8
9
const request = {
10
url: `/v3/whitelabel/domains`,
11
method: "GET",
12
qs: queryParams,
13
};
14
15
client
16
.request(request)
17
.then(([response, body]) => {
18
console.log(response.statusCode);
19
console.log(response.body);
20
})
21
.catch((error) => {
22
console.error(error);
23
});

Need some help?

Terms of service

Copyright © 2024 Twilio Inc.