> ## 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 Expenses

> Daily expenses in USD for one project, split into cost of revenue and operating expenses. 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 project-revenue series key.

One row per project with expense 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-expenses timeseries model and matches the project-revenue id.

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

## Endpoints

> [card] [List Project Expenses](https://docs.blockworks.com/api-reference/data-api/project-financials/tabular-project-expenses.md)
>
> One page of rows with per-column filters, sorting and pagination.

> [card] [Batch Get Project Expense timeseries](https://docs.blockworks.com/api-reference/data-api/project-financials/timeseries-project-expenses.md)
>
> Up to 10 series in one request, named by series key in `series`.

> [card] [Get Project Expense timeseries](https://docs.blockworks.com/api-reference/data-api/project-financials/timeseries-project-expenses-by-id.md)
>
> One series over a time window, keyed by its Project Expense 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 |
| - | - | - | - | - |
| `costOfRevenueUSD` | | | | |
| `operatingExpensesUSD` | | | | |
| `totalExpensesUSD` | | | | |

## 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 | | | The series key of the project-expenses timeseries model, the project slug, or the parent protocol's short name when no project is mapped. |
| `name` | string | | | The project's name. |
| `parentSlug` | string | | | The parent protocol's short name (aave, morpho). |
| `projectID` | string | | | The identifier of the project record; null when unmapped. |
| `slug` | string | | | The project's slug, the slug used for the same project across the API. |

## Example

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

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


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