Products

List supplier offers

List supplier offers for a product, optionally filtered by variant, supplier, availability or preferred status.

get/companies/{company}/products/{product}/supplier-offers

Request

  • Base URL: https://api.factuarea.com/v1
  • URL: https://api.factuarea.com/v1/companies/{company}/products/{product}/supplier-offers
  • Auth: one of:
    • HTTP bearer
    • API key in header X-API-Key

Path parameters

companystring uuid required

Public identifier (UUID v7) of the company. Get it from GET /v1/me (data.scope[].id).

productstring uuid required

Public identifier (UUID v7) of the product.

Query parameters

supplier_idstring uuid

Public identifier (UUID v7) of the supplier to filter by.

variant_idstring uuid

Public identifier (UUID v7) of the product variant to filter by.

availability'available' | 'unavailable' | 'unknown' | 'seasonal' | 'store_dependent'

Only offers with this availability: available, unavailable, unknown, seasonal or store_dependent.

preferredboolean

true returns only the preferred offer and false only the rest.

limitinteger

Number of objects to return, between 1 and 100 (default 25).

starting_afterstring uuid nullable

Cursor for forward pagination: pass the id of the last object on the previous page (the next_cursor of the previous response).

Headers

Factuarea-Versionstring date
Example:2026-06-01

Pin the API version (YYYY-MM-DD, Stripe-style date versioning) for this request; omit to use the key's pinned version, or the latest if none. Unsupported version → 400 unsupported_api_version; malformed → 400 parameter_invalid_format. The effective version is echoed in the Factuarea-Version response header. See the Versioning guide.

Response

has_moreboolean required

Whether more pages are available after this one.

next_cursorstring nullable required

Opaque cursor for the next page, or null when has_more is false. The example below shows the shape used by most listings; others return a different one, so pass the value back verbatim instead of validating it.

Example response

{
  "data": [
    {
      "id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8b20",
      "object": "supplier_product_offer",
      "product_id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a09",
      "supplier_id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a02",
      "variant_id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8b22",
      "supplier_sku": "BOD-RIOJA-SUP",
      "purchase_unit": "LTR",
      "conversion_factor": "1.000000",
      "unit_cost": "2.40",
      "currency": "EUR",
      "availability": "in_stock",
      "minimum_quantity": "50.0000",
      "lead_time_days": 3,
      "preferred": true,
      "active": true
    }
  ],
  "has_more": true,
  "next_cursor": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a0c"
}

Changes

No recorded changes to this operation across all 1 revision of this API.