> For the complete documentation index, see [llms.txt](https://docs.2050-materials.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.2050-materials.com/readme/using-the-2050-materials-api/available-endpoints/generic-material-data.md).

# Generic Material Data

For the `/get_generic_materials` endpoint in the 2050 Materials API, the following filter options and output fields are included

#### Endpoint

`GET https://app.2050-materials.com/developer/api/get_generic_materials`, with your API token in the header `Authorization: Bearer <api_token>`.

#### Filter options

Filter options can be retrieved dynamically using the `get_generic_material_filters` endpoint. This endpoint can also take the same filtering as the `get_generic_materials` endpoint, to dynamically return the available filters within a response (e.g. for implementing dropdowns to further filter a response).

1. `product_types` uses ID, or name (case-insensitive partial match) (use [get\_generic\_material\_filters](https://app.2050-materials.com/developer/documentation-ui/) to see IDs)
2. `material_type` uses ID, or name (case-insensitive partial match) (use [get\_generic\_material\_filters](https://app.2050-materials.com/developer/documentation-ui/) to see IDs)
3. `building_applications` uses ID, or name (case-insensitive partial match) (use [get\_generic\_material\_filters](https://app.2050-materials.com/developer/documentation-ui/) to see IDs)
4. `material_name` uses a string which matches the exact or partial material name\
   *If you're including special characters (like +, &, or =) in filters, be sure to encode them properly, or results may not match as expected.*
5. `data_source` uses a string which matches the exact or partial data\_source name (e.g. data\_source=CLF-Material-Baselines (2023-04)) or the ID (use [get\_generic\_material\_filters](https://app.2050-materials.com/developer/documentation-ui/) for the IDs and full list)
6. `declared_unit` Filter by the declared unit, as a case-insensitive partial match of the unit or its id (eg. `declared_unit=m3` )
7. `sort_by`: Available options include `updated`, `created`, `source_uuid`, `material_name`, `product_type`, `material_type`, `data_source`, and numeric value fields such as `carbon_a1a3` or `density`
8. `{field}__min` / `{field}__max`

   `number` *(query)*

   Range filtering on numerical fields. Append `__min` or `__max` to any supported field name to filter materials by value range (inclusive). Null values are automatically excluded. A value that is not a number is ignored.

   **Convention:** `{field}__min=value` (>= value), `{field}__max=value` (<= value)

   **Examples:**

   * `density__min=500` — density >= 500
   * `carbon_a1a3__max=10` — carbon\_a1a3 <= 10
   * `density__min=500&density__max=2000` — range 500-2000
   * `density__min=500&carbon_a1a3__max=1.5` — combine with AND logic

   **Supported fields:**

   * **Carbon:** `total_co2e_kg_mf`, `total_biogenic_co2e`, `carbon_a1a3`, `carbon_a4`, `carbon_a5`, `carbon_b1b5`, `carbon_c1c4`, `carbon_a1`, `carbon_a2`, `carbon_a3`, `carbon_b1`, `carbon_b2`, `carbon_b3`, `carbon_b4`, `carbon_b5`, `carbon_c1`, `carbon_c2`, `carbon_c3`, `carbon_c4`, `carbon_d`
   * **Harmonised LCA stages:** `manufacturing`, `transport_to_site`, `on_site_installation`, `use_and_maintenance`, `end_of_life`, `manufacturing_corrected`, `end_of_life_corrected`, `total_co2e_kg_mf_corrected`, `total_biogenic_co2e_corrected`
   * **Environmental:** `freshwater_use_a1a3`, `recycled_content`, `recyclable_content`, `reuse_potential`, `energy_recovery_possibility`, `odp`, `water_use_kg`
   * **Physical:** `density`, `grammage`, `linear_density`, `mass_per_piece`, `thickness`, `cross_sectional_area`, `mass_per_declared_unit`
   * **Grey Energy:** `grey_energy_total`, `grey_energy_fabrication_total`, `grey_energy_recovery_fabrication`, `grey_energy_material_recovery_fabrication`, `grey_energy_elimination`
9. `data=mini` returns a smaller dictionary which only include the following fields. This can be used to show information for dropdown menus without retrieving the full API response.<br>

   <pre class="language-json"><code class="lang-json"><strong>   {'id': 27444,
   </strong>   'material_name': 'Aerated concrete P2 04 non-reinforced',
      'data_source': 'OKOBAUDAT (English) - 2024',
      'generic_api_url': ''},
   </code></pre>
10. `sort_order`: `asc` (default) or `desc`. Using `sort_order` without `sort_by` returns 400.
11. `group_by`: group the results by `product_type` or `material_type`. Grouping applies within the returned page.
12. `exclude_nulls`: remove materials that have no value for the given fields, comma-separated (e.g. `exclude_nulls=carbon_a1a3,density`). An unsupported field returns 400.
13. `product_type_family`, `material_type_family`: ID, or name (case-insensitive partial match)
14. `icms_classifications`, `nrm1_classifications`, `rics_wlca_classifications`: classification code or name, exact case-insensitive match (e.g. `nrm1_classifications=NRM1_2_1`)
15. `source_category`: case-insensitive partial match of the source category
16. `created_after`, `created_before`, `updated_after`, `updated_before`: materials created or updated after or before a date (`YYYY-MM-DD`, exclusive). `created_between`, `updated_between`: a date range `YYYY-MM-DD,YYYY-MM-DD`. Dates are read as the start of that day, so the range ends at the start of the second date and leaves out that day itself.

### Output Fields

Each object in the `results` array contains the following fields:

| Field                                             | Type               | Description                                                                                                                                                                                                                                  |
| ------------------------------------------------- | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **id**                                            | integer            | Unique identifier of the material.                                                                                                                                                                                                           |
| **source\_uuid**                                  | string             | Unique identifier of the data source (e.g., `PR_01_23_4_50_1_1_1`).                                                                                                                                                                          |
| **material\_name**                                | string             | Name of the material.                                                                                                                                                                                                                        |
| **group\_elements\_nrm\_1**                       | array of strings   | List of group elements according to NRM 1 standards.                                                                                                                                                                                         |
| **elements\_nrm\_1**                              | array of strings   | List of elements according to NRM 1 standards.                                                                                                                                                                                               |
| **product\_type**                                 | string             | Product type.                                                                                                                                                                                                                                |
| **product\_type\_family**                         | string             | Product type family classifications.                                                                                                                                                                                                         |
| **uniclass\_systems**                             | array of strings   | UniClass systems classification codes.                                                                                                                                                                                                       |
| **uniclass\_products**                            | array of strings   | UniClass products classification codes.                                                                                                                                                                                                      |
| **uniclass\_materials**                           | array of strings   | UniClass materials classification codes.                                                                                                                                                                                                     |
| **icms\_classifications**                         | array of strings   | ICMS3 classifications, as `(code) name`.                                                                                                                                                                                                     |
| **nrm1\_classifications**                         | array of strings   | NRM 1 classifications, as `(code) name`.                                                                                                                                                                                                     |
| **rics\_wlca\_classifications**                   | array of strings   | RICS WLCA for Buildings classifications, as `(code) name`.                                                                                                                                                                                   |
| **material\_type**                                | string             | Material type.                                                                                                                                                                                                                               |
| **material\_type\_family**                        | string             | Material type family.                                                                                                                                                                                                                        |
| **data\_source**                                  | string             | Data source name.                                                                                                                                                                                                                            |
| **data\_source\_url**                             | string             | URL to the data source (e.g., certificate or database link).                                                                                                                                                                                 |
| **data\_source\_year**                            | integer            | Year of the data source.                                                                                                                                                                                                                     |
| **data\_source\_country**                         | string             | Country of the data source.                                                                                                                                                                                                                  |
| **data\_source\_environmental\_standard**         | string             | Environmental standard of the data source.                                                                                                                                                                                                   |
| **source\_category**                              | string             | Source category of the material.                                                                                                                                                                                                             |
| **functional\_unit\_quantity**                    | string             | Functional unit quantity value.                                                                                                                                                                                                              |
| **functional\_unit\_unit**                        | string             | Unit of the functional unit (e.g., `m3`, `piece`, `kg`).                                                                                                                                                                                     |
| **total\_co2e\_kg\_mf**                           | number             | Total CO₂ equivalent (kg) at manufacturing stage.                                                                                                                                                                                            |
| **total\_biogenic\_co2e**                         | number             | Total biogenic CO₂ equivalent (kg).                                                                                                                                                                                                          |
| **carbon\_a1a3**                                  | number             | Carbon emissions for stages A1–A3 (kg CO₂e). Recommended field for now; will later be replaced by `manufacturing`.                                                                                                                           |
| **carbon\_a4**                                    | number             | Default transport-to-site (A4) emissions from the data source (kg CO₂e), not project specific. Recommended field for now; will later be replaced by `transport_to_site`.                                                                     |
| **carbon\_a5**                                    | number             | Carbon emissions for stage A5 (kg CO₂e). Recommended field for now; will later be replaced by `on_site_installation`.                                                                                                                        |
| **carbon\_b1b5**                                  | number             | Carbon emissions for stages B1–B5 (kg CO₂e). Recommended field for now; will later be replaced by `use_and_maintenance`.                                                                                                                     |
| **carbon\_c1c4**                                  | number             | Carbon emissions for stages C1–C4 (kg CO₂e). Recommended field for now; will later be replaced by `end_of_life`.                                                                                                                             |
| **freshwater\_use\_a1a3**                         | number             | Freshwater use in stages A1–A3 (litres). Recommended field for now; will later be replaced by `water_use_kg`.                                                                                                                                |
| **manufacturing**                                 | number             | Harmonised A1–A3 emissions (kg CO₂e), same name as the product API. Being introduced as part of a transition to harmonised fields. Prefer `carbon_a1a3` for now.                                                                             |
| **transport\_to\_site**                           | number             | Harmonised A4 emissions (kg CO₂e). Being introduced as part of a transition to harmonised fields. Prefer `carbon_a4` for now.                                                                                                                |
| **on\_site\_installation**                        | number             | Harmonised A5 emissions (kg CO₂e). Being introduced as part of a transition to harmonised fields. Prefer `carbon_a5` for now.                                                                                                                |
| **use\_and\_maintenance**                         | number             | Harmonised B1–B5 emissions (kg CO₂e). Being introduced as part of a transition to harmonised fields. Prefer `carbon_b1b5` for now.                                                                                                           |
| **end\_of\_life**                                 | number             | Harmonised end-of-life emissions for stages C1–C4 (kg CO₂e), including C2 transport to disposal. Being introduced as part of a transition to harmonised fields. Prefer `carbon_c1c4` for now.                                                |
| **water\_use\_kg**                                | number             | Harmonised water use (kg). Being introduced as part of a transition to harmonised fields. Prefer `freshwater_use_a1a3` for now.                                                                                                              |
| **manufacturing\_corrected**                      | number             | A1–A3 with biogenic carbon storage added back, floored at zero (kg CO₂e). If no correction applies, equals `manufacturing` floored at zero.                                                                                                  |
| **end\_of\_life\_corrected**                      | number             | Biogenic-corrected end-of-life emissions (kg CO₂e). If no correction applies, equals `end_of_life` (not floored).                                                                                                                            |
| **total\_co2e\_kg\_mf\_corrected**                | number             | Total recomputed from the corrected stages when a biogenic correction applies; otherwise equals `total_co2e_kg_mf` (kg CO₂e).                                                                                                                |
| **total\_biogenic\_co2e\_corrected**              | number             | Biogenic CO₂e moved by the correction; otherwise equals `total_biogenic_co2e` (kg).                                                                                                                                                          |
| **lca\_fields**                                   | object             | Per-module LCA breakdown of the material: metric name to `{module: value}`. Only metrics and modules with a value are included; the key is missing when the material has no breakdown. See [LCA breakdown](#lca-breakdown-lca_fields) below. |
| **recycled\_content**                             | number             | Percentage of recycled content.                                                                                                                                                                                                              |
| **recyclable\_content**                           | number             | Percentage of recyclable content.                                                                                                                                                                                                            |
| **reuse\_potential**                              | number             | Percentage potential for reuse.                                                                                                                                                                                                              |
| **energy\_recovery\_possibility**                 | number             | Percentage possibility of energy recovery.                                                                                                                                                                                                   |
| **odp**                                           | string             | Ozone depletion potential.                                                                                                                                                                                                                   |
| **density**                                       | number             | Density of the material.                                                                                                                                                                                                                     |
| **density\_estimated**                            | boolean            | Whether density is estimated.                                                                                                                                                                                                                |
| **grammage**                                      | number             | Grammage of the material.                                                                                                                                                                                                                    |
| **grammage\_estimated**                           | boolean            | Whether grammage is estimated.                                                                                                                                                                                                               |
| **linear\_density**                               | number             | Linear density \[kg/m].                                                                                                                                                                                                                      |
| **linear\_density\_estimated**                    | boolean            | Whether linear density is estimated.                                                                                                                                                                                                         |
| **mass\_per\_piece**                              | number             | Mass per piece \[kg].                                                                                                                                                                                                                        |
| **mass\_per\_piece\_estimated**                   | boolean            | Whether mass per piece is estimated.                                                                                                                                                                                                         |
| **thickness**                                     | number             | Thickness of the material (m).                                                                                                                                                                                                               |
| **thickness\_estimated**                          | boolean            | Whether thickness is estimated.                                                                                                                                                                                                              |
| **cross\_sectional\_area**                        | number             | Cross-sectional area \[m²].                                                                                                                                                                                                                  |
| **cross\_sectional\_area\_estimated**             | boolean            | Whether cross-sectional area is estimated.                                                                                                                                                                                                   |
| **mass\_per\_declared\_unit**                     | number             | Mass per declared unit \[kg].                                                                                                                                                                                                                |
| **mass\_per\_declared\_unit\_estimated**          | boolean            | Whether mass per declared unit is estimated.                                                                                                                                                                                                 |
| **grey\_energy\_total**                           | number             | Total grey energy \[kWh oil-eq].                                                                                                                                                                                                             |
| **grey\_energy\_fabrication\_total**              | number             | Grey energy from fabrication \[kWh oil-eq].                                                                                                                                                                                                  |
| **grey\_energy\_recovery\_fabrication**           | number             | Grey energy recovery from fabrication \[kWh oil-eq].                                                                                                                                                                                         |
| **grey\_energy\_material\_recovery\_fabrication** | number             | Grey energy from material recovery in fabrication \[kWh oil-eq].                                                                                                                                                                             |
| **grey\_energy\_elimination**                     | number             | Grey energy from elimination \[kWh oil-eq].                                                                                                                                                                                                  |
| **created**                                       | string (date-time) | Date and time when the material record was created.                                                                                                                                                                                          |
| **updated**                                       | string (date-time) | Date and time when the material record was last updated.                                                                                                                                                                                     |
| **generic\_api\_url**                             | string             | URL that returns this material from the `get_generic_materials` endpoint.                                                                                                                                                                    |

### LCA breakdown (`lca_fields`)

`lca_fields` gives the material's LCA results per life-cycle module, in the same shape as the LCA fields of a product's `material_facts` in [get\_products](/readme/using-the-2050-materials-api/available-endpoints/product-data-full.md#expanded-lca-information-from-epds). Each key is a metric name, such as `global_warming_potential_fossil` or `net_fresh_water_use`, and each value maps a module to its value in the material's declared unit.

```json
"lca_fields": {
  "global_warming_potential_fossil": {"A1A2A3": 2.85, "A4": 0.12, "C3": 0.4, "C4": 0.05},
  "net_fresh_water_use": {"A1A2A3": 1.3}
}
```

* Modules are `A1` to `A5`, `B1` to `B7`, `C1` to `C4`, `D`, and the grouped `A1A2A3`, `Btotal` and `Ctotal`.
* Only modules with a value are listed. A metric with no values is left out, and so is `lca_fields` itself when the material has no breakdown.
* The flat fields are derived from this breakdown: `manufacturing` is `global_warming_potential_fossil` A1A2A3, `use_and_maintenance` the sum of its B1 to B5 modules (or `Btotal`), `end_of_life` the sum of its C1 to C4 modules (or `Ctotal`), and `water_use_kg` comes from `net_fresh_water_use` A1A2A3.
* Most generic materials currently have grouped modules only (`A1A2A3`, `Btotal`, `Ctotal`), because their data sources report stage totals. Data sources that report each module will show the full breakdown.

***

### Pagination Fields

In addition to `results`, the API response includes pagination metadata:

| Field                    | Type              | Description                                                       |
| ------------------------ | ----------------- | ----------------------------------------------------------------- |
| **TotalMaterials**       | integer           | Total number of materials matching the query.                     |
| **countMaterialsOnPage** | integer           | Number of materials in the current page of results.               |
| **current\_page**        | integer           | Current page number.                                              |
| **material\_range**      | array of integers | Range of material indices on the current page (e.g., `[1, 200]`). |
| **next**                 | string or null    | URL of the next page, or `null` if there is no next page.         |
| **previous**             | string or null    | URL of the previous page, or `null` if there is no previous page. |

#### Additional Information

* The API uses JWT authentication and requires the user to be authenticated.
* The endpoint supports pagination with `page` and `page_size`. `page_size` defaults to 200 and cannot exceed 200 (a larger value returns 400 "Page size cannot be more than 200").
* Trial accounts receive at most 5 results, from page 1 only. Requesting another page returns 401.
* Different user roles and permissions are handled, with specific access and rate limits.
* Various response statuses are managed, including "200 OK" for successful requests, "401 Unauthorized" for access issues, and "429 Too Many Requests" for rate limit exceeding.

This endpoint provides a detailed overview of generic materials, including environmental impacts and technical specifications, which is vital for users focused on sustainability and environmental impact in the construction and building materials industry.
