Represents a finished product or other output tracked in Pulse.
For example, a specific yogurt SKU, bottled beverage, or packaged food product can be registered as a Product.
A product can optionally belong to a parent product representing its brand.
The Product object
{
"code": "PRD001",
"name": "Yogurt Strawberry 125g",
"parent": "BRAND-A",
"unit": "pcs",
"unitPrice": 1.34,
"packFormat": "CUP"
}
Fields
| Field | Type | Description | Example |
|---|---|---|---|
code |
string | Unique business code used to identify the product in external systems and integrations. | "PRD001" |
name |
string | Human-readable name of the product. | "Yogurt Strawberry 125g" |
parent |
string or null | Business code of the parent product representing the brand. | "BRAND-A" |
unit |
string | Unit used to count or measure the product. | "pcs" |
unitPrice |
number or null | Contractual selling price per product unit. | 1.34 |
packFormat |
string or null | Pack-format value code declared through Types. | "CUP" |
Important
code must be unique. Two products cannot use the same code.
When parent is provided, the referenced parent product must already exist.
When packFormat is provided, the referenced type value must already exist.
See Types and attributes for guidance on extensible master-data properties.
API resource
| Resource | Base path |
|---|---|
Product |
/manufacturing/food-beverage/v1/products |
API methods
Create a product
POST /manufacturing/food-beverage/v1/products/insert
Creates a new product.
Request
POST /manufacturing/food-beverage/v1/products/insert
Content-Type: application/json
{
"code": "PRD001",
"name": "Yogurt Strawberry 125g",
"parent": "BRAND-A",
"unit": "pcs",
"unitPrice": 1.34,
"packFormat": "CUP"
}
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
code |
string | yes | Unique business code of the product. |
name |
string | yes | Human-readable name of the product. |
parent |
string or null | no | Business code of the parent product representing the brand. |
unit |
string | yes | Unit used to count or measure the product. |
unitPrice |
number or null | no | Contractual selling price per product unit. |
packFormat |
string or null | no | Pack-format value code declared through Types. |
Update a product
PUT /manufacturing/food-beverage/v1/products/update
Updates an existing product.
Request
PUT /manufacturing/food-beverage/v1/products/update
Content-Type: application/json
{
"code": "PRD001",
"name": "Yogurt Strawberry 125g",
"parent": "BRAND-A",
"unit": "pcs",
"unitPrice": 1.39,
"packFormat": "CUP"
}
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
code |
string | yes | Unique business code of the product to update. |
name |
string | yes | Human-readable name of the product. |
parent |
string or null | no | Business code of the parent product representing the brand. |
unit |
string | yes | Unit used to count or measure the product. |
unitPrice |
number or null | no | Contractual selling price per product unit. |
packFormat |
string or null | no | Pack-format value code declared through Types. |
Patch a product
PATCH /manufacturing/food-beverage/v1/products/patch
Partially updates an existing product.
The fields to update are supplied in the properties object. The product is identified by its business code.
Request
PATCH /manufacturing/food-beverage/v1/products/patch
Content-Type: application/json
{
"properties": {
"code": "PRD001",
"unitPrice": 1.39,
"packFormat": "CUP"
}
}
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
properties |
object | yes | Fields included in the partial update. |
properties.code |
string | yes | Unique business code of the product to update. |
properties.name |
string | no | New human-readable name of the product. |
properties.parent |
string or null | no | New parent product representing the brand. |
properties.unit |
string | no | New unit used to count or measure the product. |
properties.unitPrice |
number or null | no | New contractual selling price per product unit. |
properties.packFormat |
string or null | no | New pack-format value code. |
Retrieve a product
GET /manufacturing/food-beverage/v1/products/select
Returns the product identified by its business code.
Request
GET /manufacturing/food-beverage/v1/products/select?id=PRD001
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | yes | Business code of the product to retrieve. |
Example response
{
"code": "PRD001",
"name": "Yogurt Strawberry 125g",
"parent": "BRAND-A",
"unit": "pcs",
"unitPrice": 1.34,
"packFormat": "CUP"
}
List products
GET /manufacturing/food-beverage/v1/products/query
Returns products matching the supplied filters.
Products can be filtered by code, name, parent brand, and pack format.
Request
GET /manufacturing/food-beverage/v1/products/query?parents=BRAND-A&packFormats=CUP
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
codes |
string or array of strings | no | Limits results to products with the specified business codes. |
names |
string or array of strings | no | Limits results to products with the specified names. |
parents |
string or array of strings | no | Limits results to products with the specified parent brands. |
packFormats |
string or array of strings | no | Limits results to products with the specified pack formats. |
Example response
[
{
"code": "PRD001",
"name": "Yogurt Strawberry 125g",
"parent": "BRAND-A",
"unit": "pcs",
"unitPrice": 1.34,
"packFormat": "CUP"
},
{
"code": "PRD002",
"name": "Yogurt Vanilla 125g",
"parent": "BRAND-A",
"unit": "pcs",
"unitPrice": 1.29,
"packFormat": "CUP"
}
]
Delete a product
DELETE /manufacturing/food-beverage/v1/products/delete
Deletes the product identified by its business code.
Request
DELETE /manufacturing/food-beverage/v1/products/delete?id=PRD001
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | yes | Business code of the product to delete. |