Utilitarian API (1.1.0)

Download OpenAPI specification:Download

Utilitarian API is a software for Multi Utility AMR (Automatic Meter Reading) built by Palmlund Wahlgren Innovative Technology AB and is targeted to utility organisations that require a more open solution for their AMR Operations.

The source for this documentation can be found on github.com. If you find any errors in the documentation or you have suggestions on how to make it better please create an issue on Github.

Introduction

Utilitarian API is a RESTful API that exposes endpoint for AMR Operations.

The common part deals with general aspects of the API.

Under the Metering part all endpoints for the management of Meter Devices and Meter Readings are gathered.

Under the Jobs part all endpoint for managing the pulling meter data and communication to with Meter Devices are gathered. (Ongoing work)

Authentication

Each user is given a unique API Key Token to interact with the API. It is also possible to use basic auth but not recomended.

For clients to authenticate, the token key should be included in the Authorization HTTP header. The key should be prefixed by the string literal "Token", with whitespace separating the two strings. For example:

Authorization: Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4b

Unauthenticated responses that are denied permission will result in an HTTP 401 Unauthorized response with an appropriate WWW-Authenticate header. For example:

WWW-Authenticate: Token

Note: If you are running an instance of Utilitarian API that is accessable over the Internet you need to make sure that the API is only served under https.

Pagination

The Pagination scheme used for Utiltiarian API is a Limit/Offset scheme.

By using a limit indicates the maximum number of items to return and the offset indicates the starting position of the query in relation to the complete set of unpaginated items. This makes for a very extensible pagination scheme where the client have better control of the returned values. In all responses the total count of items in the compleate set of unpaginated items are returned to be able to know where in the set a pagination response is located.

The limit and offset is applied in query parameters like:

GET https://api.example.org/accounts/?limit=100&offset=400

The following example shows a common result set.

{
  "count": 1023
  "next": "https://api.example.org/accounts/?limit=100&offset=500",
  "previous": "https://api.example.org/accounts/?limit=100&offset=300",
  "results": []
}

Note: Having very large result sets can lead to significant performance issues.

Meter Devices

Operations on Meter Devices

Meter Devices

Meter Devices are the entity that represents a physical (or logical) meter deployed in the field. They handle all information about how to communicate with the meter and how to interpret the data from the meter.

meter-devices_list

get /meter-devices
/v1/metering/meter-devices

Returns a list of MeterDevices

query Parameters
name
string
external_system_reference
string
manufacturer_serial
string
dlms_logical_device_name
string
dlms_system_title
string
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

200

OK

Response samples

application/json
Copy
Expand all Collapse all
{
  • "count": 0,
  • "previous": "http://example.com",
  • "results":
    [
    ]
}

meter-devices_create

post /meter-devices
/v1/metering/meter-devices

Creates a MeterDevice

Request Body schema: application/json
name
required
string (Unique Name/Identification of Meter) [ 1 .. 50 ] characters
external_system_reference
string (Reference in external systems. Used for export) <= 50 characters Nullable
manufacturer_serial
string (Meter Serial Number from manufacturer) <= 50 characters Nullable
protocol
required
string (The communication protocol used by the meter device)
Enum:"dlms-cosem" "iec62056-21" "i-flag" "mbus" "modbus" "lis-200"
iec62056_21_address
string (Meter Address used for IEC62056-21 communication) <= 8 characters Nullable
dlms_logical_device_name
string (Logical device name used in DLMS Communication) <= 32 characters Nullable ^[abcdefABCDEF1234567890]*$
dlms_system_title
string (System title of meter used in DLMS communication) <= 16 characters Nullable ^[abcdefABCDEF1234567890]*$
type
string <uuid> (Type) Nullable
network_interface
string <uuid> (Network interface) Nullable
has_current_transformer
boolean (Meter has a current transformer in its measurement loop)
current_transformer_ratio
integer (Ratio of current transformer) [ -2147483648 .. 2147483647 ]
has_voltage_transformer
boolean (Meter has a voltage transformer in its measurement loop)
voltage_transformer_ratio
integer (Ratio of voltage transformer) [ -2147483648 .. 2147483647 ]
has_disconnector
boolean (Has disconnector)
disconnector_status
integer (Disconnector status) Nullable
Enum:0 1 2

