---
title: "Test a specific version of a meter"
method: POST
path: "/meters/debug/{meterId}/{version}"
tags: ["Meters"]
---

# Test a specific version of a meter

`POST /meters/debug/{meterId}/{version}`

Test a specific version of a meter in Zuora Mediation without executing a full run. It supports multiple input methods, including uploaded files, sample files, and manual test data. This is useful for validating meter logic and transformations before meter run.

## Path parameters

- `meterId` integer, required
- `version` string, required

## Headers

- `Content-Type` string, required
- `Accept-Encoding` string
- `Content-Encoding` string
- `Zuora-Entity-Ids` string
- `Zuora-Org-Ids` string
- `Zuora-Track-Id` string

## Request body

- TestSpecificMeterRequest
  - `sourceOptions` SourceOption[]
    - `processorId` string — The source operator ID. Optional if there is only one local file source.
    - `sampleFileId` integer — Test meter with event definition sample file, specified by the ID.
    - `localFileId` integer — Test meter with uploaded file, specified by the ID.
    - `testData` object[] — Test meter with manually input data.
      - `Amount` number — Amount
      - `Quantity` number — Quantity
      - `UsageDate` string, date — UsageDate
      - `CostCenter` string — CostCenter
      - `CustomerId` string — CustomerId
      - `UsageIdentifier` string — UsageIdentifier
    - `saveTestData` boolean — Whether to save the test data.
    - `testDataName` string — The name of the test data.
    - `testDataId` integer — Test meter with previously saved test data, specified by the ID.
  - `eventStoreSourceOptions` EventStoreSourceOption[]
    - `processorId` string — The source operator ID for event store.
    - `startDate` string, date — The start date of the event store to query from, e.g., 2025-01-01.
    - `endDate` string, date — The end date of the event store to query to, e.g., 2025-02-01.

## Response `200`

Successfully tested meter version.

- TestSpecificMeterResponse
  - `id` string — Internal run history ID, unique within tenant.
  - `sessionId` string — The corresponding session ID of this run.
  - `jobId` string — The corresponding job ID of this run.
  - `meterId` integer — The meter ID.
  - `version` string — The version of the meter.
  - `revision` integer — The revision of the meter version when it runs.
  - `runType` integer — The run type of the meter (1 for NORMAL, 2 for DEBUG).
  - `runTypeDescription` string — Description of the run type.
  - `startTime` string — The start time of the run in ISO 8601 format.
  - `endTime` string — The end time of the run in ISO 8601 format.
  - `runStatus` string — The status of the run (e.g., NEVER_RUN, TESTING, FAILED).
  - `runStatusDescription` string — Description of the run status.
  - `canExportSummary` boolean — Whether the summary is ready to export.
  - `hasLineageEnabled` boolean — Whether lineage is enabled for this run.

## Other responses

- `400` — Bad Request - Invalid or missing parameters.
- `401` — Unauthorized - Authentication failed.
- `500` — Internal Server Error - Unexpected error.

---

[API](https://skmtc.dev/zuora/apis/api-reference.md) · [All operations](https://skmtc.dev/zuora/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/zuora/api-reference/revisions/d11e237f3e54/schema)
