curl --request GET \
--url https://api.aisa.one/apis/v1/agentmail/domains/{domain_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/agentmail/domains/{domain_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/agentmail/domains/{domain_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.aisa.one/apis/v1/agentmail/domains/{domain_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 => [
"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.aisa.one/apis/v1/agentmail/domains/{domain_id}"
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.aisa.one/apis/v1/agentmail/domains/{domain_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/agentmail/domains/{domain_id}")
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{
"created_at": "2023-11-07T05:31:56Z",
"domain": "<string>",
"domain_id": "<string>",
"feedback_enabled": true,
"records": [
{
"name": "<string>",
"status": "MISSING",
"type": "TXT",
"value": "<string>",
"priority": 123,
"reason": "<string>"
}
],
"status": "NOT_STARTED",
"subdomains_enabled": true,
"tracking_enabled": true,
"updated_at": "2023-11-07T05:31:56Z",
"client_id": "<string>",
"inbound_enabled": true,
"pod_id": "<string>",
"reason": "<string>"
}Manage Domain
curl --request GET \
--url https://api.aisa.one/apis/v1/agentmail/domains/{domain_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/agentmail/domains/{domain_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/agentmail/domains/{domain_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.aisa.one/apis/v1/agentmail/domains/{domain_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 => [
"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.aisa.one/apis/v1/agentmail/domains/{domain_id}"
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.aisa.one/apis/v1/agentmail/domains/{domain_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/agentmail/domains/{domain_id}")
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{
"created_at": "2023-11-07T05:31:56Z",
"domain": "<string>",
"domain_id": "<string>",
"feedback_enabled": true,
"records": [
{
"name": "<string>",
"status": "MISSING",
"type": "TXT",
"value": "<string>",
"priority": 123,
"reason": "<string>"
}
],
"status": "NOT_STARTED",
"subdomains_enabled": true,
"tracking_enabled": true,
"updated_at": "2023-11-07T05:31:56Z",
"client_id": "<string>",
"inbound_enabled": true,
"pod_id": "<string>",
"reason": "<string>"
}Request contract
- Method and path: GET /apis/v1/agentmail/domains/{domain_id}
- Availability: enabled
- Request URL template: https://api.aisa.one/apis/v1/agentmail/domains/{domain_id}
- domain_id: path; required
- Runtime facts: 18a04e28941fae19674c11246b677373368b6bd927b7c146220cec1f168f4639
{
"operationId": "get_any_agentmail_apis_v1_agentmail_domains_domain_id",
"method": "GET",
"path": "/apis/v1/agentmail/domains/{domain_id}",
"servers": [
{
"url": "https://api.aisa.one"
}
],
"parameters": [
{
"in": "path",
"name": "domain_id",
"required": true,
"schema": {
"description": "The ID of the domain.",
"title": "DomainId",
"type": "string"
}
}
],
"security": [
{
"bearerAuth": []
}
],
"x-aisa-status": "enabled",
"x-aisa-pricing": {
"cost_contract": "explicit_zero",
"customer_pricing": "fixed_success",
"default_request_estimate_usd": 0.012,
"estimate_source": "profile_seed",
"evidence_source": "request_snapshot"
},
"components": {
"securitySchemes": {
"bearerAuth": {
"scheme": "bearer",
"type": "http"
}
}
}
}
Cost and request rules
Published reference price: $0.012 USD per successful request. Account-specific pricing and final settlement may differ. Published reference values are not an account-specific quote or a settled charge. For endpoints supporting X-AISA-Cost-Mode: quote, obtain a free quote for your exact request before execution; reconcile the settled cost with response metadata and Usage Logs. USD amounts use 1,000,000 integer micro-USD per dollar.- Default request reference estimate (USD): 0.012
- Cost contract: explicit_zero
- Settlement evidence source: request_snapshot
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The ID of the domain.
Response
Response with status 200
Time at which the domain was created.
The name of the domain (e.g., example.com).
The ID of the domain.
Bounce and complaint notifications are sent to your inboxes.
A list of DNS records required to verify the domain. Includes the apex
MX record unless inbound_enabled is false, and a wildcard MX record
(*.<domain>) when subdomains_enabled is true.
Show child attributes
Show child attributes
The verification status of the domain.
NOT_STARTED, PENDING, INVALID, FAILED, VERIFYING, VERIFIED Allow inboxes on any subdomain of this domain. Adds a required wildcard MX
record (*.<domain>) to records.
Serve open tracking pixels from this domain. Adds a required link.<domain>
CNAME record to records, which must be published and verified before
track_opens can be used on a send.
Time at which the domain was last updated.
Client ID of domain.
Absent on domains created before this field existed; those receive email.
ID of pod.
Why the domain is not (yet) VERIFIED, when known. dns_records_missing / dns_records_invalid point at the DNS records. The ses_* values mean the records look right and sending-infrastructure validation has not converged: ses_dkim_pending / ses_mail_from_pending (still checking), ses_dkim_temporary_failure / ses_mail_from_temporary_failure (a transient error the infrastructure keeps retrying on its own — usually resolves without changes), ses_dkim_failed / ses_mail_from_failed (a terminal verdict; re-verify after fixing), ses_dkim_not_started / ses_mail_from_not_started (the attribute was never configured on the identity — re-verify to push it), and ses_not_verified_for_sending. Absent when VERIFIED.