openapi: 3.0.1
info:
  title: PROCUREMENT-DATA-SERVICE
  description: This API specification serves as reference within procurement-data-service project for how to design and specify HTTPs-based APIs.
  contact:
    name: SiGREEN API Support
    email: sigreensupport.industry@siemens.com
  version: 1.16.9
servers:
  - url: https://app.sigreen.siemens.com/api
    description: SiGREEN Production Server
  - url: https://app-uat.sigreen-playground.siemens.cloud/api
    description: SiGREEN User Acceptance Test (UAT) Server
security:
  - bearerAuth: []
tags:
  - name: Suppliers
    description: '![basic](https://developer.siemens.com/sigreen/images/api-package-basic-green.svg) Supplier APIs'
  - name: PCF Requests
    description: '![remote](https://developer.siemens.com/sigreen/images/api-package-remote-red.svg) Request Pcf APIs'
  - name: Component Secondary Data
    description: '![basic](https://developer.siemens.com/sigreen/images/api-package-basic-green.svg) Component Secondary Data APIs'
  - name: Supplier Identifier Types
    description: '![basic](https://developer.siemens.com/sigreen/images/api-package-basic-green.svg) Supplier Identifier Type APIs'
  - name: Component Identifier Types
    description: '![basic](https://developer.siemens.com/sigreen/images/api-package-basic-green.svg) Component Identifier Types APIs'
  - name: Get Component's PCF
    description: '![basic](https://developer.siemens.com/sigreen/images/api-package-basic-green.svg) Get Component''s PCF APIs'
  - name: Suppliers Invitation
    description: '![remote](https://developer.siemens.com/sigreen/images/api-package-remote-red.svg) Suppliers Invitation APIs'
  - name: Component Suppliers
    description: '![basic](https://developer.siemens.com/sigreen/images/api-package-basic-green.svg) Component Supplier APIs'
  - name: Components
    description: '![basic](https://developer.siemens.com/sigreen/images/api-package-basic-green.svg) Components APIs'
  - name: Material Categories
    description: '![basic](https://developer.siemens.com/sigreen/images/api-package-basic-green.svg) Material Categories'
