# Update Domain Settings

> Update Domain Settings is a free API for AI agents from domains.rapidruntime.com, callable via MPP, Free, status unknown (last checked 2026-10-06).

Update autorenew, WHOIS privacy, or transfer lock settings for a registered domain.

## Facts

- Endpoint: PATCH https://domains.rapidruntime.com/api/v1/domains/{domain}?utm_source=zero.xyz
- Price: Free
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-06
- Activations on Zero: 0
- Provider: domains.rapidruntime.com
- Website: https://domains.rapidruntime.com
- Canonical page: https://www.zero.xyz/c/domains-rapidruntime-com-update-domain-settings-e3263e1b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_lkuD9jUj3IHTUXASRZDuU

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability domains-rapidruntime-com-update-domain-settings-e3263e1b -d '<json body>'
```

Example prompt: Can you enable WHOIS privacy and turn on autorenew for mybusiness.com, and also lock it so it can't be transferred away?

## When to prefer this

Use this endpoint when you need to change domain protection settings — autorenew, WHOIS privacy, or transfer lock — on an already-registered domain. It is the right choice for toggling any combination of these three boolean settings in a single call, rather than using a full contact-update or nameserver endpoint.

## Known failure modes

- Domain not found in account — 404 not found
- Invalid domain name format in path — 400 bad request
- Attempting to modify a domain not owned by the authenticated identity — 403 forbidden
- No fields provided in request body — may return 400 or no-op
- WHOIS privacy not supported for certain TLDs — may return 422 or domain-specific error
- Service unavailable from upstream MPP registry — 502 or 503

## How this service works

Update autorenew, WHOIS privacy, or transfer lock.

## Output

Returns the updated domain record including the domain name, lock status, autorenew status, expiry date, creation date, active locks list, and full WHOIS contact details for registrant, admin, tech, and billing contacts.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "locked": {
   "type": "boolean"
  },
  "privacyEnabled": {
   "type": "boolean"
  },
  "autorenewEnabled": {
   "type": "boolean"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "domainName",
  "locked",
  "autorenewEnabled",
  "expireDate",
  "createDate"
 ],
 "properties": {
  "locks": {
   "type": "array",
   "items": {
    "type": "string"
   }
  },
  "locked": {
   "type": "boolean"
  },
  "contacts": {
   "type": "object",
   "required": [
    "registrant",
    "admin",
    "tech",
    "billing"
   ],
   "properties": {
    "tech": {
     "type": "object",
     "required": [
      "firstName",
      "lastName",
      "address1",
      "city",
      "state",
      "zip",
      "country",
      "email",
      "phone"
     ],
     "properties": {
      "fax": {
       "type": "string"
      },
      "zip": {
       "type": "string"
      },
      "city": {
       "type": "string"
      },
      "email": {
       "type": "string"
      },
      "phone": {
       "type": "string"
      },
      "state": {
       "type": "string"
      },
      "country": {
       "type": "string"
      },
      "address1": {
       "type": "string"
      },
      "address2": {
       "type": "string"
      },
      "lastName": {
       "type": "string"
      },
      "firstName": {
       "type": "string"
      },
      "companyName": {
       "type": "string"
      }
     }
    },
    "admin": {
     "type": "object",
     "required": [
      "firstName",
      "lastName",
      "address1",
      "city",
      "state",
      "zip",
      "country",
      "email",
      "phone"
     ],
     "properties": {
      "fax": {
       "type": "string"
      },
      "zip": {
       "type": "string"
      },
      "city": {
       "type": "string"
      },
      "email": {
       "type": "string"
      },
      "phone": {
       "type": "string"
      },
      "state": {
       "type": "string"
      },
      "country": {
       "type": "string"
      },
      "address1": {
       "type": "string"
      },
      "address2": {
       "type": "string"
      },
      "lastName": {
       "type": "string"
      },
      "firstName": {
       "type": "string"
      },
      "companyName": {
       "type": "string"
      }
     }
    },
    "billing": {
     "type": "object",
     "required": [
      "firstName",
      "lastName",
      "address1",
      "city",
      "state",
      "zip",
      "country",
      "email",
      "phone"
     ],
     "properties": {
      "fax": {
       "type": "string"
      },
      "zip": {
       "type": "string"
      },
      "city": {
       "type": "string"
      },
      "email": {

… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/domains-rapidruntime-com-update-domain-settings-e3263e1b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from domains.rapidruntime.com](https://www.zero.xyz/host/domains.rapidruntime.com/llms.txt)