Responses

201

Created

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "external_system_reference": "string",
  • "manufacturer_serial": "string",
  • "protocol": "dlms-cosem",
  • "iec62056_21_address": "string",
  • "dlms_logical_device_name": "string",
  • "dlms_system_title": "string",
  • "type": "string",
  • "network_interface": "string",
  • "has_current_transformer": true,
  • "current_transformer_ratio": -2147483648,
  • "has_voltage_transformer": true,
  • "voltage_transformer_ratio": -2147483648,
  • "has_disconnector": true,
  • "disconnector_status": 0
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "name": "string",
  • "external_system_reference": "string",
  • "manufacturer_serial": "string",
  • "protocol": "dlms-cosem",
  • "iec62056_21_address": "string",
  • "dlms_logical_device_name": "string",
  • "dlms_system_title": "string",
  • "type": "string",
  • "network_interface": "string",
  • "network_interface_info": "string",
  • "has_current_transformer": true,
  • "current_transformer_ratio": -2147483648,
  • "has_voltage_transformer": true,
  • "voltage_transformer_ratio": -2147483648,
  • "has_disconnector": true,
  • "disconnector_status": 0,
  • "created_at": "2019-06-13T14:07:09Z",
  • "updated_at": "2019-06-13T14:07:09Z"
}

meter-devices_read

get /meter-devices/{id}
/v1/metering/meter-devices/{id}

Returns a single MeterDevice

path Parameters
id
required
string <uuid>

A UUID string identifying this meter device.

Responses

200

OK

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "name": "string",
  • "external_system_reference": "string",
  • "manufacturer_serial": "string",
  • "protocol": "dlms-cosem",
  • "iec62056_21_address": "string",
  • "dlms_logical_device_name": "string",
  • "dlms_system_title": "string",
  • "type": "string",
  • "network_interface": "string",
  • "network_interface_info": "string",
  • "has_current_transformer": true,
  • "current_transformer_ratio": -2147483648,
  • "has_voltage_transformer": true,
  • "voltage_transformer_ratio": -2147483648,
  • "has_disconnector": true,
  • "disconnector_status": 0,
  • "created_at": "2019-06-13T14:07:09Z",
  • "updated_at": "2019-06-13T14:07:09Z"
}

meter-devices_update

put /meter-devices/{id}
/v1/metering/meter-devices/{id}

Updates a single MeterDevice

path Parameters
id
required
string <uuid>

A UUID string identifying this meter device.

Request Body schema: application/json
name
required
string (Unique Name/Identification of Meter) [ 1 .. 50 ] characters
external_system_reference
string (Reference in external systems. Used for export) <= 50 characters Nullable
manufacturer_serial
string (Meter Serial Number from manufacturer) <= 50 characters Nullable
protocol
required
string (The communication protocol used by the meter device)
Enum:"dlms-cosem" "iec62056-21" "i-flag" "mbus" "modbus" "lis-200"
iec62056_21_address
string (Meter Address used for IEC62056-21 communication) <= 8 characters Nullable
dlms_logical_device_name
string (Logical device name used in DLMS Communication) <= 32 characters Nullable ^[abcdefABCDEF1234567890]*$
dlms_system_title
string (System title of meter used in DLMS communication) <= 16 characters Nullable ^[abcdefABCDEF1234567890]*$
type
string <uuid> (Type) Nullable
network_interface
string <uuid> (Network interface) Nullable
has_current_transformer
boolean (Meter has a current transformer in its measurement loop)
current_transformer_ratio
integer (Ratio of current transformer) [ -2147483648 .. 2147483647 ]
has_voltage_transformer
boolean (Meter has a voltage transformer in its measurement loop)
voltage_transformer_ratio
integer (Ratio of voltage transformer) [ -2147483648 .. 2147483647 ]
has_disconnector
boolean (Has disconnector)
disconnector_status
integer (Disconnector status) Nullable
Enum:0 1 2

