Websites
Get Website
Get sending-domain DNS details
GET
/
api
/
v1
/
websites
/
{domain}
Get Website
curl --request GET \
--url https://api.sequenzy.com/api/v1/websites/{domain} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/websites/{domain}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sequenzy.com/api/v1/websites/{domain}', 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.sequenzy.com/api/v1/websites/{domain}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.sequenzy.com/api/v1/websites/{domain}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.sequenzy.com/api/v1/websites/{domain}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/websites/{domain}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"website": {
"id": "domain_abc123",
"domain": "mail.example.com",
"status": "verified",
"dnsVerified": true,
"readyToSend": false,
"readiness": {
"status": "activating",
"reason": "activation_pending"
},
"dnsRecords": {},
"dkim": { "type": "byodkim", "status": "pending", "diagnostic": null },
"spf": { "status": "verified", "record": {}, "diagnostic": null },
"mailFrom": { "status": "verified", "domain": "send.mail.example.com", "mxRecord": {}, "diagnostic": null },
"appleEmailSources": ["send.mail.example.com", "example.com"],
"lastVerifiedAt": "2026-05-01T10:30:00Z",
"nextVerificationAt": "2026-05-01T11:30:00Z",
"createdAt": "2026-05-01T10:30:00Z"
}
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"code": "SENDING_DOMAIN_NOT_CONFIGURED",
"error": "Sending domain not configured",
"title": "Sending domain not configured",
"description": "The domain \"mail.example.com\" has not been added as a sending domain for this company, so it cannot be checked or verified yet.",
"resolution": "Call add_sending_domain with domain \"mail.example.com\" first, publish the returned SPF, DKIM, MAIL FROM, and inbound MX DNS records, then call verify_sending_domain after DNS changes propagate.",
"docsUrl": "https://docs.sequenzy.com/api-reference/websites/create",
"details": {
"domain": "mail.example.com"
}
}
Get stored DNS verification, sending readiness,
expected DNS records, and normalized SPF, DKIM, and MAIL FROM diagnostics for a
sending domain. A domain can have
dnsVerified: true while readyToSend is
false while the domain is still activating. To run a fresh check, use
Verify Sending Domain.
For custom replies, website.dnsRecords.inboundRoutingStatus reports
pending, active, or failed readiness from the latest stored checks.
Legacy SES routes remain pending until receiving ownership has been checked;
this display does not disable an existing route. Retained MTA reply routes
keep their existing status. inboundRoutingError provides recovery guidance,
or null when no error is stored. An optional inboundVerificationRecord contains the
public TXT name and value to publish for an uncovered legacy reply domain.
inboundVerificationStatus reports domain ownership separately from routing
and sending readiness. This GET reads stored results; it does not prepare a
missing token or perform a DNS check. Use the verify endpoint to prepare or
retry the record. These generated fields cannot be edited or cleared by API.
Request
string
required
Sending domain.
curl "https://api.sequenzy.com/api/v1/websites/mail.example.com" \
-H "Authorization: Bearer YOUR_API_KEY"
Responses
{
"success": true,
"website": {
"id": "domain_abc123",
"domain": "mail.example.com",
"status": "verified",
"dnsVerified": true,
"readyToSend": false,
"readiness": {
"status": "activating",
"reason": "activation_pending"
},
"dnsRecords": {},
"dkim": { "type": "byodkim", "status": "pending", "diagnostic": null },
"spf": { "status": "verified", "record": {}, "diagnostic": null },
"mailFrom": { "status": "verified", "domain": "send.mail.example.com", "mxRecord": {}, "diagnostic": null },
"appleEmailSources": ["send.mail.example.com", "example.com"],
"lastVerifiedAt": "2026-05-01T10:30:00Z",
"nextVerificationAt": "2026-05-01T11:30:00Z",
"createdAt": "2026-05-01T10:30:00Z"
}
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"code": "SENDING_DOMAIN_NOT_CONFIGURED",
"error": "Sending domain not configured",
"title": "Sending domain not configured",
"description": "The domain \"mail.example.com\" has not been added as a sending domain for this company, so it cannot be checked or verified yet.",
"resolution": "Call add_sending_domain with domain \"mail.example.com\" first, publish the returned SPF, DKIM, MAIL FROM, and inbound MX DNS records, then call verify_sending_domain after DNS changes propagate.",
"docsUrl": "https://docs.sequenzy.com/api-reference/websites/create",
"details": {
"domain": "mail.example.com"
}
}
⌘I
Get Website
curl --request GET \
--url https://api.sequenzy.com/api/v1/websites/{domain} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/websites/{domain}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sequenzy.com/api/v1/websites/{domain}', 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.sequenzy.com/api/v1/websites/{domain}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.sequenzy.com/api/v1/websites/{domain}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.sequenzy.com/api/v1/websites/{domain}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/websites/{domain}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"website": {
"id": "domain_abc123",
"domain": "mail.example.com",
"status": "verified",
"dnsVerified": true,
"readyToSend": false,
"readiness": {
"status": "activating",
"reason": "activation_pending"
},
"dnsRecords": {},
"dkim": { "type": "byodkim", "status": "pending", "diagnostic": null },
"spf": { "status": "verified", "record": {}, "diagnostic": null },
"mailFrom": { "status": "verified", "domain": "send.mail.example.com", "mxRecord": {}, "diagnostic": null },
"appleEmailSources": ["send.mail.example.com", "example.com"],
"lastVerifiedAt": "2026-05-01T10:30:00Z",
"nextVerificationAt": "2026-05-01T11:30:00Z",
"createdAt": "2026-05-01T10:30:00Z"
}
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"code": "SENDING_DOMAIN_NOT_CONFIGURED",
"error": "Sending domain not configured",
"title": "Sending domain not configured",
"description": "The domain \"mail.example.com\" has not been added as a sending domain for this company, so it cannot be checked or verified yet.",
"resolution": "Call add_sending_domain with domain \"mail.example.com\" first, publish the returned SPF, DKIM, MAIL FROM, and inbound MX DNS records, then call verify_sending_domain after DNS changes propagate.",
"docsUrl": "https://docs.sequenzy.com/api-reference/websites/create",
"details": {
"domain": "mail.example.com"
}
}