Bulk uploading production devices or consumers via a CSV file
There are two routes for uploading the CSV, depending on whether you're creating production devices or consumers.
Bulk-create production devices
- Select the "Production devices" page from the sidebar
- Click "Add production devices" and select the "Import a CSV" option
- Prepare your CSV for upload, following the file requirements below
Column | Format | Description | Required? |
production_device_reference | String |
The reference you use to identify the production device within your organization. Used as a key when sending data to the Granular Energy platform. |
Required |
production_device_name | String |
Optional human-readable name for the production device. Defaults to the production_device_reference if not provided. |
Optional |
production_device_country | String – ISO 3166-1 A-2 country codes | In two-letter ISO country code format | Required |
metering_point_name | String | Optional human-readable name for the metering point. Defaults to the metering_point_reference if not provided. | Optional |
metering_point_reference | String | The reference you use to identify the metering point within your organization. Used as a key when sending data to the Granular Energy platform. | Required |
metering_point_grid_reference | String | The official ID of the meter on the network | Optional |
technology | String – see list of possible technology types | One of: Any renewable, Battery, Biodegradable, Biogass, Biomass, Coal, Gas, GeoThermal, Hydro, Landfill Gas, Marine, Nuclear, Offshore Wind, Onshore Wind, Sewage Gas, Solar, Unknown, Wind | Required |
subsidy_regime | Boolean | Whether or not the production device receives state subsidies. Yes/No | Optional |
expected_annual_production | Integer | KWh value for expected production over a year | Optional |
registry_id | String | Unique identifier for the production device in the registry | Optional |
Production Device Technologies
|
Bulk-create consumers
State - start & end dates
The configuration of a consumption metering point can change over time. It can be assigned to different consumers (or none) at different times. It can also have different "tag" values (see below).
The term for a given configuration of a metering point for a particular time period is a "state". The CSV file needs to include all the states for the metering points that it contains. Whenever there is any change to the state, you will require a new line. States' time periods cannot overlap for a particular metering point.
For example, if metering_point_1 is assigned to consumer_1 from 2024-02-01 until 2024-03-10 and then to consumer_2 until 2024-10-01, you would need two rows:
- the first from 2024-02-01 to 2024-03-10 and
- the second from 2024-03-11 to 2024-10-01
Each row would also need to contain values for all the tags you have configured. And if any of these change value over time, new rows are required.
If you are changing any values for a metering point, it is important that you re-upload rows to represent all states for that metering point. An upload is assumed to contain the entire state history for the metering points that it contains. To help with this, you can download the full state history for the metering points you want to change, update, insert or delete rows as required, and re-upload.
Tags
Consumption metering points can be "tagged" to allow richer ways to organise, filter and aggregate your data. This will you to capture and organise key concepts - such as different products/tariffs, brokers/TPIs, macro-consumers, and more. Talk to your Customer Success Manager or email support@granular-energy.com to configure.
---
- Select the "Consumers" page from the sidebar
- Click "Import Demand Portfolio" and select the "Select file" option
- Prepare your CSV for upload, following the file requirements below
Column | Format | Description | Required? |
start_date | String ISO format: YYYY-MM-DD | Enter the first date of the metering point's state. | Optional |
end_date | String ISO format: YYYY-MM-DD | Enter the last date of the metering point's state. | Optional |
metering_point_reference | String | The reference you use to identify the metering point within your organization. Used as a key when sending data to the Granular Energy platform. | Required |
metering_point_name | String | Optional human-readable name for the metering point. Defaults to the metering_point_reference if not provided. | Optional |
metering_point_grid_identifier | String | The official ID of the meter on the network | Optional |
consumer_reference | String | The reference you use to identify the consumer within your organization. Used as a key when sending data to the Granular Energy platform. | Required |
consumer_name | String | Optional human-readable name for the consumer. Defaults to the consumer_reference if not provided. | Optional |
consumer_country | String – ISO 3166-1 A-2 country codes | Consumer's country | Required |
tags | String | Each tag you have configured will need its own column. If the tag does not apply to the metering point, you can leave it blank. | Required (Speak to your Customer Success Manager for configuration) |
NOTE: To update an existing metering point, you must upload its entire state history, or else data will be overwritten with your last upload.
Here is an example of creating a consumer with 2 metering points and a consumer with 1 metering point in a single upload:
Once uploaded successfully, your consumers will now appear under the "Consumers" section.