Download OpenAPI specification:Download
Carbon emissions data: search emission factors and categories, read emission calculations and charts, and classify transactions as emissions.
This is the primary endpoint for carbon emission statistics — use it for virtually all requests where a user wants insight into their carbon footprint (totals, breakdowns, trends, comparisons). Returns emission data aggregated by one or more dimensions (date, scope, category, etc.) for charting and analysis. Use the 'group_by' parameter to control how emissions are bucketed, and standard emission filters (accounting_date__gte, accounting_date__lte, scope, category, etc.) to narrow the dataset. Results include total CO2 in kg, transaction counts, and optional intensity metrics when a date range is provided.
| id | string id |
| id__in | string id__in |
| journal | string journal |
| journal__icontains | string journal__icontains |
| journal__istartswith | string journal__istartswith |
| journal__iendswith | string journal__iendswith |
| journal__isnull | string journal__isnull |
| title | string title |
| title__icontains | string title__icontains |
| title__istartswith | string title__istartswith |
| title__iendswith | string title__iendswith |
| description | string description |
| description__icontains | string description__icontains |
| description__istartswith | string description__istartswith |
| description__iendswith | string description__iendswith |
| description__isnull | string description__isnull |
| vendor_name | string vendor_name |
| vendor_name__icontains | string vendor_name__icontains |
| vendor_name__istartswith | string vendor_name__istartswith |
| vendor_name__iendswith | string vendor_name__iendswith |
| vendor_name__isnull | string vendor_name__isnull |
| accounting_date | string accounting_date |
| accounting_date__gte | string accounting_date__gte |
| accounting_date__lte | string accounting_date__lte |
| is_activity_based_emission | string is_activity_based_emission |
| classification_category_id | string classification_category_id |
| classification_category_name | string classification_category_name |
| classification_category_name__icontains | string classification_category_name__icontains |
| classification_category_name__istartswith | string classification_category_name__istartswith |
| classification_category_name__iendswith | string classification_category_name__iendswith |
| sub_category_id | string sub_category_id |
| category_id | string category_id |
| ghg_category_id | string ghg_category_id |
| is_tag_along | string is_tag_along |
| confidence_status | string Enum: "confident" "needs_attention" confidence_status |
| co2_kg | string co2_kg |
| co2_kg__gt | string co2_kg__gt |
| co2_kg__lt | string co2_kg__lt |
| co2_kg__gte | string co2_kg__gte |
| co2_kg__lte | string co2_kg__lte |
| controlled_by_identifier | string controlled_by_identifier |
| controlled_by_identifier__icontains | string controlled_by_identifier__icontains |
| controlled_by_identifier__istartswith | string controlled_by_identifier__istartswith |
| controlled_by_identifier__iendswith | string controlled_by_identifier__iendswith |
| controlled_by_identifier__isnull | string controlled_by_identifier__isnull |
| scope | string Enum: "1" "2" "3" "Offset" "Excluded" scope |
| company_tags | string company_tags |
| flags_key_value | string flags_key_value |
| relative_to | string Enum: "absolute" "per_employee" "per_revenue_unit" relative_to |
| group_by | Array of strings Default: "date" Items Enum: "date" "main_emission" "category_name" "sub_category_name" "ghg_category_name" "classification_category_name" "scope" "title" "vendor_name" "is_activity_based" Fields to group by |
| delimit_by | string Enum: "yearly" "monthly" "daily" delimit_by |
| limit | integer Number of results to return per page. |
| offset | integer The initial index from which to return the results. |
| ordering | string Enum: "date" "-date" "transaction_count" "-transaction_count" "emission_count" "-emission_count" "total_co2_kg" "-total_co2_kg" Fields to order by (prefix with '-' for descending) |
{- "count": 0,
- "results": [
- {
- "transaction_count": 0,
- "emission_count": 0,
- "total_co2_kg": 0,
- "date": "2019-08-24T14:15:22Z",
- "main_emission": 0,
- "category": 0,
- "category_name": "string",
- "sub_category": 0,
- "sub_category_name": "string",
- "ghg_category": 0,
- "ghg_category_name": "string",
- "scope": "string",
- "title": "string",
- "vendor_name": "string",
- "is_activity_based_emission": true
}
]
}Returns a paginated list of individual carbon emission records for the authenticated company. Each record includes the emission source, CO2 amount in kg, accounting date, scope, category, vendor, and emission factor details. Use filters to narrow by date range (accounting_date__gte/lte), scope, category, or search by title/description/vendor. Supports ordering by accounting_date, title, vendor_name, volume, or co2_kg.
| id | string id |
| id__in | string id__in |
| journal | string journal |
| journal__icontains | string journal__icontains |
| journal__istartswith | string journal__istartswith |
| journal__iendswith | string journal__iendswith |
| journal__isnull | string journal__isnull |
| title | string title |
| title__icontains | string title__icontains |
| title__istartswith | string title__istartswith |
| title__iendswith | string title__iendswith |
| description | string description |
| description__icontains | string description__icontains |
| description__istartswith | string description__istartswith |
| description__iendswith | string description__iendswith |
| description__isnull | string description__isnull |
| vendor_name | string vendor_name |
| vendor_name__icontains | string vendor_name__icontains |
| vendor_name__istartswith | string vendor_name__istartswith |
| vendor_name__iendswith | string vendor_name__iendswith |
| vendor_name__isnull | string vendor_name__isnull |
| accounting_date | string accounting_date |
| accounting_date__gte | string accounting_date__gte |
| accounting_date__lte | string accounting_date__lte |
| is_activity_based_emission | string is_activity_based_emission |
| classification_category_id | string classification_category_id |
| classification_category_name | string classification_category_name |
| classification_category_name__icontains | string classification_category_name__icontains |
| classification_category_name__istartswith | string classification_category_name__istartswith |
| classification_category_name__iendswith | string classification_category_name__iendswith |
| sub_category_id | string sub_category_id |
| category_id | string category_id |
| ghg_category_id | string ghg_category_id |
| is_tag_along | string is_tag_along |
| confidence_status | string Enum: "confident" "needs_attention" confidence_status |
| co2_kg | string co2_kg |
| co2_kg__gt | string co2_kg__gt |
| co2_kg__lt | string co2_kg__lt |
| co2_kg__gte | string co2_kg__gte |
| co2_kg__lte | string co2_kg__lte |
| controlled_by_identifier | string controlled_by_identifier |
| controlled_by_identifier__icontains | string controlled_by_identifier__icontains |
| controlled_by_identifier__istartswith | string controlled_by_identifier__istartswith |
| controlled_by_identifier__iendswith | string controlled_by_identifier__iendswith |
| controlled_by_identifier__isnull | string controlled_by_identifier__isnull |
| scope | string Enum: "1" "2" "3" "Offset" "Excluded" scope |
| company_tags | string company_tags |
| flags_key_value | string flags_key_value |
| search | string A search term. |
| ordering | string Which field to use when ordering the results. |
| limit | integer Number of results to return per page. |
| offset | integer The initial index from which to return the results. |
{- "count": 0,
- "results": [
- {
- "id": 0,
- "company": 0,
- "company_name": "string",
- "company_tags": [
- 0
], - "emission_group_id": "ef7a14a6-1ee3-4503-ac94-be1176c08cf0",
- "transaction": 0,
- "total_volume": 0,
- "volume": 0,
- "volume_unit": "string",
- "journal": "string",
- "title": "string",
- "description": "string",
- "vendor_name": "string",
- "accounting_date": "2019-08-24T14:15:22Z",
- "accounting_end_date": "2019-08-24T14:15:22Z",
- "transaction_is_visible": true,
- "transaction_data": { },
- "transaction_id": "string",
- "is_activity_based_emission": true,
- "activity_data": { },
- "emission_factor": 0,
- "emission_unit": 0,
- "emission_unit_name": "string",
- "emission_factor_data": { },
- "classification_category": 0,
- "classification_category_name": "string",
- "sub_category": 0,
- "sub_category_name": "string",
- "category": 0,
- "category_name": "string",
- "ghg_category": 0,
- "ghg_category_name": "string",
- "scope": "1",
- "is_tag_along": true,
- "main_emission": 0,
- "created_by": 0,
- "classification_source": "auto",
- "confidence": 0,
- "confidence_threshold": 0,
- "confidence_status": "confident",
- "co2_kg": 0,
- "flags": { },
- "controlled_by_identifier": "string",
- "deleted_at": "2019-08-24T14:15:22Z",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}Downloads all matching emission records as a streaming CSV file. Includes emission factor details and company tags. Accepts the same filters as the emissions list endpoint (accounting_date__gte/lte, scope, category, search, ordering).
| id | string id |
| id__in | string id__in |
| journal | string journal |
| journal__icontains | string journal__icontains |
| journal__istartswith | string journal__istartswith |
| journal__iendswith | string journal__iendswith |
| journal__isnull | string journal__isnull |
| title | string title |
| title__icontains | string title__icontains |
| title__istartswith | string title__istartswith |
| title__iendswith | string title__iendswith |
| description | string description |
| description__icontains | string description__icontains |
| description__istartswith | string description__istartswith |
| description__iendswith | string description__iendswith |
| description__isnull | string description__isnull |
| vendor_name | string vendor_name |
| vendor_name__icontains | string vendor_name__icontains |
| vendor_name__istartswith | string vendor_name__istartswith |
| vendor_name__iendswith | string vendor_name__iendswith |
| vendor_name__isnull | string vendor_name__isnull |
| accounting_date | string accounting_date |
| accounting_date__gte | string accounting_date__gte |
| accounting_date__lte | string accounting_date__lte |
| is_activity_based_emission | string is_activity_based_emission |
| classification_category_id | string classification_category_id |
| classification_category_name | string classification_category_name |
| classification_category_name__icontains | string classification_category_name__icontains |
| classification_category_name__istartswith | string classification_category_name__istartswith |
| classification_category_name__iendswith | string classification_category_name__iendswith |
| sub_category_id | string sub_category_id |
| category_id | string category_id |
| ghg_category_id | string ghg_category_id |
| is_tag_along | string is_tag_along |
| confidence_status | string Enum: "confident" "needs_attention" confidence_status |
| co2_kg | string co2_kg |
| co2_kg__gt | string co2_kg__gt |
| co2_kg__lt | string co2_kg__lt |
| co2_kg__gte | string co2_kg__gte |
| co2_kg__lte | string co2_kg__lte |
| controlled_by_identifier | string controlled_by_identifier |
| controlled_by_identifier__icontains | string controlled_by_identifier__icontains |
| controlled_by_identifier__istartswith | string controlled_by_identifier__istartswith |
| controlled_by_identifier__iendswith | string controlled_by_identifier__iendswith |
| controlled_by_identifier__isnull | string controlled_by_identifier__isnull |
| scope | string Enum: "1" "2" "3" "Offset" "Excluded" scope |
| company_tags | string company_tags |
| flags_key_value | string flags_key_value |
| search | string A search term. |
| ordering | string Which field to use when ordering the results. |
[- {
- "accounting_date": "2019-08-24T14:15:22Z",
- "journal": "string",
- "title": "string",
- "vendor_name": "string",
- "description": "string",
- "company_tags_names": "string",
- "volume": 0,
- "volume_unit": "string",
- "co2_kg": 0,
- "scope": "1",
- "ghg_category_name": "string",
- "category_name": "string",
- "ef_title": "string",
- "ef_description": "string",
- "ef_multiplier": "string",
- "emission_unit_name": "string",
- "ef_source": "string",
- "ef_year": "string",
- "is_activity_based_emission": true,
- "is_tag_along": true,
- "transaction": 0
}
]Accepts multiple independent classification operations. Each operation specifies either emission_filters or transaction_filters (using Django FilterSet lookup syntax) plus classification data.
Returns 202 Accepted with per-operation results including count of matched records.
required | Array of objects (BulkEmissionClassificationOperation) | ||||||||||||||
Array
| |||||||||||||||
{- "operations": [
- {
- "emission_filters": {
- "id": 0,
- "id__in": "string",
- "journal": "string",
- "journal__icontains": "string",
- "journal__istartswith": "string",
- "journal__iendswith": "string",
- "journal__isnull": true,
- "title": "string",
- "title__icontains": "string",
- "title__istartswith": "string",
- "title__iendswith": "string",
- "description": "string",
- "description__icontains": "string",
- "description__istartswith": "string",
- "description__iendswith": "string",
- "description__isnull": true,
- "vendor_name": "string",
- "vendor_name__icontains": "string",
- "vendor_name__istartswith": "string",
- "vendor_name__iendswith": "string",
- "vendor_name__isnull": true,
- "accounting_date": "2019-08-24T14:15:22Z",
- "accounting_date__gte": "2019-08-24T14:15:22Z",
- "accounting_date__lte": "2019-08-24T14:15:22Z",
- "is_activity_based_emission": true,
- "classification_category_id": "string",
- "classification_category_name": "string",
- "classification_category_name__icontains": "string",
- "classification_category_name__istartswith": "string",
- "classification_category_name__iendswith": "string",
- "sub_category_id": "string",
- "category_id": "string",
- "ghg_category_id": "string",
- "is_tag_along": true,
- "confidence_status": "string",
- "co2_kg": 0,
- "co2_kg__gt": 0,
- "co2_kg__lt": 0,
- "co2_kg__gte": 0,
- "co2_kg__lte": 0,
- "controlled_by_identifier": "string",
- "controlled_by_identifier__icontains": "string",
- "controlled_by_identifier__istartswith": "string",
- "controlled_by_identifier__iendswith": "string",
- "controlled_by_identifier__isnull": true,
- "scope": [
- "string"
], - "company_tags": [
- 0
], - "flags_key_value": "string"
}, - "transaction_filters": {
- "id": 0,
- "id__in": "string",
- "vendor_name": "string",
- "vendor_name__icontains": "string",
- "vendor_name__istartswith": "string",
- "vendor_name__iendswith": "string",
- "vendor_name__isnull": true,
- "ledger": "string",
- "ledger__icontains": "string",
- "ledger__istartswith": "string",
- "ledger__iendswith": "string",
- "journal": "string",
- "journal__icontains": "string",
- "journal__istartswith": "string",
- "journal__iendswith": "string",
- "journal__isnull": true,
- "description": "string",
- "description__icontains": "string",
- "description__istartswith": "string",
- "description__iendswith": "string",
- "description__isnull": true,
- "source": "string",
- "integration_id": "string",
- "integration__name": "string",
- "integration__name__icontains": "string",
- "integration__name__istartswith": "string",
- "integration__name__iendswith": "string",
- "date": "2019-08-24T14:15:22Z",
- "date__gte": "2019-08-24T14:15:22Z",
- "date__lte": "2019-08-24T14:15:22Z",
- "net_amount": 0,
- "net_amount__gt": 0,
- "net_amount__lt": 0,
- "net_amount__gte": 0,
- "net_amount__lte": 0,
- "tags": [
- 0
], - "confidence_status": "string",
- "classified": true
}, - "emission_factor_id": 0,
- "classification_category_id": 0,
- "ghg_category_id": 0,
- "is_activity_based_emission": true,
- "activity_data": {
- "date": "string",
- "volume": 0,
- "volume_unit": "string",
- "title": "string",
- "end_date": "string",
- "journal": "string",
- "description": "string",
- "vendor_name": "string"
}
}
]
}{- "results": [
- {
- "index": 0,
- "count": 0,
- "status": "string",
- "error": "string"
}
]
}Returns a paginated list of emission factors available to the authenticated company. Emission factors define the CO2e multiplier for a given spend or activity type. Use the 'search' parameter to search by title, description, or slug. Filter with query parameters:
| slug__icontains | string slug__icontains |
| title__icontains | string title__icontains |
| region | string region |
| year | string year |
| source__icontains | string source__icontains |
| company | string company |
| company__isnull | string company__isnull |
| sub_category | string sub_category |
| sub_category__parent | string sub_category__parent |
| classification_category | string classification_category |
| is_activity_based | string is_activity_based |
| category | string category |
| ordering | string Enum: "slug" "-slug" "title" "-title" "year" "-year" "region" "-region" "category" "-category" "sub_category" "-sub_category" "kg_co2e_multiplier" "-kg_co2e_multiplier" Ordering |
| search | string A search term. |
| limit | integer Number of results to return per page. |
| offset | integer The initial index from which to return the results. |
{- "count": 0,
- "results": [
- {
- "id": 0,
- "slug": "string",
- "description": "string",
- "title": "string",
- "category": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": 0,
- "is_classification_category": true,
- "is_tag_along": true
}, - "is_classification_category": true,
- "is_tag_along": true
}, - "classification_category": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": 0,
- "is_classification_category": true,
- "is_tag_along": true
}, - "is_classification_category": true,
- "is_tag_along": true
}, - "company": 0,
- "kg_co2e_multiplier": 0,
- "kg_co2e_multiplier_unit": {
- "id": 0,
- "name": "string",
- "display_name": "string"
}, - "region": "string",
- "is_activity_based": true,
- "is_required_transactions_input_classifier": true,
- "year": "string",
- "source": "string",
- "deleted_at": "2019-08-24T14:15:22Z"
}
]
}Returns the full details of a single emission factor by its ID. Includes the CO2e multiplier value and unit, emission category, classification category, company, region, year, source, and whether it is activity-based.
| id required | string |
{- "id": 0,
- "slug": "string",
- "description": "string",
- "title": "string",
- "category": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": 0,
- "is_classification_category": true,
- "is_tag_along": true
}, - "is_classification_category": true,
- "is_tag_along": true
}, - "classification_category": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": 0,
- "is_classification_category": true,
- "is_tag_along": true
}, - "is_classification_category": true,
- "is_tag_along": true
}, - "company": 0,
- "kg_co2e_multiplier": 0,
- "kg_co2e_multiplier_unit": {
- "id": 0,
- "name": "string",
- "display_name": "string"
}, - "region": "string",
- "is_activity_based": true,
- "is_required_transactions_input_classifier": true,
- "year": "string",
- "source": "string",
- "deleted_at": "2019-08-24T14:15:22Z"
}Returns a paginated list of emission factor categories organized in a 3-level hierarchy: top-level scope → sub-category → classification category. Use 'search' to search by title, description, or slug. Filter with query parameters:
| slug__icontains | string slug__icontains |
| title__icontains | string title__icontains |
| requires_manual_input | string requires_manual_input |
| parent | string parent |
| is_classification_category | string is_classification_category |
| is_tag_along | string is_tag_along |
| ghg_categories | string ghg_categories |
| parent__isnull | string parent__isnull |
| mandatory | string mandatory |
| search | string A search term. |
| ordering | string Which field to use when ordering the results. |
| limit | integer Number of results to return per page. |
| offset | integer The initial index from which to return the results. |
{- "count": 0,
- "results": [
- {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": {
- "id": 0,
- "slug": "string",
- "title": "string",
- "description": "string",
- "color": "string",
- "parent": 0,
- "is_classification_category": true,
- "is_tag_along": true
}, - "is_classification_category": true,
- "is_tag_along": true
}
]
}Performs a fuzzy full-text search on emission factor categories using trigram similarity. This is the recommended endpoint for finding the right category when classifying an emission. Parameters:
| slug__icontains | string slug__icontains |
| title__icontains | string title__icontains |
| requires_manual_input | string requires_manual_input |
| parent | string parent |
| is_classification_category | string is_classification_category |
| is_tag_along | string is_tag_along |
| ghg_categories | string ghg_categories |
| parent__isnull | string parent__isnull |
| mandatory | string mandatory |
| search | string Fuzzy title search |
| type | string Enum: "spend_based" "activity_based" "both" Category type (default: spend_based) |
| ordering | string Which field to use when ordering the results. |
| limit | integer Number of results to return per page. |
| offset | integer The initial index from which to return the results. |
{- "count": 0,
- "results": [
- {
- "id": 0,
- "title": "string",
- "description": "string",
- "slug": "string",
- "parent": {
- "id": 0,
- "title": "string",
- "description": "string",
- "slug": "string",
- "color": "string",
- "parent": {
- "id": 0,
- "title": "string",
- "description": "string",
- "slug": "string",
- "color": "string"
}
}, - "parent_id": 0,
- "color": "string",
- "is_classification_category": true,
- "ghg_mappings": [
- {
- "greenhouse_gas_category": {
- "id": 0,
- "title": "string",
- "scope": "1",
- "slug": "string",
- "color": "string"
}
}
]
}
]
}Returns the full details of a single emission factor category by its ID, including its parent category, color, icon, and type flags.
| id required | string |
{- "id": 0,
- "title": "string",
- "description": "string",
- "slug": "string",
- "parent": {
- "id": 0,
- "title": "string",
- "description": "string",
- "slug": "string",
- "color": "string",
- "parent": {
- "id": 0,
- "title": "string",
- "description": "string",
- "slug": "string",
- "color": "string"
}
}, - "parent_id": 0,
- "color": "string",
- "is_classification_category": true,
- "ghg_mappings": [
- {
- "greenhouse_gas_category": {
- "id": 0,
- "title": "string",
- "scope": "1",
- "slug": "string",
- "color": "string"
}
}
]
}Returns a paginated list of GHG categories used to classify emission factor categories under the GHG Protocol scopes. Use 'search' to search by title. Filter with query parameters:
| scope | string Enum: "1" "2" "3" "Offset" "Excluded" scope |
| emission_direction | string Enum: "upstream" "downstream" emission_direction |
| search | string A search term. |
| limit | integer Number of results to return per page. |
| offset | integer The initial index from which to return the results. |
{- "count": 0,
- "results": [
- {
- "id": 0,
- "slug": "string",
- "title": "string",
- "scope": "1",
- "category_number": 32767,
- "emission_direction": "upstream"
}
]
}