> ## 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.

# Nachweise auflisten

> List the live evidence documents of one supplier article. A supplier article of another company answers `403`. Requires `evidence:read` (an `evidence:write` key satisfies it).

Die Antwort ist `{ "evidence": [...] }` mit allen Nachweisen des Lieferantenartikels, kein reines Array. Ohne `limit` und `offset` liefert der Endpunkt die ganze Liste; mit `limit`/`offset` blättert er wie die übrigen Listen. `fields` wird unterstützt.


## OpenAPI

````yaml GET /api/v1/evidence
openapi: 3.1.0
info:
  title: Polygon One Compliance API
  description: >-
    REST API for connecting ERP and other business systems to Polygon One. It
    covers both compliance modules: **EUDR** (EU Deforestation Regulation) —
    articles, suppliers, plots, evidence, orders and Due Diligence Statements —
    and **PPWR** (EU Packaging and Packaging Waste Regulation) — packaging
    components and units, documents, Declarations of Conformity, the SKU
    quantity feed and volume reports.


    Authenticate every request with an API key created in Settings → API Keys,
    sent as `Authorization: Bearer <key>`. Each key carries scopes (e.g.
    `articles:read`, `packaging:write`) that limit what it may read and write.


    Versioning: `v1` changes only additively — new endpoints, new optional
    request fields and new response fields may appear, nothing documented is
    removed or changed in meaning. Ignore response fields you do not know.


    Guides and walkthroughs:
    https://help.polygon-one.com/api-reference/introduction
  version: 1.0.0
  contact:
    name: Polygon One Support
    email: help@polygon-one.eu
servers:
  - url: https://app.polygon-one.com
    description: Production Server
security:
  - bearerAuth: []
tags:
  - name: Articles
    description: >-
      EUDR articles: your products and purchased goods, their HS code, EUDR
      relevance and supplier links.
  - name: Suppliers
    description: EUDR suppliers and their links to articles.
  - name: Plots
    description: >-
      EUDR plots of land (geolocations): create, validate, link to supplier
      articles, read the geo analysis and its report.
  - name: Evidence
    description: >-
      EUDR evidence documents attached to a supplier article (legal compliance
      documents, questionnaires).
  - name: Orders
    description: >-
      Purchase and sale orders and their lines; the read-back of the DDS
      references linked to each order.
  - name: Import Jobs
    description: >-
      Status and result of an asynchronous batch import (articles, suppliers,
      orders, PPWR quantities).
  - name: Readiness
    description: Action-scoped readiness snapshots for owned EUDR and PPWR resources.
  - name: DDS Statements
    description: >-
      EUDR Due Diligence Statements: create, read, update the TRACES numbers,
      delete.
  - name: PPWR Packaging Data
    description: >-
      PPWR master data: packaging components, packaging units, their sizes,
      bills of materials and article links.
  - name: PPWR Documents
    description: >-
      Upload supporting documents (test reports, declarations, technical
      documentation) to a packaging unit or component.
  - name: PPWR Declarations of Conformity
    description: Read Declarations of Conformity and download their files.
  - name: PPWR Quantities & Volume Reports
    description: >-
      The SKU quantity feed, aggregate material tonnage and the generated volume
      reports (Mengenmeldung).
