---
title: "Get Legacy Report ID Map"
method: GET
path: "/api/v1/custom-reports/legacy-id-map"
tags: ["Custom Reports", "Public API"]
---

# Get Legacy Report ID Map

`GET /api/v1/custom-reports/legacy-id-map`

Returns a mapping from legacy custom report IDs to the new report IDs created by the report migration. Use this to update automations or integrations that still reference legacy report IDs. Pass a `newReportId` to Get Report by ID (`get-report-by-id`) to execute the migrated report.

Administrators receive a mapping for every custom report in the account; other users receive mappings only for the custom reports they can access (reports they own or that are shared with them). Because the map for a non-administrator is silently limited to their accessible reports, a legacy ID that is absent may be outside that user's visibility rather than nonexistent in the account.

Each entry pairs a `legacyReportId` with its `newReportId` and a `status`. When a report has not been migrated, `newReportId` is `null` and `status` is `notMigrated`; otherwise `newReportId` is the migrated report's ID and `status` is `migrated`.

Returns an empty `mappings` array when the user has no accessible custom reports.

OAuth Scopes: report

## Response `200`

Returns an object containing a `mappings` array of legacy-to-new report ID mappings.

- object
  - `mappings` object[]
    - `legacyReportId` integer
    - `newReportId` integer, nullable
    - `status` 'migrated' | 'notMigrated'

## Other responses

- `403` — The caller is not authorized to access reports.
- `500` — An unexpected error occurred while building the legacy report ID map.

---

[API](https://skmtc.net/bamboohr/apis/bamboohr-api.md) · [All operations](https://skmtc.net/bamboohr/apis/bamboohr-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bamboohr/bamboohr-api/revisions/19ebf391a399/schema)
