Return Domains
The Domain Actions API (Legacy) offers the functionality to generate a list of transactions that needs to be performed to return a domain to Unstoppable Domains and receive a refund without having to form them on the client.
Step 1: Retrieve Your Reseller ID and Secret API Token
To access your ResellerID
and Secret API Token
, you must navigate to your Sandbox or Production Partner dashboard. The ResellerID
is used to identify the requests as coming from a Partner, while the Secret API Token
is used for authentication to ensure that only authorized Partners can access the API.
Step 2: Prepare Request Body
When making a domain action request, the body must contain information about your domain action in JSON format with the following structure:
{
"action": "Return",
"domain": string, // domain name you are returning
"gasCompensationPolicy": string // gas compensation policy
}
-
action
: (string) The domain action you want to perform. To return domains, the value should be"Return"
. -
domain
: (string) The domain name you want to return. -
gasCompensationPolicy
: (string) The gas compensation policy that should be used for the domain action.
Step 3: Prepare Authorization Headers
The Partner API uses bearer tokens to authorize requests with the Secret API Token
from your Partner credentials.
Field Name | Value |
---|---|
Security Scheme Type | HTTP |
HTTP Authorization Scheme | bearer |
Bearer Format | a token provided by Unstoppable Domains |
Step 4: Use the Create Domain Action Request Endpoint
Send a POST
request to the Create Domain Action Request endpoint. To make a successful request, you must include the request body and authorization headers you have prepared, which should contain information about the domain action you want to perform.
Sandbox Environment:
https://api.ud-sandbox.com/api/v2/resellers/{PARTNER_RESELLERID}/actions
Production Environment:
https://unstoppabledomains.com/api/v2/resellers/{PARTNER_RESELLERID}/actions
info
The PARTNER_RESELLERID
path parameter is the same one you retrieved from your partner account earlier.
Example
Here is an example of a request that you can use to create a domain action request to return a domain with the following parameters:
Parameter | Value |
---|---|
Domain Action | Return |
Domain | reseller-test-udtesting-602716235250.crypto |
Gas Compensation Policy | CompensateFree |
curl --location --request POST 'https://api.ud-sandbox.com/api/v2/resellers/{PARTNER_RESELLERID}/actions' \
--header 'Content-Type: application/json' \
--data-raw '{
"action": "Return",
"domain": "reseller-test-udtesting-602716235250.crypto",
"gasCompensationPolicy": "CompensateFree"
}'
{
"id": 11,
"action": "Return",
"status": "Draft",
"domain": {
"id": 11949,
"name": "reseller-test-udtesting-602716235250.crypto",
"ownerAddress": "0x499dd6d875787869670900a2130223d85d4f6aa7",
"resolver": "0x2a93c52e7b6e7054870758e15a1446e769edfb93",
"resolution": {
"crypto.ETH.address": "0x499dd6d875787869670900a2130223d85d4f6aa7",
"crypto.MATIC.version.ERC20.address": "0x499dd6d875787869670900a2130223d85d4f6aa7",
"crypto.MATIC.version.MATIC.address": "0x499dd6d875787869670900a2130223d85d4f6aa7"
},
"blockchain": "MATIC",
"projectedBlockchain": "MATIC",
"registryAddress": "0x2a93c52e7b6e7054870758e15a1446e769edfb93",
"networkId": 80001,
"freeToClaim": true,
"node": "0x047fd742a6793ecd66d6de1140724c7bcfc1f429fc5a1150a76f58877105b6da"
},
"txs": [
{
"id": 108,
"blockchain": "MATIC",
"hash": null,
"from": "0x499dd6d875787869670900a2130223d85d4f6aa7",
"status": "Draft",
"operation": "TransferDomain",
"failReason": null,
"type": "Meta",
"signatureStatus": "Required",
"messageToSign": "0x4ba3d701323836da23ce8100b9f5b8e5dd09290d589f5c66e0d78a9c1bfb4778"
}
],
"paymentInfo": null
}
The id
field in the API response is the domain action ID and the txs
field contains the list of transactions that needs to be performed to return the reseller-test-udtesting-602716235250.crypto
domain to Unstoppable Domains for a refund.
Congratulations!
You have successfully created the domain action request to return a domain with the Domain Actions API. Now that the domain action is created, you can sign the transaction.