Listing Meters

Get a list of Meters, reverse ordered by created date. Use parameters to filter the list.


GET https://utilityapi.com/api/v2/meters
# Get a list of all Meters
curl -H 'Authorization: Bearer API_TOKEN_HERE' \
    'https://utilityapi.com/api/v2/meters'
# Get some specific Meters 123 and 456
curl -H 'Authorization: Bearer API_TOKEN_HERE' \
    'https://utilityapi.com/api/v2/meters?uids=123,456'
# Get all archived Meters
curl -H 'Authorization: Bearer API_TOKEN_HERE' \
    'https://utilityapi.com/api/v2/meters?is_archived=true'
# Get the Meters that were created from a specific Authorization
curl -H 'Authorization: Bearer API_TOKEN_HERE' \
    'https://utilityapi.com/api/v2/meters?authorizations=abcd1234'
# Get the Meters for a specific user
curl -H 'Authorization: Bearer API_TOKEN_HERE' \
    'https://utilityapi.com/api/v2/meters?users=6744"
Parameter Format Description Example
uids List(UID String) Filter by Meter uids. Separate with commas (,). uids=123,456
authorizations List(UID String) Filter by Authorization uids. Separate with commas (,). authorizations=123,456
users List(UID String) Filter by user uids (see user_uid). Separate with commas (,). users=4834,5898
utility List(UtilityID) Filter by utility. Separate with commas (,). utility=PG%26E,LADWP
is_activated Boolean Filter by whether a meter has had any data collection performed (historical-collection). is_activated=false
is_archived Boolean Filter by archived state. is_archived=true
is_monitored Boolean Filter by whether a meter has an active monitoring subscription. is_monitored=true
after UID String List items after this Meter uid. after=456
expand_meter_blocks Boolean Load complete meter block information. This is only for utilities that do not expand Meter blocks by default. For utilities that expand their Meter blocks by default, this parameter is ignored. expand_meter_blocks=true

Returns a MeterListing object containing a list of Meter objects from newest to oldest. If the number of results is over 1000, a next parameter will have the link to the next in the series of lists.

// Example result
{
    "meters": [
        {"uid": "12837438", "created": ...},
        {"uid": "12837438", "created": ...},
        ...
    ],
    "next": null,
}

This is the object that contains the Meter results for the request. We don't just return a straight list of results so that we can paginate results if needed. Currently, the maximum results per request is set at 1000.

Parameter Format Description Example
meters List(Meter) List of Meter results. [{"uid": ...}, ...]
next URL or null If there are more results than the page limit, this is a link to the next set of results. "https://utilityapi.com/api/v2/meters?after=234"
// Example MeterListing
{
    "meters": [...],
    "next": null,
}
Code Response Format Description
200 MeterListing Successful request.
400 Error The query parameters included are malformed. Check the error in the response for the type of error:
  • invalid_param - One of the query parameters was invalid. Check the error description for more info.
We may add more error types in the future, so be able to handle unknown types.
401 Error Invalid or missing access_token. See our docs on Authentication for how to properly use your access_token.
429 N/A The request was rate limited. Check the Retry-After response header for how long to wait until retrying the request. Do not expect any specific response format for this error (could be html, json, or nothing).
500 N/A Internal server error. Do not expect any specific response format for this error (could be html, json, or nothing). This error is logged and will be fixed by our engineers.
503 N/A Site is currently down for maintenance. Do not expect any specific response format for this error (could be html, json, or nothing).
504 N/A We tried to build this request but timed out. Please try again later. Do not expect any specific response format for this error (could be html, json, or nothing).