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: v1
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: Material Category
    description: "**API PACKAGE BASIC** Material Category"
  - name: Component Secondary Data
    description: "**API PACKAGE BASIC** Component Secondary Data APIs"
  - name: Components
    description: "**API PACKAGE BASIC** Components APIs"
  - name: Get Component's PCF
    description: "**API PACKAGE BASIC** Get Component's PCF"
  - name: PCF Requests
    description: "**API PACKAGE REMOTE**Request Pcf APIs"
  - name: Component Identifier Types
    description: "**API PACKAGE BASIC** Component Identifier Types APIs"
  - name: Component Suppliers
    description: "**API PACKAGE BASIC** Component Supplier APIs"
  - name: Supplier Identifier Types
    description: "**API PACKAGE BASIC** Supplier Identifier Type APIs"
  - name: Suppliers
    description: "**API PACKAGE BASIC** Supplier APIs"
  - name: Suppliers Invitation
    description: "**API PACKAGE REMOTE** Invite Supplier APIs"

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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers/{id}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers/{id}
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /api/suppliers/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /materialCategories/{id}:
    get:
      tags:
        - Material Category
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    put:
      tags:
        - Material Category
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    delete:
      tags:
        - Material Category
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /api/materialCategories/{id}
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /materialCategories/{id}/image:
    get:
      tags:
        - Material Category
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    put:
      tags:
        - Material Category
      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:
              required:
                - image
              type: object
              properties:
                image:
                  type: string
                  format: binary
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    delete:
      tags:
        - Material Category
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories/{id}/image
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}
                errors:
                  - detail: Invalidate Authentcation
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}
                errors:
                  - detail: Invalidate Autherization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/secondaryData/{secondaryDataId}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
            maxLength: 36
            minLength: 0
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/linkSuppliers/{componentSupplierLinkId}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/{id}/invite
                errors:
                  - detail: id must be valid
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/{id}/invite
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/{id}/invite
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/{id}/invite/cancel
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/{id}/invite/cancel
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            minimum: 0
            type: string
            default: '0'
        - name: size
          in: query
          description: Size of the page default value is 10
          required: false
          schema:
            minimum: 1
            type: string
            default: '10'
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 50
            minLength: 3
            type: string
          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:
            maxLength: 50
            minLength: 0
            type: string
        - name: name
          in: query
          description: Filter supplier by name.
          required: false
          schema:
            maxLength: 100
            minLength: 0
            type: string
        - 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:
            maxLength: 100
            minLength: 0
            type: string
          example: supplier-idType
        - name: idValue
          in: query
          description: Filter suppliers based on either main or additional identifier value in SiGREEN.
          required: false
          schema:
            maxLength: 100
            minLength: 0
            type: string
          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: 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:
            maxLength: 50
            minLength: 0
            type: string
          example: '-updateOn'
        - name: page
          in: query
          description: page number
          required: false
          schema:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      responses:
        '200':
          description: A list of suppliers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SupplierPaginatedResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers
                errors:
                  - detail: From date format is wrong
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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'
        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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/suppliers
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /api/suppliers
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
  /materialCategories:
    get:
      tags:
        - Material Category
      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:
            maxLength: 100
            minLength: 0
            type: string
        - name: page
          in: query
          description: Page Number, usually starts with 0
          required: false
          schema:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Size of the page default value is 10
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories
                errors:
                  - detail: Invalid Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories
                errors:
                  - detail: Invalid Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /api/materialCategories
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
    post:
      tags:
        - Material Category
      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'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/materialCategories
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: supplierId
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/suppliers/{supplierId}/pcfRequest
                errors:
                  - detail: Invalid Supplier Id (UUID).
                    code: SIG-001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/suppliers/{supplierId}/pcfRequest
                errors:
                  - detail: Invalidate Authentication
                    code: SIG-001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/suppliers/{supplierId}/pcfRequest
                errors:
                  - detail: Invalidate Authorization
                    code: SIG-001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: page
          in: query
          description: page number
          required: false
          schema:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/secondaryData
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: supplierId
          in: query
          description: UUID to identify the supplier of the company in SiGREEN
          required: false
          schema:
            maxLength: 36
            minLength: 0
            type: string
          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:
            maxLength: 100
            minLength: 0
            type: string
        - 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:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/linkSuppliers
                errors:
                  - detail: Id must not be empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/linkSuppliers
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components/{id}/linkSuppliers
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/linkSuppliers
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/linkSuppliers
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 100
            minLength: 0
            type: string
        - 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:
            maxLength: 100
            minLength: 0
            type: string
        - 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:
            maxLength: 100
            minLength: 0
            type: string
          example: component-idType
        - name: idValue
          in: query
          description: Filter components based on either main or additional identifier value in SiGREEN.
          required: false
          schema:
            maxLength: 100
            minLength: 0
            type: string
          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:
            maxLength: 50
            minLength: 3
            type: string
          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:
            maxLength: 50
            minLength: 0
            type: string
          example: '-updateOn'
        - name: page
          in: query
          description: page number
          required: false
          schema:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      responses:
        '200':
          description: A list of components
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComponentPaginatedResponse'
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components
                errors:
                  - detail: Invalid date format
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components
                errors:
                  - detail: Name must not be null or empty.
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /api/components
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
      responses:
        '204':
          description: No Content
        '400':
          description: Bad request.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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
          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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /suppliers/identifierTypes/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid message
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/identifierTypes/{id}
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          example: 550e8400-e29b-41d4-a716-446655440000
        - name: supplierId
          in: path
          description: UUID to identify the supplier of the company in SiGREEN
          required: true
          schema:
            maxLength: 36
            minLength: 0
            type: string
          example: 550e8400-e29b-41d4-a716-446655440000
        - name: page
          in: query
          description: page number
          required: false
          schema:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/suppliers/{supplierId}/pcf
                errors:
                  - detail: Invalid Component id
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/suppliers/{supplierId}/pcf
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/{id}/suppliers/{supplierId}/pcf
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 36
            minLength: 0
            type: string
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        - name: supplierId
          in: query
          description: UUID to identify the supplier of the company in SiGREEN
          required: false
          schema:
            maxLength: 36
            minLength: 0
            type: string
          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:
            maxLength: 36
            minLength: 0
            type: string
        - name: pcfId
          in: query
          description: UUID for identifying the pcf data of the company in SiGREEN
          required: false
          schema:
            maxLength: 100
            minLength: 0
            type: string
          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: denied
          in: query
          description: Include PCF's which are received but denied.
          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:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/pcfData
                errors:
                  - detail: Invalid Component id
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/pcfData
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/pcfData
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                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:
            maxLength: 50
            minLength: 0
            type: string
          example: +name
        - name: page
          in: query
          description: page number
          required: false
          schema:
            minimum: 0
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: page size
          required: false
          schema:
            minimum: 1
            type: integer
            format: int32
            default: 10
      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:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: Bad request
                status: 400
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/averageEmissions
                errors:
                  - detail: Invalid Page Number
                    code: SIG-BUS-0001
        '401':
          description: Unauthorized.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: UNAUTHORIZED
                status: 401
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/averageEmissions
                errors:
                  - detail: Invalid  Authentication
                    code: SIG-BUS-0001
        '403':
          description: Forbidden.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://developer.siemens.com/sigreen/validation-error.html
                title: FORBIDDEN
                status: 403
                traceId: d7e420c2-5a49-4a34-8ead-9c52a8f91577
                instance: /components/averageEmissions
                errors:
                  - detail: Invalid  Authorization
                    code: SIG-BUS-0001
        5XX:
          description: Unexpected error.
          content:
            application/problem+json:
              schema:
                $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-9c52a8f91577
                instance: /components/averageEmissions
                errors:
                  - detail: Internal service error
                    code: SIG-BUS-0001