paths:
  /suppliers/{id}:
    get:
      tags:
        - Suppliers
      summary: Get supplier by id for one company in SiGREEN
      description: Get supplier by id for one company in SiGREEN
      operationId: getSupplier
      parameters:
        - name: id
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '200':
          description: Get supplier details by id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetSupplier'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91441
                instance: /api/suppliers/{id}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91438
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91439
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91440
                instance: /api/suppliers/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    put:
      tags:
        - Suppliers
      summary: Update a supplier by supplier Id in SiGREEN.
      description: Update a supplier by supplier Id in SiGREEN.
      operationId: updateSupplier
      parameters:
        - name: id
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Supplier'
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91437
                instance: /api/suppliers/{id}
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91438
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91439
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91440
                instance: /api/suppliers/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    delete:
      tags:
        - Suppliers
      summary: Delete supplier by supplier id in SiGREEN
      description: Delete supplier by supplier id in SiGREEN
      operationId: deleteSupplier
      parameters:
        - name: id
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91556
                instance: /api/suppliers/{id}
                errors:
                  - detail: id can't be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91557
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91558
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91559
                instance: /api/suppliers/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /materialCategories/{id}:
    get:
      tags:
        - Material Categories
      summary: Get Material Category details by id
      description: Get Material Category details by id
      operationId: getMaterialCategory
      parameters:
        - name: id
          in: path
          description: UUID to identify the Material Category of the company in SiGREEN
          required: true
          schema:
            type: string
          example: d7e420c2-5a49-4a34-8ead-9c52a8f91577
      responses:
        '200':
          description: Get Material Category details by id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetMaterialCategoryWithComponents'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91408
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91409
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91410
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91411
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    put:
      tags:
        - Material Categories
      summary: Update Material Categories details by id
      description: Update Material Categories details by id
      operationId: updateMaterialCategory
      parameters:
        - name: id
          in: path
          description: UUID to identify the Material Category of the company in SiGREEN
          required: true
          schema:
            type: string
          example: d7e420c2-5a49-4a34-8ead-9c52a8f91577
      requestBody:
        description: Update Material Category details by id
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MaterialCategory'
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91424
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91425
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91426
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91427
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    delete:
      tags:
        - Material Categories
      summary: Delete Material Categories details by id
      description: |
        Delete Material Categories details by id.
        Components which are linked to Material Category would be in uncategorized (It doesn't belong to any category)
      operationId: deleteMaterialCategory
      parameters:
        - name: id
          in: path
          description: UUID to identify the Material Category of the company in SiGREEN
          required: true
          schema:
            type: string
          example: d7e420c2-5a49-4a34-8ead-9c52a8f91577
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91412
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91413
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91414
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91415
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /materialCategories/{id}/image:
    get:
      tags:
        - Material Categories
      summary: Get Material Category image by id
      description: Get Material Category image by id
      operationId: getMaterialCategoryImage
      parameters:
        - name: id
          in: path
          description: UUID to identify the Material Category of the company in SiGREEN
          required: true
          schema:
            type: string
          example: d7e420c2-5a49-4a34-8ead-9c52a8f91577
      responses:
        '200':
          description: Material Category image by id
          content:
            image/*:
              schema:
                type: string
                format: byte
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91404
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Material category Id does not exist.
                    code: SIG-BUS-0065
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91405
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91406
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91407
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    put:
      tags:
        - Material Categories
      summary: ' Update Material Category image by id'
      description: Update Material Category image by id. Allowed max 1 MB file size.
      operationId: updateMaterialCategoryImage
      parameters:
        - name: id
          in: path
          description: UUID to identify the Material Category of the company in SiGREEN
          required: true
          schema:
            type: string
          example: d7e420c2-5a49-4a34-8ead-9c52a8f91577
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                image:
                  type: string
                  format: binary
              required:
                - image
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91428
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: id must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91429
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91430
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91431
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    delete:
      tags:
        - Material Categories
      summary: Delete Material Category image by id
      description: Delete Material Category image by id
      operationId: deleteMaterialCategoryImage
      parameters:
        - name: id
          in: path
          description: UUID to identify the Material Category of the company in SiGREEN
          required: true
          schema:
            type: string
          example: d7e420c2-5a49-4a34-8ead-9c52a8f91577
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91416
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: id must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91417
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91418
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91419
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/{id}:
    get:
      tags:
        - Components
      summary: Get component details by id
      description: Get component details by id
      operationId: getComponent
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '200':
          description: Get component details by id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetComponents'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91456
                instance: /api/components/{id}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91457
                instance: /api/components/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91458
                instance: /api/components/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91459
                instance: /api/components/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    put:
      tags:
        - Components
      summary: Update component details by id
      description: Update component details by id
      operationId: updateComponent
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Components'
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91461
                instance: /api/components/{id}
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91462
                instance: /api/components/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91463
                instance: /api/components/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91464
                instance: /api/components/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    delete:
      tags:
        - Components
      summary: Delete component by id
      description: Delete component by id
      operationId: deleteComponent
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91564
                instance: /api/components/{id}
                errors:
                  - detail: id must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91565
                instance: /api/components/{id}
                errors:
                  - detail: Invalidate Authentcation
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91566
                instance: /api/components/{id}
                errors:
                  - detail: Invalidate Autherization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91567
                instance: /api/components/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/{id}/secondaryData/{secondaryDataId}:
    get:
      tags:
        - Component Secondary Data
      summary: Get component secondary data by secondary data id
      description: Get component secondary data by secondary data id
      operationId: findBySystemAndSecondaryDataId
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: secondaryDataId
          in: path
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '200':
          description: Get component secondary data by secondary data id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetComponentSecondaryData'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91469
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91470
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91471
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91472
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    put:
      tags:
        - Component Secondary Data
      summary: Update component secondary data by secondary data id.
      description: Update component secondary data by secondary data id.
      operationId: updateComponentSecondaryData
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: secondaryDataId
          in: path
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ComponentSecondaryData'
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91474
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Quantity must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91470
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91471
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91472
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    delete:
      tags:
        - Component Secondary Data
      summary: Delete component secondary data by secondary data id.
      description: |
        Impacts When Deleting Secondary Data
        If secondary data is already linked with a supplier (via the Component Supplier Link), it will be unlinked upon deletion.
        Secondary data will also be unlinked from the component and deleted from the system
      operationId: deleteComponentSecondaryData
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: secondaryDataId
          in: path
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: |
            Impacts When Deleting Secondary Data
            If secondary data is already linked with a supplier (via the Component Supplier Link), it will be unlinked upon deletion.
            Secondary data will also be unlinked from the component and deleted from the system
          content:
            application/json: {}
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91469
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91470
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91471
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91472
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/{id}/linkSuppliers/{componentSupplierLinkId}:
    get:
      tags:
        - Component Suppliers
      summary: Get linked suppliers by componentSupplierLinkId with component
      description: Get linked suppliers by componentSupplierLinkId with component
      operationId: getComponentSupplierLink
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: componentSupplierLinkId
          in: path
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '200':
          description: Get linked suppliers by componentSupplierLinkId with component
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetLinkedSupplier'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91483
                instance: /components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91484
                instance: /components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91485
                instance: /components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91486
                instance: /components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    put:
      tags:
        - Component Suppliers
      summary: Update location/share/secondary data/supplier product id by component supplier id
      description: Update location/share/secondary data/supplier product id by component supplier id
      operationId: updateLinkSupplierAndSecondaryDataToComponent
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: componentSupplierLinkId
          in: path
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkedSupplier'
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91487
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: SupplierId must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91488
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91489
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91490
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    delete:
      tags:
        - Component Suppliers
      summary: Delete link between component and supplier
      description: Delete link between component and supplier. Supports only soft delete.
      operationId: deleteLinkSupplierAndSecondaryDataToComponent
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: componentSupplierLinkId
          in: path
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91491
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: ComponentSupplierLinkId must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91492
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91493
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91494
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /suppliers/{id}/invite:
    post:
      tags:
        - Suppliers Invitation
      summary: Invite supplier to SiGREEN via email.
      description: |
        Invite supplier to SiGREEN via email.
        Invitation is valid for 30 days.
        Invite can be sent only when existing invite is expired or supplier status is in (NOT_INVITED_YET, INVITE_CANCELLED, DENIED_BY_ADMIN)
      operationId: inviteSupplier
      parameters:
        - name: id
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        description: Invite supplier to SiGREEN via email.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SupplierInvite'
            example:
              message: Message to supplier
        required: true
      responses:
        '201':
          description: Invited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InviteSupplierResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91568
                instance: /suppliers/{id}/invite
                errors:
                  - detail: id must be valid
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91569
                instance: /suppliers/{id}/invite
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91570
                instance: /suppliers/{id}/invite
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91571
                instance: /suppliers/{id}/invite
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /suppliers/{id}/invite/cancel:
    post:
      tags:
        - Suppliers Invitation
      summary: Cancel supplier invite to SiGREEN
      description: |-
        Cancel supplier invite to SiGREEN.
        When invitation canceled then
        1. Email would be sent to supplier
        2. Invitation id would be marked as inactive.
      operationId: cancelSupplierInvite
      parameters:
        - name: id
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91572
                instance: /suppliers/{id}/invite/cancel
                errors:
                  - detail: id must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91573
                instance: /suppliers/{id}/invite/cancel
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91574
                instance: /suppliers/{id}/invite/cancel
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91575
                instance: /suppliers/{id}/invite/cancel
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /suppliers/identifierTypes:
    get:
      tags:
        - Supplier Identifier Types
      summary: Get supplier identifier types for a company in SiGREEN.
      description: API to get supplier identifier types of a company in SiGREEN.
      operationId: getSupplierIdentifierTypes
      parameters:
        - name: page
          in: query
          description: Page Number, usually starts with 0.
          required: false
          schema:
            type: string
            minimum: 0
        - name: size
          in: query
          description: Size of the page default value is 10
          required: false
          schema:
            type: string
            minimum: 1
      responses:
        '200':
          description: List of supplier identifier types.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentifierTypesResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91443
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91444
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91445
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91446
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    post:
      tags:
        - Supplier Identifier Types
      summary: Create a supplier identifier type for a company in SiGREEN.
      description: API to create supplier identifier type of a company in SiGREEN.
      operationId: createSupplierIdentifierType
      requestBody:
        description: Request for creating new supplier identifier type of a company in SiGREEN. First created identifier type will be treated as main identifier type.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IdentifierTypeRequest'
        required: true
      responses:
        '201':
          description: Created. Response will return the system id of the created supplier identifier type.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentifierTypeResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91442
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91444
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91445
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91446
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /suppliers:
    get:
      tags:
        - Suppliers
      summary: Get all suppliers for a company in SiGREEN.
      description: Get all suppliers for a company in SiGREEN.
      operationId: getAllSupplierDetails
      parameters:
        - name: searchText
          in: query
          description: |
            Partial text search on following attributes - locations , name , identifiers.
            Minimum 3 characters required to search
          required: false
          schema:
            type: string
            maxLength: 50
            minLength: 3
          example: supplier-001
        - name: from
          in: query
          description: The start date of the date range when the supplier was created.
          required: false
          schema:
            type: string
            format: date-time
          example: '2022-11-20T08:30:00.000Z'
        - name: to
          in: query
          description: The start date of the date range when the supplier was created.
          required: false
          schema:
            type: string
            format: date-time
          example: '2022-11-20T08:30:00.000Z'
        - name: email
          in: query
          description: Filter supplier by e-mail.
          required: false
          schema:
            type: string
            maxLength: 50
            minLength: 0
        - name: name
          in: query
          description: Filter supplier by name.
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
            pattern: ^[^<>"”=']*$
        - name: idType
          in: query
          description: |
            Supplier identifier type in SiGREEN.
            idType filter is applicable only when user is searching with idValue filter.
            Idea here is to find components with idType and value combination.
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
            pattern: ^[^<>"”=']*$
          example: supplier-idType
        - name: idValue
          in: query
          description: Filter suppliers based on either main or additional identifier value in SiGREEN.
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
            pattern: ^[^<>"”=']*$
          example: 7889KUY8
        - name: status
          in: query
          description: Supplier Status
          required: false
          schema:
            type: array
            items:
              type: string
              enum:
                - NOT_INVITED_YET
                - INVITED
                - INVITE_CANCELLED
                - DENIED_BY_ADMIN
                - ACTIVE
        - name: sigreenId
          in: query
          description: |-
            The SiGREEN ID is a globally uniquely identify a company (legal entities) globally within the SiGREEN platform.
            . It serves as a consistent reference to identify supplier companies across systems and processes.
            . The SiGREEN ID would be there for all active suppliers.
            . Every company registered on the platform will have a SiGREEN ID.
            . For supplier companies, the SiGREEN ID ensures traceability and standardized identification.
          required: false
          schema:
            type: string
            maxLength: 14
            minLength: 0
            pattern: ^[^<>"”=']*$
          example: SGN123456ABCZZ
        - name: sort
          in: query
          description: Sorting fields supported (name, createdOn, updateOn). Example - Ascending order '+name' , Descending order '-name'. Default order is updateOn descending order.
          required: false
          schema:
            type: string
            maxLength: 50
            minLength: 0
          example: '-updateOn'
        - name: page
          in: query
          description: page number
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: A list of suppliers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SupplierPaginatedResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91433
                instance: /api/suppliers
                errors:
                  - detail: From date format is wrong
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91434
                instance: /api/suppliers
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91435
                instance: /api/suppliers
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91436
                instance: /api/suppliers
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    post:
      tags:
        - Suppliers
      summary: Create a supplier in SiGREEN
      description: Create a supplier in SiGREEN
      operationId: createSupplier
      requestBody:
        description: Create a supplier in SiGREEN
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Supplier'
              example:
                id: C98BE31E-3698-412D-91E3-8270102CC7D5
        required: true
      responses:
        '201':
          description: Created. Response will return the system id of the created supplier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SupplierResponseId'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91432
                instance: /api/suppliers
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91434
                instance: /api/suppliers
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91435
                instance: /api/suppliers
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91436
                instance: /api/suppliers
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /materialCategories:
    get:
      tags:
        - Material Categories
      summary: Get all Material Categories for one company in SiGREEN
      description: Get all Material Categories for one company in SiGREEN
      operationId: getPaginatedMaterialCategories
      parameters:
        - name: from
          in: query
          description: The start date of the date range when the material category was created in SiGREEN.
          required: false
          schema:
            type: string
          example: '2022-11-20T08:30:00.000Z'
        - name: to
          in: query
          description: The end date of the date range when the material category was created in SiGREEN.
          required: false
          schema:
            type: string
          example: '2022-11-20T08:30:00.000Z'
        - name: name
          in: query
          description: Filter Material Category Name
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
        - name: page
          in: query
          description: Page Number, usually starts with 0
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: Size of the page default value is 10
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: A list of Material Categories
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MaterialCategoryPaginatedResponseExt'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91403
                instance: /api/materialCategories
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91402
                instance: /api/materialCategories
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91401
                instance: /api/materialCategories
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91400
                instance: /api/materialCategories
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    post:
      tags:
        - Material Categories
      summary: Create Material Category to SiGREEN
      description: Create Material Category to SiGREEN
      operationId: createMaterialCategory
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MaterialCategory'
        required: true
      responses:
        '201':
          description: Created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MaterialCategoryResponseId'
                example:
                  id: C98BE31E-3698-412D-91E3-8270102CC7D5
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91420
                instance: /api/materialCategories
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91421
                instance: /api/materialCategories
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91422
                instance: /api/materialCategories
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91423
                instance: /api/materialCategories
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/{id}/suppliers/{supplierId}/pcfRequest:
    post:
      tags:
        - PCF Requests
      summary: Send pcf request to suppliers in SiGREEN.
      description: |-
        Send pcf request to suppliers in SiGREEN.
        More details When pcf requested then 1. Email would be send to supplier as well. 2. Notification would be sent to supplier company
      operationId: createPcfGenerateRequestExt
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: supplierId
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PcfRequest'
        required: true
      responses:
        '201':
          description: Task is created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatePcfRequestResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91552
                instance: /components/{id}/suppliers/{supplierId}/pcfRequest
                errors:
                  - detail: Invalid Supplier Id (UUID).
                    code: SIG-001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91553
                instance: /components/{id}/suppliers/{supplierId}/pcfRequest
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91554
                instance: /components/{id}/suppliers/{supplierId}/pcfRequest
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91555
                instance: /components/{id}/suppliers/{supplierId}/pcfRequest
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/{id}/secondaryData:
    get:
      tags:
        - Component Secondary Data
      summary: Get all component secondary data for component in SiGREEN
      description: Get all component secondary data for component in SiGREEN
      operationId: getComponentSecondaryData
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: page
          in: query
          description: page number
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: A list of secondary data per component
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecondaryDataResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91473
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91466
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91467
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91468
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    post:
      tags:
        - Component Secondary Data
      summary: Create secondary data with component.
      description: Create secondaryData with component. Production stage - Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
      operationId: createComponentSecondaryData
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ComponentSecondaryData'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComponentSecondaryDataResponseId'
                example:
                  secondaryDataId: C98BE31E-3698-412D-91E3-8270102CC7D5
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91465
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Quantity must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91466
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91467
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91468
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/{id}/linkSuppliers:
    get:
      tags:
        - Component Suppliers
      summary: Get all linked suppliers with component
      description: Get all linked suppliers with component
      operationId: getComponentSupplierLinks
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: supplierId
          in: query
          description: UUID to identify the supplier of the company in SiGREEN
          required: false
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: supplierLocation
          in: query
          description: Supplier Location
          required: false
          schema:
            type: string
        - name: supplierProductId
          in: query
          description: Supplier Product Id
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
        - name: hasSupplierShare
          in: query
          description: Filter component suppliers who is having supplier share greater than 0. Default would give all results (with and without share)
          required: false
          schema:
            type: boolean
          example: false
        - name: page
          in: query
          description: page number
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: A list of linked suppliers per component
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComponentSupplierLinkResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91479
                instance: /api/components/{id}/linkSuppliers
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91480
                instance: /api/components/{id}/linkSuppliers
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91481
                instance: /api/components/{id}/linkSuppliers
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91482
                instance: /api/components/{id}/linkSuppliers
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    post:
      tags:
        - Component Suppliers
      summary: Link suppliers and secondary data with component
      description: Link suppliers and secondary data with component
      operationId: linkSupplierAndSecondaryDataToComponent
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/LinkedSupplier'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ComponentSupplierSecondaryData'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91475
                instance: /components/{id}/linkSuppliers
                errors:
                  - detail: Supplier Id must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91476
                instance: /components/{id}/linkSuppliers
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91477
                instance: /components/{id}/linkSuppliers
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91478
                instance: /components/{id}/linkSuppliers
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/identifierTypes:
    get:
      tags:
        - Component Identifier Types
      summary: Get component identifier types for a company in SiGREEN.
      description: API to get component identifier types of a company in SiGREEN.
      operationId: getComponentIdentifierTypes
      parameters:
        - name: page
          in: query
          description: page number
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: List of component identifier types.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentifierTypesResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91499
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91501
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91502
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91503
                instance: /components/identifierTypes
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    post:
      tags:
        - Component Identifier Types
      summary: Create a component identifier type for a company in SiGREEN.
      description: API to create component identifier type of a company in SiGREEN.
      operationId: createComponent
      requestBody:
        description: Request for creating new component identifier type of a company in SiGREEN. First created identifier type will be treated as main identifier type.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IdentifierTypeRequest'
        required: true
      responses:
        '201':
          description: Created. Response will return the system id of the created component identifier type.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentifierTypeResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91499
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91501
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91502
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91503
                instance: /components/identifierTypes
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components:
    get:
      tags:
        - Components
      summary: Get all components for one company in SiGREEN
      description: Get all components for one company in SiGREEN
      operationId: getAllComponentDetails
      parameters:
        - name: from
          in: query
          description: The start date of the date range when the component was created.
          required: false
          schema:
            type: string
          example: '2022-11-20T08:30:00.000Z'
        - name: to
          in: query
          description: The end date of the date range when the component was created.
          required: false
          schema:
            type: string
          example: '2022-11-20T08:30:00.000Z'
        - name: name
          in: query
          description: Filter component by name
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
        - name: componentsCategory
          in: query
          description: |-
            CATEGORIZED -> Components belongs to material category
            UNCATEGORIZED -> Components doesn't belongs to any material category
            ALL -> All components
          required: false
          schema:
            type: string
            default: ALL
            enum:
              - ALL
              - CATEGORIZED
              - UNCATEGORIZED
          example: ALL
        - name: materialCategory
          in: query
          description: Filter components by material category.
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
        - name: idType
          in: query
          description: |
            Component identifier type in SiGREEN.
            idType filter is applicable only when user is searching with idValue filter.
            Idea here is to find components with idType and value combination.
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
          example: component-idType
        - name: idValue
          in: query
          description: Filter components based on either main or additional identifier value in SiGREEN.
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
          example: 7898689ASQ
        - name: searchText
          in: query
          description: |-
            Partial text search on following attributes - materialCategory , name , identifiers.
                                                         Search text minimum 3 charecters required
          required: false
          schema:
            type: string
            maxLength: 50
            minLength: 3
          example: component-001
        - name: sort
          in: query
          description: Sorting fields supported (name, createdOn, updateOn). Example - Ascending order '+name' , Descending order '-name'. Default order is updateOn descending order.
          required: false
          schema:
            type: string
            maxLength: 50
            minLength: 0
          example: '-updateOn'
        - name: page
          in: query
          description: page number
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: A list of components
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComponentPaginatedResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91460
                instance: /api/components
                errors:
                  - detail: Invalid date format
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91453
                instance: /api/components
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91454
                instance: /api/components
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91455
                instance: /api/components
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    post:
      tags:
        - Components
      summary: Create component in SiGREEN
      description: Create component in SiGREEN
      operationId: createComponent_1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Components'
        required: true
      responses:
        '201':
          description: Created. Response will return the system id of the created component.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComponentResponseId'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91452
                instance: /api/components
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91453
                instance: /api/components
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91454
                instance: /api/components
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91455
                instance: /api/components
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /suppliers/identifierTypes/{id}:
    delete:
      tags:
        - Supplier Identifier Types
      summary: Delete an unused supplier identifier type for a company in SiGREEN.
      description: Delete only one record, it is only a soft delete.
      operationId: deleteSupplierIdentifierType
      parameters:
        - name: id
          in: path
          description: UUID to identify the supplier identifier type of the company in SiGREEN.
          required: true
          schema:
            type: string
            minLength: 1
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91451
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91448
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91449
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91450
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    patch:
      tags:
        - Supplier Identifier Types
      summary: Update a supplier identifier type for a company in SiGREEN.
      description: API to update supplier identifier type for a company in SiGREEN.
      operationId: updateSupplierIdentifierType
      parameters:
        - name: id
          in: path
          description: UUID to identify the supplier identifier type of the company in SiGREEN.
          required: true
          schema:
            type: string
            minLength: 1
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        description: Update a supplier identifier type in SiGREEN.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IdentifierTypeUpdateRequest'
        required: true
      responses:
        '202':
          description: Accepted.
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91447
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91448
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91449
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91450
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/identifierTypes/{id}:
    delete:
      tags:
        - Component Identifier Types
      summary: Delete an unused component identifier type for a company in SiGREEN.
      description: Delete only one record, it is only a soft delete.
      operationId: deleteComponentIdentifierType
      parameters:
        - name: id
          in: path
          description: UUID to identify the component identifier type of the company in SiGREEN.
          required: true
          schema:
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91500
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91496
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91497
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91498
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    patch:
      tags:
        - Component Identifier Types
      summary: Update a component identifier type for a company in SiGREEN.
      description: API to update the component identifier type for a company in SiGREEN.
      operationId: updateComponent_1
      parameters:
        - name: id
          in: path
          description: UUID to identify the component identifier type of the company in SiGREEN.
          required: true
          schema:
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      requestBody:
        description: Update a component identifier type in SiGREEN.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IdentifierTypeUpdateRequest'
        required: true
      responses:
        '202':
          description: Accepted.
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91495
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91496
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91497
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91498
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/{id}/suppliers/{supplierId}/pcf:
    get:
      tags:
        - Get Component's PCF
      summary: Get an export of a PCF of a component without cryptographic material. If you need cryptographic verifiability of this information please use DIDComm APIs.
      description: Get an export of a PCF of a component without cryptographic material. If you need cryptographic verifiability of this information please use DIDComm APIs.
      operationId: getComponentPCFDetails
      parameters:
        - name: id
          in: path
          description: UUID to identify the component of the company in SiGREEN.
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: 550e8400-e29b-41d4-a716-446655440000
        - name: supplierId
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: 550e8400-e29b-41d4-a716-446655440000
        - name: page
          in: query
          description: page number
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: A component product carbon footprints for component of a supplier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComponentPCFPaginatedResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91512
                instance: /components/{id}/suppliers/{supplierId}/pcf
                errors:
                  - detail: Invalid Component id
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91513
                instance: /components/{id}/suppliers/{supplierId}/pcf
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91514
                instance: /components/{id}/suppliers/{supplierId}/pcf
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91515
                instance: /components/{id}/suppliers/{supplierId}/pcf
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/pcfData:
    get:
      tags:
        - Get Component's PCF
      summary: Get the PCF data for your components in SiGREEN.
      description: Get the PCF data for your components in SiGREEN.
      operationId: getPCFData
      parameters:
        - name: componentId
          in: query
          description: UUID to identify the component of the company in SiGREEN.
          required: false
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: supplierId
          in: query
          description: UUID to identify the supplier of the company in SiGREEN
          required: false
          schema:
            type: string
            maxLength: 36
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: componentSupplierLinkId
          in: query
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          required: false
          schema:
            type: string
            maxLength: 36
            minLength: 0
        - name: pcfId
          in: query
          description: UUID for identifying the pcf data of the company in SiGREEN
          required: false
          schema:
            type: string
            maxLength: 100
            minLength: 0
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: from
          in: query
          description: Proof approved from DateTime. DateTime (ISO 8601; UTC Timezone)
          required: false
          schema:
            type: string
          example: '2022-11-20T08:30:00.000Z'
        - name: to
          in: query
          description: Proof approved to DateTime. DateTime (ISO 8601; UTC Timezone)
          required: false
          schema:
            type: string
          example: '2022-11-20T08:30:00.000Z'
        - name: accepted
          in: query
          description: true -> Include PCF's which are received and accepted. false -> Include PCF's which are received. Default all.
          required: false
          schema:
            type: boolean
          example: false
        - name: rejected
          in: query
          description: Include PCF's which are received but rejected.
          required: false
          schema:
            type: boolean
          example: false
        - name: withdrawn
          in: query
          description: Include PCF's which are received but withdrawn.
          required: false
          schema:
            type: boolean
          example: false
        - name: active
          in: query
          description: Include PCF's which are active.
          required: false
          schema:
            type: boolean
          example: false
        - name: expired
          in: query
          description: Include PCF's which are expired.
          required: false
          schema:
            type: boolean
          example: false
        - name: revoked
          in: query
          description: Include PCF's which are revoked by Certifier.
          required: false
          schema:
            type: boolean
          example: false
        - name: specVersion
          in: query
          description: Spec version or data model standard
          required: false
          schema:
            type: array
            items:
              type: string
              enum:
                - TFS V2
                - TFS V1
                - PACT V1.0.1
                - PACT V2.0.0
                - Catena-X V1
                - Catena-X V2
                - Catena-X V2.2
                - EPD Style
                - ISO 14067
                - WBCSD Pathfinder v2
        - name: page
          in: query
          description: page number
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: Get PCF data of components in SiGREEN
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComponentPCFDataPaginatedResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91516
                instance: /components/pcfData
                errors:
                  - detail: Invalid Component id
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91517
                instance: /components/pcfData
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91518
                instance: /components/pcfData
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91519
                instance: /components/pcfData
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /components/averageEmissions:
    get:
      tags:
        - Get Component's PCF
      summary: Get an component average emission.
      description: Get an component average emission.
      operationId: getComponentAverageEmissions
      parameters:
        - name: id
          in: query
          description: ' List of component id''s. Maximum allowed 20.'
          required: false
          schema:
            type: array
            items:
              type: string
          example:
            - 550e8400-e29b-41d4-a716-446655440000
        - name: sort
          in: query
          description: Sorting fields supported (name, emissionsCalculatedOn Example - Ascending order '+name' , Descending order '-name', Default order by emissionsCalculatedOn descending order
          required: false
          schema:
            type: string
            maxLength: 50
            minLength: 0
          example: +name
        - name: page
          in: query
          description: page number
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            type: integer
            format: int32
            default: 10
            minimum: 1
      responses:
        '200':
          description: A list of component average emissions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComponentAverageEmissionResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91508
                instance: /components/averageEmissions
                errors:
                  - detail: Invalid Page Number
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91509
                instance: /components/averageEmissions
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91510
                instance: /components/averageEmissions
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                type: object
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: INTERNAL_SERVER_ERROR
                status: 500
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91511
                instance: /components/averageEmissions
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
components:
  schemas:
    Supplier:
      type: object
      properties:
        name:
          type: string
          description: Supplier name
          example: ACME
          maxLength: 100
          minLength: 0
        identifiers:
          type: array
          items:
            $ref: '#/components/schemas/SupplierIdentifier'
          maxItems: 10
          minItems: 1
        email:
          type: string
          description: email
          example: test@test.com
          maxLength: 50
          minLength: 0
        contactNumber:
          type: string
          description: contact number
          example: '345345345'
          maxLength: 30
          minLength: 0
          pattern: '|^(\+?|(\+\([\d-\s]+\)))?(\([0-9]+\)|[0-9-\s]){7,}$'
        website:
          type: string
          description: website
          example: www.test.com
          maxLength: 200
          minLength: 0
          pattern: '|^(?:(http(s)?)?:\/\/)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)$'
        locations:
          type: array
          description: supplier locations
          example:
            - 12459 Berlin, Siemensstraße 42
          items:
            type: string
          minItems: 1
        comment:
          type: string
          description: comment
          example: my comment
          maxLength: 1000
          minLength: 0
        sigreenId:
          type: string
          description: |
            SiGREEN Identifier is to be able to uniquely identify a supplier company(legal entities) globally within the SiGREEN platform.
            The SiGREEN ID can be updated only if the supplier status is not ACTIVE
          example: SIGPWHWY1SDVJ6
          maxLength: 14
          minLength: 0
      required:
        - email
        - identifiers
        - locations
        - name
    SupplierIdentifier:
      type: object
      properties:
        idType:
          type: string
          description: identifier type
          example: DUNS
          minLength: 1
        value:
          type: string
          description: identifier value
          example: XYTT001
          maxLength: 100
          minLength: 0
        default:
          type: boolean
          description: whether main identifier type or not
          example: true
      required:
        - default
        - idType
        - value
    Errors:
      type: object
      description: Extended error array to include descriptions about errors like validation errors.
      properties:
        code:
          type: string
          description: An application-specific error code, expressed as a string value, mostly is this used for validation errors. The format and type of code representation MUST be harmonized across all services within SiGREEN. The code focuses on programs and doesn’t have to be human-readable.
          example: SIG_VLD-092
        detail:
          type: string
          description: Developer friendly, human-readable, detailed description specific to the occurrence of the problem.
          example: 'Invalid Date Format. Please send valid date format (for eg: yyyy-MM-dd''T''HH:mm:ss''Z'')'
        pointer:
          type: string
          description: String with a generated pointer to the wrong value; Collections integrated as an integer, starts with 0
          example: /data/0/from
    Problem:
      type: object
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type. This should be a human-redable documentation for the problem type (e.g. list of SiGREEN Validation errors). When this member is not present, its value is assumed to be 'about:blank'.
          example: https://developer.siemens.com/sigreen/validation-error.html
        title:
          type: string
          description: 'Developer friendly, human-readable description or summary that SHOULD NOT change from occurrence to occurrence of the problem. In case of using a custom HTTP status codes in the status field of the error object, the title MUST provide a concise description of the HTTP error code (for example: status: ''599'', title: ''Network Connection Timeout'').'
          example: Bad request
        status:
          type: integer
          format: int32
          description: Numeric HTTP status code for the specific error.
          example: 400
        instance:
          type: string
          description: 'A URI reference that points to the specific resource where the problem was identified (for example: points to the api resource /api/v1/products/{productId}).'
          example: /api/v1/products/{productId}
        traceId:
          type: string
          description: A unique string identifier (UUID), representing a flow through the system.
          example: UUID
        errors:
          type: array
          description: List of detailed error objects
          items:
            $ref: '#/components/schemas/Errors'
    MaterialCategory:
      type: object
      properties:
        name:
          type: string
          description: Material Category Name
          example: Material Category
          maxLength: 100
          maximum: 50
          minLength: 0
      required:
        - name
    ComponentIdentifier:
      type: object
      properties:
        idType:
          type: string
          description: identifier type
          example: DUNS
          minLength: 1
        value:
          type: string
          description: identifier value
          example: XYTT001
          maxLength: 100
          minLength: 0
        default:
          type: boolean
          description: whether main identifier type or not
          example: true
      required:
        - default
        - idType
        - value
    Components:
      type: object
      properties:
        name:
          type: string
          description: Name of component
          example: TestComponent
          maxLength: 100
          minLength: 0
        materialCategory:
          type: string
          description: If you provide a material category which does not exist, the system will generate this material category for you.
          example: Electronics
          maxLength: 100
          minLength: 0
        unit:
          type: string
          description: unit types
          enum:
            - piece
            - kg
            - m2
            - m3
            - kWh
            - tkm
            - MJ
            - L
          example: piece
          maxLength: 15
          minLength: 0
        weight:
          type: string
          description: Component weight
          example: '3.5'
        identifiers:
          type: array
          items:
            $ref: '#/components/schemas/ComponentIdentifier'
          maxItems: 100
          minItems: 0
      required:
        - identifiers
        - name
        - unit
        - weight
    ComponentSecondaryData:
      type: object
      properties:
        email:
          type: string
          description: Email
          example: example@example.com
          maxLength: 50
          minLength: 1
        productionStage:
          $ref: '#/components/schemas/SecondaryDataProductionStage'
          description: Production stage emissions
        distributionStage:
          $ref: '#/components/schemas/SecondaryDataDistributionStage'
          description: ' Distribution stage emissions'
        quantity:
          type: string
          description: quantity
          example: '1'
          maxLength: 15
          minLength: 1
        validityPeriodStart:
          type: string
          description: Validity Period Start
          example: '2024-04-19T00:00:00.000Z'
        region:
          type: string
          description: Region where emissions values are collected
          example: Europe
        comment:
          type: string
          description: Comments
          example: Comment if any
        dataSource:
          type: string
          description: Data Source
          example: Database
        dataVerification:
          type: string
          description: data verification
          enum:
            - Proxy data
            - Secondary data
          example: Proxy data
      required:
        - email
        - productionStage
        - quantity
    SecondaryDataDistributionStage:
      type: object
      description: Distribution stage emission details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Distribution stage GWP total (incl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.86801562912494'
        pcfExcludingBiogenic:
          type: string
          description: Distribution stage GWP total (excl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.86801562912871'
        fossilGhgEmissions:
          type: string
          description: Distribution stage GWP fossil. kg CO2e/declared unit
          example: '79.86801562912497'
        biogenic:
          type: string
          description: Distribution stage GWP biogenic. kg CO2e/declared unit
          example: '79.86801562912497'
        luGhgEmissions:
          type: string
          description: Distribution stage GWP land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
        aircraftGhgEmissions:
          type: string
          description: Distribution stage GWP aircraft emissions). kg CO2e/declared unit
          example: '79.86801562912497'
        dlucGhgEmissions:
          type: string
        dLucGhgEmissions:
          type: string
          description: Distribution stage GWP direct land use change (dLUC). kg CO2e/declared unit
          example: '79.86801562912497'
    SecondaryDataProductionStage:
      type: object
      description: Production stage emissions
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Production stage GWP total (incl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.868015629124908'
        pcfExcludingBiogenic:
          type: string
          description: Production stage GWP total (excl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.86801562912431'
        fossilGhgEmissions:
          type: string
          description: Production stage GWP fossil. kg CO2e/declared unit
          example: '79.86801562912497'
        biogenic:
          type: string
          description: Production stage GWP biogenic. kg CO2e/declared unit
          example: '79.86801562912497'
        luGhgEmissions:
          type: string
          description: Production stage GWP land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
        aircraftGhgEmissions:
          type: string
          description: Production stage GWP aircraft emissions. kg CO2e/declared unit
          example: '79.86801562912497'
        dlucGhgEmissions:
          type: string
        dLucGhgEmissions:
          type: string
          description: Production stage GWP direct land use change (dLUC). kg CO2e/declared unit
          example: '79.86801562912497'
    LinkedSupplier:
      type: object
      properties:
        supplierLocation:
          type: string
          description: Location of supplier
          example: S89087
          maxLength: 200
          minLength: 0
        share:
          type: string
          description: share percentage
          example: '100'
          maxLength: 15
          minLength: 0
          pattern: ^-?(?=.*\d)(\d{1,9})+([.,])?\d*$
        supplierProductId:
          type: string
          description: supplier product id
          example: SUPCOMP1
          maxLength: 100
          minLength: 0
        supplierId:
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
          minLength: 0
        secondaryDataId:
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
          minLength: 0
      required:
        - supplierId
        - supplierLocation
    SupplierInvite:
      type: object
      properties:
        message:
          type: string
    InviteSupplierResponse:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
        status:
          type: string
          description: Supplier Status<br>INVITED - When supplier invited<br>AVAILABLE - When supplier in SiGREEN
          enum:
            - ACTIVE
            - INVITED
          example: INVITED
    IdentifierTypeRequest:
      type: object
      properties:
        idType:
          type: string
          description: Type of identifier for a company in SiGREEN.
          example: C23523-233
          maxLength: 100
          minLength: 0
        mandatory:
          type: boolean
          description: Whether this identifier must be filled when creating components
      required:
        - idType
        - mandatory
    IdentifierTypeResponse:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the identifier type of the company in SiGREEN.
          example: 550e8400-e29b-41d4-a716-446655440000
          maxLength: 36
      required:
        - id
    SupplierResponseId:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
    MaterialCategoryResponseId:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the material cateogry of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maximum: 36
    IdentifierExt:
      type: object
      properties:
        idType:
          type: string
          description: identifier type
          example: DUNS
          minLength: 1
        value:
          type: string
          description: identifier value
          example: XYTT001
          maxLength: 100
          minLength: 0
      required:
        - idType
        - value
    PcfRequest:
      type: object
      properties:
        pcfStandard:
          type: string
          enum:
            - PACT V2.0.0
            - TFS V2
            - ISO 14067
            - EPD Style
            - Catena-X V2.2
            - Catena-X V2
          example: TFS V2
        location:
          type: string
          description: Supplier Location
          example: Berlin
          minLength: 1
        geographySubRegion:
          type: string
          description: Preferred region sub region of PCF request.
          example: Asia
        message:
          type: string
          description: |-
            Send message to suppliers while doing pcf request. If message not provided default message would be
            Dear {supplier company name}, We would like to request the PCF for the product via SiGREEN: {component name}
          example: PCF request message
        identifiers:
          type: array
          description: |-
            When identifiers are available in request then identifiers would append in message like following
            The following are the identifiers employed for product identification on our end
            {idType} : {value}
          items:
            $ref: '#/components/schemas/IdentifierExt'
      required:
        - location
    CreatePcfRequestResponse:
      type: object
      properties:
        taskId:
          type: string
          description: System Generated alphanumeric id to identify the task of the company in SiGREEN
          example: T0001
        id:
          type: string
          description: UUID to identify the task of the company in SiGREEN
          example: C88BE31E-3698-412D-91E3-8270102CC7D5
    ComponentSecondaryDataResponseId:
      type: object
      properties:
        secondaryDataId:
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 50
    ComponentSupplierSecondaryData:
      type: object
      properties:
        supplierLocation:
          type: string
          description: Location of supplier
          example: S89087
          maxLength: 200
          minLength: 0
        share:
          type: string
          description: share percentage
          example: '100'
          maxLength: 15
          minLength: 0
          pattern: ^-?(?=.*\d)(\d{1,9})+([.,])?\d*$
        supplierProductId:
          type: string
          description: supplier product id
          example: SUPCOMP1
          maxLength: 100
          minLength: 0
        componentSupplierLinkId:
          type: string
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        supplierId:
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
          minLength: 0
        secondaryDataId:
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
          minLength: 0
      required:
        - componentSupplierLinkId
        - supplierId
        - supplierLocation
    ComponentResponseId:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the component of the company in SiGREEN
          example: 550e8400-e29b-41d4-a716-446655440000
          maxLength: 36
    IdentifierTypeUpdateRequest:
      type: object
      properties:
        idType:
          type: string
          description: Type of identifier for a company in SiGREEN.
          example: C23523-2332
          maxLength: 100
          minLength: 0
        mandatory:
          type: boolean
          description: Whether this identifier must be filled when creating component
      required:
        - idType
        - mandatory
    GetSupplier:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
        name:
          type: string
          description: Supplier name
          example: ACME
          maxLength: 100
          minLength: 0
        identifiers:
          type: array
          items:
            $ref: '#/components/schemas/SupplierIdentifier'
          maxItems: 10
          minItems: 1
        email:
          type: string
          description: email
          example: test@test.com
          maxLength: 50
          minLength: 0
        contactNumber:
          type: string
          description: contact number
          example: '345345345'
          maxLength: 30
          minLength: 0
          pattern: '|^(\+?|(\+\([\d-\s]+\)))?(\([0-9]+\)|[0-9-\s]){7,}$'
        website:
          type: string
          description: website
          example: www.test.com
          maxLength: 200
          minLength: 0
          pattern: '|^(?:(http(s)?)?:\/\/)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)$'
        locations:
          type: array
          description: supplier locations
          example:
            - 12459 Berlin, Siemensstraße 42
          items:
            type: string
          minItems: 1
        status:
          type: string
          description: The status of the supplier
          enum:
            - NOT_INVITED_YET
            - INVITED
            - INVITE_CANCELLED
            - DENIED_BY_ADMIN
            - ACTIVE
            - PENDING_INVITE
          example: ACTIVE
        comment:
          type: string
          description: comment
          example: my comment
          maxLength: 1000
          minLength: 0
        createdOn:
          type: string
          description: The date and time when the supplier was created
          example: '2023-01-01T12:00:00'
        updatedOn:
          type: string
          description: The date and time when the supplier was last updated
          example: '2023-01-02T12:00:00'
        sigreenId:
          type: string
          description: |
            SiGREEN Identifier is to be able to uniquely identify a supplier company(legal entities) globally within the SiGREEN platform.
            The SiGREEN ID will always be present for ACTIVE suppliers.
          example: SIGPWHWY1SDVJ6
          maxLength: 14
      required:
        - email
        - id
        - identifiers
        - locations
        - name
    IdentifierTypes:
      type: object
      properties:
        id:
          type: string
          description: A unique id for identifier type.
          example: 550e8400-e29b-41d4-a716-446655440000
        idType:
          type: string
          description: identifier type value.
          example: C23523-233
        isMainIdentifierType:
          type: boolean
          description: Whether it is main identifier type or not.
          example: true
        isMandatory:
          type: boolean
          description: Whether this identifier must be filled when creating components
      required:
        - id
        - idType
        - isMainIdentifierType
    IdentifierTypesResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/IdentifierTypes'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    SupplierPaginatedResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetSupplier'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    GetMaterialCategoryWithComponents:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the material category of the company in SiGREEN.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maximum: 50
        name:
          type: string
          description: Material Category Name
          example: Material Category
          maximum: 50
        componentsCount:
          type: integer
          format: int64
          description: Number of components linked to Material Category
          example: 10
        createdOn:
          type: string
          description: Created on (ISO 8601; UTC Timezone)
          example: '2024-04-19T00:00:00.000Z'
          maxLength: 30
        updatedOn:
          type: string
          description: Updated on (ISO 8601; UTC Timezone)
          example: '2024-04-19T00:00:00.000Z'
          maxLength: 30
    MaterialCategoryPaginatedResponseExt:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetMaterialCategoryWithComponents'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    GetComponents:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the component of the company in SiGREEN.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maximum: 36
        name:
          type: string
          description: Name of component
          example: TestComponent
          maxLength: 100
          minLength: 0
        materialCategory:
          type: string
          description: If you provide a material category which does not exist, the system will generate this material category for you.
          example: Electronics
          maxLength: 100
          minLength: 0
        unit:
          type: string
          description: unit types
          enum:
            - piece
            - kg
            - m2
            - m3
            - kWh
            - tkm
            - MJ
            - L
          example: piece
          maxLength: 15
          minLength: 0
        weight:
          type: string
          description: Component weight
          example: '3.5'
        identifiers:
          type: array
          items:
            $ref: '#/components/schemas/ComponentIdentifier'
          maxItems: 100
          minItems: 0
        createdOn:
          type: string
          description: Created on (ISO 8601; UTC Timezone)
          example: '2024-04-19T00:00:00.000Z'
        updatedOn:
          type: string
          description: Updated on (ISO 8601; UTC Timezone)
          example: '2024-04-19T00:00:00.000Z'
      required:
        - identifiers
        - name
        - unit
        - weight
    ComponentCarbonFootprint:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the component of the company in SiGREEN.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        pcfUnit:
          type: string
          description: PCF Unit Types
          enum:
            - kgCO2e/piece
            - kgCO2e/kg
            - kgCO2e/m2
            - kgCO2e/m3
            - kgCO2e/kWh
            - kgCO2e/tkm
            - kgCO2e/MJ
            - kgCO2e/L
          example: kgCO2e/piece
        supplierId:
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        supplier:
          type: string
          description: Supplier Name
          example: ACME
        location:
          type: string
          description: Supplier Location
          example: Berlin
        productionStage:
          $ref: '#/components/schemas/ComponentSupplierPCFProductionStage'
        distributionStage:
          $ref: '#/components/schemas/ComponentSupplierPCFDistributionStage'
    ComponentPCFPaginatedResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/ComponentCarbonFootprint'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    ComponentSupplierPCFDistributionStage:
      type: object
      description: Distribution stage emission details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Production stage GWP total (incl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.868015629124908'
        pcfExcludingBiogenic:
          type: string
          description: Production stage GWP total (excl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.86801562912431'
        fossilGhgEmissions:
          type: string
          description: Production stage GWP fossil. kg CO2e/declared unit
          example: '79.86801562912497'
        biogenic:
          type: string
          description: Production stage GWP biogenic. kg CO2e/declared unit
          example: '79.86801562912497'
        luGhgEmissions:
          type: string
          description: Production stage GWP land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
        aircraftGhgEmissions:
          type: string
          description: Production stage GWP aircraft emissions. kg CO2e/declared unit
          example: '79.86801562912497'
        dLucGhgEmissions:
          type: string
    ComponentSupplierPCFProductionStage:
      type: object
      description: Production stage emission details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Production stage GWP total (incl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.868015629124908'
        pcfExcludingBiogenic:
          type: string
          description: Production stage GWP total (excl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.86801562912431'
        fossilGhgEmissions:
          type: string
          description: Production stage GWP fossil. kg CO2e/declared unit
          example: '79.86801562912497'
        biogenic:
          type: string
          description: Production stage GWP biogenic. kg CO2e/declared unit
          example: '79.86801562912497'
        luGhgEmissions:
          type: string
          description: Production stage GWP land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
        aircraftGhgEmissions:
          type: string
          description: Production stage GWP aircraft emissions. kg CO2e/declared unit
          example: '79.86801562912497'
        dLucGhgEmissions:
          type: string
    GetComponentSecondaryData:
      type: object
      properties:
        email:
          type: string
          description: Email
          example: example@example.com
          maxLength: 50
          minLength: 1
        productionStage:
          $ref: '#/components/schemas/SecondaryDataProductionStage'
          description: Production stage emissions
        distributionStage:
          $ref: '#/components/schemas/SecondaryDataDistributionStage'
          description: ' Distribution stage emissions'
        quantity:
          type: string
          description: quantity
          example: '1'
          maxLength: 15
          minLength: 1
        validityPeriodStart:
          type: string
          description: Validity Period Start
          example: '2024-04-19T00:00:00.000Z'
        region:
          type: string
          description: Region where emissions values are collected
          example: Europe
        comment:
          type: string
          description: Comments
          example: Comment if any
        dataSource:
          type: string
          description: Data Source
          example: Database
        dataVerification:
          type: string
          description: data verification
          enum:
            - Proxy data
            - Secondary data
          example: Proxy data
        secondaryDataId:
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        createdOn:
          type: string
          description: Created On
          example: '2024-04-19T00:00:00.000Z'
      required:
        - email
        - productionStage
        - quantity
        - secondaryDataId
    SecondaryDataResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetComponentSecondaryData'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    GetLinkedSupplier:
      type: object
      properties:
        supplierLocation:
          type: string
          description: Location of supplier
          example: S89087
          maxLength: 200
          minLength: 0
        share:
          type: string
          description: share percentage
          example: '100'
          maxLength: 15
          minLength: 0
          pattern: ^-?(?=.*\d)(\d{1,9})+([.,])?\d*$
        supplierProductId:
          type: string
          description: supplier product id
          example: SUPCOMP1
          maxLength: 100
          minLength: 0
        componentSupplierLinkId:
          type: string
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        supplierId:
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
          minLength: 0
        secondaryDataId:
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
          maxLength: 36
          minLength: 0
      required:
        - componentSupplierLinkId
        - supplierId
        - supplierLocation
    ComponentSupplierLinkResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetLinkedSupplier'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    Assurance:
      type: object
      description: Assurance details
      properties:
        verificationType:
          type: string
          description: Assurance type.
          enum:
            - self-declared PCF
            - third party verified PCF
          example: third party verified PCF
        providerName:
          type: string
          description: Certifier name (for 3rd party verification only).
          example: Certifier name
        certificationNumber:
          type: string
          description: Certification number (for 3rd party verification only).
          example: Certification number
        completedAt:
          type: string
          description: Issue date of verification statement.DateTime (ISO 8601; UTC Timezone)
          example: '2022-11-20T08:30:00.000Z'
        standardName:
          type: string
          description: Standards or product category rules covered by verification
          example: Standards
        coverage:
          type: string
          description: Assurance coverage.
          enum:
            - corporate level
            - product line
            - PCF system
            - product level
          example: product line
        level:
          type: string
          description: Assurance level.
          enum:
            - limited
            - reasonable
          example: limited
        boundary:
          type: string
          description: Assurance boundary
          enum:
            - Gate-to-gate
            - Cradle-to-gate
          example: Gate-to-gate
        assuranceStatement:
          type: string
          description: Assurance statement
          example: free text
        comments:
          type: string
          description: Assurance Comments
          example: free text
        linkToAttestation:
          type: string
          description: Assurance linkToAttestation
          example: linkToAttestation
        attestationSchemeStandard:
          type: string
          description: Assurance attestationSchemeStandard
          example: attestationSchemeStandard
        attestationType:
          type: string
          description: Assurance attestationType
          example: attestationType
        attestationId:
          type: string
          description: Assurance attestationId
          example: attestationId
    Company:
      type: object
      description: Company Details
      properties:
        companyName:
          type: string
          description: Company name.
          example: Company name
        companyIds:
          type: array
          description: Company IDs.
          example:
            - companyID1
          items:
            type: string
        companyProducer:
          type: string
          description: Name of producer, if it differs from the supplier of product.
          example: '14'
        companyContactEmail:
          type: string
          description: Contact email address.
          example: Controls E1456
        companyContactPhone:
          type: string
          description: Contact phone.
    ComponentPCFDataPaginatedResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/ComponentPCFDataResponse'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    ComponentPCFDataResponse:
      type: object
      properties:
        componentIdentifier:
          type: string
          description: Component Main Identifier.
          example: ABC123
        componentName:
          type: string
          description: component Name.
          example: componentName
        componentId:
          type: string
          description: UUID to identify the component of the company in SiGREEN.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        supplierId:
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        supplierIdentifier:
          type: string
          description: Supplier Main Identifier.
          example: ABC123
        supplierName:
          type: string
          description: Supplier name.
          example: Supplier 1
        supplierProductId:
          type: string
          description: supplier product id
          example: SUPCOMP1
        location:
          type: string
          description: Supplier Location.
          example: DE
        acceptedOn:
          type: string
          description: Proof approved DateTime.DateTime (ISO 8601; UTC Timezone)
          example: 2022-11-20T08:30Z
        pcfState:
          type: string
          description: State of the pcf to say if it self certified or certified by a 3rd party certifier
          example: Certified,Self published
        taskId:
          type: string
          description: UUID to identify the task id that was used to request the pcf.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        pcfRequestedOn:
          type: string
          description: Pcf requested DateTime. DateTime (ISO 8601; UTC Timezone)
          example: 2022-09-10T10:30:45.123Z
        pcfReceivedOn:
          type: string
          description: Pcf received DateTime. DateTime (ISO 8601; UTC Timezone)
          example: 2022-09-11T10:30:45.123Z
        pcfdata:
          $ref: '#/components/schemas/VerifiedData'
        materialCategory:
          type: string
          description: Material Category Name
          example: Material Category
        pcfId:
          type: string
          description: UUID for identifying the pcf data of the company in SiGREEN
          example: GENERATED_ID_EXAMPLE
        componentSupplierLinkId:
          type: string
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          example: GENERATED_ID_EXAMPLE
        active:
          type: boolean
          description: Include PCF's which are active.
          example: false
        accepted:
          type: boolean
          description: true -> Include PCF's which are received and accepted. false -> Include PCF's which are received. Default all.
          example: false
        rejected:
          type: boolean
          description: Include PCF's which are received but rejected.
          example: false
        withdrawn:
          type: boolean
          description: Include PCF's which are received but withdrawn.
          example: false
        revoked:
          type: boolean
          description: Include PCF's which are revoked by Certifier.
          example: false
        expired:
          type: boolean
          description: Include PCF's which are expired.
          example: false
    DistributionStage:
      type: object
      description: Distribution stage details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Distribution stage GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        pcfExcludingBiogenic:
          type: string
          description: Distribution stage GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        fossilGhgEmissions:
          type: string
          description: Distribution stage GWP fossil. kg CO2e/declared unit
          example: '79.86801562912497'
        biogenic:
          type: string
          description: Distribution stage GWP biogenic
          example: '79.86801562912497'
        biogenicCarbonEmissionsOtherThanCO2:
          type: string
          description: Distribution stage GWP biogenic CO2e-emissions (only other GHG emissions than CO2 – excludes biogenic CO2). kg CO2e/declared unit
          example: '79.86801562912497'
        biogenicCarbonWithdrawal:
          type: string
          description: Distribution stage GWP biogenic CO2-withdrawal (biogenic CO2 contained in the product). kg CO2e/declared unit
          example: '79.86801562912497'
        dLucAndLuGhgEmissions:
          type: string
          description: Distribution stage GWP direct land use change (dLUC) and land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
        dLucGhgEmissions:
          type: string
          description: Distribution stage GWP land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
        luGhgEmissions:
          type: string
          description: Distribution stage GWP land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
        aircraftGhgEmissions:
          type: string
          description: Distribution stage GWP aircraft emissions). kg CO2e/declared unit
          example: '79.86801562912497'
        ilucGhgEmissions:
          type: string
          description: Distribution stage GWP indirect land use change emissions
          example: '79.86801562912497'
        landManagementGhgEmissions:
          type: string
          description: Distribution stage GWP land management GHG emissions or Removals (incl. non-CO2 sources). kg CO2e/declared unit
          example: '79.86801562912497'
        otherBiogenicGhgEmissions:
          type: string
          description: Distribution stage GWP biogenic CO2e-emissions other biogenic (excluding LUC and Land management). kg CO2e/declared unit
          example: '79.86801562912497'
        gwpLandManagementFossil:
          type: string
          description: Distribution stage GWP land management fossil emissions. kg CO2e/declared unit
          example: '79.86801562912497'
        gwpLandManagementBioGhgEmissions:
          type: string
          description: Distribution stage land management biogenic CO₂ emissions from soil. kg CO2e/declared unit
          example: '79.86801562912497'
        gwpLandManagementBioRemovals:
          type: string
          description: Distribution stage GWP land management biogenic CO₂ removals stored in soil. kg CO2e/declared unit
          example: '79.86801562912497'
        gwpCcsRemovalsExclFossil:
          type: string
          description: Distribution stage GWP technological CO₂ removals/BECCS (excl. fossil). kg CO2e/declared unit
          example: '79.86801562912497'
        transportAToDistributorSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        reconditioningAToDistributorSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        transportBToPlaceOfUseSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
    Dqi:
      type: object
      description: DQI details
      properties:
        coveragePercent:
          type: string
          description: Coverage of data quality assessment.
          example: '100'
          maximum: 100
          minimum: 0
        technologicalDQR:
          type: string
          description: Technological representativeness
          example: '1.2'
          maximum: 3
          minimum: 1
        temporalDQR:
          type: string
          description: Temporal representativeness.
          example: '1.3'
          maximum: 3
          minimum: 1
        geographicalDQR:
          type: string
          description: Geographical representativeness.
          example: '1.8'
          maximum: 3
          minimum: 1
        completenessDQR:
          type: string
          description: Completeness
          example: '2.5'
          maximum: 3
          minimum: 1
        reliabilityDQR:
          type: string
          description: Reliability
          example: '2.5'
          maximum: 3
          minimum: 1
        uncertaintyAssessmentDescription:
          type: string
          description: Qualitative uncertainty description
          example: free text
        massBalancesChecked:
          type: string
          description: Decition type details
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
    EolStage:
      type: object
      description: Eol Stage details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: End-of-life stage GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        pcfExcludingBiogenic:
          type: string
          description: End-of-life stage GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        demolitionSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        transportSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        wasteProcessingSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        disposalSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
    InstallationAndAssemblyStage:
      type: object
      description: Installation And Assembly Stage details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Installation/assembly stage GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        pcfExcludingBiogenic:
          type: string
          description: Installation/assembly stage GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        installationSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        eolTreatmentOfGeneratedWasteInstallationSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
    MaterialAcquisitionAndPreProcessingSubStage:
      type: object
      description: Material Acquisition And PreProcessing SubStage details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Material acquisition and pre-processing stage GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        pcfExcludingBiogenic:
          type: string
          description: Material acquisition and pre-processing stage GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        rawMaterialAcquisition2SubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        preprocessing2SubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        transportToManufacturingSite2SubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
    PCFProductDetails:
      type: object
      description: Product details.
      example:
        productNameCompany: TestCompany
        productIds:
          - '401765'
          - 4303F98A-785F
        bomVersion: No BOM selected
        productClassification: "CAS: 58-08-2; CPC: 12345"
        productCodeCas: 58-08-2
        productDescription: Ethanol, 95% solution

      properties:
        productNameCompany:
          type: string
          description: Stating the (legal) name of the company supplying the product and reporting the PCF (data owner).
          example: TestCompany
          maxLength: 100
        productIds:
          type: array
          description: All relevant product identifiers, e.g. supplier part number, GTIN, article number, CPC classification, CAS Number, BOM Version, batch number etc.
          example:
            - '401765'
            - 4303F98A-785F
          items:
            type: string
        bomVersion:
          type: string
          description: Bill of material for corresponding PCF. Bom version created for a specific product.
          example: No BOM selected
        productClassification:
          type: string
          description: Product classification.
          example: "CAS: 58-08-2; CPC: 12345"
        productCodeCpc:
          type: string
          description: The corresponding CPC number to your product (unique identification number assigned to chemical substances).
          example: 58-08-2
        productCodeCas:
          type: string
          description: The corresponding CAS number to your product (unique identification number assigned to chemical substances).
          example: 58-08-2
          maxLength: 20
        productDescription:
          type: string
          description: Brief description of the product (for example functions and technical parameters).
          example: Ethanol, 95% solution
          maxLength: 2000
      required:
        - productIds
    PcfData:
      type: object
      description: PCF data
      properties:
        scopePcf:
          $ref: '#/components/schemas/ScopeOfPcf'
        declaredUnit:
          type: string
          description: unit type
          enum:
            - piece
            - kg
            - L
            - m²
            - m³
            - kWh
            - km
            - TEU
            - pkm
            - tkm
            - MJ
            - m2
            - m3
          example: piece
        unitaryProductAmount:
          type: string
          description: Quantity (of declared unit)
          example: '1.5'
        productMassPerDeclaredUnit:
          type: string
          description: Product mass [kg] per declared unit.
          example: '1.5'
        id:
          type: string
          description: PCF ID.Id will represent like UUID v4.
          example: id
        precedingPCFIds:
          type: array
          description: Previous PCF IDs.Id will represent like UUID v4.
          example:
            - id1
            - id2
          items:
            type: string
        version:
          type: string
          description: PCF version, the value can be in decimals.
          example: '1.2'
        pfStatus:
          type: string
          description: PCF status
          enum:
            - Active
            - Deprecated
          example: Active
        pfStatusComment:
          type: string
          description: PCF status comment
          example: PCF status comment
        exemptedEmissionsPercent:
          type: string
          description: Cut-off rule %
          example: '1'
          maximum: 10
          minimum: 0
        exemptedEmissionsDescription:
          type: string
          description: Cut-off and exemption rules explanation
          example: exemptedEmissionsDescription
        boundaryProcessesDescription:
          type: string
          description: Important unit processes and used technologies
          example: boundaryProcessesDescription
        typeRecycledContent:
          type: string
          description: Type of recycled content
          enum:
            - post-industrial
            - ' post-consumer'
          example: post-industrial
        ccuCo2Origin:
          type: string
          description: CCU CO2-origin
          example: ccuCo2Origin
        geographyCountrySubdivision:
          type: string
          description: City/state as country subdivision.according to ISO 3166-2 alpha-2 subdivision code
          example: BY
        geographyCountry:
          type: string
          description: Geography country.according to ISO 3166-2 alpha-2 country code
          example: DE
        geographyRegionOrSubregion:
          type: string
          description: Geography with region or subregion
          enum:
            - Africa
            - Americas
            - Asia
            - Europe
            - Oceania
            - Australia and New Zealand
            - Central Asia
            - Eastern Asia
            - Eastern Europe
            - Latin America and the Caribbean
            - Melanesia
            - Micronesia
            - Northern Africa
            - Northern America
            - Northern Europe
            - Polynesia
            - South-eastern Asia
            - Southern Asia
            - Southern Europe
            - Sub-Saharan Africa
            - Western Asia
            - Western Europe
            - Global
          example: Europe
        locationProductHandover:
          type: string
          description: Location of product handover
          enum:
            - Own factory gate
            - Customer gate
            - other
          example: Own factory gate
        referencePeriodStart:
          type: string
          description: Reference period start.DateTime (ISO 8601; UTC Timezone)
          example: 'example: 2022-11-20T08:30:00.000Z'
        referencePeriodEnd:
          type: string
          description: Reference period end.DateTime (ISO 8601; UTC Timezone)
          example: 'example: 2022-11-20T08:30:00.000Z'
        created:
          type: string
          description: Date of issue.DateTime (ISO 8601; UTC Timezone)
          example: 'example: 2022-11-20T08:30:00.000Z'
        updated:
          type: string
          description: Date update.DateTime (ISO 8601; UTC Timezone)
          example: 'example: 2022-11-20T08:30:00.000Z'
        validityPeriodStart:
          type: string
          description: Validity period start.DateTime (ISO 8601; UTC Timezone)
          example: 'example: 2022-11-20T08:30:00.000Z'
        validityPeriodEnd:
          type: string
          description: Validity period end.DateTime (ISO 8601; UTC Timezone)
          example: 'example: 2022-11-21T08:30:00.000Z'
        crossSectoralStandardsUsed:
          type: array
          items:
            description: Cross-sectoral standards applied.
            enum:
              - ISO 14067
              - Pathfinder v1
              - Pathfinder v2
              - GHG Protocol Product
              - PAS 2050
              - ISO 14040-44
              - PEF
              - Other
            example: ISO 14067
        productOrSectorSpecificRules:
          type: array
          items:
            description: Product or sector rules applied.
            enum:
              - Catena-X Rulebook v1
              - Catena-X Rulebook v2
              - TFS Guideline v2
              - EN 50693
              - EN 15804
              - BPX 30-323
              - Not specified
            example: Catena-X Rulebook v1
        operator:
          type: string
          description: select other.
          enum:
            - PEF
            - EPD International
            - Other
          example: PEF
        otherOperatorName:
          type: string
          description: Publisher's URN of product or sector specific guidance.
          example: otherOperatorName
        biogenicAccountingMethodology:
          type: string
          description: Methodology used to account for biogenic emissions and removals applied.
          enum:
            - PEF
            - GHGP
            - Quantis
          example: PEF
        characterizationFactorsTimeHorizon:
          type: string
          description: Time horizon of GWP values.
          enum:
            - GWP100
            - GWP20
            - GWP500
            - GWP1000
            - Unspecified
          example: GWP100
        characterizationFactors:
          type: string
          description: IPCC report version of GWP values.
          enum:
            - AR1
            - AR2
            - AR3
            - AR4
            - AR5
            - AR6
            - Unspecified
          example: AR1
        characterizationFactorsClimateCarbonFeedback:
          type: string
          description: Are climate-carbon feedbacks included in the GWP?
          enum:
            - 'yes'
            - 'no'
            - partly
            - Unspecified
          example: 'yes'
        characterizationFactorsClimateCarbonFeedbackLciaMethod:
          type: string
          description: LCIA method applied in assessment.
          enum:
            - Greenhouse Gas Protocol
            - PEF
            - IPCC 2013 GWP100a
            - IPCC 2013 GWP20a
            - IPCC 2007 GWP100a
            - IPCC 2007 GWP20a
            - IPCC 2001 GWP100a
            - IPCC 2001 GWP20a
            - ReCiPe 2016 Midpoint (E)
            - ReCiPe 2016 Midpoint (I)
            - ReCiPe 2016 Midpoint (H)
            - CML-IA baseline
            - CML 1992
            - CML 2 baseline 2000
            - CML 2001 (all impact categories)
            - EDIP 2003
            - EPD (2008)
            - EPD (2013)
            - ILCD 2011 Midpoint+
            - IMPACT 2002+
            - TRACI 2.1
            - BEES+
            - other
            - unspecified
          example: Greenhouse Gas Protocol
        characterizationFactorsGhgExclusions:
          type: string
          description: Exclusion of greenhouse gases.
          example: characterizationFactorsGhgExclusions
        allocationRulesDescription:
          type: string
          description: Allocation rules applied.
          example: allocationRulesDescription
        recycledMaterialAllocationApproach:
          type: string
          description: Recycled material allocation approach.
          enum:
            - Recycled content method
            - Closed loop approximation method
          example: Recycled content method
        allocationWasteIncineration:
          type: string
          description: Allocation approach used for waste incineration with energy recovery.
          enum:
            - cut-off
            - reverse cut-off
            - 'system expansion '
          example: cut-off
        allocationRecycledCarbon:
          type: string
          description: Allocation approach used for recycled material & c-content.
          enum:
            - upstream system expansion
            - cut-off
          example: upstream system expansion
        allocationCcuCarbon:
          type: string
          description: Allocation approach used for CCU.
          enum:
            - upstream system expansion
            - cut-off
          example: cut-off
        tfsPcrUsedForAllocation:
          type: string
          description: Was the TFS PCR used for allocation
          example: PCF steam cracker (Plastics EU)
        systemExpansionSubstitutionUsed:
          type: string
          description: Was system expansion or substitution used
          example: not used
        massBalancingInformation:
          $ref: '#/components/schemas/MassBalancingInformation'
        creditInformation:
          $ref: '#/components/schemas/CreditInformation'
        primaryDataShare:
          type: string
          description: Primary Data Share (PDS).
          example: ' primaryDataShare'
          maximum: 100
          minimum: 0
        sourceOfPrimaryData:
          type: string
          description: Source of primary data.
          example: sourceOfPrimaryData
        secondaryEmissionFactorSources:
          type: array
          items:
            type: string
        secondaryEmissionFactorSourcesVersion:
          type: string
          description: Secondary data source version.
          example: secondaryEmissionFactorSourcesVersion
        dqi:
          $ref: '#/components/schemas/Dqi'
        verificationAndCertificationShares:
            $ref: '#/components/schemas/VerificationAndCertificationShares'
        assurance:
          $ref: '#/components/schemas/Assurance'
        comment:
          type: string
          description: Comments.
          example: comment
        pcfLegalStatement:
          type: string
          description: Legal statement.
          example: pcfLegalStatement
        totalInBio:
          type: string
          description: GWP total (incl. bio.).
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        totalExBio:
          type: string
          description: GWP total (excl. bio.).
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        fossilEmissions:
          type: string
          description: GWP fossil.
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        biogenic:
          type: string
        biogenicEmissionsNonCo2Only:
          type: string
          description: GWP biogenic CO2e-emissions (only other GHG emissions than CO2 – excludes biogenic CO2).
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        biogenicEmissionsCo2Only:
          type: string
          description: GWP biogenic CO2e-withdrawal (biogenic CO2 contained in the product).
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        dluc:
          type: string
          description: GWP direct land use change (dLUC).
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        lu:
          type: string
          description: GWP land use (LU).
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        ilucGhgEmissions:
          type: string
          description: GWP indirect land use change emissions
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        landManagementGhgEmissions:
          type: string
          description: GWP land management GHG emissions or Removals (incl. non-CO2 sources)
          enum:
            - 'yes'
            - 'no'
          example: 'yes'

        landManagementFossilEmissions:
          type: string
          description: GWP land management fossil emissions
          enum:
            - 'yes'
            - 'no'
          example: 'yes'

        landManagementBiogenicCo2eEmissions:
          type: string
          description: GWP land management biogenic CO₂ emissions from soil
          enum:
            - 'yes'
            - 'no'
          example: 'yes'

        landManagementBiogenicCo2eRemovals:
          type: string
          description: GWP land management biogenic CO₂ removals stored in soil
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        dlucAndLu:
          type: string
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        aircraft:
          type: string
          description: GWP aircraft emissions
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        ccsRemovalsExclFossil:
          type: string
          description: "CCS rem. excl. fossil: GWP technological CO₂ removals/BECCS (excl. fossil)"
          enum:
            - 'yes'
            - 'no'
          example: 'yes'

        ccsCapturesInclFossil:
          type: string
          description: "CCS capt. incl. fossil: GWP CCS capturing (incl. fossil)"
          enum:
            - 'yes'
            - 'no'
          example: 'yes'

        useCredit:
          type: string
          description: "GWP USE Credit"
          enum:
            - 'yes'
            - 'no'
          example: 'yes'

        landOccupation:
          type: string
          description: "Land occupation"
          enum:
            - 'yes'
            - 'no'
          example: 'yes'

        otherBiogenicGhgEmissions:
          type: string
          description: GWP biogenic CO2e-emissions other biogenic (excluding LUC and Land management)
          enum:
            - 'yes'
            - 'no'
          example: 'yes'
        productionStage:
          $ref: '#/components/schemas/ProductionStage'
        distributionStage:
          $ref: '#/components/schemas/DistributionStage'
        installationAndAssemblyStage:
          $ref: '#/components/schemas/InstallationAndAssemblyStage'
        useStage:
          $ref: '#/components/schemas/UseStage'
        eolStage:
          $ref: '#/components/schemas/EolStage'
        reuseRecoveryRecyclingPotentialStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        productCarbonContent:
          $ref: '#/components/schemas/ProductCarbonContent'
    ProductCarbonContent:
      type: object
      description: Product carbon content details.
      example:
        carbonContentTotal: '79.86801562912'
        fossilCarbonContent: '79.86801562912'
        carbonContentBiogenic: '79.86801562912'
        carbonContentRecycled: '79.86801562912'
        carbonContentCcuBased: '79.86801562912'
        packagingCarbonContent: "79.86801562912"
      properties:
        carbonContentTotal:
          type: string
          description: Total carbon content accounts for the embodied mass of carbon (kg C) per declared unit of product.
          example: '79.86801562912'
        fossilCarbonContent:
          type: string
          description: Fossil carbon content accounts for the embodied mass of carbon (kg C) per declared unit of product.
          example: '79.86801562912'
        carbonContentBiogenic:
          type: string
          description: Biogenic carbon content accounts for the embodied mass of biogenic carbon (kg C) per declared unit of product.
          example: '79.86801562912'
        carbonContentRecycled:
          type: string
          description: Recycled carbon content accounts for the embodied mass of recycled (physically or biomass balance-based) carbon (kg C) per declared unit of product.
          example: '79.86801562912'
        carbonContentCcuBased:
          type: string
          description: CCU-based carbon content accounts for the embodied mass of carbon (kg C) per declared unit of product resulting from the use of carbon capture and utilization technologies.
          example: '79.86801562912'
        packagingCarbonContent:
          type: string
          description: Packaging carbon content accounts for the embodied mass of carbon (kg C) per declared unit of product resulting from the use of carbon capture and utilization technologies.
          example: '79.86801562912'
      required:
        - carbonContentTotal
    ProductionManufacturingSubStage:
      type: object
      description: Production Manufacturing SubStage details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Manufacturing stage GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        pcfExcludingBiogenic:
          type: string
          description: Manufacturing stage GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        assembly2SubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        packaging2SubStage:
          $ref: '#/components/schemas/PackagingCarbonStage'
        eolTreatmentOfGeneratedWasteMfg2SubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
    ProductionStage:
      type: object
      description: Production stage details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Production stage GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        pcfExcludingBiogenic:
          type: string
          description: Production stage GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        fossilGhgEmissions:
          type: string
          description: Production stage GWP total (incl. bio.). kg CO2e/functional unit
          example: '79.86801562912497'
        biogenic:
          type: string
          description: Production stage GWP biogenic
          example: '79.86801562912497'
        biogenicCarbonEmissionsOtherThanCO2:
          type: string
          description: Production stage GWP biogenic CO2e-emissions (only other GHG emissions than CO2 – excludes biogenic CO2). kg CO2e/declared unit
          example: '79.86801562912497'
        biogenicCarbonWithdrawal:
          type: string
          description: Production stage GWP biogenic CO2-withdrawal (biogenic CO2 contained in the product). kg CO2e/declared unit
          example: '79.86801562912497'
        dlucAndLuGhgEmissions:
          type: string
          description: Production stage GWP direct land use change (dLUC) and land use (LU)
          example: '79.86801562912497'
        dLucGhgEmissions:
          type: string
          description: GWP direct land use change (dLUC)
          example: '79.86801562912497'
        luGhgEmissions:
          type: string
          description: Production stage GWP land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
        aircraftGhgEmissions:
          type: string
          description: Production stage GWP aircraft emissions. kg CO2e/declared unit
          example: '79.86801562912497'
        ilucGhgEmissions:
          type: string
          description: Production stage GWP indirect land use change emissions
          example: '79.86801562912497'
        landManagementGhgEmissions:
          type: string
          description: Production stage GWP land management GHG emissions or Removals (incl. non-CO2 sources). kg CO2e/declared unit
          example: '79.86801562912497'
        otherBiogenicGhgEmissions:
          type: string
          description: Production stage GWP biogenic CO2e-emissions other biogenic (excluding LUC and Land management). kg CO2e/declared unitP
          example: '79.86801562912497'
        gwpLandManagementFossil:
          type: string
          description: Production stage GWP land management fossil emissions
          example: '79.86801562912'
        gwpLandManagementBioGhgEmissions:
          type: string
          description: Production stage GWP land management biogenic CO₂ emissions from soil
          example: '79.86801562912'
        gwpLandManagementBioRemovals:
          type: string
          description: Production stage GWP land management biogenic CO₂ removals stored in soil
          example: '79.86801562912'
        gwpCcsCapturesInclFossil:
          type: string
          description: Production stage GWP CCS capturing (incl. fossil)
          example: '79.86801562912'
        gwpCcsRemovalsExclFossil:
          type: string
          description: Production stage GWP technological CO₂ removals/BECCS (excl. fossil)
          example: '79.86801562912'
        gwpUseCredit:
          type: string
          description: Production stage GWP USE Credit
          example: '79.86801562912'
        materialAcquisitionAndPreProcessingSubStage:
          $ref: '#/components/schemas/MaterialAcquisitionAndPreProcessingSubStage'
        productionManufacturingSubStage:
          $ref: '#/components/schemas/ProductionManufacturingSubStage'
    ReuseRecoveryRecyclingPotentialStage:
      type: object
      description: Carbon Assessment details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        pcfExcludingBiogenic:
          type: string
          description: GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
    ScopeOfPcf:
      type: object
      description: Scope of PCF
      properties:
        specVersion:
          type: array
          description: Data model and version.
          example:
            - TFS V2
            - TFS V1
            - TfS V3.1.0
            - PACT V3.0.1
          items:
            type: string
        limitedOrFullDec:
          type: string
          description: Limited or full declaration.
          example: Mandatory inputs only
        partialFullPcf:
          type: string
          description: Partial or a full PCF.
          example: Cradle-to-gate
        biogenicLandSectorEmissionsIncluded:
          type: string
          description: biogenicLandSectorEmissionsIncluded
          example: 'Applicable'
        ccuApplied:
          type: string
          description: ccu Applied or not
          example: 'True'
        ccsApplied:
          type: string
          description: ccs Applied or not
          example: 'True'
        productionStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        materialAcquisitionAndPreProcessingSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        rawMaterialAcquistionSub2Stage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        preprocessingSub2Stage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        transportToManufacturingSiteSub2Stage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        manufacturingSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        assemblySub2Stage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        packagingEmissionsIncluded:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        eolTreatmentOfGeneratedWasteMfgSub2Stage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        distributionStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        transportAToDistributerSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        reconditioningAtDistributorSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        transportBToPlaceOfUseSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        installationAndAssemblyStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        installationSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        eolTreatmentOfGeneratedWasteInstallationSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        useStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        useSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        maintenanceSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        repairSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        replacementSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        eolTreatmentOfGeneratedWasteUseSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        refurbishmentSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        operationalEnergyUseSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        operationalWaterUseSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        eolStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        demolitionSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        transportSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        wasteProcessingSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        disposalSubStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
        reuseRecoveryRecyclingPotentialStage:
          type: string
          enum:
            - INCLUDED
            - EXCLUDED
    UseStage:
      type: object
      description: Use Stage details
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Use stage GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        pcfExcludingBiogenic:
          type: string
          description: Use stage GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912497'
        useSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        maintenanceSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        repairSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        replacementSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        eolTreatmentOfGeneratedWasteUseSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        refurbishmentSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        operationalEnergyUseSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        operationalWaterUseSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
    VerifiedData:
      type: object
      description: Verified Data
      properties:
        company:
          $ref: '#/components/schemas/Company'
        product:
          $ref: '#/components/schemas/PCFProductDetails'
        pcf:
          $ref: '#/components/schemas/PcfData'
    ComponentAverageEmission:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the component of the company in SiGREEN.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        name:
          type: string
          description: Component Name
          example: Component 1
        unit:
          type: string
          description: Component Unit type
          enum:
            - piece
            - kg
            - m2
            - m3
            - kWh
            - tkm
            - MJ
            - L
          example: piece
        productionStage:
          $ref: '#/components/schemas/ProductionStageEmissions'
          description: Production stage emissions
        distributionStage:
          $ref: '#/components/schemas/DistributionStageEmissions'
          description: ' Distribution stage emissions'
        emissionsCalculatedOn:
          type: string
          description: When average emissions calculated
          example: '2022-11-20T08:30:00.000Z'
    ComponentAverageEmissionResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/ComponentAverageEmission'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    DistributionStageEmissions:
      type: object
      description: Distribution stage emissions
      properties:
        pcfIncludingBiogenic:
          type: string
          description: GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.868015629124908'
        pcfExcludingBiogenic:
          type: string
          description: GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.868015629124908'
    ProductionStageEmissions:
      type: object
      description: Production stage emissions
      properties:
        pcfIncludingBiogenic:
          type: string
          description: GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.868015629124908'
        pcfExcludingBiogenic:
          type: string
          description: GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.868015629124908'
    ComponentPaginatedResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetComponents'
        hasNext:
          type: boolean
          description: true if next page exists (page < totalPages)
          example: true
        hasPrev:
          type: boolean
          description: true if previous page exists (page > 0)
          example: false
        page:
          type: integer
          format: int32
          description: The current page-number (starts with 0)
          example: 0
        pageNumber:
          type: integer
          format: int32
          description: The current page-number (starts with 1)
          example: 1
        size:
          type: integer
          format: int32
          description: The size of elements in the response
          example: 10
        totalPages:
          type: integer
          format: int32
          description: The total available pages
          example: 120
    MassBalancingInformation:
      type: object
      properties:
        massBalancingUsed:
          type: string
          description: Mass balancing used or not
          example: 'true'
        freeAttributionInMassBalancing:
          type: string
          description: Free Attribute in mass balancing used or not
          example: 'true'
        massBalanceCalculationApproach:
          type: string
          description: Mass balance calculation approach
          example: Both conventional reference and inventory
        massBalancingCertificateScheme:
          type: string
          description: Mass balancing certificate scheme
          example: ISCC+
    CreditInformation:
      type: object
      properties:
        ccuCreditCertificateLink:
          type: string
        useCreditCertificateScheme:
          type: string
        ccuCreditCertificateScheme:
          type: string
    VerificationAndCertificationShares:
      type: object
      properties:
        pcs:
          type: string
          example: "50.5"
        pvs_1:
          type: 2
        pvs_2:
          type: 1
        pvs_3:
          type: 0
    PackagingCarbonStage:
      type: object
      properties:
        pcfIncludingBiogenic:
          type: string
          description: GWP total (incl. bio.). kg CO2e/declared unit
          example: 79.868015629124
        pcfExcludingBiogenic:
          type: string
          description: GWP total (excl. bio.). kg CO2e/declared unit
          example: 79.868015629124
        fossilEmissions:
          type: string
        biogenicEmissionsAndRemovals:
          type: string
          example: '79.86801562912497'
        biogenicCo2Emissions:
          type: string
          example: '79.86801562912497'
        biogenicCo2Uptake:
          type: string
          example: '79.86801562912497'
        directLandUseChangeAndLandUseEmissions:
          type: string
          example: '79.86801562912497'
        landUseChangeEmissions:
          type: string
          example: '79.86801562912497'
        landManagementFossilEmissions:
          type: string
          example: '79.86801562912497'
        landManagementBiogenicCo2Emissions:
          type: string
          example: '79.86801562912497'
        landManagementBiogenicEmissionsAndRemovals:
          type: string
          example: '79.86801562912497'
        aviationEmissions:
          type: string
          example: '79.86801562912497'
        technologicalCo2RemovalsEmissions:
          type: string
          example: '79.86801562912497'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
