Skip to main content
Early Access - The Dcycle CLI is currently available for enterprise customers. Contact us to learn more about access.

Overview

Upload organization-specific emission factors to override standard database values. Custom factors improve accuracy when you have supplier-provided data. Factors are grouped by category and support both simple (CO2e only) and advanced (CO2 + CH4 + N2O) tags.

Available Commands

CommandDescription
dcy custom-ef upload [file.csv]Upload custom emission factors from CSV
dcy custom-ef delete-bulk <file>Bulk delete custom emission groups from a file

Generate Template

Download a CSV template with the required column format:
dcy custom-ef upload --template
Output:
template generated: custom_ef_template.csv
The template includes all supported columns with example data rows covering electricity, heat, and waste categories.

Required Columns

ColumnDescription
group_nameName of the emission factor group
group_categoryCategory: heat, recharge, process, water, electricity, vehicles, waste, purchases
group_ghg_typeGHG type: 0 or 1
ef_nameName of the individual emission factor
unit_idUnit UUID (use dcy units list to find IDs)
tagsimple (CO2e value only) or advanced (CO2 + CH4 + N2O)
factor_start_dateStart date (YYYY-MM-DD)
factor_end_dateEnd date (YYYY-MM-DD)

Optional Columns

ColumnApplies toDescription
group_descriptionAllGroup description text
uncertainty_gradeAll0–100 uncertainty rating
value_co2etag=simpleCO2e emission factor value
value_co2tag=advancedCO2 emission factor value
value_ch4tag=advancedCH4 emission factor value
value_n2otag=advancedN2O emission factor value
renewable_percentageEnergy categories0–1 renewable fraction
hazardouswastetrue/false
recycledwastetrue/false
low_codewasteLoW (List of Waste) code
rd_codewasteR/D disposal code

Validate Before Uploading

Run a dry-run to check your CSV for errors without actually uploading:
dcy custom-ef upload factors.csv --dry-run
Output:
Dry-run mode: no API calls were made
File: factors.csv
Groups to create: 2
Factors to create: 4
If validation errors are found, the command prints row-by-row errors and exits without uploading.

Upload Emission Factors

dcy custom-ef upload factors.csv
Output:
File: factors.csv
Groups to create: 2
Factors to create: 4
group created: Grid Spain 2023 (abc123-...)
  factor created: Jan-Jun 2023
  factor created: Jul-Dec 2023
group created: Custom Gas (def456-...)
  factor created: Natural Gas 2023
Groups created: 2
Groups failed: 0
Factors created: 3
Factors failed: 0

Flags

FlagShortDefaultDescription
--template-tfalseGenerate a blank CSV template instead of uploading
--dry-runfalseValidate and summarize without making API calls
--skip-validationfalseSkip local CSV validation (rely on server-side checks)
--orgOrganization ID override

Examples

# Generate template
dcy custom-ef upload --template

# Validate without uploading
dcy custom-ef upload factors.csv --dry-run

# Upload with JSON output
dcy custom-ef upload factors.csv --format json

# Skip local validation
dcy custom-ef upload factors.csv --skip-validation

Bulk Delete Groups

Delete multiple custom emission groups by providing a text file with one ID per line:
dcy custom-ef delete-bulk ids.txt --yes
Output:
deleted: 3
If some deletions fail:
2 failed: group not found
deleted: 1
failed: 2

Flags

FlagShortDefaultDescription
--yes-yfalseSkip confirmation prompt
--orgOrganization ID override
The file should contain one custom emission group UUID per line. Blank lines and duplicates are automatically skipped.

Typical Workflows

Upload Custom Emission Factors

# 1. Get the template
dcy custom-ef upload --template

# 2. Fill in your data (edit custom_ef_template.csv)

# 3. Validate
dcy custom-ef upload custom_ef_template.csv --dry-run

# 4. Upload
dcy custom-ef upload custom_ef_template.csv

Replace Emission Factors

# 1. Delete old groups
dcy custom-ef delete-bulk old-group-ids.txt --yes

# 2. Upload new CSV
dcy custom-ef upload updated_factors.csv

Find Unit IDs for Your Factors

# Find the unit ID for kWh
dcy units list --search kWh --format json | jq -r '.[0].id'

Next Steps

Units

Find unit IDs for emission factor definitions

LCA Materials

Link materials to ecoinvent activities

Invoices

Manage energy invoices using your custom factors

Data Imports

Bulk import CSV/Excel data with guided mapping