Open API Definition des APIs
CODE
openapi: 3.0.3
info:
x-audience: external-partner
x-api-id: 9918a8e2-8b36-4a5d-b700-5a31eea91ab7
title: Product Data API
version: 1.4.1
description: |
Partner API to retrieve product and category data.
**Features**
- List all categories or fetch a category (and its ancestors) by ID.
- List product metadata with pagination and filtering.
- Fetch a product by ID and choose which sections to include via `select`.
- Fetch ETIM-compliant product data by ID.
contact:
name: Lene Sand
email: lsand@danfoss.com
url: https://danfoss.com
x-service-name: ComposableCommerce.ProductDataExportApi
servers:
- url: 'https://api.danfoss.com/product-data'
description: Local testing
x-internal: true
tags:
- name: categories
description: Category listing and lookup
- name: products
description: Product metadata and details
paths:
/products:
get:
summary: Get products
description: |
Returns product metadata (ID, name, description, category IDs, `modified_at`).
- Default page size is up to **1000 items**. Use `continuation_token` for pagination.
- Filter by `modified_after` and/or by one or more `categories`.
operationId: getProducts
tags: [products]
parameters:
- in: query
name: continuation_token
description: Opaque token to retrieve the next page.
required: false
schema:
type: string
example: "eyJwYWdlIjoyfQ=="
- $ref: '#/components/parameters/languages'
- in: query
name: modified_after
description: Return products modified strictly after this timestamp (UTC).
required: false
schema:
type: string
format: date-time
example: '2024-11-29T12:13:13Z'
- in: query
name: categories
description: Filter by one or more category IDs.
required: false
style: form
explode: false
schema:
type: array
items: {type: string}
example: ["CFHPowerSolutions", "CFH_5"]
security:
- oAuth2: [app.products.read]
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
result:
$ref: '#/components/schemas/ParallelQueryResult'
examples:
firstPage:
value:
result:
continuation_token: "2ae1567e-9d01-6950-13b5-91683e491d8a"
products:
- product_id: "1JB-06-04WDL43Z"
name:
- language: "en"
value: "Adapter-STR,1JB-WD,-6-4,CS,NBR,Z"
description: []
category_ids:
- "CFH_2979339"
modified_at: "2025-11-19T09:01:35Z"
nextPage:
value:
result:
continuation_token: "test"
products: []
default:
description: Error
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
/products/{product-id}:
parameters:
- name: product-id
in: path
required: true
description: Product ID
schema:
type: string
get:
summary: Get product by ID
description: |
Returns product information. If `select` is omitted, only **`productdetails`** are returned.
**Available `select` values** (comma-separated):
- `productdetails`
- `accessories`
- `document`
- `approval`
- `photo`
- `drawing`
- `software`
- `operationaldata`
- `spareparts`
- `packaging`
- `catalogstructure`
- `services`
**Note:** `ean_upc` contains **EAN** for Europe or **UPC** for the USA.
operationId: getProductById
tags: [products]
parameters:
- in: query
name: select
description: |
Sections to include in the response.
**Available Options**: <br/>
- `productdetails`: Basic product information (name, description, dimensions...). <br/>
- `accessories`: List of accessory IDs related to the product. <br/>
- `document`: List of document assets (application guides, brochures...). <br/>
- `approval`: List of regulatory documents (certificates, EU declarations...). <br/>
- `photo`: List of assets related to the product. <br/>
- `drawing`: List of drawings (CAD, dimensional...). <br/>
- `software`: List of software/firmware files related to the product. <br/>
- `operationaldata`: Information like plants, commodity codes, country of origin... <br/>
- `spareparts`: List of spare parts IDs for the product. <br/>
- `packaging`: Format and quantity of the product. <br/>
- `catalogstructure`: Include category data of the product (parent_categories). <br/>
- `services` : List of services IDs related to the product.
required: false
style: form
explode: false
schema:
type: array
default: [productdetails]
items:
type: string
enum:
- productdetails
- accessories
- document
- approval
- photo
- drawing
- software
- operationaldata
- spareparts
- packaging
- catalogstructure
- services
example: [productdetails, photo, packaging]
- $ref: '#/components/parameters/languages'
security:
- oAuth2: [app.products.read]
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
result:
$ref: '#/components/schemas/Product'
examples:
withSelect:
value:
result:
id: "4S20CT16"
customer_product_id: ""
name:
- language: "en"
value: "HOSE FTG, 4S/16, CATFL/20, -S"
status: "For sale"
ean_upc: "813688022666"
volume: "0.000"
gross_weight: "0.686"
net_weight: "0.686"
weight_unit: "KGM"
base_unit_of_measure:
- id: "PCE"
value: "Piece"
language: "en"
specifications:
- id: "ATT_12375571"
name:
- language: "en"
value: "End type 1"
unit: []
values:
- id: "2ed2a8ebe25373d9caa21dbdab4f14bb"
language: "en"
value: "Caterpillar flange"
- id: "ATT_15290808.NOMINAL"
name:
- language: "en"
value: "Product length in"
unit: []
values:
- id: null
language: "en"
value: "4.200"
- id: "ATT_15290807.NOMINAL"
name:
- language: "en"
value: "Product length mm"
unit: []
values:
- id: null
language: "en"
value: "106.680"
- id: "ATT_12375643.NOMINAL"
name:
- language: "en"
value: "Working temperature max C"
unit: []
values:
- id: null
language: "en"
value: "100"
asset_groups:
- type: "DRAWINGS"
assets:
- asset_id: "ID463221780261-0101"
is_preferred: false
url:
- value: "https://assets-qa.assethub.danfoss.com/drawings/latest/351065/ID463221780261-0101.jpg"
name:
- language: "en"
value: "Danfoss 4S Series Crimp Hose Fittings CAT Flange 4SXXCT16 (RIGHT)"
type_definition:
- language: "en"
value: "Photorealistic rendered drawing"
languages: []
- asset_id: "ID463221780259-0101"
is_preferred: false
url:
- value: "https://assets-qa.assethub.danfoss.com/drawings/latest/351051/ID463221780259-0101.jpg"
name:
- language: "en"
value: "Danfoss 4S Series Crimp Hose Fittings CAT Flange 4SXXCT16 (CENTER)"
type_definition:
- language: "en"
value: "Photorealistic rendered drawing"
languages: []
- asset_id: "ID463221780260-0101"
is_preferred: false
url:
- value: "https://assets-qa.assethub.danfoss.com/drawings/latest/351058/ID463221780260-0101.jpg"
name:
- language: "en"
value: "Danfoss 4S Series Crimp Hose Fittings CAT Flange 4SXXCT16 (LEFT)"
type_definition:
- language: "en"
value: "Photorealistic rendered drawing"
languages: []
- asset_id: "ID525354407898-0101"
is_preferred: false
url:
- value: "https://assets-qa.assethub.danfoss.com/drawings/latest/485624/ID525354407898-0101.stp"
name:
- language: "en"
value: "Hose fitting 4S20CT16 STP"
type_definition:
- language: "en"
value: "3D model"
languages: []
operational_data:
sales_country: "USA"
branch_codes: []
delivery_unit: "1"
country_of_origin: "USA"
commodity_code: "732690"
sales_unit: []
local_replacement_products: []
parent_categories: "CFH_2979143"
replacement_products: []
minimal:
value:
result:
id: "P-4S20CT16"
status: "For sale"
ean_upc: "813688022666"
parent_categories: "CFH_2979143"
'400':
$ref: '#/components/responses/Bad_Request'
'default':
$ref: '#/components/responses/Default_Error'
/products/{ProductId}/etim:
parameters:
- name: ProductId
in: path
required: true
description: Product ID
schema:
type: string
get:
summary: Get ETIM product data by ID
description: "Returns product information in ETIM-compliant format for standardized product data exchange.\n\nETIM (European Technical Information Model) is a standardized classification and description system for technical products.\nThis endpoint provides comprehensive product data including:\n- Product identification and details\n- ETIM classifications and features \n- Trade item information\n- Product relations (accessories, spare parts, etc.)\n- Asset attachments and documentation\n"
operationId: getEtimProductById
tags: [products]
parameters:
- $ref: '#/components/parameters/Languages'
security:
- oAuth2: [app.products.read]
responses:
'200':
description: Successful response with ETIM-compliant product data
content:
application/json:
schema:
$ref: '#/components/schemas/EtimCatalog'
examples:
etimProduct:
value:
GenerationDate: "2024-01-15"
Language: ["en-HQ", "de-DE"]
CatalogueId: "Danfoss"
CatalogueVersion: "2.0"
SchemaVersion: "2.0"
Country: ["DE"]
CurrencyCode: "EUR"
CatalogueValidityStart: "2024-01-15"
CatalogueType: "FULL"
CatalogueName:
- Language: "en-HQ"
CatalogueName: "Danfoss"
- Language: "de-DE"
CatalogueName: "Danfoss"
Supplier:
- SupplierName: "Danfoss"
SupplierIdGln: "5714281"
SupplierIdDuns: "305482259"
Product:
- ProductIdentification:
ManufacturerName: "Danfoss"
ManufacturerProductNumber: "4S20CT16"
ProductGtin: ["813688022666"]
CustomsCommodityCode: "12345"
CountryOfOrigin: ["DE"]
ProductDetails:
ProductStatus: "ACTIVE"
ProductType: "PHYSICAL"
ProductDescriptions:
- DescriptionLanguage: "en-HQ"
MinimalProductDescription: "HOSE FTG, 4S/16, CATFL/20, -S"
FullProductDescription: "Hose fitting with Caterpillar flange connection"
EtimClassification:
- EtimReleaseVersion: "9.0"
EtimClassCode: "EC123456"
EtimFeatures:
- EtimFeatureCode: "TestFeature"
EtimValueCode: "EV001"
TradeItem:
- ItemIdentification:
SupplierItemNumber: "4S20CT16"
Ordering:
OrderUnit: "PCS"
MinimumOrderQuantity: "1"
UseUnitConversionFactor: "1"
OrderStepSize: "1"
ItemLogisticDetails:
- BaseItemNetVolume: "10.5"
NetVolumeUnit: "L"
BaseItemNetWeight: "2.5"
NetWeightUnit: "kg"
ProductRelations:
- RelationType: "ACCESSORY"
RelatedProducts:
- RelatedManufacturerProductNumber: "ACC001"
ProductAttachments:
- AttachmentType: "ATX003"
AttachmentTypeSpecification: "MDX014"
AttachmentDetails:
- AttachmentUri: "https://example.com/document.pdf"
AttachmentDescription:
- Language: "en-HQ"
AttachmentDescription: "Product Documentation"
'400':
$ref: '#/components/responses/Bad_Request'
'default':
$ref: '#/components/responses/Default_Error'
/categories:
get:
summary: Get categories
description: |
Returns all categories.
- Use `modified_after` to return only categories changed since a timestamp.
operationId: getCategories
tags: [categories]
parameters:
- $ref: '#/components/parameters/languages'
- in: query
name: modified_after
description: Return categories modified strictly after this timestamp (UTC) - Times are ISO-8601 UTC (`yyyy-mm-ddThh:mm:ssZ`)
required: false
schema:
type: string
format: date-time
example: '2024-11-29T12:13:13Z'
security:
- oAuth2: [app.categories.read]
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
result:
type: array
items:
$ref: '#/components/schemas/Category'
examples:
example:
value:
result:
- id: "CFHPowerSolutions"
name:
- language: "en"
value: "Power Solutions"
parent_id: null
modified_at: "2025-07-17T12:49:14Z"
parent_ids: []
image: "https://assets.danfoss.com/photos/preview/latest/202933/ID418237295332-0101.jpg"
default:
$ref: '#/components/responses/UnexpectedError'
/categories/{category-id}:
parameters:
- name: category-id
in: path
required: true
description: Category ID (eg. CFHPowerSolutions, CFH_5, ..)
schema:
type: string
get:
summary: Get category by ID
description: |
Returns the selected category and its parent chain up to the root.
operationId: getCategoryById
tags: [categories]
parameters:
- $ref: '#/components/parameters/languages'
security:
- oAuth2: [app.categories.read]
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
result:
type: array
items:
$ref: '#/components/schemas/Category'
examples:
example:
value:
result:
- id: "CFHPowerSolutions"
name:
- language: "en"
value: "Power Solutions"
parent_id: null
modified_at: "2025-07-17T12:49:14Z"
parent_ids: []
image: "https://assets.danfoss.com/photos/preview/latest/202933/ID418237295332-0101.jpg"
- id: "CFH_5"
name:
- language: "en"
value: "Hoses and fittings"
parent_id: "CFHPowerSolutions"
modified_at: "2025-07-17T12:49:14Z"
parent_ids:
- "CFHPowerSolutions"
image: "https://assets.danfoss.com/drawings/preview/latest/239459/ID444072281976-0101.jpg"
- id: "CFH_2979052"
name:
- language: "en"
value: "Hydraulic hose and fittings"
parent_id: "CFH_5"
modified_at: "2025-07-17T12:49:14Z"
parent_ids:
- "CFH_5"
- "CFHPowerSolutions"
image: "https://assets.danfoss.com/drawings/preview/latest/245902/ID448258281565-0101.jpg"
- id: "CFH_5476797"
name:
- language: "en"
value: "Braided hose and fittings"
parent_id: "CFH_2979052"
modified_at: "2025-07-17T12:49:14Z"
parent_ids:
- "CFH_2979052"
- "CFH_5"
- "CFHPowerSolutions"
image: "https://assets.danfoss.com/drawings/preview/latest/245907/ID448259883570-0101.jpg"
default:
$ref: '#/components/responses/UnexpectedError'
components:
securitySchemes:
oAuth2:
type: oauth2
flows:
clientCredentials:
tokenUrl: 'https://api.danfoss.com/oauth2/token'
scopes:
app.products.read: ''
app.categories.read: ''
schemas:
Error:
type: object
required:
- type
- title
- status
properties:
type:
type: string
format: uri
description: URI that identifies the problem type.
default: 'about:blank'
example: 'https://developer.danfoss.com/error-code-reference#token-or-client-authentication-credentials-missing'
title:
type: string
description: A short, human-readable summary of the problem type
default: Error
example: Bad request
status:
type: integer
format: int32
description: The HTTP status code generated by the origin server for this occurrence of the problem.
minimum: 100
maximum: 600
exclusiveMaximum: true
example: 400
detail:
type: string
default: Error
description: Detailed explanation specific to this occurrence of the problem. Can be json string.
example: Error response from target.
message_id:
type: string
description: Unique error message id.
example: rrt-7125511224420475346-b-geu1-6562-8730625-1
Category:
title: Category
type: object
properties:
id:
type: string
name:
type: array
items:
$ref: '#/components/schemas/LocalizedValue'
parent_id:
type: string
nullable: true
modified_at:
type: string
format: date-time
example: '2024-11-29T12:13:13Z'
parent_ids:
type: array
description: All ancestor category IDs up to the root.
items:
type: string
image:
type: string
nullable: true
ProductMetadata:
title: ProductMetadata
type: object
properties:
product_id:
type: string
name:
type: array
items:
$ref: '#/components/schemas/LocalizedValue'
description:
type: array
items:
$ref: '#/components/schemas/LocalizedValue'
category_ids:
type: array
items:
type: string
modified_at:
type: string
format: date-time
example: '2024-11-29T12:13:13Z'
Product:
title: Product
type: object
properties:
id:
type: string
customer_product_id:
type: string
nullable: true
name:
type: array
nullable: true
items:
$ref: '#/components/schemas/LocalizedValue'
status:
type: string
ean_upc:
type: string
nullable: true
description: Contains **EAN** (EU) or **UPC** (US).
volume:
type: string
nullable: true
volume_unit:
type: string
nullable: true
gross_weight:
type: string
nullable: true
net_weight:
type: string
nullable: true
weight_unit:
type: string
nullable: true
parent_categories:
type: string
nullable: true
description: Comma-separated category IDs for this product.
base_unit_of_measure:
type: array
nullable: true
items:
$ref: '#/components/schemas/LocalizedValueWithId'
specifications:
type: array
nullable: true
items:
$ref: '#/components/schemas/ProductSpecification'
replacement_products:
type: array
nullable: true
items:
$ref: '#/components/schemas/EntityId'
packagings:
type: array
nullable: true
items:
$ref: '#/components/schemas/ProductPackaging'
accessories:
type: array
nullable: true
items:
$ref: '#/components/schemas/EntityId'
asset_groups:
type: array
nullable: true
items:
$ref: '#/components/schemas/ProductAssetType'
operational_data:
$ref: '#/components/schemas/ProductSalesData'
spare_parts:
type: array
nullable: true
items:
$ref: '#/components/schemas/EntityId'
services:
type: array
nullable: true
items:
$ref: '#/components/schemas/EntityId'
EtimCatalog:
title: EtimCatalog
type: object
description: ETIM-compliant catalog structure containing product data
properties:
GenerationDate:
type: string
description: Date when the catalog was generated (YYYY-MM-DD format)
example: "2024-01-15"
Language:
type: array
description: Array of language codes supported in this catalog
items:
type: string
example: ["en-HQ", "de-DE"]
CatalogueId:
type: string
description: Unique identifier for the catalog
example: "Danfoss"
CatalogueVersion:
type: string
description: Version of the catalog
example: "2.0"
SchemaVersion:
type: string
description: Version of the ETIM schema used
example: "2.0"
Country:
type: array
description: Array of country codes this catalog applies to
items:
type: string
example: ["DE"]
CurrencyCode:
type: string
description: Currency code used in the catalog
example: "EUR"
CatalogueValidityStart:
type: string
description: Start date of catalog validity (YYYY-MM-DD format)
example: "2024-01-15"
CatalogueType:
type: string
description: Type of catalog (e.g., FULL, DELTA)
example: "FULL"
CatalogueName:
type: array
description: Localized names of the catalog
items:
$ref: '#/components/schemas/EtimCatalogName'
Supplier:
type: array
description: Array of suppliers in the catalog
items:
$ref: '#/components/schemas/EtimCatalogSupplier'
EtimCatalogName:
title: EtimCatalogName
type: object
properties:
Language:
type: string
description: Language code
example: "en-HQ"
CatalogueName:
type: string
description: Name of the catalog in the specified language
example: "Danfoss"
EtimCatalogSupplier:
title: EtimCatalogSupplier
type: object
properties:
SupplierName:
type: string
description: Name of the supplier
example: "Danfoss"
SupplierIdGln:
type: string
description: Global Location Number (GLN) of the supplier
example: "5714281"
SupplierIdDuns:
type: string
description: Data Universal Numbering System (DUNS) number
example: "305482259"
Product:
type: array
description: Array of products from this supplier
items:
$ref: '#/components/schemas/EtimCatalogProduct'
EtimCatalogProduct:
title: EtimCatalogProduct
type: object
description: ETIM-compliant product information
properties:
ProductIdentification:
$ref: '#/components/schemas/EtimProductIdentification'
ProductDetails:
$ref: '#/components/schemas/EtimProductDetails'
EtimClassification:
type: array
description: ETIM classification information
items:
$ref: '#/components/schemas/EtimClassification'
TradeItem:
type: array
description: Trade item information
items:
$ref: '#/components/schemas/EtimTradeItem'
ProductRelations:
type: array
description: Product relationships (accessories, spare parts, etc.)
items:
$ref: '#/components/schemas/EtimProductRelation'
ProductAttachments:
type: array
description: Product attachments and documentation
items:
$ref: '#/components/schemas/EtimProductAttachment'
EtimClassification:
title: EtimClassification
type: object
properties:
EtimReleaseVersion:
type: string
description: Version of ETIM release
example: "9.0"
EtimClassCode:
type: string
description: ETIM class code
example: "EC123456"
EtimFeatures:
type: array
description: Array of ETIM features
items:
$ref: '#/components/schemas/EtimFeature'
EtimFeature:
title: EtimFeature
type: object
properties:
EtimFeatureCode:
type: string
description: ETIM feature code
example: "TestFeature"
EtimValueCode:
type: string
nullable: true
description: ETIM value code (if applicable)
example: "EV001"
EtimValueDetails:
type: array
nullable: true
description: Multi-language value details
items:
$ref: '#/components/schemas/EtimFeatureValueDetails'
EtimValueLogical:
type: boolean
nullable: true
description: Boolean value (if applicable)
EtimValueNumeric:
type: string
nullable: true
description: Numeric value (if applicable)
example: "123.45"
EtimValueRangeLower:
type: string
nullable: true
description: Lower bound of numeric range (if applicable)
example: "10.00"
EtimValueRangeUpper:
type: string
nullable: true
description: Upper bound of numeric range (if applicable)
example: "20.00"
EtimFeatureValueDetails:
title: EtimFeatureValueDetails
type: object
properties:
Language:
type: string
description: Language code
example: "en-HQ"
EtimValueDetails:
type: string
description: Value in the specified language
example: "Test Value"
EtimTradeItem:
title: EtimTradeItem
type: object
properties:
Pricing:
type: array
nullable: true
description: Pricing information
items:
$ref: '#/components/schemas/EtimTradeItemPricing'
Ordering:
$ref: '#/components/schemas/EtimTradeItemOrdering'
ItemIdentification:
$ref: '#/components/schemas/EtimTradeItemIdentification'
ItemLogisticDetails:
type: array
description: Logistic details
items:
$ref: '#/components/schemas/EtimTradeItemLogisticDetails'
PackagingUnit:
type: array
nullable: true
description: Packaging units
items:
$ref: '#/components/schemas/EtimPackagingUnit'
EtimTradeItemPricing:
title: EtimTradeItemPricing
type: object
properties:
PriceUnit:
type: string
description: Price unit
PriceQuantity:
type: string
description: Price quantity
NetPrice:
type: string
nullable: true
description: Net price
Vat:
type: string
description: VAT information
GrossListPrice:
type: string
nullable: true
description: Gross list price
AllowanceSurcharge:
type: array
nullable: true
items:
$ref: '#/components/schemas/EtimAllowanceSurcharge'
EtimAllowanceSurcharge:
title: EtimAllowanceSurcharge
type: object
properties:
AllowanceSurchargeIndicator:
type: string
AllowanceSurchargeType:
type: string
AllowanceSurchargeAmount:
type: string
EtimTradeItemOrdering:
title: EtimTradeItemOrdering
type: object
properties:
OrderUnit:
type: string
description: Unit for ordering
example: "PCS"
MinimumOrderQuantity:
type: string
description: Minimum order quantity
example: "1"
UseUnitConversionFactor:
type: string
description: Unit conversion factor
example: "1"
OrderStepSize:
type: string
description: Order step size
example: "1"
EtimTradeItemIdentification:
title: EtimTradeItemIdentification
type: object
properties:
SupplierItemNumber:
type: string
description: Supplier item number
example: "4S20CT16"
EtimTradeItemLogisticDetails:
title: EtimTradeItemLogisticDetails
type: object
properties:
BaseItemNetVolume:
type: string
nullable: true
description: Net volume of the item
example: "10.5"
NetVolumeUnit:
type: string
nullable: true
description: Unit for net volume
example: "L"
BaseItemNetWeight:
type: string
nullable: true
description: Net weight of the item
example: "2.5"
NetWeightUnit:
type: string
nullable: true
description: Unit for net weight
example: "kg"
EtimPackagingUnit:
title: EtimPackagingUnit
type: object
properties:
PackagingIdentification:
$ref: '#/components/schemas/EtimPackagingIdentification'
PackagingLogisticDetails:
type: array
items:
$ref: '#/components/schemas/EtimPackagingLogisticDetails'
EtimPackagingIdentification:
title: EtimPackagingIdentification
type: object
properties:
PackagingTypeCode:
type: string
description: Packaging type code
example: "PI"
PackagingQuantity:
type: string
description: Packaging quantity
example: "10"
EtimPackagingLogisticDetails:
title: EtimPackagingLogisticDetails
type: object
properties:
PackagingTypeWeightUnit:
type: string
nullable: true
description: Weight unit for packaging
PackagingTypeWeight:
type: string
nullable: true
description: Weight of packaging
PackagingTypeDimensionUnit:
type: string
nullable: true
description: Dimension unit for packaging
PackagingTypeLength:
type: string
nullable: true
description: Length of packaging
PackagingTypeHeight:
type: string
nullable: true
description: Height of packaging
PackagingTypeWidth:
type: string
nullable: true
description: Width of packaging
EtimProductRelation:
title: EtimProductRelation
type: object
properties:
RelationType:
type: string
description: Type of relation
example: "ACCESSORY"
RelatedProducts:
type: array
description: Array of related products
items:
$ref: '#/components/schemas/EtimRelatedProduct'
EtimRelatedProduct:
title: EtimRelatedProduct
type: object
properties:
RelatedManufacturerProductNumber:
type: string
description: Product number of related product
example: "ACC001"
EtimProductAttachment:
title: EtimProductAttachment
type: object
properties:
AttachmentType:
type: string
description: Type of attachment
example: "ATX003"
AttachmentTypeSpecification:
type: string
nullable: true
description: Specification of attachment type
example: "MDX014"
AttachmentDetails:
type: array
description: Attachment details
items:
$ref: '#/components/schemas/EtimProductAttachmentDetails'
EtimProductAttachmentDetails:
title: EtimProductAttachmentDetails
type: object
properties:
AttachmentUri:
type: string
description: URI of the attachment
example: "https://example.com/document.pdf"
AttachmentDescription:
type: array
description: Description in multiple languages
items:
$ref: '#/components/schemas/EtimProductAttachmentDescription'
EtimProductAttachmentDescription:
title: EtimProductAttachmentDescription
type: object
properties:
Language:
type: string
description: Language code
example: "en-HQ"
AttachmentDescription:
type: string
description: Description of the attachment
example: "Product Documentation"
EtimProductIdentification:
title: EtimProductIdentification
type: object
properties:
ManufacturerName:
type: string
description: Name of the manufacturer
example: "Danfoss"
ManufacturerProductNumber:
type: string
description: Product number assigned by manufacturer
example: "4S20CT16"
ProductGtin:
type: array
description: Global Trade Item Numbers
items:
type: string
example: ["813688022666"]
CustomsCommodityCode:
type: string
description: Customs commodity code
example: "12345"
CountryOfOrigin:
type: array
description: Names of the countries of origin
items:
type: string
example: ["DE"]
EtimProductDetails:
title: EtimProductDetails
type: object
properties:
ProductStatus:
type: string
description: Status of the product
example: "ACTIVE"
ProductType:
type: string
description: Type of product
example: "PHYSICAL"
ProductDescriptions:
type: array
description: Product descriptions in different languages
items:
$ref: '#/components/schemas/EtimProductDescription'
EtimProductDescription:
title: EtimProductDescription
type: object
properties:
DescriptionLanguage:
type: string
description: Language code for the description
example: "en-HQ"
MinimalProductDescription:
type: string
description: Short product description (max 80 characters)
example: "HOSE FTG, 4S/16, CATFL/20, -S"
FullProductDescription:
type: string
nullable: true
description: Full product description
example: "Hose fitting with Caterpillar flange connection"
LocalizedValueWithId:
title: BaseUnitOfMeasure
type: object
properties:
id: {type: string}
value: {type: string}
language: {type: string}
ProductSpecification:
title: ProductSpecification
type: object
properties:
id:
type: string
nullable: true
name:
type: array
nullable: true
items:
$ref: '#/components/schemas/SpecificationNameLocalizedValue'
unit:
type: array
nullable: true
items:
$ref: '#/components/schemas/SpecificationNameLocalizedValue'
values:
type: array
nullable: true
items:
$ref: '#/components/schemas/ProductSpecificationValue'
SpecificationNameLocalizedValue:
title: SpecificationNameLocalizedValue
type: object
properties:
language:
type: string
nullable: true
description: Language code (e.g., `en`, `de`, `fr`).
value:
type: string
nullable: true
ProductSpecificationValue:
title: ProductSpecificationValue
type: object
properties:
id:
type: string
nullable: true
language:
type: string
nullable: true
description: Language code (e.g., `en`, `de`, `fr`).
value:
type: string
nullable: true
ProductPackaging:
title: ProductPackaging
type: object
properties:
format:
type: string
quantity:
type: string
weight:
type: number
format: decimal
weight_unit:
type: string
height:
type: number
format: decimal
height_unit:
type: string
width:
type: number
format: decimal
width_unit:
type: string
length:
type: number
format: decimal
length_unit:
type: string
ProductAssetType:
title: ProductAssetType
type: object
properties:
type: {type: string}
assets:
type: array
items:
$ref: '#/components/schemas/ProductAssetInformation'
ProductAssetInformation:
title: ProductAssetInformation
type: object
properties:
asset_id: {type: string}
is_preferred: {type: boolean}
url:
type: array
items:
$ref: '#/components/schemas/AssetUrl'
name:
type: array
items:
$ref: '#/components/schemas/LocalizedValue'
type_definition:
type: array
items:
$ref: '#/components/schemas/LocalizedValue'
languages:
type: array
items:
$ref: '#/components/schemas/AssetLanguage'
AssetUrl:
title: AssetUrl
type: object
properties:
value: {type: string}
AssetLanguage:
title: AssetLanguage
type: object
properties:
language:
type: string
description: Language code (e.g., `en`, `de`, `fr`).
ProductSalesData:
title: ProductSalesData
nullable: true
type: object
properties:
sales_country:
type: string
nullable: true
branch_codes:
type: array
nullable: true
items:
$ref: '#/components/schemas/BranchCode'
delivery_unit:
type: string
nullable: true
country_of_origin:
type: string
nullable: true
commodity_code:
type: string
nullable: true
sales_unit:
type: array
nullable: true
items:
$ref: '#/components/schemas/LocalizedValue'
local_replacement_products:
type: array
nullable: true
items:
$ref: '#/components/schemas/EntityId'
BranchCode:
title: BranchCode
type: object
properties:
id: {type: string}
code: {type: string}
LocalizedValue:
title: LocalizedValue
type: object
properties:
language:
type: string
description: Language code (e.g., `en`, `de`, `fr`).
value: {type: string}
EntityId:
title: EntityId
type: object
properties:
id: {type: string}
ParallelQueryResult:
title: ProductMetadataList
type: object
properties:
continuation_token:
type: string
description: Opaque token to request the next page; `null` or absent when no more pages.
products:
type: array
items:
$ref: '#/components/schemas/ProductMetadata'
responses:
UnexpectedError:
description: Unexpected Error
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
examples:
default:
value:
type: 'about:blank'
title: "Not Found"
status: 404
message-id: 'rrt-7125511224420475346-b-geu1-6562-8730625-1'
Default_Error:
description: Default Error
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
examples:
default:
value:
type: 'about:blank'
title: "Not Found"
status: 404
detail: Not Found
message-id: 'rrt-7125511224420475346-b-geu1-6562-8730625-1'
Bad_Request:
description: Bad Request
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Error'
examples:
default:
value:
type: 'about:blank'
title: Bad Request
status: 400
detail: 'error in request header, path or body'
message-id: 'rrt-7125511224420475346-b-geu1-6562-8730625-1'
parameters:
languages:
name: languages
in: query
required: false
description: |
Request translated values in selected languages.
Please note that english (`en`) will be returned in case the requested language is missing.
**Examples**
- `languages=en` (single)
- `languages=en,fr,de` (multiple)
style: form
explode: false
schema:
type: array
nullable: true
items:
type: string
default: [en]
Languages:
name: Languages
in: query
required: false
description: |
Request translated values in selected languages.
Please note that english (`en`) will be returned in case the requested language is missing.
**Examples**
- `languages=en` (single)
- `languages=en,fr,de` (multiple)
style: form
explode: false
schema:
type: array
nullable: true
items:
type: string
default: [en]