paths:
  /api/v1/evidence:
    get:
      tags:
        - Evidence
      summary: List Evidence
      description: >-
        List the live evidence documents of one supplier article. A supplier
        article of another company answers `403`. Requires `evidence:read` (an
        `evidence:write` key satisfies it).
      operationId: listEvidence
      parameters:
        - schema:
            type: string
            format: uuid
            description: >-
              The supplier article (`supplierLinks[].supplierArticleId` of `GET
              /api/v1/articles`).
          required: true
          description: >-
            The supplier article (`supplierLinks[].supplierArticleId` of `GET
            /api/v1/articles`).
          name: supplierArticleId
          in: query
        - schema:
            type: string
            enum:
              - legal_compliance
              - questionnaire
            description: Only documents of this type.
          required: false
          description: Only documents of this type.
          name: evidenceType
          in: query
        - schema:
            type: integer
            minimum: 1
            maximum: 1000
            description: >-
              Maximum number of documents to return (max 1000). Without `limit`
              and `offset` the whole list is returned; with either, the default
              page size is 100.
          required: false
          description: >-
            Maximum number of documents to return (max 1000). Without `limit`
            and `offset` the whole list is returned; with either, the default
            page size is 100.
          name: limit
          in: query
        - schema:
            type:
              - integer
              - 'null'
            minimum: 0
            description: >-
              Number of documents to skip. Documents are returned oldest upload
              first in a stable order, so paging with `limit` and `offset` until
              a short page never skips or repeats a document.
          required: false
          description: >-
            Number of documents to skip. Documents are returned oldest upload
            first in a stable order, so paging with `limit` and `offset` until a
            short page never skips or repeats a document.
          name: offset
          in: query
        - schema:
            type: string
            description: >-
              Comma-separated list of the resource's top-level keys to return
              (per element for a list), e.g. `id,name`; omit for the full body.
              Top-level only; whitespace is trimmed and duplicates count once.
              `fields` never adds keys: a selected optional key that is absent
              on a row stays absent. `400` when passed more than once, when
              empty, or when it names an unknown key (the error names it and
              lists the allowed ones).
          required: false
          description: >-
            Comma-separated list of the resource's top-level keys to return (per
            element for a list), e.g. `id,name`; omit for the full body.
            Top-level only; whitespace is trimmed and duplicates count once.
            `fields` never adds keys: a selected optional key that is absent on
            a row stays absent. `400` when passed more than once, when empty, or
            when it names an unknown key (the error names it and lists the
            allowed ones).
          name: fields
          in: query
      responses:
        '200':
          description: Evidence documents
          content:
            application/json:
              schema:
                type: object
                properties:
                  evidence:
                    type: array
                    items:
                      $ref: '#/components/schemas/EvidenceDocument'
                    description: The live evidence documents of the supplier article.
                required:
                  - evidence
              example:
                evidence:
                  - id: 8d2c6f0a-3e95-4a78-b1d4-9f0e5a3c7b62
                    supplierArticleId: 2e8f6a3c-9d17-4b52-8c4a-7f1e3d9b0a65
                    supplierId: 5a1d8c3e-7f24-4b9a-a6e0-1c3f5b8d2e94
                    fileName: harvest-licence-2025.pdf
                    fileSize: 482113
                    mimeType: application/pdf
                    evidenceType: legal_compliance
                    sourceType: user_upload
                    verificationStatus: auto_verified
                    supplierAuthored: false
                    uploadedAt: '2026-03-02T10:05:00.000Z'
                    validUntil: '2027-12-31T00:00:00.000Z'
                    mappings:
                      - id: 0e4a8c2d-6f71-4b39-a5c8-4d2f9b1e7a03
                        evidenceId: 8d2c6f0a-3e95-4a78-b1d4-9f0e5a3c7b62
                        supplierArticleId: 2e8f6a3c-9d17-4b52-8c4a-7f1e3d9b0a65
                        category: land_use_rights
                        documentType: land_rights
                        countryCode: BR
                        status: accepted
                        confidence: 0.9
                        decidedAt: '2026-03-02T10:07:00.000Z'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalError'
