---
title: "Get meter"
method: GET
path: "/meters/{id}"
tags: ["Meters"]
---

# Get meter

`GET /meters/{id}`

## Path parameters

- `id` integer, required

## Query parameters

- `expand` string[] — To expand multiple fields: `expand=asset&expand=location`

## Response `200`

Successfully retrieved meter's information

- object
  - `meter` object, required
    - `id` number, required — Global ID of the meter.
    - `assetId` integer, nullable, required — Global ID of the asset tied to the meter
    - `locationId` integer, nullable, required — Global ID of the location tied to the meter
    - `creatorId` integer, required — Global ID of the user who created the meter
    - `updaterId` integer, nullable, required — Global ID of the last user who updated the meter
    - `name` string, required — Name of the meters
    - `uuid` string, required — Universally unique identifier of the meter in the UUID format
    - `description` string, nullable, required — Description of the meter
    - `measurementType` 'MANUAL' | 'IOT_DEVICE' | 'AUTOMATED_SENSOR', required — Represents the Type of meter. <br><br><code>Manual</code>: They are made to be used in the MaintainX app and to retain manually entered values and are limited to 10 distinct readings creation requests per 24 hours over REST API. Batched readings requests only count as one toward the rate limit. <br><br><code>Automated</code>: (Enterprise Plan) Automated meters store high frequency readings sent from integrations and have normal rate limiting. <br><br>~~<code>IoT Device</code>~~: IoT Device meters are deprecated and should no longer be used in the future. Creating an IoT Device meter will mimic automated meters in terms of behavior to avoid breaking changes.
    - `readingFrequency` union, required — Expected reading frequency of the meter. Mostly useful for manual meters.
      - object, nullable
        - `type` 'SECONDLY', required
        - `interval` integer — Number of seconds between readings. Minimum 10s for IOT_DEVICE, 86400s for MANUAL
      - object, nullable
        - `type` 'MINUTLY', required
        - `interval` integer — Number of minutes between readings
      - object, nullable
        - `type` 'HOURLY', required
        - `interval` integer — Number of hours between readings
      - object, nullable
        - `type` 'DAILY', required
        - `interval` integer — Number of days between readings
      - object, nullable
        - `type` 'WEEKLY', required
        - `interval` integer — Number of weeks between readings
        - `days` string[] — Days of the week the event will occur
      - object, nullable
        - `type` 'MONTHLY', required
        - `interval` integer — Number of months between readings
        - `day` integer — Day of the month the event will occur
      - object, nullable
        - `type` 'YEARLY', required
        - `interval` integer — Number of years between readings
    - `unit` string, required — Measurement unit for the readings. Any string is accepted. However, if applicable, we recommed you to use the following units as it may carry extra functionality: <br><ul> <li>Distance: <ul> <li><code>Miles</code></li><li><code>Feet</code></li><li><code>Inches</code></li><li><code>Kilometers</code></li><li><code>Meters</code></li><li><code>Centimeters</code></li><li><code>Millimeters</code></li> </ul> </li> <li>Volume: <ul> <li><code>Gallons</code></li><li><code>Liters</code></li><li><code>Milliliters</code></li><li><code>Cubic Meters</code></li> </ul> </li> <li>Temperature: <ul> <li><code>Celsius</code></li><li><code>Fahrenheit</code></li><li><code>Kelvin</code></li> </ul> </li> <li>Other: <ul> <li><code>Hours</code></li><li><code>Cycles</code></li><li><code>PSI</code></li><li><code>Kilograms</code></li><li><code>Grams</code></li><li><code>dBm</code></li><li><code>Nm</code></li> </ul> </li> <li>Velocity: <ul> <li><code>MetersPerSecond</code></li><li><code>InchesPerSecond</code></li><li><code>MillimetersPerSecond</code></li> </ul> </li> <li>Acceleration: <ul> <li><code>G-Force</code></li><li><code>MetersPerSecondSquared</code></li><li><code>FeetPerSecondSquared</code></li> </ul> </li> <li>Electrical: <ul> <li><code>Volts</code></li><li><code>Amps</code></li> </ul> </li> </ul>
    - `createdAt` string, required — Meter creation date.
    - `updatedAt` string, required — Date that Meter was last modified.
    - `deletedAt` string, date-time, nullable, required — Date at which the meter was deleted.
    - `asset` object, nullable — Asset linked to the element (expand with query parameter)
      - `id` integer, required — Global ID of the asset
      - `name` string, required
      - `description` string, nullable, required
      - `parentId` integer, nullable, required — ID of the parent asset
      - `criticalityId` integer, nullable, required — ID of the criticality of the asset
      - `locationId` integer, nullable, required — ID of the location where the asset is located
      - `serialNumber` string, nullable, required — Serial number of the asset
      - `createdAt` string, date-time, required — Date & time at which the asset was created
      - `updatedAt` string, date-time, required — Date & time at which the asset was last updated. This doesn't include comments
      - `creatorId` integer, nullable, required — ID of the asset creator
    - `location` object, nullable — Location linked to the element (expand with query parameter)
      - `id` integer, required — Global ID of the location
      - `name` string, required
      - `description` string, nullable
      - `address` string, nullable — Postal address of the location
      - `parentId` integer, nullable — ID of the parent location
      - `createdAt` string, date-time — Date & time at which the location was created
      - `updatedAt` string, date-time — Date & time at which the location was last updated. This doesn't include comments
    - `lastReading` object, nullable — Last reading of a meter (expand with query parameter)
      - `id` string, required — Global ID of the reading. IoT meters will produce IDs with the format '{meterId}-{uuid}', while manual meters will produce numbered IDs.
      - `meterId` number, required — Global ID of the meter.
      - `createdAt` string, required — Meter Reading creation/processing date.
      - `readingDate` string, nullable, required — Date at which the meter was read. This date can be set in the past, but cannot be further than 3 days for IoT meters.
      - `value` number, required — The reading value given by the meter.

## Other responses

- `400` — Error with query
- `401` — Invalid token
- `404` — Could not find the specified meter or the user cannot access it.

---

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