# Important considerations

{% hint style="warning" %}
**Note (Updated: 2025-05-01):** This page might contain outdated information. For the most up-to-date documentation, please visit the main [Building Dimension Adapters](/list-your-project/other-dashboards.md) guide.
{% endhint %}

## Important considerations

**Multiple adapters, same protocol**

* If you want to list your protocol in different dashboards you can return in the same adapters dimensions of different dashboards. See the following example:

```typescript
const adapter = {
  adapter: {
    ...,
    fetch: async ({ endTimestamp }) => {
        const { dailyVolume } = await querySubgraph(volumeQuery, endTimestamp)
        const { dailyFees } = await querySubgraph(feesQuery, endTimestamp)
        return {
            dailyVolume, // dimension for dexs dashboard
            dailyFees, // dimension for fees dashboard
        }
    }
    ...,
  }
}
```

**Methodology**

* For fees and revenue adapters please don't forget to include how have you calculated the values in the methodology attribute.

```typescript
const adapter = {
  adapter: {
    ...
    fetch: async () => ({
      dailyFees: "32498",
      dailyRevenue: "0",
      dailySupplySideRevenue: "32498"
    }),
    meta: {
      methodology: {
        Fees: "User pays 2% of each swap",
        Revenue: "Protocol takes no revenue",
        SupplySideRevenue: "LPs revenue is 2% of user fees",
      }
    }
  }
}
```

**Incomplete data**

* If the adapter is not able to provide data for all dimensions, let's say for example you can only provide data for `dailyVolume` but not for `totalVolume`, please keep the dimension as `undefined`, don't assign an arbitrary value or set to it `"0"`.

```typescript
// wrong
{
    dailyFees: "2144",
    totalFees: "0" // <- wrong!!
}

// correct
{
    dailyFees: "2144"
}
```

* If the adapter can't be used to backfill data and only allows to get data for today's timestamp, please **set the flag** `runAtCurrTime` to `true`. See more about this flag in the previous sections.

```typescript
const adapter = {
  adapter: {
    fetch: fetchFunction,
    runAtCurrTime: true
  }
}
```

**Precision**

Please, consider using the *BigNumber* library when doing mathematical operations that might result or include a value with a magnitude outside the range of safe values to use in JavaScript.

```typescript
const feesInGas = new BigNumber(graphRes["fees"])
const ethGasPrice = await getGasPrice(timestamp)
return {
    dailyRevenue = feesInGas.multiplyBy(ethGasPrice)
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.llama.fi/list-your-project/other-dashboards/important-considerations.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
