Returns one report definition by its identifier.
Purpose: Confirm that a report exists and read its name, category and audit details before you list its layouts or run it.
When to use: When you already have a report ID (from configuration or a previous call) and want to confirm it still exists before you list layouts or run it.
| Parameter | In | Type | Required | Default | Description |
|---|---|---|---|---|---|
reportId | path | integer | Yes | Identifier of the report (id from List reports). | |
Zuora-Track-Id | header | string | No | Optional correlation identifier (up to 64 characters) that you choose. The Zuora One gateway records it; quote it to Zuora Support when you report a problem. | |
Authorization | header | string | Yes | Bearer <access_token> (Zuora OneID OAuth). |
Request body: none.
| HTTP status | Content type | Response schema |
|---|---|---|
200 | application/json | Report |
400 | application/json | SpringError |
401 | application/json | GatewayError |
403 | application/json | GatewayError |
404 | none | No body |
429 | application/json | GatewayError |
500 | application/json | ServiceError |
Report: A report definition in the tenant's report catalog. A report describes a data set (for example revenue waterfall or deferred revenue balances). It does not contain row data.
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | No | Unique numeric identifier of the report definition. Use it as reportId in every other Reports call. |
name | string | No | Display name of the report. List reports returns the translated name when a translation exists for the caller's language; other operations return the stored name. |
description | string | No | Business description of what the report contains. |
category | string | No | Catalog grouping the report belongs to, as configured in Zuora Revenue. |
sequence | integer | No | Display order of the report inside its category. Lower numbers are shown first. |
createdBy | string | No | User name that created the report definition. |
createdAt | string (date-time) | No | Date and time the report definition was created, formatted yyyy-MM-dd'T'HH:mm:ss. |
updatedBy | string | No | User name that last changed the report definition. |
updatedAt | string (date-time) | No | Date and time the report definition was last changed, formatted yyyy-MM-dd'T'HH:mm:ss. |
Error response schemas (GatewayError, ServiceError, SpringError, SimpleError, MissingFiltersError, RunStatusConflict, RiaError, SignedUrlError) are defined once under Error response schemas in the API overview and in components/schemas.
Response codes: 200, 400, 401, 403, 404, 429, 500. Each response with a body includes worked examples; responses without a body say so.
- Zuora One production. Revenue Reporting paths start with /revenue/services/v1; Integration Reporting paths start with /api/integration/v1 or /api/integration/v2.https://one.zuora.com/revenue/services/v1/reports/{reportId}
curl -i -X GET \
https://one.zuora.com/revenue/services/v1/reports/10021 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Zuora-Track-Id: close-run-2026-09-001'Success. The report.
Unique numeric identifier of the report definition. Use it as reportId in every other Reports call.
Display name of the report. List reports returns the translated name when a translation exists for the caller's language; other operations return the stored name.
Business description of what the report contains.
Catalog grouping the report belongs to, as configured in Zuora Revenue.
Display order of the report inside its category. Lower numbers are shown first.
Date and time the report definition was created, formatted yyyy-MM-dd'T'HH:mm:ss.
{ "id": 10021, "name": "Revenue Waterfall Report", "description": "Recognized and scheduled revenue by period for each revenue contract line", "category": "Revenue", "sequence": 3, "createdBy": "SYSADMIN", "createdAt": "2024-01-15T09:30:00", "updatedBy": "FIN.ADMIN", "updatedAt": "2026-08-02T14:05:11" }