The chat responses are generated using Generative AI technology for intuitive search and may not be entirely accurate. They are not intended as professional advice. For full details, including our use rights, privacy practices and potential export control restrictions, please refer to our Generative AI Service Terms of Use and Generative AI Service Privacy Information. As this is a test version, please let us know if something irritating comes up. Like you get recommended a chocolate fudge ice cream instead of an energy managing application. If that occurs, please use the feedback button in our contact form!
Skip to content
SiGREEN

SiGREEN offers a suite of powerful APIs designed to revolutionize your PCF management practices. With SiGREEN API, you can easily connect your Enterprise Resource Planning (ERP) and Product Lifecycle Management (PLM) systems to SiGREEN.

Quick Start

For getting started with our Application and our APIs, kindly refer to Getting Started.

For general information about the Product Portfolio functionality, refer to the respective section in the SiGREEN Help: Product Portfolio.

Concepts and Glossary

For detailed information about the concepts and terminology, please refer to Concepts and Glossary.

Product API

The Product API, part of SiGREEN's suite of APIs, offers users a streamlined solution for managing products and BOM. With endpoints including POST Product and GET Product, users can seamlessly add and retrieve data related to products.

Prerequisite: In order to create a product, it is mandatory to create the product identifier type first.

Getting started with the Product APIs involves the following steps:

  1. Create a product identifier type for a company in SiGREEN. The identifier type created initially in the beginning acts as the main identifier type. Example Request

    curl --location 'https://app.sigreen.siemens.com/api/products/identifierTypes' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer TOKEN' \
    --data '{
        "idType": "Product ID"
    }'
    ```Upload factory emissions for a product in SiGREEN.
    
    Example Response
    
    ```bash
    {
        "id": "01908d72-9005-7241-8f5c-37dcf1e65b5f"
    }
    
  2. Get product identifier types for a company in SiGREEN.

    Example Request

    curl --location 'https://app.sigreen.siemens.com/api/products/identifierTypes?size=100'
    --header 'Authorization: Bearer TOKEN' \
    

    Example Response

    {
        "items": [
            {
                "id": "01908d72-9005-7241-8f5c-37dcf1e65b5f",
                "idType": "Product ID",
                "isMainIdentifierType": true
            }
        ],
        "hasNext": true,
        "hasPrev": false,
        "page": 0,
        "pageNumber": 1,
        "size": 1,
        "totalPages": 1,
        "totalRecords": 1
    }
    
  3. Create a factory for a company in SiGREEN (Optional).

    Example Request

    curl --location 'app.sigreen.siemens.com/api/factories' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer TOKEN' \
    --data '{
        "factory": "Munich factory"
    }'
    

    Example Response

    {
      "id": "974ca1b0-7088-4f5f-97e6-1d44fa18f694"
    }
    
  4. Get list of factories in a company in SiGREEN.

    Example Request

    curl --location 'https://app.sigreen.siemens.com/api/factories' \
    --header 'Authorization: Bearer TOKEN' \
    --data ''
    

    Example Response

    {
        "items": [
            {
                "id": "974ca1b0-7088-4f5f-97e6-1d44fa18f694",
                "factory": "Munich factory"
            }
        ],
        "hasNext": true,
        "hasPrev": false,
        "page": 0,
        "pageNumber": 1,
        "size": 1,
        "totalPages": 1,
        "totalRecords": 1
    }
    
  5. Create a product.

    Example Request

    curl --location 'https://app.sigreen.siemens.com/api/products' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer TOKEN' \
    --data '{
      "name": "Simatics PL7",
      "family": "Controls E1456",
      "identifiers": [
        {
          "value": "UPC-1",
          "idType": "Product ID",
          "default": true
        }
      ],
      "description": "Your product description",
      "weight": "1.533",
      "quantity": "5",
      "unitType": "kg",
      "factoryIds": [
        "974ca1b0-7088-4f5f-97e6-1d44fa18f694"
      ]
    }'
    

    Example Response

    {
      "id": "0190771f-2363-7de3-839f-df9131b93f37"
    }
    
  6. Get product details by id in SiGREEN.

    Example Request

    curl --location --request GET 'https://app.sigreen.siemens.com/api/products/0190771f-2363-7de3-839f-df9131b93f37' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer TOKEN' \
    --data ''
    

    Example Response

    {
        "id": "0190771f-2363-7de3-839f-df9131b93f37",
        "name": "Simatics PL7",
        "family": "Controls E1456",
        "identifiers": [
            {
                "value": "UPC-1",
                "idType": "Product ID",
                "default": true
            }
        ],
        "description": "Your product description",
        "weight": "1.533",
        "quantity": "5.0",
        "unitType": "kg",
        "factoryIds": [
            "974ca1b0-7088-4f5f-97e6-1d44fa18f694"
        ],
        "createdOn": "2022-11-20T08:30:00.000Z",
        "updatedOn": "2022-11-21T10:30:00.000Z"
    }      
    

