# Resolve Usage

### API Methods&#x20;

<table><thead><tr><th width="204">Query Params</th><th width="110">Status</th><th></th></tr></thead><tbody><tr><td>domain</td><td>required </td><td>Specify the domain to search for user name data.</td></tr><tr><td>networks</td><td>optional</td><td>Allows you to refine your search for user-owned name data by specifying one or more supported blockchain networks. Use this parameter to target specific <a href="../supported-networks">supported networks</a> for your query.</td></tr><tr><td>vendors</td><td>optional</td><td>You can narrow your search further by specifying one or more supported vendors. Utilize this parameter to target specific vendors for your query. The complete list of <a href="../supported-providers">supported providers</a>.</td></tr></tbody></table>

### 1. [**Asynchronous Endpoint**](#user-content-fn-1)[^1]

We recommend using the asynchronous endpoint to access our API for optimal performance and responsiveness. This approach ensures lightning-fast response times and is ideal for applications requiring real-time data with minimal delays.

### **Description**

Upon receiving the first request, the server will immediately return any data it already has in memory. If the data is incomplete, the server will re-trigger the resolution process in the background. Subsequent requests from the client should be repeated until the server has fully resolved the data and returns <mark style="color:orange;">`completeness: 1`</mark>, indicating complete data.

The <mark style="color:orange;">`completeness`</mark> field in the response indicates the level of completeness of the data returned. A value of <mark style="color:orange;">`0`</mark> means the data is incomplete, while a value of <mark style="color:orange;">`1`</mark> indicates that the data is fully complete.

### Example Request

```
GET /resolution/v1/resolve?domain=nick.eth&networks=evm,bsc&vendors=ens,sid,lens
```

### Example Response&#x20;

{% code fullWidth="false" %}

```json
{
  "data": [
    {
      "address": "0xb8c2C29ee19D8307cb7255e1Cd9CbDE883A267d5",
      "network": "evm",
      "vendor": "ens",
      "fetchedAt": 1691049786092
    }
  ],
  "completeness": 1,
  "processedVendors": [
    "ens",
    "lens",
    "sid"
  ]
}
```

{% endcode %}

### 2. Synchronous Endpoint

Sync endpoint response times are significantly higher than async, so usage of sync endpoint is generally discouraged unless you preciously need it.

### Description

The synchronous request method provides instantaneous retrieval of user name data but may have slower response times.

### Example Request&#x20;

```
GET /resolution/v1/resolve-sync?domain=nick.eth
```

### Example Response

```json
{
  "data": [
    {
      "address": "0xb8c2C29ee19D8307cb7255e1Cd9CbDE883A267d5",
      "network": "evm",
      "vendor": "ens",
      "fetchedAt": 1691049734937
    }
  ]
}
```

### Common Response Data

Every mapping from the server includes the `fetchedAt` field, which indicates the timestamp when data was fetched from blockchain. This information helps you understand the freshness of the data you received from the API. After the `fetchedAt` timestamp is aged 1 minute, you may need to re-query the API for the latest data.

### Conclusion&#x20;

Resolution API empowers you to leverage user-owned name data effortlessly and efficiently. Whether you require immediate results or optimal performance, our API delivers with lightning speed. Integrate Resolution API into your applications and unlock the full potential of user-owned names and data!

[^1]: recommended method
