# Update a domain (overwriting update) Perform Domain updates while doing full resets of the records. ### Change Owner with Record Reset { "owner": { "type": "EXTERNAL", "address": "0x123" }, "records": {} } Clears all records from the domain, then changes owner to the new owner address. NOTE: You must include "records": {} to indicate the intent to clear records. #### Owner Types When changing owner of a domain, you must provide both a type and an address to clearly indicate the intent of the change. - NONE: Used when changing the owner to a "burn" address, which will result in nobody owning the domain - Valid "burn" addresses are 0x0000000000000000000000000000000000000000 and 0x000000000000000000000000000000000000dEaD - UD: Used when changing the owner to an addressed owned by Unstoppable Domains - SELF: Used when changing the owner to another address that belongs to your account - EXTERNAL: Used when changing the owner to address that doesn't qualify as any of the above. - _WARNING_: This will result in the domain belonging to an address outside of the management of Unstoppable Domains and we will have no way to recover it. ### Update Records with Record Reset { "records": { "key2": "value2" } } When applied to a domain with existing records, only key2 will remain after the update is complete. See our documentation for more information on standardized keys. Endpoint: PUT /domains/{name} Version: 3.0.0 Security: bearer ## Path parameters: - `name` (string, required) Example: "matt.crypto" ## Query parameters: - `$preview` (boolean) Allows simulating the operation creation (when set to true), without actually starting any processing. This can be used to validate the operation will be permitted and get a preview of the initial outcome. When used, the operation in the response will have PREVIEW for all id and status values. ## Request fields (application/json): - `owner` (object) - `owner.type` (string, required) - NONE: Domain is not currently owned by anyone - UD: Domain is owned by a wallet/contract that belongs to Unstoppable Domains - SELF: Domain is owned by your account. You can manage this domains through the API - EXTERNAL: Owner doesn't qualify as any of the above. Enum: "NONE", "UD", "SELF", "EXTERNAL" - `owner.address` (any, required) - `records` (object) ## Response 200 fields (application/json): - `@type` (string, required) Enum: "unstoppabledomains.com/partner.v3.DomainOperationResult" - `operation` (object, required) - `operation.id` (string, required) Example: "op-4abb409c-9283-4589-bd36-d27a757a2165" - `operation.status` (string, required) Enum: "QUEUED", "SIGNATURE_REQUIRED", "PROCESSING", "COMPLETED", "FAILED", "CANCELLED" - `operation.type` (string, required) Enum: "DOMAIN_CLAIM", "DOMAIN_UPDATE", "DOMAIN_RETURN", "WALLET_CREATE", "WALLET_UPDATE", "WALLET_VERIFY", "ACCOUNT_UPDATE" - `operation.domain` (string) - `operation.lastUpdatedTimestamp` (number, required) Example: 1684356429790 - `operation.dependencies` (array, required) ## Response 502 fields (application/json): - `code` (string) Example: "BAD_GATEWAY"