Responses

200

OK

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "external_system_reference": "string",
  • "manufacturer_serial": "string",
  • "protocol": "dlms-cosem",
  • "iec62056_21_address": "string",
  • "dlms_logical_device_name": "string",
  • "dlms_system_title": "string",
  • "type": "string",
  • "network_interface": "string",
  • "has_current_transformer": true,
  • "current_transformer_ratio": -2147483648,
  • "has_voltage_transformer": true,
  • "voltage_transformer_ratio": -2147483648,
  • "has_disconnector": true,
  • "disconnector_status": 0
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "name": "string",
  • "external_system_reference": "string",
  • "manufacturer_serial": "string",
  • "protocol": "dlms-cosem",
  • "iec62056_21_address": "string",
  • "dlms_logical_device_name": "string",
  • "dlms_system_title": "string",
  • "type": "string",
  • "network_interface": "string",
  • "network_interface_info": "string",
  • "has_current_transformer": true,
  • "current_transformer_ratio": -2147483648,
  • "has_voltage_transformer": true,
  • "voltage_transformer_ratio": -2147483648,
  • "has_disconnector": true,
  • "disconnector_status": 0,
  • "created_at": "2019-06-13T14:07:09Z",
  • "updated_at": "2019-06-13T14:07:09Z"
}

meter-devices_partial_update

patch /meter-devices/{id}
/v1/metering/meter-devices/{id}

Partially updates a single MeterDevice

path Parameters
id
required
string <uuid>

A UUID string identifying this meter device.

Request Body schema: application/json
name
required
string (Unique Name/Identification of Meter) [ 1 .. 50 ] characters
external_system_reference
string (Reference in external systems. Used for export) <= 50 characters Nullable
manufacturer_serial
string (Meter Serial Number from manufacturer) <= 50 characters Nullable
protocol
required
string (The communication protocol used by the meter device)
Enum:"dlms-cosem" "iec62056-21" "i-flag" "mbus" "modbus" "lis-200"
iec62056_21_address
string (Meter Address used for IEC62056-21 communication) <= 8 characters Nullable
dlms_logical_device_name
string (Logical device name used in DLMS Communication) <= 32 characters Nullable ^[abcdefABCDEF1234567890]*$
dlms_system_title
string (System title of meter used in DLMS communication) <= 16 characters Nullable ^[abcdefABCDEF1234567890]*$
type
string <uuid> (Type) Nullable
network_interface
string <uuid> (Network interface) Nullable
has_current_transformer
boolean (Meter has a current transformer in its measurement loop)
current_transformer_ratio
integer (Ratio of current transformer) [ -2147483648 .. 2147483647 ]
has_voltage_transformer
boolean (Meter has a voltage transformer in its measurement loop)
voltage_transformer_ratio
integer (Ratio of voltage transformer) [ -2147483648 .. 2147483647 ]
has_disconnector
boolean (Has disconnector)
disconnector_status
integer (Disconnector status) Nullable
Enum:0 1 2

Responses

200

OK

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "external_system_reference": "string",
  • "manufacturer_serial": "string",
  • "protocol": "dlms-cosem",
  • "iec62056_21_address": "string",
  • "dlms_logical_device_name": "string",
  • "dlms_system_title": "string",
  • "type": "string",
  • "network_interface": "string",
  • "has_current_transformer": true,
  • "current_transformer_ratio": -2147483648,
  • "has_voltage_transformer": true,
  • "voltage_transformer_ratio": -2147483648,
  • "has_disconnector": true,
  • "disconnector_status": 0
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "name": "string",
  • "external_system_reference": "string",
  • "manufacturer_serial": "string",
  • "protocol": "dlms-cosem",
  • "iec62056_21_address": "string",
  • "dlms_logical_device_name": "string",
  • "dlms_system_title": "string",
  • "type": "string",
  • "network_interface": "string",
  • "network_interface_info": "string",
  • "has_current_transformer": true,
  • "current_transformer_ratio": -2147483648,
  • "has_voltage_transformer": true,
  • "voltage_transformer_ratio": -2147483648,
  • "has_disconnector": true,
  • "disconnector_status": 0,
  • "created_at": "2019-06-13T14:07:09Z",
  • "updated_at": "2019-06-13T14:07:09Z"
}

