> ## Documentation Index
> Fetch the complete documentation index at: https://help.polygon-one.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Verpackungseinheiten auflisten

> Retrieve your company's live packaging units — the door that resolves a generated `PU-<n>` reference back to the unit and to the UUID the detail route takes. Soft-deleted units are never returned. Rows are ordered by `name`, then by `id`, so paging can neither repeat nor skip a unit. Requires `packaging:read` (a `packaging:write` key satisfies it); customer workspace with the PPWR module enabled.



## OpenAPI

````yaml GET /api/ppwr/units
openapi: 3.1.0
info:
  title: Polygon One Compliance API
  description: >-
    API for integrating ERP systems with the Polygon One EUDR Compliance
    Platform. Allows management of Articles, Suppliers, Orders, and Due
    Diligence Statements (DDS). PPWR packaging master data, the SKU quantity
    feed and Mengenmeldung reports are covered by the PPWR groups.
  version: 1.0.0
servers:
  - url: https://app.polygon-one.com
    description: Production Server
security:
  - bearerAuth: []
paths:
  /api/ppwr/units:
    get:
      summary: List Packaging Units
      description: >-
        Retrieve your company's live packaging units — the door that resolves a
        generated `PU-<n>` reference back to the unit and to the UUID the detail
        route takes. Soft-deleted units are never returned. Rows are ordered by
        `name`, then by `id`, so paging can neither repeat nor skip a unit.
        Requires `packaging:read` (a `packaging:write` key satisfies it);
        customer workspace with the PPWR module enabled.
      operationId: listPpwrUnits
      parameters:
        - name: internalRef
          in: query
          required: false
          schema:
            type: string
          description: >-
            Return only the unit carrying exactly this reference (the upsert key
            of `POST /api/ppwr/units`). An empty value is not a filter that
            matches nothing — it is no filter at all.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
          description: >-
            Maximum number of rows to return. Opt-in: a request that sends
            neither `limit` nor `offset` returns the whole set. A non-numeric or
            non-positive value is a `400`.
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
          description: >-
            Number of rows to skip. Opt-in, same rules as `limit`; a non-numeric
            or negative value is a `400`.
      responses:
        '200':
          description: List of packaging units
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PpwrUnitListItem'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalError'
components:
  schemas:
    PpwrUnitListItem:
      type: object
      description: >-
        One packaging unit as `GET /api/ppwr/units` returns it — the identifying
        fields plus the rolled-up compliance state the **Packaging units**
        cockpit shows for the same unit.
      required:
        - id
        - name
        - internalRef
        - packagingType
        - role
        - reusable
        - componentCount
        - completeness
        - missingFields
        - obligationStatus
        - reuseStatus
      properties:
        id:
          type: string
          format: uuid
          description: >-
            The unit's id — what `GET /api/ppwr/units/{id}` and the PDF/export
            routes take.
        name:
          type: string
        internalRef:
          type: string
          description: >-
            Your reference for the unit, or the `PU-<n>` the server generated
            for a row that sent none. This is the upsert key of `POST
            /api/ppwr/units` and the `specInternalRef` of the link endpoints.
        packagingType:
          type: string
          enum:
            - sales
            - grouped
            - transport
            - ecommerce
            - service
        role:
          type: string
          enum:
            - manufacturer
            - importer
            - distributor
            - authorised_representative
            - supplier
            - fulfilment_service_provider
          description: Your economic-operator role for this unit.
        recyclabilityGrade:
          type:
            - string
            - 'null'
          enum:
            - A
            - B
            - C
            - non_recyclable
            - null
        reusable:
          type: boolean
          description: Art. 11 reusable packaging.
        componentCount:
          type: integer
          description: Number of components linked to the unit.
        completeness:
          type: string
          enum:
            - complete
            - in_progress
            - incomplete
          description: >-
            Data completeness of the unit, rolled up from its components: a unit
            is only as complete as its least complete component.
        missingFields:
          type: array
          items:
            type: string
            enum:
              - heavyMetalsMgPerKg
              - pfasCompliant
          description: >-
            The required Annex VII fields still missing across the unit's
            components. Empty when complete.
        obligationStatus:
          type: string
          enum:
            - action_needed
            - on_track
            - upcoming
          description: Rollup of the unit's applicable PPWR obligations.
        reuseStatus:
          type: string
          enum:
            - missing
            - incomplete
            - documented
            - pool_managed
            - stale
            - not_reusable
            - not_applicable
          description: State of the Art. 11 / Art. 26 re-use documentation for this unit.
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
        details:
          description: Additional error details (e.g. validation issues)
      required:
        - error
  responses:
    BadRequest:
      description: Invalid request data
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Invalid or missing API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Forbidden:
      description: Insufficient permissions for this resource
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        API key generated in Settings > API Keys. Include as `Authorization:
        Bearer <key>`.

````