components:
  schemas:
    Supplier:
      required:
        - email
        - identifiers
        - locations
        - name
      type: object
      properties:
        name:
          maxLength: 100
          minLength: 0
          pattern: ^[^<>"”=()]*$
          type: string
          description: Supplier name
          example: ACME
        identifiers:
          maxItems: 10
          type: array
          description: You have to have one identifier where the default parameter is set to true as this represents your main identifier for this entity.
          example:
            - idType: SupplierId1
              value: AE4687
              default: true
            - idType: SupplierId2
              value: AB4548
              default: false
          items:
            $ref: '#/components/schemas/SupplierIdentifier'
        email:
          maxLength: 50
          minLength: 0
          type: string
          description: email
          example: test@test.com
        contactNumber:
          maxLength: 30
          minLength: 0
          pattern: '|^(\+?|(\+\([\d-\s]+\)))?(\([0-9]+\)|[0-9-\s]){7,}$'
          type: string
          description: contact number
          example: '345345345'
        website:
          maxLength: 200
          minLength: 0
          pattern: '|^(?:(http(s)?)?:\/\/)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)$'
          type: string
          description: website
          example: www.test.com
        locations:
          type: array
          description: supplier locations
          example:
            - 12459 Berlin, Siemensstraße 42
          items:
            type: string
            description: supplier locations
            example: '["12459 Berlin, Siemensstraße 42"]'
        comment:
          maxLength: 1000
          minLength: 0
          type: string
          description: comment
          example: my comment
    SupplierIdentifier:
      required:
        - default
        - idType
        - value
      type: object
      properties:
        idType:
          type: string
          description: identifier type
          example: DUNS
        value:
          maxLength: 100
          minLength: 0
          type: string
          description: identifier value
          example: XYTT001
        default:
          type: boolean
          description: whether main identifier type or not
          example: true
    Errors:
      type: object
      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
      description: Extended error array to include descriptions about errors like validation errors.
    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
          description: Numeric HTTP status code for the specific error.
          format: int32
          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:
      required:
        - name
      type: object
      properties:
        name:
          maximum: 50
          maxLength: 100
          minLength: 0
          pattern: ^[^<>"”=()]*$
          type: string
          description: Material Category Name
          example: Material Category
    ComponentIdentifier:
      required:
        - default
        - idType
        - value
      type: object
      properties:
        idType:
          type: string
          description: identifier type
          example: DUNS
        value:
          maxLength: 100
          minLength: 0
          type: string
          description: identifier value
          example: XYTT001
        default:
          type: boolean
          description: whether main identifier type or not
          example: true
    Components:
      required:
        - identifiers
        - name
        - unit
        - weight
      type: object
      properties:
        name:
          maxLength: 100
          minLength: 0
          pattern: ^[^<>"”=()]*$
          type: string
          description: Name of component
          example: TestComponent
        materialCategory:
          maxLength: 100
          minLength: 0
          pattern: ^[^<>"”=()]*$
          type: string
          description: If you provide a material category which does not exist, the system will generate this material category for you.
          example: Electronics
        unit:
          maxLength: 15
          minLength: 0
          type: string
          description: unit types
          example: piece
          enum:
            - piece
            - kg
            - m2
            - m3
            - kWh
            - tkm
            - MJ
            - L
        weight:
          type: string
          description: Component weight
          example: '3.5'
        identifiers:
          maxItems: 100
          minItems: 0
          type: array
          description: You have to have one identifier where default parameter is set to true as this represents your main identifier for this entity.
          example:
            - idType: ComponentId1
              value: Component 98111
              default: true
            - idType: ComponentId2
              value: Component 41458
              default: false
          items:
            $ref: '#/components/schemas/ComponentIdentifier'
    ComponentSecondaryData:
      required:
        - email
        - productionStage
        - quantity
      type: object
      properties:
        email:
          maxLength: 50
          type: string
          description: Email
          example: example@example.com
        productionStage:
          $ref: '#/components/schemas/SecondaryDataProductionStage'
        distributionStage:
          $ref: '#/components/schemas/SecondaryDataDistributionStage'
        quantity:
          maxLength: 15
          type: string
          description: quantity
          example: '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:
          pattern: ^[^<>"”=]*$
          type: string
          description: Comments
          example: Comment if any
        dataSource:
          pattern: ^[^<>"”=]*$
          type: string
          description: Data Source
          example: Database
        dataVerification:
          type: string
          description: data verification
          example: Proxy data
          enum:
            - Proxy data
            - Secondary data
    SecondaryDataDistributionStage:
      type: object
      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.8680156291287'
        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
          description: Distribution stage GWP direct land use change (dLUC). kg CO2e/declared unit
          example: '79.86801562912497'
      description: Distribution stage emission details
    SecondaryDataProductionStage:
      type: object
      properties:
        pcfIncludingBiogenic:
          type: string
          description: Production stage GWP total (incl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.86801562912491'
        pcfExcludingBiogenic:
          type: string
          description: Production stage GWP total (excl. bio.). kg CO2e/declared unit. Either pcfIncludingBiogenic or pcfExcludingBiogenic mandatory.
          example: '79.86801562912432'
        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
          description: Production stage GWP direct land use change (dLUC). kg CO2e/declared unit
          example: '79.86801562912497'
      description: Production stage emissions
    LinkedSupplier:
      required:
        - supplierId
        - supplierLocation
      type: object
      properties:
        supplierLocation:
          maxLength: 200
          minLength: 0
          type: string
          description: Location of supplier
          example: S89087
        share:
          maxLength: 15
          minLength: 0
          pattern: ^-?(?=.*\d)(\d{1,9})+([.,])?\d*$
          type: string
          description: share percentage
          example: '100'
        supplierProductId:
          maxLength: 100
          minLength: 0
          type: string
          description: supplier product id
          example: SUPCOMP1
        supplierId:
          maxLength: 36
          minLength: 0
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        secondaryDataId:
          maxLength: 36
          minLength: 0
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
    SupplierInvite:
      type: object
      properties:
        message:
          type: string
    IdentifierTypeRequest:
      required:
        - idType
      type: object
      properties:
        idType:
          maxLength: 100
          minLength: 0
          type: string
          description: Type of identifier for a company in SiGREEN.
          example: C23523-233
    IdentifierTypeResponse:
      required:
        - id
      type: object
      properties:
        id:
          maxLength: 36
          type: string
          description: UUID to identify the identifier type of the company in SiGREEN.
          example: 550e8400-e29b-41d4-a716-446655440000
    SupplierResponseId:
      type: object
      properties:
        id:
          maxLength: 36
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
    MaterialCategoryResponseId:
      type: object
      properties:
        id:
          maximum: 36
          type: string
          description: UUID to identify the material cateogry of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
    IdentifierExt:
      required:
        - idType
        - value
      type: object
      properties:
        idType:
          type: string
          description: identifier type
          example: DUNS
        value:
          maxLength: 100
          minLength: 0
          type: string
          description: identifier value
          example: XYTT001
      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}
    PcfRequest:
      required:
        - location
      type: object
      properties:
        pcfStandard:
          type: string
          example: TFS V2
          enum:
            - PACT V2.0.0
            - TFS V2
            - ISO 14067
            - EPD Style
            - Catena-X V2.2
            - Catena-X V2
        location:
          type: string
          description: Supplier Location
          example: Berlin
        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'
    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:
          maxLength: 50
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
    ComponentSupplierSecondaryData:
      required:
        - componentSupplierLinkId
        - supplierId
        - supplierLocation
      type: object
      properties:
        supplierLocation:
          maxLength: 200
          minLength: 0
          type: string
          description: Location of supplier
          example: S89087
        share:
          maxLength: 15
          minLength: 0
          pattern: ^-?(?=.*\d)(\d{1,9})+([.,])?\d*$
          type: string
          description: share percentage
          example: '100'
        supplierProductId:
          maxLength: 100
          minLength: 0
          type: string
          description: supplier product id
          example: SUPCOMP1
        componentSupplierLinkId:
          type: string
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        supplierId:
          maxLength: 36
          minLength: 0
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        secondaryDataId:
          maxLength: 36
          minLength: 0
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
    ComponentResponseId:
      type: object
      properties:
        id:
          maxLength: 36
          type: string
          description: UUID to identify the component of the company in SiGREEN
          example: 550e8400-e29b-41d4-a716-446655440000
    IdentifierTypeUpdateRequest:
      required:
        - idType
      type: object
      properties:
        idType:
          maxLength: 100
          minLength: 0
          type: string
          description: Type of identifier for a company in SiGREEN.
          example: C23523-2332
    GetSupplier:
      required:
        - email
        - id
        - identifiers
        - locations
        - name
      type: object
      properties:
        id:
          maxLength: 36
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        name:
          maxLength: 100
          minLength: 0
          pattern: ^[^<>"”=()]*$
          type: string
          description: Supplier name
          example: ACME
        identifiers:
          maxItems: 10
          type: array
          description: You have to have one identifier where the default parameter is set to true as this represents your main identifier for this entity.
          example:
            - idType: SupplierId1
              value: AE4687
              default: true
            - idType: SupplierId2
              value: AB4548
              default: false
          items:
            $ref: '#/components/schemas/SupplierIdentifier'
        email:
          maxLength: 50
          minLength: 0
          type: string
          description: email
          example: test@test.com
        contactNumber:
          maxLength: 30
          minLength: 0
          pattern: '|^(\+?|(\+\([\d-\s]+\)))?(\([0-9]+\)|[0-9-\s]){7,}$'
          type: string
          description: contact number
          example: '345345345'
        website:
          maxLength: 200
          minLength: 0
          pattern: '|^(?:(http(s)?)?:\/\/)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)$'
          type: string
          description: website
          example: www.test.com
        locations:
          type: array
          description: supplier locations
          example:
            - 12459 Berlin, Siemensstraße 42
          items:
            type: string
            description: supplier locations
            example: '["12459 Berlin, Siemensstraße 42"]'
        status:
          type: string
          description: The status of the supplier
          example: ACTIVE
          enum:
            - NOT_INVITED_YET
            - INVITED
            - INVITE_CANCELLED
            - DENIED_BY_ADMIN
            - ACTIVE
        comment:
          maxLength: 1000
          minLength: 0
          type: string
          description: comment
          example: my comment
        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'
    IdentifierTypes:
      required:
        - id
        - idType
        - isMainIdentifierType
      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
    IdentifierTypesResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/IdentifierTypes'
        hasNext:
          type: boolean
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    SupplierPaginatedResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetSupplier'
        hasNext:
          type: boolean
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    GetMaterialCategoryWithComponents:
      type: object
      properties:
        id:
          maximum: 50
          type: string
          description: UUID to identify the material category of the company in SiGREEN.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        name:
          maximum: 50
          type: string
          description: Material Category Name
          example: Material Category
        componentsCount:
          type: integer
          description: Number of components linked to Material Category
          format: int64
          example: 10
        createdOn:
          maxLength: 30
          type: string
          description: Created on (ISO 8601; UTC Timezone)
          example: '2024-04-19T00:00:00.000Z'
        updatedOn:
          maxLength: 30
          type: string
          description: Updated on (ISO 8601; UTC Timezone)
          example: '2024-04-19T00:00:00.000Z'
    MaterialCategoryPaginatedResponseExt:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetMaterialCategoryWithComponents'
        hasNext:
          type: boolean
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    GetComponents:
      required:
        - identifiers
        - name
        - unit
        - weight
      type: object
      properties:
        id:
          maximum: 36
          type: string
          description: UUID to identify the component of the company in SiGREEN.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        name:
          maxLength: 100
          minLength: 0
          pattern: ^[^<>"”=()]*$
          type: string
          description: Name of component
          example: TestComponent
        materialCategory:
          maxLength: 100
          minLength: 0
          pattern: ^[^<>"”=()]*$
          type: string
          description: If you provide a material category which does not exist, the system will generate this material category for you.
          example: Electronics
        unit:
          maxLength: 15
          minLength: 0
          type: string
          description: unit types
          example: piece
          enum:
            - piece
            - kg
            - m2
            - m3
            - kWh
            - tkm
            - MJ
            - L
        weight:
          type: string
          description: Component weight
          example: '3.5'
        identifiers:
          maxItems: 100
          minItems: 0
          type: array
          description: You have to have one identifier where default parameter is set to true as this represents your main identifier for this entity.
          example:
            - idType: ComponentId1
              value: Component 98111
              default: true
            - idType: ComponentId2
              value: Component 41458
              default: false
          items:
            $ref: '#/components/schemas/ComponentIdentifier'
        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'
    ComponentCarbonFootprint:
      type: object
      properties:
        id:
          type: string
          description: UUID to identify the component of the company in SiGREEN.
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        totalPCF:
          type: number
          description: Total PCF
          example: 1.2
        pcfUnit:
          type: string
          description: PCF Unit Types
          example: kgCO2e/piece
          enum:
            - kgCO2e/piece
            - kgCO2e/kg
            - kgCO2e/m2
            - kgCO2e/m3
            - kgCO2e/kWh
            - kgCO2e/tkm
            - kgCO2e/MJ
            - kgCO2e/L
        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
    ComponentPCFPaginatedResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/ComponentCarbonFootprint'
        hasNext:
          type: boolean
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    GetComponentSecondaryData:
      required:
        - email
        - productionStage
        - quantity
        - secondaryDataId
      type: object
      properties:
        email:
          maxLength: 50
          type: string
          description: Email
          example: example@example.com
        productionStage:
          $ref: '#/components/schemas/SecondaryDataProductionStage'
        distributionStage:
          $ref: '#/components/schemas/SecondaryDataDistributionStage'
        quantity:
          maxLength: 15
          type: string
          description: quantity
          example: '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:
          pattern: ^[^<>"”=]*$
          type: string
          description: Comments
          example: Comment if any
        dataSource:
          pattern: ^[^<>"”=]*$
          type: string
          description: Data Source
          example: Database
        dataVerification:
          type: string
          description: data verification
          example: Proxy data
          enum:
            - Proxy data
            - Secondary 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'
    SecondaryDataResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetComponentSecondaryData'
        hasNext:
          type: boolean
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    GetLinkedSupplier:
      required:
        - componentSupplierLinkId
        - supplierId
        - supplierLocation
      type: object
      properties:
        supplierLocation:
          maxLength: 200
          minLength: 0
          type: string
          description: Location of supplier
          example: S89087
        share:
          maxLength: 15
          minLength: 0
          pattern: ^-?(?=.*\d)(\d{1,9})+([.,])?\d*$
          type: string
          description: share percentage
          example: '100'
        supplierProductId:
          maxLength: 100
          minLength: 0
          type: string
          description: supplier product id
          example: SUPCOMP1
        componentSupplierLinkId:
          type: string
          description: UUID to identify the linked supplier with component of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        supplierId:
          maxLength: 36
          minLength: 0
          type: string
          description: UUID to identify the supplier of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
        secondaryDataId:
          maxLength: 36
          minLength: 0
          type: string
          description: UUID to identify the Component Secondary Data of the company in SiGREEN
          example: C98BE31E-3698-412D-91E3-8270102CC7D5
    ComponentSupplierLinkResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetLinkedSupplier'
        hasNext:
          type: boolean
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    Assurance:
      type: object
      properties:
        verificationType:
          type: string
          description: Assurance type.
          example: third party verified PCF
          enum:
            - self-declared PCF
            - 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.
          example: product line
          enum:
            - corporate level
            - product line
            - PCF system
            - product level
        level:
          type: string
          description: Assurance level.
          example: limited
          enum:
            - limited
            - reasonable
        boundary:
          type: string
          description: Assurance boundary
          example: Gate-to-gate
          enum:
            - Gate-to-gate
            - Cradle-to-gate
        assuranceStatement:
          type: string
          description: Assurance statement
          example: free text
        comments:
          type: string
          description: Assurance Comments
          example: free text
      description: Assurance details
    Company:
      type: object
      properties:
        companyName:
          type: string
          description: Company name.
          example: Company name
        companyIds:
          type: array
          description: Company IDs.
          example:
            - companyID1
          items:
            type: string
            description: Company IDs.
            example: '["companyID1"]'
        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.
      description: Company Details
    ComponentPCFDataPaginatedResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/ComponentPCFDataResponse'
        hasNext:
          type: boolean
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    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
        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
        denied:
          type: boolean
          description: Include PCF's which are received but denied.
          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
      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 CO2e-emissions (only other GHG emissions than CO2 – excludes biogenic CO2). kg CO2e/declared unit
          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'
        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'
        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'
        transportAToDistributorSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        reconditioningAToDistributorSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        transportBToPlaceOfUseSubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
        ilucGhgEmissions:
          type: string
        dlucAndLuGhgEmissions:
          type: string
        dLucGhgEmissions:
          type: string
          description: Distribution stage GWP land use (LU). kg CO2e/declared unit
          example: '79.86801562912497'
      description: Distribution stage details
    Dqi:
      type: object
      properties:
        coveragePercent:
          maximum: 100
          minimum: 0
          type: string
          description: Coverage of data quality assessment.
          example: '100'
        technologicalDQR:
          maximum: 3
          minimum: 1
          type: string
          description: Technological representativeness
          example: '1.2'
        temporalDQR:
          maximum: 3
          minimum: 1
          type: string
          description: Temporal representativeness.
          example: '1.3'
        geographicalDQR:
          maximum: 3
          minimum: 1
          type: string
          description: Geographical representativeness.
          example: '1.8'
        completenessDQR:
          maximum: 3
          minimum: 1
          type: string
          description: Completeness
          example: '2.5'
        reliabilityDQR:
          maximum: 3
          minimum: 1
          type: string
          description: Reliability
          example: '2.5'
        uncertaintyAssessmentDescription:
          type: string
          description: Qualitative uncertainty description
          example: free text
        massBalancesChecked:
          type: string
          description: Decition type details
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
      description: DQI details
    EolStage:
      type: object
      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'
      description: Eol Stage details
    InstallationAndAssemblyStage:
      type: object
      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'
      description: Installation And Assembly Stage details
    MaterialAcquisitionAndPreProcessingSubStage:
      type: object
      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'
      description: Material Acquisition And PreProcessing SubStage details
    PCFProductDetails:
      required:
        - productIds
      type: object
      properties:
        productNameCompany:
          maxLength: 100
          type: string
          description: Stating the (legal) name of the company supplying the product and reporting the PCF (data owner).
          example: TestCompany
        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
            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"]'
        bomVersion:
          type: string
          description: Bill of material for corresponding PCF. Bom version created for a specific product.
          example: No BOM selected
        productCodeCpc:
          type: string
          description: The corresponding CPC number to your product (unique identification number assigned to chemical substances).
          example: 58-08-2
        productCodeCas:
          maxLength: 20
          type: string
          description: The corresponding CAS number to your product (unique identification number assigned to chemical substances).
          example: 58-08-2
        productDescription:
          maxLength: 2000
          type: string
          description: Brief description of the product (for example functions and technical parameters).
          example: Ethanol, 95% solution
      description: Product details.
      example:
        productNameCompany: TestCompany
        productIds:
          - '401765'
          - 4303F98A-785F
        productCodeCas: 58-08-2
        productDescription: Ethanol, 95% solution
        bomVersion: No BOM selected
    PcfData:
      type: object
      properties:
        scopePcf:
          $ref: '#/components/schemas/ScopeOfPcf'
        declaredUnit:
          type: string
          description: unit type
          example: piece
          enum:
            - piece
            - kg
            - L
            - m²
            - m³
            - kWh
            - km
            - TEU
            - pkm
            - tkm
            - MJ
            - m2
            - m3
        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
            description: Previous PCF IDs.Id will represent like UUID v4.
            example: '["id1","id2"]'
        version:
          type: string
          description: PCF version, the value can be in decimals.
          example: '1.2'
        pfStatus:
          type: string
          description: PCF status
          example: Active
          enum:
            - Active
            - Deprecated
        pfStatusComment:
          type: string
          description: PCF status comment
          example: PCF status comment
        exemptedEmissionsPercent:
          maximum: 10
          minimum: 0
          type: string
          description: Cut-off rule %
          example: '1'
        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
          example: post-industrial
          enum:
            - post-industrial
            - ' post-consumer'
        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
          example: Europe
          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
        locationProductHandover:
          type: string
          description: Location of product handover
          example: Own factory gate
          enum:
            - Own factory gate
            - Customer gate
            - other
        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
          description: List of Cross-sectoral standards applied.
          example:
            - ISO 14067
            - Pathfinder v1
          items:
            type: string
            description: Cross-sectoral standards applied.
            example: ISO 14067
            enum:
              - ISO 14067
              - Pathfinder v1
              - Pathfinder v2
              - GHG Protocol Product
              - PAS 2050
              - ISO 14040-44
              - PEF
              - Other
        productOrSectorSpecificRules:
          type: array
          items:
            type: string
            description: Product or sector rules applied.
            example: Catena-X Rulebook v1
            enum:
              - Catena-X Rulebook v1
              - Catena-X Rulebook v2
              - TFS Guideline v2
              - EN 50693
              - EN 15804
              - BPX 30-323
              - Not specified
        operator:
          type: string
          description: select other.
          example: PEF
          enum:
            - PEF
            - EPD International
            - Other
        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.
          example: PEF
          enum:
            - PEF
            - GHGP
            - Quantis
        characterizationFactorsTimeHorizon:
          type: string
          description: Time horizon of GWP values.
          example: GWP100
          enum:
            - GWP100
            - GWP20
            - GWP500
            - GWP1000
            - Unspecified
        characterizationFactors:
          type: string
          description: IPCC report version of GWP values.
          example: AR1
          enum:
            - AR1
            - AR2
            - AR3
            - AR4
            - AR5
            - AR6
            - Unspecified
        characterizationFactorsClimateCarbonFeedback:
          type: string
          description: Are climate-carbon feedbacks included in the GWP?
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
            - partly
            - Unspecified
        characterizationFactorsClimateCarbonFeedbackLciaMethod:
          type: string
          description: LCIA method applied in assessment.
          example: Greenhouse Gas Protocol
          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
        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.
          example: Recycled content method
          enum:
            - Recycled content method
            - Closed loop approximation method
        allocationWasteIncineration:
          type: string
          description: Allocation approach used for waste incineration with energy recovery.
          example: cut-off
          enum:
            - cut-off
            - reverse cut-off
            - 'system expansion '
        allocationRecycledCarbon:
          type: string
          description: Allocation approach used for recycled material & c-content.
          example: upstream system expansion
          enum:
            - upstream system expansion
            - cut-off
        allocationCcuCarbon:
          type: string
          description: Allocation approach used for CCU.
          example: cut-off
          enum:
            - upstream system expansion
            - cut-off
        primaryDataShare:
          maximum: 100
          minimum: 0
          type: string
          description: Primary Data Share (PDS).
          example: ' primaryDataShare'
        sourceOfPrimaryData:
          type: string
          description: Source of primary data.
          example: sourceOfPrimaryData
        secondaryEmissionFactorSources:
          type: array
          description: Secondary data source & Version.
          example:
            - secondaryEmissionFactorSources
          items:
            type: string
        secondaryEmissionFactorSourcesVersion:
          type: string
          description: Secondary data source version.
          example: secondaryEmissionFactorSourcesVersion
        dqi:
          $ref: '#/components/schemas/Dqi'
        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.).
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        totalExBio:
          type: string
          description: GWP total (excl. bio.).
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        fossilEmissions:
          type: string
          description: GWP fossil.
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        biogenic:
          type: string
        biogenicEmissionsNonCo2Only:
          type: string
          description: GWP biogenic CO2e-emissions (only other GHG emissions than CO2 – excludes biogenic CO2).
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        biogenicEmissionsCo2Only:
          type: string
          description: GWP biogenic CO2e-withdrawal (biogenic CO2 contained in the product).
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        dluc:
          type: string
          description: GWP direct land use change (dLUC).
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        lu:
          type: string
          description: GWP land use (LU).
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        aircraft:
          type: string
          description: GWP aircraft emissions.
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        landManagementGhgEmissions:
          type: string
          description: GWP land management GHG emissions or Removals (incl. non-CO2 sources).
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        otherBiogenicGhgEmissions:
          type: string
          description: GWP biogenic CO2e-emissions other biogenic (excluding LUC and Land management).
          example: 'yes'
          enum:
            - 'yes'
            - 'no'
        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'
        dlucAndLu:
          type: string
        ilucGhgEmissions:
          type: string
      description: PCF data
    ProductCarbonContent:
      required:
        - carbonContentTotal
      type: object
      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'
      description: Product carbon content details.
      example:
        carbonContentTotal: '79.86801562912'
        fossilCarbonContent: '79.86801562912'
        carbonContentBiogenic: '79.86801562912'
        carbonContentRecycled: '79.86801562912'
        carbonContentCcuBased: '79.86801562912'
    ProductionManufacturingSubStage:
      type: object
      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/ReuseRecoveryRecyclingPotentialStage'
        eolTreatmentOfGeneratedWasteMfg2SubStage:
          $ref: '#/components/schemas/ReuseRecoveryRecyclingPotentialStage'
      description: Production Manufacturing SubStage details
    ProductionStage:
      type: object
      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'
        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'
        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'
        materialAcquisitionAndPreProcessingSubStage:
          $ref: '#/components/schemas/MaterialAcquisitionAndPreProcessingSubStage'
        productionManufacturingSubStage:
          $ref: '#/components/schemas/ProductionManufacturingSubStage'
        ilucGhgEmissions:
          type: string
        dlucAndLuGhgEmissions:
          type: string
        dLucGhgEmissions:
          type: string
          description: Production stage GWP direct land use change (dLUC). kg CO2e/declared unit
          example: '79.86801562912497'
      description: Production stage details
    ReuseRecoveryRecyclingPotentialStage:
      type: object
      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'
      description: Carbon Assessment details
    ScopeOfPcf:
      type: object
      properties:
        specVersion:
          type: array
          description: Data model and version.
          example:
            - TFS V2
            - TFS V1
          items:
            type: string
            description: Data model and version.
            example: '["TFS V2","TFS V1"]'
        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
        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
      description: Scope of PCF
    UseStage:
      type: object
      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'
      description: Use Stage details
    VerifiedData:
      type: object
      properties:
        company:
          $ref: '#/components/schemas/Company'
        product:
          $ref: '#/components/schemas/PCFProductDetails'
        pcf:
          $ref: '#/components/schemas/PcfData'
      description: Verified Data
    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
          example: piece
          enum:
            - piece
            - kg
            - m2
            - m3
            - kWh
            - tkm
            - MJ
            - L
        productionStage:
          $ref: '#/components/schemas/ProductionStageEmissions'
        distributionStage:
          $ref: '#/components/schemas/DistributionStageEmissions'
        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
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
    DistributionStageEmissions:
      type: object
      properties:
        pcfIncludingBiogenic:
          type: string
          description: GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912491'
        pcfExcludingBiogenic:
          type: string
          description: GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912491'
      description: Distribution stage emissions
    ProductionStageEmissions:
      type: object
      properties:
        pcfIncludingBiogenic:
          type: string
          description: GWP total (incl. bio.). kg CO2e/declared unit
          example: '79.86801562912491'
        pcfExcludingBiogenic:
          type: string
          description: GWP total (excl. bio.). kg CO2e/declared unit
          example: '79.86801562912491'
      description: Production stage emissions
    ComponentPaginatedResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GetComponents'
        hasNext:
          type: boolean
        hasPrev:
          type: boolean
        page:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        totalPages:
          type: integer
          format: int32
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