meter-devices_delete

delete /meter-devices/{id}
/v1/metering/meter-devices/{id}

Deletes a single MeterDevice

path Parameters
id
required
string <uuid>

A UUID string identifying this meter device.

Responses

204

No Content

Network Interfaces

Operations on Network Interfaces.

Network Interfaces

A NetworkInterface is an object holding information needed for communication to a meter device. You can connect SIM cards to a network interface. Several meter devices can share the same network interface, for example an MBus gateway. It is also possbile for several network interfaces to share the same SIM Card, for example if using the same IP/SIM-card but different devices are under different ports. Then each meter device would have its own network interface specifiying the port but they would all share the same SIM Card to get the IP address.

Some network interfaces only allows for one open connection and when the network interface is used by communication software we want to make sure that no other job is trying to communicate with the meter devcice. This is done by blocking the network interface. When the communication is done the network interface should be unblocked so that other jobs can connect to it.

Tips: The host parameter is only returned in responses and will contain the following data:

  1. FQDN. If a meter has a DNS compliant name attached to it we assume we want to use that firstly
  2. Static IP Address. If no FQDN is set on the meter it will return the static ip address associated with it.
  3. IP of SIM Card. If no static ip address or FQDN is set the meter will return the IP of the SIM Card attached to it.

network-interfaces_list

get /network-interfaces
/v1/metering/network-interfaces

returns list of NetworkInterfaces

query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

200

OK

Response samples

application/json
Copy
Expand all Collapse all
{
  • "count": 0,
  • "previous": "http://example.com",
  • "results":
    [
    ]
}

network-interfaces_create

post /network-interfaces
/v1/metering/network-interfaces

Create a new Network Interface

Request Body schema: application/json
static_ip_address
string (IP Address of meter that is not bound to SIM) non-empty Nullable
fqdn
string (FQDN, if you are using DNS to lookup IP of meters) <= 200 characters Nullable
port
integer (Port used for IP communication) [ 0 .. 2147483647 ] Nullable
sim
string <uuid> (Sim) Nullable
can_block
boolean (It is possible to block the network interface)

Responses

201

Created

Request samples

application/json
Copy
Expand all Collapse all
{
  • "static_ip_address": "string",
  • "fqdn": "string",
  • "port": 0,
  • "sim": "string",
  • "can_block": true
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "static_ip_address": "string",
  • "host": "string",
  • "fqdn": "string",
  • "port": 0,
  • "sim": "string",
  • "can_block": true,
  • "is_blocked": true,
  • "block_time": "2019-06-13T14:07:09Z",
  • "created_at": "2019-06-13T14:07:09Z",
  • "updated_at": "2019-06-13T14:07:09Z"
}

network-interfaces_read

get /network-interfaces/{id}
/v1/metering/network-interfaces/{id}

Returns a single NetworkInterface

path Parameters
id
required
string <uuid>

A UUID string identifying this network interface.

Responses

200

OK

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "static_ip_address": "string",
  • "host": "string",
  • "fqdn": "string",
  • "port": 0,
  • "sim": "string",
  • "can_block": true,
  • "is_blocked": true,
  • "block_time": "2019-06-13T14:07:10Z",
  • "created_at": "2019-06-13T14:07:10Z",
  • "updated_at": "2019-06-13T14:07:10Z"
}

network-interfaces_update

put /network-interfaces/{id}
/v1/metering/network-interfaces/{id}

Updates a single Network Interface

path Parameters
id
required
string <uuid>

A UUID string identifying this network interface.

Request Body schema: application/json
static_ip_address
string (IP Address of meter that is not bound to SIM) non-empty Nullable
fqdn
string (FQDN, if you are using DNS to lookup IP of meters) <= 200 characters Nullable
port
integer (Port used for IP communication) [ 0 .. 2147483647 ] Nullable
sim
string <uuid> (Sim) Nullable
can_block
boolean (It is possible to block the network interface)

