latestOpenAPI 3.0.12026-08-20112309904.6 KB

466169815b78

Suppliers - Management

Get all suppliers of the customer

⚠️ DEPRECATED - This endpoint is deprecated and will be removed at the end of December 2026.


Migration Required

This endpoint has been replaced by the v2 Supplier Management API. Please migrate to the new endpoints:

Replacement Endpoints

Old EndpointNew EndpointPurpose
GET /public/v1/suppliersGET /public/v2/suppliers/sitesList all suppliers
GET /public/v1/target/prewave/{targetId}GET /public/v2/suppliers/sites/find-by-identifier?prewaveId={targetId}Get detailed supplier by ID

Why Migrate?

The v2 API provides significant improvements:

1. Simplified Response Structure

  • v1: Returns complex PublicTargetDTO with 30+ fields including nested objects (parents, industries, collections, etc.)
  • v2: Returns PublicSupplierV2DTO with only essential fields:
    • prewaveTargetId (Int)
    • name (String)
    • address (String?)
    • city (String?)
    • countryCode (String?)
    • supplierIds (List<PublicSupplierIdentifierId>)

Example v2 Response:

{
  "content": [
    {
      "prewaveTargetId": 102006215,
      "name": "Acme Corporation",
      "address": "123 Main St, Vienna, Austria",
      "city": "Vienna",
      "countryCode": "AT",
      "supplierIds": [
        {"id": "SUP-12345", "source": "SAP"}
      ]
    }
  ]
}

2. Better Documentation

  • Comprehensive examples for all endpoints
  • Detailed error response documentation
  • Clear parameter descriptions
  • Migration guidance and best practices

3. Improved Consistency

  • Fixed alphabetical ordering (by name, then by ID) for deterministic pagination
  • Consistent response structure across all endpoints
  • Predictable behavior for integrations

4. Target ID Stability Guidance

  • Clear documentation about when target IDs may change
  • Best practices for synchronization
  • Guidance on handling target merges

5. Full CRUD Operations

  • POST /public/v2/suppliers/sites - Create suppliers
  • DELETE /public/v2/suppliers/sites - Deactivate suppliers
  • GET /public/v2/suppliers/sites/pending - Track pending creations

6. Better Performance

  • Optimized database queries
  • Reduced response payload size (typically 60-80% smaller)
  • Faster response times

Quick Migration Guide

Step 1: Update List Endpoint

Before:

GET /public/v1/suppliers?page=0&size=20

After:

GET /public/v2/suppliers/sites?page=0&size=20

Step 2: Update Response Parsing

Before: Parse complex PublicTargetDTO with nested structures

After: Parse simplified PublicSupplierV2DTO with flat structure

Step 3: Understand Sites vs Site-Groups

⚠️ Important: The v2 endpoint returns only sites (physical locations), not site-groups.

  • v1: Included both sites and site-groups
  • v2: Includes only sites (physical locations with addresses)
  • Result: Total count may be lower in v2

If you need site-group information, you may need to adjust your integration logic or contact support for guidance.

Step 4: Get Detailed Information (if needed)

If you need detailed supplier information, use the v2 search endpoint:

GET /public/v2/suppliers/sites/find-by-identifier?prewaveId={prewaveTargetId}

Breaking Changes

  1. Response Structure: The response structure is completely different. You'll need to update your response parsing logic.
  2. Field Names: Some field names have changed (e.g., idprewaveTargetId).
  3. Removed Fields: Many fields from v1 are not available in the list endpoint (use the detail endpoint if needed).
  4. Query Parameters: The hasNumber parameter is not available in v2. Filter by supplier identifiers in your application logic if needed.
  5. Sites vs Site-Groups:
    • v1: Returns both sites (physical locations/branches with addresses) and site-groups (general company owners without specific addresses)
    • v2: Returns only sites (physical locations/branches with addresses). Site-groups are excluded
    • Impact: The total number of elements returned by v2 may be lower than v1 because site-groups are excluded
    • Why: The v2 API focuses on physical supplier locations (sites) which are more relevant for most integrations

Required Permission: ACCESS_PUBLIC_SUPPLIERS

Performance Impact: Medium

For detailed migration examples and API reference, see the v2 Supplier Management API documentation.

get/public/v1/suppliers

Query parameters

hasNumberboolean

If true, only suppliers that have at least one Supplier Information Number are returned. If false, only suppliers that do not have a Supplier Information Number are returned. If not provided, all suppliers are returned.

pageinteger
sizeinteger
sortstring[]

Response

OK