With the other available Product APIs, you can perform the following operations:

  1. Update a product identifier type for a company in SiGREEN.
  2. Delete an unused product identifier type for a company in SiGREEN.
  3. Update product details by id in SiGREEN.
  4. Get all product details for a company in SiGREEN.
  5. Delete a product in SiGREEN.
  6. Upload factory emissions for a product in SiGREEN.
  7. Get the PCF data for your products in SiGREEN.
  8. Offset the emissions of a product in SiGREEN.

note

This endpoint is part of Product API and is now deprecated. It has been replaced with an improved version in Product API v2.

Factory API(s)

With the other available Factory APIs, you can perform the following operations:

  1. Update a factory for a company in SiGREEN.
  2. Delete an unused factory of a company in SiGREEN.

Bill of Material API(s)

With the available Bill of Material APIs, you can perform the following operations:

  1. Get a list of Bill of Material entries for a product version in SiGREEN.
  2. Add items (Groups, Components, Products) to a BOM version.
  3. Save upstream emissions for a BOM version.
  4. Update metadata of a BOM item.
  5. Delete a BOM item from a BOM version.

The Bill of Materials (BOM) functionality has evolved from a simple read-only feature to a fully interactive and powerful BOM management system. This enhancement allows users to perform full Create, Read, Update, and Delete (CRUD) operations on both BOM versions and their associated items, bringing flexibility and control to how product structures are defined, maintained, and tracked.

At the core of this functionality is support for a wide range of BOM entities:

  • Groups: Logical containers that can represent modules or assemblies. Groups support multi-level nesting, enabling the modeling of complex, hierarchical product structures.
  • Components: Physical parts sourced from procurement systems. Users can define quantities for components but cannot alter core metadata sourced externally.
  • Products: Internal products that can be linked to Product Carbon Footprint (PCF) data. For these, users can manage quantity, link PCF IDs, and toggle emission-related flags like includeDistributionStage.

Users can now create and manage multiple BOM versions for a single product. Each version can carry its own identifier (e.g., "v1.0", "prototype-3"), metadata (e.g., comments, timestamps), and emissions tracking data. This versioning system enables iterative product design, version comparison, and historical tracking — essential for sustainability compliance and audit readiness.

The API also supports granular operations:

  • Add or remove individual BOM items (Groups, Components, Products)
  • Update specific metadata fields (e.g., group name, component quantity, product PCF ID)
  • Delete entire subtrees of items if needed

A crucial addition is the upstream emissions finalization feature. Once a BOM version is fully assembled, users can finalize it by saving upstream emissions. This operation locks the BOM, preventing further changes. Locking ensures data consistency for environmental reporting and downstream calculations, protecting against accidental edits.

To aid traceability, the API offers detailed retrieval capabilities, such as:

  • Listing all BOM versions for a product
  • Tracking timestamps like createdOn, updatedOn, and latestSync
  • Accessing emissions metadata including upstream values and lifecycle footprints

These features make SiGREEN’s BOM API not just a tool for structuring product data but a robust platform for version control, emissions accountability, and supply chain integration. It empowers product teams, sustainability officers, and procurement engineers to collaborate more effectively with full visibility into both the structure and environmental impact of their products.

For more information in detail about the Parameters, Request Body, and Responses refer to the API Reference under Product API(s).