Responses

200

OK

Request samples

application/json
Copy
Expand all Collapse all
{
  • "static_ip_address": "string",
  • "fqdn": "string",
  • "port": 0,
  • "sim": "string",
  • "can_block": true
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "static_ip_address": "string",
  • "host": "string",
  • "fqdn": "string",
  • "port": 0,
  • "sim": "string",
  • "can_block": true,
  • "is_blocked": true,
  • "block_time": "2019-06-13T14:07:10Z",
  • "created_at": "2019-06-13T14:07:10Z",
  • "updated_at": "2019-06-13T14:07:10Z"
}

network-interfaces_partial_update

patch /network-interfaces/{id}
/v1/metering/network-interfaces/{id}

Partially updates a single Network Interface

path Parameters
id
required
string <uuid>

A UUID string identifying this network interface.

Request Body schema: application/json
static_ip_address
string (IP Address of meter that is not bound to SIM) non-empty Nullable
fqdn
string (FQDN, if you are using DNS to lookup IP of meters) <= 200 characters Nullable
port
integer (Port used for IP communication) [ 0 .. 2147483647 ] Nullable
sim
string <uuid> (Sim) Nullable
can_block
boolean (It is possible to block the network interface)

Responses

200

OK

Request samples

application/json
Copy
Expand all Collapse all
{
  • "static_ip_address": "string",
  • "fqdn": "string",
  • "port": 0,
  • "sim": "string",
  • "can_block": true
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "static_ip_address": "string",
  • "host": "string",
  • "fqdn": "string",
  • "port": 0,
  • "sim": "string",
  • "can_block": true,
  • "is_blocked": true,
  • "block_time": "2019-06-13T14:07:10Z",
  • "created_at": "2019-06-13T14:07:10Z",
  • "updated_at": "2019-06-13T14:07:10Z"
}

network-interfaces_delete

delete /network-interfaces/{id}
/v1/metering/network-interfaces/{id}

Deletes a single Network Interface

path Parameters
id
required
string <uuid>

A UUID string identifying this network interface.

Responses

204

No Content

SIM Cards

Operations on SIM Cards

SIM Cards

Utilitarian is focused on IP communication with meters. Many meter have internal or external modems that are used for cellular communications. This require a SIM-card. Many SIM-cards in IoT data plans will give a fixed IP. It is possible to store all your SIM cards in Utiltarian and link them to your meter devices for an easy way of finding the IP for a meter device. If you switch a SIM cards in the field you need to switch it in Utilitarian so that the system can find the meter device.

Tips: It is possible to save a link to the managing software, for example Jasper, of the SIM cards. In future Utilitarian UI this will be rendered as an external link to quickly get access to logs and other SIM cards operations that are not in the scope of Utilitarian.

sim-cards_list

get /sim-cards
/v1/metering/sim-cards

Returns a list of SimCards

query Parameters
iccid
string
imsi
string
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

200

OK

Response samples

application/json
Copy
Expand all Collapse all
{
  • "count": 0,
  • "previous": "http://example.com",
  • "results":
    [
    ]
}

sim-cards_create

post /sim-cards
/v1/metering/sim-cards

Creates a new SimCard

Request Body schema: application/json
iccid
required
string (ICCID of the SIM) [ 1 .. 20 ] characters ^[0123456789]*$
imsi
required
string (IMSI of the SIM) [ 1 .. 15 ] characters ^[0123456789]*$
ip_address
string (IP Address associated with the SIM) non-empty Nullable
phone_number
string (Telephone number associated with the SIM) [ 1 .. 30 ] characters Nullable
external_system_link
string <uri> (Link to external system for management of the SIM) [ 1 .. 200 ] characters Nullable

Responses

201

Created

Request samples

