---
title: "List consolidated rates"
method: GET
path: "/public/v2/consolidated_rates/"
tags: ["Reporting"]
---

# List consolidated rates

`GET /public/v2/consolidated_rates/`

## Request

- Base URL: `https://api.dualentry.com`
- URL: `https://api.dualentry.com/public/v2/consolidated_rates/`
- Auth: none declared

Company x parent x month consolidation rates, same columns as the `consolidated_rates` table in your data export. Ordered by company, parent, period date, and id. Page with the opaque `cursor` / `next_cursor` pair. Restricted keys see a rate when they can reach the child company or the parent company.

## Query parameters

- `limit` integer: Number of rows to return (capped at 100)
- `cursor` string, nullable: Opaque cursor from a previous response's next_cursor. Omit for the first page.

## Response `200`

OK

- PublicConsolidatedRatesPageOut
  - `items` PublicConsolidatedRateRowOut[], required
    - `id` integer, required
    - `company_id` integer, required
    - `parent_company_id` integer, required
    - `company_currency_iso_4217_code` string, required
    - `parent_currency_iso_4217_code` string, required
    - `period_date` string, date, required
    - `locked` boolean, required
    - `current_rate` string, required
    - `average_rate` string, required
    - `historical_rate` string, required
  - `next_cursor` string, nullable: Pass as cursor on the next request. Null when there are no more rows.

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `500`: Internal Server Error

## Changes

- **2026-10-19** `7588ae19aaff`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/dualentry/apis/dualentry-public-api/changes/public/v2/consolidated_rates/get.md)

---

[API](https://skmtc.dev/dualentry/apis/dualentry-public-api.md) · [All operations](https://skmtc.dev/dualentry/apis/dualentry-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/dualentry/apis/dualentry-public-api/revisions/7588ae19aaff?raw)
