subdy docs
API reference

Subdomains

Check availability, create, list, inspect and delete subdomains.

Check availability

Public, no auth. reason is null, "taken" or "reserved".

curl -sS "https://api.subdy.io/v1/subdomains/check-availability?name=myapp"
200 OK
{ "name": "myapp", "available": true, "reason": null }

Create a subdomain

ip is optional — when present, the first A (or AAAA for IPv6) record is created and pushed immediately. issueWildcardCertificate: true also queues a wildcard certificate (Pro).

curl -sS -X POST "https://api.subdy.io/v1/subdomains" \
  -H "Authorization: Bearer $SUBDY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"myapp","ip":"203.0.113.10"}'
201 Created
{
  "id": "7f6b1a02-…",
  "name": "myapp",
  "status": "active",
  "category": "unclassified",
  "riskScore": null,
  "createdAt": "2026-08-08T12:00:00.000Z",
  "updatedAt": "2026-08-08T12:00:01.000Z"
}

Save id — record operations below use it as $SUBDOMAIN_ID.

List subdomains

curl -sS "https://api.subdy.io/v1/subdomains" \
  -H "Authorization: Bearer $SUBDY_TOKEN"
200 OK
{
  "subdomains": [
    {
      "id": "7f6b1a02-…",
      "name": "myapp",
      "status": "active",
      "recordCount": 1,
      "primaryRecord": "A → 203.0.113.10",
      "…": "…"
    }
  ],
  "total": 1
}

Get one subdomain

curl -sS "https://api.subdy.io/v1/subdomains/$SUBDOMAIN_ID" \
  -H "Authorization: Bearer $SUBDY_TOKEN"

Returns the same object as create.

Delete a subdomain

Removes the subdomain and all of its records; nameservers answer NXDOMAIN within seconds. Irreversible.

curl -sS -X DELETE "https://api.subdy.io/v1/subdomains/$SUBDOMAIN_ID" \
  -H "Authorization: Bearer $SUBDY_TOKEN"
200 OK
{ "deleted": true }