application/json
Copy
Expand all Collapse all
{
  • "iccid": "string",
  • "imsi": "string",
  • "ip_address": "string",
  • "phone_number": "string",
  • "external_system_link": "http://example.com"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "iccid": "string",
  • "imsi": "string",
  • "ip_address": "string",
  • "phone_number": "string",
  • "external_system_link": "http://example.com",
  • "created_at": "2019-06-13T14:07:10Z",
  • "updated_at": "2019-06-13T14:07:10Z"
}

sim-cards_read

get /sim-cards/{id}
/v1/metering/sim-cards/{id}

Returns a single SimCard

path Parameters
id
required
string <uuid>

A UUID string identifying this sim card.

Responses

200

OK

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "iccid": "string",
  • "imsi": "string",
  • "ip_address": "string",
  • "phone_number": "string",
  • "external_system_link": "http://example.com",
  • "created_at": "2019-06-13T14:07:10Z",
  • "updated_at": "2019-06-13T14:07:10Z"
}

sim-cards_update

put /sim-cards/{id}
/v1/metering/sim-cards/{id}

Updates a single SimCard

path Parameters
id
required
string <uuid>

A UUID string identifying this sim card.

Request Body schema: application/json
iccid
required
string (ICCID of the SIM) [ 1 .. 20 ] characters ^[0123456789]*$
imsi
required
string (IMSI of the SIM) [ 1 .. 15 ] characters ^[0123456789]*$
ip_address
string (IP Address associated with the SIM) non-empty Nullable
phone_number
string (Telephone number associated with the SIM) [ 1 .. 30 ] characters Nullable
external_system_link
string <uri> (Link to external system for management of the SIM) [ 1 .. 200 ] characters Nullable

Responses

200

OK

Request samples

application/json
Copy
Expand all Collapse all
{
  • "iccid": "string",
  • "imsi": "string",
  • "ip_address": "string",
  • "phone_number": "string",
  • "external_system_link": "http://example.com"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "iccid": "string",
  • "imsi": "string",
  • "ip_address": "string",
  • "phone_number": "string",
  • "external_system_link": "http://example.com",
  • "created_at": "2019-06-13T14:07:10Z",
  • "updated_at": "2019-06-13T14:07:10Z"
}

sim-cards_partial_update

patch /sim-cards/{id}
/v1/metering/sim-cards/{id}

Partially updates a single SimCard

path Parameters
id
required
string <uuid>

A UUID string identifying this sim card.

Request Body schema: application/json
iccid
required
string (ICCID of the SIM) [ 1 .. 20 ] characters ^[0123456789]*$
imsi
required
string (IMSI of the SIM) [ 1 .. 15 ] characters ^[0123456789]*$
ip_address
string (IP Address associated with the SIM) non-empty Nullable
phone_number
string (Telephone number associated with the SIM) [ 1 .. 30 ] characters Nullable
external_system_link
string <uri> (Link to external system for management of the SIM) [ 1 .. 200 ] characters Nullable

Responses

200

OK

Request samples

application/json
Copy
Expand all Collapse all
{
  • "iccid": "string",
  • "imsi": "string",
  • "ip_address": "string",
  • "phone_number": "string",
  • "external_system_link": "http://example.com"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "id": "string",
  • "iccid": "string",
  • "imsi": "string",
  • "ip_address": "string",
  • "phone_number": "string",
  • "external_system_link": "http://example.com",
  • "created_at": "2019-06-13T14:07:10Z",
  • "updated_at": "2019-06-13T14:07:10Z"
}

sim-cards_delete

delete /sim-cards/{id}
/v1/metering/sim-cards/{id}

Deletes a single SimCard

path Parameters
id
required
string <uuid>

A UUID string identifying this sim card.

Responses

204

No Content

Meter Device Types

Operations on Meter Device Types

Meter Device Types

It is possible to have a meter that is of same make and model but differently configured. By adding a different meter type we can have a several different setups of the same manufacturer model.

meter-device-types_list

get /meter-device-types
/v1/metering/meter-device-types

Returns a list of MeterDeviceTypess

query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

200

OK

Response samples

application/json
Copy
Expand all Collapse all
{
  • "count": 0,
  • "previous": "http://example.com",
  • "results":
    [