List sending domains
Every domain of the organization, ordered by name. Domains belong to the organization, not to one environment, so every API key of the organization sees the same domains.
bearerAuthAuthorizationBearer <token>A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.
Coss-Version?"2026-10-10"The API version (a date) to use for this request. Defaults to your organization's version, pinned to the latest one when it first used the API and upgraded from the dashboard. The SDK always sends the version it was built for.
"2026-10-10"The organization's domains.
application/json- response
object*"list""list"data*array<>has_more*booleanimport { Coss } from "coss";const coss = new Coss({ apiKey: process.env.COSS_API_KEY, baseUrl: "https://api.coss.com",});const { data, error } = await coss.domains.list();{ "object": "list", "data": [ { "object": "domain", "id": "dom_01k7c8m4q2f3e9v6t5r1n0p8yz", "name": "acme.com", "status": "verified", "can_send": true, "region": "us-east-1", "mail_from_domain": "send.acme.com", "mail_from_status": "success", "records": [ { "priority": null, "required": true, "status": "verified", "found": [], "purpose": "dkim", "type": "CNAME", "name": "x7f3k2m9qp4ld8sv6hwz1nyc5rbtgj0e._domainkey.acme.com", "value": "x7f3k2m9qp4ld8sv6hwz1nyc5rbtgj0e.dkim.amazonses.com" }, { "priority": 10, "required": true, "status": "verified", "found": [], "purpose": "mail_from_mx", "type": "MX", "name": "send.acme.com", "value": "feedback-smtp.us-east-1.amazonses.com" }, { "priority": null, "required": true, "status": "verified", "found": [], "purpose": "mail_from_spf", "type": "TXT", "name": "send.acme.com", "value": "v=spf1 include:amazonses.com ~all" }, { "priority": null, "required": false, "status": "verified", "found": [], "purpose": "dmarc", "type": "TXT", "name": "_dmarc.acme.com", "value": "v=DMARC1; p=none;" } ], "created_at": "2026-01-15T09:30:00.000Z", "last_checked_at": "2026-01-15T09:42:10.000Z", "verified_at": "2026-01-15T09:42:10.000Z", "failed_at": null, "tracking": { "hostname": "links.acme.com", "status": "active", "record": { "type": "CNAME", "name": "links.acme.com", "value": "track.coss.com", "status": "verified", "found": [] }, "message": null, "created_at": "2026-01-15T09:45:00.000Z", "last_checked_at": "2026-01-15T09:52:00.000Z", "activated_at": "2026-01-15T09:52:00.000Z", "failed_at": null } } ], "has_more": false}Retrieve a sending domain GET
The domain with the result of the last DNS check, so you can show which records are still missing or mismatched.
Check a domain's DNS records now POST
Asks the delivery provider and DNS about the domain immediately instead of waiting for the next background check, and returns the updated domain. A `failed` domain starts verification over with fresh DKIM records, which have to be published again. Its tracking domain, if any, is checked too (and set up again if it `failed`).