The Resolution Service provides an API for getting domain data and metadata regardless of the blockchain in which the domain is stored. The service caches blockchain events in a database for easy retrieval without accessing any blockchain APIs.
With the Resolution Service API, you can quickly build applications directly communicating with the blockchain to get UD domain data with a single API request. For example, the Web3 Domain Resolution Demo was built using the Resolution Service API.
The Resolution Service API supports decentralized domains across two main zones:
|Name Service||Supported Domains|
|Zilliqa Name Service (ZNS)||
|Unstoppable Name Service (UNS)||
Unstoppable Domains periodically adds new domain endings, and our Resolution libraries and APIs are designed to detect and support them automatically. This means you do not need to implement a front-end filter in your application (e.g., by hard-coding specific domains or using a regex filter for only
.nft, etc.). We also provide an API endpoint to query for supported domain endings.
Before you can make any request to the Resolution Service API, you must acquire an API key from Unstoppable Domains. Please email firstname.lastname@example.org to request an API key for your integration.
The API key provided by Unstoppable Domains is free to acquire (no cost to open source projects). However, storing the keys in a secret manager or environment variables for open-source projects like other third-party APIs is advisable.
The Resolution Service API uses
Bearer Tokens to authorize requests with the API key gotten from Unstoppable Domains.
|Security Scheme Type||HTTP|
|HTTP Authorization Scheme||bearer|
|Bearer Format||a token provided by Unstoppable Domains|
Unstoppable Domains offers a Postman collection that you can easily import into your workspace to quickly interact with the Resolution Service API.
Below is a table of all the API endpoints provided by the Resolution Service, a description of their function, and links to their respective documentation. For more details about the endpoints, see the Resolution Service endpoint specification.
|Get Records for a Domain||returns all the records attached to a domain name.||Get Records for a Domain Docs|
|Get Records for Multiple Domains||returns all the records attached to multiple domain names.||Get Records for Multiple Domains Docs|
|Get Records for Owner Addresses||returns all the domain names, records, and metadata owned by a wallet address or configured to a resolution record.||Get Records for Owner Addresses Docs|
|Get Domain Transfer Events||returns the transfer history of a domain name.||Get Domain Transfers Docs|
|Get Reverse Record for an Address||returns the reverse record of a wallet address.||Get Reverse Record for an Address Docs|
|Get Reverse Record for Multiple Addresses||returns the reverse record of multiple wallet addresses.||Get Reverse Record for Multiple Addresses Docs|
|Get Supported TLDs||returns all the domain endings supported by Unstoppable Domains.||Get Supported TLDs Docs|
|Get Metadata for a Domain||returns the ERC721 metadata information of a domain name.||Get Metadata for a Domain Docs|
|Get Domain SVG Image||returns the image data of a domain name as a SVG string.||Get Domain SVG Image Docs|
|Get Domain Image Source||returns the image data of a domain name in
||Get Domain Image Source Docs|
The rate limits for the Resolution Service endpoints are as follows:
- 20 requests per IP per second for metadata endpoints
- 20 requests per IP per second for other endpoints
When the rate limit is exceeded, a status code of 429 will be returned.
The Resolution Service can be installed, configured, and self-hosted locally and in the cloud. Unstoppable Domains provides the Resolution Service as a docker image so it can be launched on various platforms. Please see the Resolution Service installation guide for steps on running a self-hosted version of the service.
If you are experiencing difficulties using our services, please know that we are here to help. You can join our Discord Community for real-time support from UD and the community, where you can receive assistance with integrating your app