components:
  schemas:
    EvidenceDocument:
      type: object
      properties:
        id:
          type: string
          description: UUID of the evidence document.
        supplierArticleId:
          type: string
          description: UUID of the supplier article the document is attached to.
        supplierId:
          type:
            - string
            - 'null'
          description: UUID of the supplier, or `null`.
        fileName:
          type: string
          description: File name.
        fileSize:
          type: number
          description: File size in bytes.
        mimeType:
          type: string
          description: MIME type of the file.
        evidenceType:
          type: string
          description: '`legal_compliance`, `geo_compliance` or `questionnaire`.'
        sourceType:
          type: string
          description: 'How the document arrived: `user_upload`, `api` or `email_ingest`.'
        verificationStatus:
          type: string
          description: '`unverified`, `auto_verified`, `manually_verified` or `rejected`.'
        supplierAuthored:
          type: boolean
          description: >-
            `true` when the supplier provided the document themselves (supplier
            portal or invitation link); `false` for documents your company
            uploaded.
        uploadedAt:
          type: string
          description: When the document was uploaded (ISO 8601, UTC).
        validUntil:
          type:
            - string
            - 'null'
          description: Expiry date of the document when known (ISO 8601, UTC), or `null`.
        mappings:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                description: UUID of the mapping.
              evidenceId:
                type: string
                description: UUID of the evidence document.
              supplierArticleId:
                type: string
                description: UUID of the supplier article the mapping applies to.
              category:
                type:
                  - string
                  - 'null'
                description: >-
                  EUDR legal category the document was mapped to (e.g.
                  `land_use_rights`), or `null`.
              documentType:
                type:
                  - string
                  - 'null'
                description: >-
                  Type of legal document recognised (e.g. `land_rights`,
                  `environmental_permit`), or `null`.
              countryCode:
                type: string
                description: >-
                  Country the mapping applies to, ISO 3166-1 alpha-2; empty
                  string when not country-specific.
              status:
                type: string
                description: >-
                  `proposed` (suggested by the analysis), `accepted` or
                  `rejected`.
              confidence:
                type:
                  - number
                  - 'null'
                description: Confidence of the analysis in this mapping, or `null`.
              decidedAt:
                type:
                  - string
                  - 'null'
                description: >-
                  When the mapping was accepted or rejected (ISO 8601, UTC), or
                  `null`.
            required:
              - id
              - evidenceId
              - supplierArticleId
              - category
              - documentType
              - countryCode
              - status
              - confidence
              - decidedAt
          description: >-
            How the document was mapped to legal categories for this supplier
            article.
      required:
        - id
        - supplierArticleId
        - supplierId
        - fileName
        - fileSize
        - mimeType
        - evidenceType
        - sourceType
        - verificationStatus
        - supplierAuthored
        - uploadedAt
        - validUntil
        - mappings
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: >-
            Human-readable message, or a stable machine key (e.g.
            `batchTooLarge`, `overwriteRequired`, `duplicate`) on the batch,
            PPWR and upload endpoints.
        code:
          type: string
          description: >-
            Stable machine code on some `400` and `409` answers, e.g.
            `plot_geometry_invalid` or `FORK_HAS_ORDER`. Match on it rather than
            on `error`. Further flat keys may accompany it (e.g.
            `precisionDigits`, `field`).
        details:
          type: array
          items:
            $ref: '#/components/schemas/ValidationIssue'
          description: The validation issues on a `400` validation error.
        warnings:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                  - duplicateName
                  - duplicateEan
                description: >-
                  `duplicateName`: a live article of your company already has
                  this name. `duplicateEan`: a live article already has this
                  EAN.
              existingInternalArticleNr:
                type: string
                description: >-
                  `duplicateName` only: internal article number of the existing
                  article.
              existingArticleName:
                type: string
                description: '`duplicateEan` only: name of the existing article.'
            required:
              - type
          description: >-
            `POST /articles` `409` only: soft duplicate warnings. Resend with
            `acknowledgeWarnings: true` to create the article anyway.
      required:
        - error
      additionalProperties: {}
      description: >-
        Error body of every endpoint except the `429` the edge answers. Some
        errors add flat machine-readable keys next to `error`, e.g.
        `maxBatchSize` on `413 batchTooLarge` or `confirmUpdateCount` on `409
        overwriteRequired`.
    RateLimitedResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - rate_limited
              description: Always `rate_limited`.
            message:
              type: string
              description: Human-readable explanation.
          required:
            - code
            - message
          description: Unlike every other error body, `error` is an object here.
      required:
        - error
    ValidationIssue:
      type: object
      properties:
        code:
          type: string
          description: >-
            Machine code of the issue, e.g. `invalid_type`, `too_small`,
            `custom`.
        path:
          type: array
          items:
            anyOf:
              - type: string
              - type: number
          description: >-
            Location of the offending value in the request: object keys and
            0-based array positions.
        message:
          type: string
          description: >-
            Human-readable English explanation. The wording may change; match on
            `code` and `path`.
      required:
        - code
        - path
        - message
      additionalProperties: {}
      description: >-
        One validation issue. Issue-specific keys (e.g. `expected`, `minimum`)
        may accompany the three listed.
  responses:
    BadRequest:
      description: Invalid request data
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error: Validation failed
            details:
              - origin: string
                code: too_small
                minimum: 1
                inclusive: true
                path:
                  - address
                  - street
                message: Address is required.
    Unauthorized:
      description: Invalid or expired API key, or the key's user account is not active.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error: Invalid or expired API key
    Forbidden:
      description: Insufficient permissions for this resource
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error: Forbidden
    TooManyRequests:
      description: >-
        Rate limit exceeded: currently 1000 requests per 60 seconds per client
        IP across all `/api` paths. Issued by the edge before the application
        runs, so the JSON body differs from every other error: `error` is an
        object. A `429` with an HTML body instead of JSON means the request
        carried no API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RateLimitedResponse'
          example:
            error:
              code: rate_limited
              message: …
    InternalError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error: Internal server error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        API key generated in Settings > API Keys. Include as `Authorization:
        Bearer <key>`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.