> ## Documentation Index
> Fetch the complete documentation index at: https://docs.blockworks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Project Revenue

> Daily gross, contra and net revenue in USD for one project. Each series is one project, keyed by its project slug, or its parent protocol's short name when no project is mapped, and matching the protocol-revenue series key.

One row per project with revenue data, keyed by its project slug (or its parent protocol's short name when no project is mapped): name, slug, parent slug and project id. The id is the series key of the project-revenue timeseries model and matches the protocol-revenue id.

| | |
| - | - |
| Access | Protocol-revenue-dataset |
| Tabular model | `project-revenue`: primary key `id` |
| Timeseries model | `project-revenue`: intervals `1d`, series key `id` (Project Revenue ID), every series available in one call |

## Endpoints

> **[List Projects](https://docs.blockworks.com/api-reference/data-api/protocol-revenue/tabular-project-revenue.md)**
>
> One page of rows with per-column filters, sorting and pagination.

> **[Batch Get Project timeseries](https://docs.blockworks.com/api-reference/data-api/protocol-revenue/timeseries-project-revenue.md)**
>
> Every series in one request, or the named ones.

> **[Get Project timeseries](https://docs.blockworks.com/api-reference/data-api/protocol-revenue/timeseries-project-revenue-by-id.md)**
>
> One series over a time window, keyed by its Project Revenue ID.

## Metrics

3 metrics. Use the `Field` value in `selections`; every point starts with the timestamp and continues in this order.

| Field | Name | Type | Unit | Description |
| - | - | - | - | - |
| `grossRevenueUSD` | Gross Revenue (USD) | float64 | | Gross revenue in USD; negative on some days. |
| `contraRevenueUSD` | Contra Revenue (USD) | float64 | | Contra revenue in USD, deducted from gross revenue to give net revenue. |
| `netRevenueUSD` | Net Revenue (USD) | float64 | | Net revenue in USD, gross less contra revenue. |

## Columns

Use the `Field` value in `selections`, `sortBy`, and as the base of a filter parameter (`Field` plus one of its `Filters` suffixes).

| Field | Type | Filters | Sort | Description |
| - | - | - | - | - |
| `id` | string | `Eq`, `IsOneOf` | | The series key of the project-revenue timeseries model, the project slug, or the parent protocol's short name when no project is mapped. (primary key) |
| `name` | string | `Eq`, `IsOneOf`, `Contains` | default | The project's name. |
| `slug` | string | `Eq`, `IsOneOf` | yes | The project's slug, the slug used for the same project across the API. |
| `parentSlug` | string | `Eq`, `IsOneOf` | yes | The parent protocol's short name (aave, morpho). |
| `projectID` | string | `Eq`, `IsOneOf` | | The identifier of the project record; null when unmapped. |

## Example

```bash curl theme={null}
curl "https://api.blockworks.com/query/timeseries/project-revenue/1d/<id>?timeframe=7d&selections=grossRevenueUSD,contraRevenueUSD" \
  -H "X-Blockworks-API-Key: $BLOCKWORKS_API_KEY"
```

See [Get Project timeseries](https://docs.blockworks.com/api-reference/data-api/protocol-revenue/timeseries-project-revenue-by-id.md) for the response and the errors.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.