Get Group Units
const options = {
method: 'GET',
headers: {
'x-api-key': '<x-api-key>',
'x-organization-id': '<x-organization-id>',
'x-user-id': '<x-user-id>'
}
};
fetch('https://api.dcycle.io/api/v1/custom_emission_groups/units/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.dcycle.io/api/v1/custom_emission_groups/units/{id}"
headers = {
"x-api-key": "<x-api-key>",
"x-organization-id": "<x-organization-id>",
"x-user-id": "<x-user-id>"
}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.dcycle.io/api/v1/custom_emission_groups/units/{id} \
--header 'x-api-key: <x-api-key>' \
--header 'x-organization-id: <x-organization-id>' \
--header 'x-user-id: <x-user-id>'{
"id": "<string>",
"name": "<string>",
"abbreviation": "<string>",
"type": "<string>"
}Get Group Units
Retrieve all measurement units used in a custom emission group
GET
/
api
/
v1
/
custom_emission_groups
/
units
/
{id}
Get Group Units
const options = {
method: 'GET',
headers: {
'x-api-key': '<x-api-key>',
'x-organization-id': '<x-organization-id>',
'x-user-id': '<x-user-id>'
}
};
fetch('https://api.dcycle.io/api/v1/custom_emission_groups/units/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.dcycle.io/api/v1/custom_emission_groups/units/{id}"
headers = {
"x-api-key": "<x-api-key>",
"x-organization-id": "<x-organization-id>",
"x-user-id": "<x-user-id>"
}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.dcycle.io/api/v1/custom_emission_groups/units/{id} \
--header 'x-api-key: <x-api-key>' \
--header 'x-organization-id: <x-organization-id>' \
--header 'x-user-id: <x-user-id>'{
"id": "<string>",
"name": "<string>",
"abbreviation": "<string>",
"type": "<string>"
}Get Group Units
Retrieve a list of all measurement units used by emission factors within a specific custom emission group.This endpoint returns the unique set of units used across all emission factors in the group, useful for validating data consistency or building UI selectors.
Request
Headers
string
required
Your API key for authenticationExample:
sk_live_1234567890abcdefstring
required
Your organization UUIDExample:
ff4adcc7-8172-45fe-9cf1-e90a6de53aa9string
required
Your user UUIDExample:
a1b2c3d4-e5f6-7890-abcd-ef1234567890Path Parameters
string
required
UUID of the Custom Emission Group
Response
Returns an array of unit objects used in the group.[
{
"id": "kg-unit-uuid",
"name": "kilogram",
"abbreviation": "kg",
"type": "mass"
},
{
"id": "ton-unit-uuid",
"name": "metric ton",
"abbreviation": "t",
"type": "mass"
}
]
Example
curl "https://api.dcycle.io/api/v1/custom_emission_groups/units/group-uuid" \
-H "Authorization: Bearer ${DCYCLE_API_KEY}" \
-H "x-organization-id: ${DCYCLE_ORG_ID}" \
-H "x-user-id: ${DCYCLE_USER_ID}"
import requests
import os
headers = {
"Authorization": f"Bearer {os.getenv('DCYCLE_API_KEY')}",
"x-organization-id": os.getenv("DCYCLE_ORG_ID"),
"x-user-id": os.getenv("DCYCLE_USER_ID")
}
group_id = "group-uuid"
response = requests.get(
f"https://api.dcycle.io/api/v1/custom_emission_groups/units/{group_id}",
headers=headers
)
units = response.json()
print(f"Units used in this group:")
for unit in units:
print(f"- {unit['name']} ({unit['abbreviation']})")
const axios = require('axios');
const headers = {
'Authorization': `Bearer ${process.env.DCYCLE_API_KEY}`,
'x-organization-id': process.env.DCYCLE_ORG_ID,
'x-user-id': process.env.DCYCLE_USER_ID
};
const groupId = 'group-uuid';
axios.get(
`https://api.dcycle.io/api/v1/custom_emission_groups/units/${groupId}`,
{ headers }
)
.then(response => {
const units = response.data;
console.log('Units used in this group:');
units.forEach(unit => {
console.log(`- ${unit.name} (${unit.abbreviation})`);
});
})
.catch(error => console.error(error));
Use Cases
Build Unit Selector
Create a dropdown with available units for the group:async function loadUnitsForGroup(groupId) {
const units = await axios.get(
`https://api.dcycle.io/api/v1/custom_emission_groups/units/${groupId}`,
{ headers }
).then(res => res.data);
const options = units.map(unit => ({
value: unit.id,
label: `${unit.name} (${unit.abbreviation})`
}));
return options;
}
Validate Data Consistency
Check if all factors in a group use the same unit type:units = requests.get(
f"https://api.dcycle.io/api/v1/custom_emission_groups/units/{group_id}",
headers=headers
).json()
unit_types = set(unit['type'] for unit in units)
if len(unit_types) == 1:
print(f"✅ Consistent unit type: {unit_types.pop()}")
else:
print(f"⚠️ Mixed unit types: {', '.join(unit_types)}")
print("Consider reviewing factor consistency")
Display Group Statistics
Show unit usage statistics:units = requests.get(
f"https://api.dcycle.io/api/v1/custom_emission_groups/units/{group_id}",
headers=headers
).json()
# Get all factors
factors = requests.get(
f"https://api.dcycle.io/api/v1/custom_emission_factors/list/{group_id}",
headers=headers,
params={"page": 1, "size": 100}
).json()
print(f"Group uses {len(units)} different units across {factors['total']} factors:\n")
for unit in units:
count = sum(1 for f in factors['items'] if f['unit_id'] == unit['id'])
print(f"- {unit['abbreviation']}: {count} factors")
Response Fields
string
Unique identifier for the unit
string
Full name of the unit (e.g., “kilogram”, “liter”)
string
Standard abbreviation (e.g., “kg”, “L”)
string
Unit type (e.g., “mass”, “volume”, “energy”, “currency”)
Common Errors
404 Not Found
Cause: Custom emission group not found{
"detail": "Custom emission group not found",
"code": "NOT_FOUND"
}
Empty Array
If the group has no emission factors yet, this endpoint returns an empty array[].
Related Endpoints
List Factors
View all factors in group
Get Group
View group details
All Units
List all available units
Was this page helpful?