Bill of Materials

Bill of Materials AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

A Bill of Materials (BOM) defines the structured recipe of components and operations required to manufacture a finished product. Each BOM supports multiple versioned configurations, enabling engineering changes to be managed while tracking which version drives active manufacturing orders.

Download Bill of Materials OpenAPI Document

Attribute

billofmaterials_id
string
ID of the Bill of Materials. Note: This value is a set of numeric characters.
billofmaterials_name
string
Name of the Bill of Materials.
billofmaterials_number
string
BOM number. Auto-generated if not provided. Must be unique across all Bills of Materials in the organization. Required when auto-number generation is disabled. Maximum length: 50 characters.
version_id
string
ID of the currently active BOM version. Note: This value is a set of numeric characters.
version_name
string
Name of the active BOM version.
version_start_date
string
Effective start date of the active version. Date format: yyyy-MM-dd.
version_end_date
string
Effective end date of the active version. Date format: yyyy-MM-dd.
version_status
string
Status of the active version. Allowed Values: active and inactive.
status
string
Overall status of the BOM. Allowed Values: active and inactive.
finished_product_id
string
ID of the finished product this BOM produces. Must reference an active item in the organization. The same item cannot also appear in the components array (no self-reference); transitive cycles up to depth 10 are also rejected. Note: This value is a set of numeric characters.
finished_product_group_id
string
Group ID of the finished product. Must equal the group ID of the finished product item; supplying a mismatched group rejects the request. Note: This value is a set of numeric characters.
finished_product_name
string
Name of the finished product.
finished_product_sku
string
SKU of the finished product.
finished_product_quantity
double
Standard output quantity produced per BOM execution. Must be greater than 0.
unit
string
Unit of measurement for the finished product quantity. Maximum length: 120 characters.
quantity_decimal_place
string
Decimal precision for the quantity field.
description
string
Optional description of this BOM. Maximum length: 500 characters.
associated_mo_count
integer
Number of manufacturing orders currently using this BOM.
is_effective_version
boolean
Indicates whether the active version is currently in effect.
custom_fields
array
Custom field values for this BOM.
Show Sub-Attributes arrow
customfield_id
string
ID of the custom field. Note: This value is a set of numeric characters.
value
string
Value of the custom field.
custom_fields_hash
object
Key-value map of custom field labels and values.
components
array
List of components required to produce the finished product.
Show Sub-Attributes arrow
bom_component_id
string
ID of the BOM component. Note: This value is a set of numeric characters.
item_id
string
ID of the component item. Must reference an inventory item; service / non-inventory items are rejected. Components cannot recursively include the finished product, and the overall BOM depth is capped at 10 levels. Note: This value is a set of numeric characters.
name
string
Name of the component item.
item_sku
string
SKU of the component item.
description
string
Description of the component.
quantity
double
Required quantity of this component per BOM execution. Must be greater than 0.
bom_quantity
double
Quantity as defined in the BOM configuration.
has_bom
boolean
Indicates whether this component itself has an associated BOM (sub-assembly).
item_type
string
Type of the item. Allowed Values: inventory and service.
unit
string
Unit of measurement for the component quantity. Maximum length: 120 characters.
quantity_decimal_place
string
Decimal precision for the quantity field.
subassembly_bom_id
string
ID of the sub-assembly Bill of Materials, when this component is itself produced from another BOM. Note: This value is a set of numeric characters.
subassembly_bom_version_id
string
Version identifier of the sub-assembly BOM.
subassembly_bom_name
string
Name of the sub-assembly BOM.
stock_on_hand
string
Current stock on hand for this item.
available_stock
string
Available stock after accounting for commitments.
actual_available_stock
string
Actual available stock quantity.
committed_stock
string
Quantity committed to pending orders.
actual_committed_stock
string
Actual committed stock quantity.
available_for_sale_stock
string
Stock available to be sold or consumed.
actual_available_for_sale_stock
string
Actual quantity available for sale.
operations
array
List of manufacturing operations defined in this BOM.
Show Sub-Attributes arrow
bom_operation_id
string
ID of the BOM operation. Note: This value is a set of numeric characters.
operation_id
string
ID of the master operation record. Must reference an active master operation. The same operation cannot appear twice in the operations array. Note: This value is a set of numeric characters.
operation_name
string
Name of the operation.
workcenter_type_id
string
ID of the work center type assigned to this operation. Note: This value is a set of numeric characters.
workcenter_type_name
string
Name of the assigned work center type.
lead_time
string
Estimated lead time for this operation, expressed as mm:ss (minutes:seconds).
instructions
string
Instructions or notes for this operation. Maximum length: 500 characters.
documents
array
Documents attached to this operation.
blocked_by_operations
array
List of operation IDs that must be completed before this operation can start. Each ID must reference an operation present in the same BOM payload. Cyclic dependencies (operation A blocked by B and B blocked by A) are rejected. Note: Each value is a set of numeric characters.
cost_template
object
Cost template assigned to this operation, if any.
Show Sub-Attributes arrow
cost_template_id
string
ID of the cost template. Note: This value is a set of numeric characters.
cost_template_name
string
Name of the cost template.
cost_items
array
List of cost items in the cost template.
comments
array
Audit trail and user comments for this BOM.
Show Sub-Attributes arrow
comment_id
string
ID of the comment. Note: This value is a set of numeric characters.
description
string
Content of the comment.
commented_by_id
string
ID of the user who posted the comment. Note: This value is a set of numeric characters.
commented_by
string
Name of the user who posted the comment.
comment_type
string
Type of comment. Allowed Values: system and user.
date
string
Date the comment was posted. Date format: yyyy-MM-dd.
date_description
string
Relative time description (e.g., "few seconds ago").
time
string
Time the comment was posted.
operation_type
string
Operation type that triggered this comment (e.g., Added, Updated).
transaction_type
string
Entity type this comment belongs to.
versions
array
All versions associated with this BOM.
Show Sub-Attributes arrow
version_id
string
ID of the BOM version. Note: This value is a set of numeric characters.
version_name
string
Name of the BOM version.
version_status
string
Status of this version. Allowed Values: active and inactive.
version_start_date
string
Date from which this version is effective. Date format: yyyy-MM-dd.
version_end_date
string
Date until which this version is effective. Date format: yyyy-MM-dd.
created_time
string
ISO 8601 timestamp of when this version was created.
last_modified_time
string
ISO 8601 timestamp of the last modification.
created_by_id
string
ID of the user who created this version. Note: This value is a set of numeric characters.
created_by_name
string
Name of the user who created this version.
last_modified_by_id
string
ID of the user who last modified this version. Note: This value is a set of numeric characters.
created_time
string
ISO 8601 timestamp of when the BOM was created.
last_modified_time
string
ISO 8601 timestamp of the last modification.
created_by_id
string
ID of the user who created this BOM. Note: This value is a set of numeric characters.
last_modified_by_id
string
ID of the user who last modified this BOM. Note: This value is a set of numeric characters.

Example

{ "billofmaterials_id": "3863095000000039881", "billofmaterials_name": "Pencil New-BOM", "billofmaterials_number": "BOM-00005", "version_id": "3863095000000039884", "version_name": "Pencil BOM 4 V1", "version_start_date": "2026-05-08", "version_end_date": "", "version_status": "active", "status": "active", "finished_product_id": "3863095000000046004", "finished_product_group_id": "3863095000000046007", "finished_product_name": "Pencil", "finished_product_sku": "", "finished_product_quantity": 1000, "unit": "pcs", "quantity_decimal_place": "", "description": "", "associated_mo_count": 0, "is_effective_version": true, "custom_fields": [ { "customfield_id": "982000000000183", "value": "Batch-A" } ], "custom_fields_hash": {}, "components": [ { "bom_component_id": "3863095000000039902", "item_id": "3863095000000046015", "name": "Wood", "item_sku": "", "description": "", "quantity": 1, "bom_quantity": 1, "has_bom": false, "item_type": "inventory", "unit": "kg", "quantity_decimal_place": "", "subassembly_bom_id": "", "subassembly_bom_version_id": "", "subassembly_bom_name": "", "stock_on_hand": -21.01, "available_stock": -21.01, "actual_available_stock": -21.01, "committed_stock": 1.01, "actual_committed_stock": 1.01, "available_for_sale_stock": -22.02, "actual_available_for_sale_stock": -22.02 } ], "operations": [ { "bom_operation_id": "3863095000000039890", "operation_id": "3863095000000039095", "operation_name": "Manufacturing OPR", "workcenter_type_id": "3863095000000039041", "workcenter_type_name": "Manufacturing WCT", "lead_time": "60:00", "instructions": "", "documents": [ {} ], "blocked_by_operations": [], "cost_template": { "cost_template_id": "", "cost_template_name": "", "cost_items": [ {} ] } } ], "comments": [ { "comment_id": "3863095000000057297", "description": "Bill of materials updated", "commented_by_id": "3863095000000032003", "commented_by": "Suganthan Gnanvelan", "comment_type": "system", "date": "2026-05-11", "date_description": "few seconds ago", "time": "10:13 AM", "operation_type": "Updated", "transaction_type": "bill_of_materials" } ], "versions": [ { "version_id": "3863095000000039884", "version_name": "Pencil BOM 4 V1", "version_status": "active", "version_start_date": "2026-05-08", "version_end_date": "", "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "created_by_name": "Suganthan Gnanvelan", "last_modified_by_id": "3863095000000032003" } ], "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "last_modified_by_id": "3863095000000032003" }

Create a bill of materials AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Create a bill of materials.
OAuth Scope : ERP.manufacturing.CREATE

Arguments

billofmaterials_name
string
(Required)
Name of the Bill of Materials.
billofmaterials_number
string
BOM number. Auto-generated if not provided. Must be unique across all Bills of Materials in the organization. Required when auto-number generation is disabled. Maximum length: 50 characters.
finished_product_id
string
(Required)
ID of the finished product this BOM produces. Must reference an active item in the organization. The same item cannot also appear in the components array (no self-reference); transitive cycles up to depth 10 are also rejected. Note: This value is a set of numeric characters.
finished_product_group_id
string
(Required)
Group ID of the finished product. Must equal the group ID of the finished product item; supplying a mismatched group rejects the request. Note: This value is a set of numeric characters.
finished_product_quantity
double
(Required)
Standard output quantity produced per BOM execution. Must be greater than 0.
unit
string
Unit of measurement for the finished product quantity. Maximum length: 120 characters.
components
array
(Required)
List of components required to produce the finished product. At least 1 and at most 500 components are allowed.
Show Sub-Attributes arrow
item_id
string
(Required)
ID of the component item. Must reference an inventory item; service / non-inventory items are rejected. Components cannot recursively include the finished product, and the overall BOM depth is capped at 10 levels. Note: This value is a set of numeric characters.
quantity
double
(Required)
Required quantity of this component per BOM execution. Must be greater than 0.
unit
string
Unit of measurement for the component quantity. Maximum length: 120 characters.
subassembly_bom_id
string
ID of the sub-assembly Bill of Materials, when this component is itself produced from another BOM. Note: This value is a set of numeric characters.
operations
array
(Required)
List of manufacturing operations defined in this BOM. At least 1 and at most 500 operations are allowed.
Show Sub-Attributes arrow
operation_id
string
(Required)
ID of the master operation record. Must reference an active master operation. The same operation cannot appear twice in the operations array. Note: This value is a set of numeric characters.
lead_time
string
Estimated lead time for this operation, expressed as mm:ss (minutes:seconds).
instructions
string
Instructions or notes for this operation. Maximum length: 500 characters.
blocked_by_operations
array
List of operation IDs that must be completed before this operation can start. Each ID must reference an operation present in the same BOM payload. Cyclic dependencies (operation A blocked by B and B blocked by A) are rejected. Note: Each value is a set of numeric characters.
custom_fields
array
Custom field values to associate with this BOM.
Show Sub-Attributes arrow
customfield_id
string
ID of the custom field. Note: This value is a set of numeric characters.
value
string
Value of the custom field.

Query Parameters

organization_id
string
(Required)
ID of the organization.

Request Example

Click to copy
parameters_data='{"field1":"value1","field2":"value2"}'; headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.in/erp/v3/billofmaterials?organization_id=10234695" type: POST headers: headers_data content-type: application/json parameters: parameters_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}"); Request request = new Request.Builder() .url("https://www.zohoapis.in/erp/v3/billofmaterials?organization_id=10234695") .post(body) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .addHeader("content-type", "application/json") .build(); Response response = client.newCall(request).execute();
const options = { method: 'POST', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f', 'content-type': 'application/json' }, body: '{"field1":"value1","field2":"value2"}' }; fetch('https://www.zohoapis.in/erp/v3/billofmaterials?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.in") payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}" headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", 'content-type': "application/json" } conn.request("POST", "/erp/v3/billofmaterials?organization_id=10234695", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "POST", "hostname": "www.zohoapis.in", "port": null, "path": "/erp/v3/billofmaterials?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", "content-type": "application/json" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.write(JSON.stringify({field1: 'value1', field2: 'value2'})); req.end();
curl --request POST \ --url 'https://www.zohoapis.in/erp/v3/billofmaterials?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \ --header 'content-type: application/json' \ --data '{"field1":"value1","field2":"value2"}'

Body Parameters

Click to copy
{ "billofmaterials_name": "Pencil New-BOM", "billofmaterials_number": "BOM-00005", "finished_product_id": "3863095000000046004", "finished_product_group_id": "3863095000000046007", "finished_product_quantity": 1000, "unit": "pcs", "components": [ { "item_id": "3863095000000046015", "quantity": 1, "unit": "kg", "subassembly_bom_id": "" } ], "operations": [ { "operation_id": "3863095000000039095", "lead_time": "60:00", "instructions": "", "blocked_by_operations": [] } ], "custom_fields": [ { "customfield_id": "982000000000183", "value": "Batch-A" } ] }

Response Example

{ "code": 0, "message": "Bill of materials created", "bill_of_material": { "billofmaterials_id": "3863095000000039881", "billofmaterials_name": "Pencil New-BOM", "billofmaterials_number": "BOM-00005", "version_id": "3863095000000039884", "version_name": "Pencil BOM 4 V1", "version_start_date": "2026-05-08", "version_end_date": "", "version_status": "active", "status": "active", "finished_product_id": "3863095000000046004", "finished_product_group_id": "3863095000000046007", "finished_product_name": "Pencil", "finished_product_sku": "", "finished_product_quantity": 1000, "unit": "pcs", "quantity_decimal_place": "", "description": "", "associated_mo_count": 0, "is_effective_version": true, "custom_fields": [ { "customfield_id": "982000000000183", "value": "Batch-A" } ], "custom_fields_hash": {...}, "components": [ { "bom_component_id": "3863095000000039902", "item_id": "3863095000000046015", "name": "Wood", "item_sku": "", "description": "", "quantity": 1, "bom_quantity": 1, "has_bom": false, "item_type": "inventory", "unit": "kg", "quantity_decimal_place": "", "subassembly_bom_id": "", "subassembly_bom_version_id": "", "subassembly_bom_name": "", "stock_on_hand": -21.01, "available_stock": -21.01, "actual_available_stock": -21.01, "committed_stock": 1.01, "actual_committed_stock": 1.01, "available_for_sale_stock": -22.02, "actual_available_for_sale_stock": -22.02 } ], "operations": [ { "bom_operation_id": "3863095000000039890", "operation_id": "3863095000000039095", "operation_name": "Manufacturing OPR", "workcenter_type_id": "3863095000000039041", "workcenter_type_name": "Manufacturing WCT", "lead_time": "60:00", "instructions": "", "documents": [ {...} ], "blocked_by_operations": [], "cost_template": { "cost_template_id": "", "cost_template_name": "", "cost_items": [ {...} ] } } ], "comments": [ { "comment_id": "3863095000000057297", "description": "Bill of materials updated", "commented_by_id": "3863095000000032003", "commented_by": "Suganthan Gnanvelan", "comment_type": "system", "date": "2026-05-11", "date_description": "few seconds ago", "time": "10:13 AM", "operation_type": "Updated", "transaction_type": "bill_of_materials" } ], "versions": [ { "version_id": "3863095000000039884", "version_name": "Pencil BOM 4 V1", "version_status": "active", "version_start_date": "2026-05-08", "version_end_date": "", "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "created_by_name": "Suganthan Gnanvelan", "last_modified_by_id": "3863095000000032003" } ], "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "last_modified_by_id": "3863095000000032003" } }

List bill of materials AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

List all bills of materials.
OAuth Scope : ERP.manufacturing.READ

Query Parameters

organization_id
string
(Required)
ID of the organization.
sort_column
string
Specify the column field for sorting results. Allowed Values: created_time, billofmaterials_name, status, quantity, billofmaterials_number, finished_product_name and finished_product_quantity.
sort_order
string
Sort order for results. Allowed Values: A (ascending) and D (descending).
search_text
string
Search by BOM name, BOM number, or finished product name.
filter_by
string
Filter by status group. Allowed Values: Status.All, Status.Active and Status.Inactive.
status
string
Filter by BOM status. Allowed Values: active and inactive.
item_id
string
Filter by the finished product item identifier.
finished_product_id
string
Filter by the finished product item identifier.
billofmaterials_name
string
Filter bills of materials by BOM name using various matching operators. Available variants include billofmaterials_name_startswith and billofmaterials_name_contains. Maximum search length: 100 characters.
billofmaterials_number
string
Filter bills of materials by BOM number using various matching operators. Available variants include billofmaterials_number_startswith and billofmaterials_number_contains. Maximum search length: 100 characters.
description
string
Filter bills of materials by description using various matching operators. Available variants include description_startswith and description_contains. Maximum search length: 500 characters.
finished_product_quantity
double
Filter bills of materials by finished product quantity using various range operators. Available variants include finished_product_quantity_start, finished_product_quantity_end, finished_product_quantity_less_than, finished_product_quantity_less_equals, finished_product_quantity_greater_than, and finished_product_quantity_greater_equals.
finished_product_unit
string
Filter bills of materials by finished product unit using various matching operators. Available variants include finished_product_unit_startswith and finished_product_unit_contains. Maximum search length: 120 characters.
created_by
string
Filter bills of materials by the user who created them. Note: This value is a set of numeric characters.
customview_id
string
ID of the customview. Note: This value is a set of numeric characters.
page
integer
Page number for pagination. Default is 1.
per_page
integer
Number of records to be fetched per page. Default value is 200.

Request Example

Click to copy
headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.in/erp/v3/billofmaterials?organization_id=10234695" type: GET headers: headers_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.in/erp/v3/billofmaterials?organization_id=10234695") .get() .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'GET', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.in/erp/v3/billofmaterials?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.in") headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } conn.request("GET", "/erp/v3/billofmaterials?organization_id=10234695", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "GET", "hostname": "www.zohoapis.in", "port": null, "path": "/erp/v3/billofmaterials?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end();
curl --request GET \ --url 'https://www.zohoapis.in/erp/v3/billofmaterials?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "success", "bill_of_materials": [ { "billofmaterials_id": "3863095000000039881", "billofmaterials_name": "Pencil BOM 4", "billofmaterials_number": "BOM-00004", "status": "active", "description": "", "finished_product_id": "3863095000000046004", "finished_product_name": "Pencil", "finished_product_group_id": "3863095000000046007", "finished_product_group_name": "Stationery", "finished_product_quantity": "100", "finished_product_unit": "pcs", "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "last_modified_by_id": "3863095000000032003" }, {...}, {...} ], "page_context": { "page": 1, "per_page": 200, "has_more_page": false, "report_name": "Bill of Materials", "applied_filter": "Status.Active", "sort_column": "created_time", "sort_order": "D" } }

Update a bill of materials AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Update an existing bill of materials. Changes are applied to the active version.
OAuth Scope : ERP.manufacturing.UPDATE

Arguments

billofmaterials_name
string
Name of the Bill of Materials.
billofmaterials_number
string
BOM number. Auto-generated if not provided. Must be unique across all Bills of Materials in the organization. Required when auto-number generation is disabled. Maximum length: 50 characters.
finished_product_id
string
ID of the finished product this BOM produces. Must reference an active item in the organization. The same item cannot also appear in the components array (no self-reference); transitive cycles up to depth 10 are also rejected. Note: This value is a set of numeric characters.
finished_product_group_id
string
Group ID of the finished product. Must equal the group ID of the finished product item; supplying a mismatched group rejects the request. Note: This value is a set of numeric characters.
finished_product_quantity
double
Standard output quantity produced per BOM execution. Must be greater than 0.
unit
string
Unit of measurement for the finished product quantity. Maximum length: 120 characters.
components
array
List of components required to produce the finished product. At least 1 and at most 500 components are allowed.
Show Sub-Attributes arrow
item_id
string
(Required)
ID of the component item. Must reference an inventory item; service / non-inventory items are rejected. Components cannot recursively include the finished product, and the overall BOM depth is capped at 10 levels. Note: This value is a set of numeric characters.
quantity
double
(Required)
Required quantity of this component per BOM execution. Must be greater than 0.
unit
string
Unit of measurement for the component quantity. Maximum length: 120 characters.
subassembly_bom_id
string
ID of the sub-assembly Bill of Materials, when this component is itself produced from another BOM. Note: This value is a set of numeric characters.
operations
array
List of manufacturing operations defined in this BOM. At least 1 and at most 500 operations are allowed.
Show Sub-Attributes arrow
operation_id
string
(Required)
ID of the master operation record. Must reference an active master operation. The same operation cannot appear twice in the operations array. Note: This value is a set of numeric characters.
lead_time
string
Estimated lead time for this operation, expressed as mm:ss (minutes:seconds).
instructions
string
Instructions or notes for this operation. Maximum length: 500 characters.
blocked_by_operations
array
List of operation IDs that must be completed before this operation can start. Each ID must reference an operation present in the same BOM payload. Cyclic dependencies (operation A blocked by B and B blocked by A) are rejected. Note: Each value is a set of numeric characters.
custom_fields
array
Custom field values to associate with this BOM.
Show Sub-Attributes arrow
customfield_id
string
ID of the custom field. Note: This value is a set of numeric characters.
value
string
Value of the custom field.

Path Parameters

billofmaterials_id
string
(Required)
ID of the Bill of Materials. Note: This value is a set of numeric characters.

Query Parameters

organization_id
string
(Required)
ID of the organization.

Request Example

Click to copy
parameters_data='{"field1":"value1","field2":"value2"}'; headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695" type: PUT headers: headers_data content-type: application/json parameters: parameters_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}"); Request request = new Request.Builder() .url("https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695") .put(body) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .addHeader("content-type", "application/json") .build(); Response response = client.newCall(request).execute();
const options = { method: 'PUT', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f', 'content-type': 'application/json' }, body: '{"field1":"value1","field2":"value2"}' }; fetch('https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.in") payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}" headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", 'content-type': "application/json" } conn.request("PUT", "/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "PUT", "hostname": "www.zohoapis.in", "port": null, "path": "/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", "content-type": "application/json" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.write(JSON.stringify({field1: 'value1', field2: 'value2'})); req.end();
curl --request PUT \ --url 'https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \ --header 'content-type: application/json' \ --data '{"field1":"value1","field2":"value2"}'

Body Parameters

Click to copy
{ "billofmaterials_name": "Pencil New-BOM", "billofmaterials_number": "BOM-00005", "finished_product_id": "3863095000000046004", "finished_product_group_id": "3863095000000046007", "finished_product_quantity": 1000, "unit": "pcs", "components": [ { "item_id": "3863095000000046015", "quantity": 1, "unit": "kg", "subassembly_bom_id": "" } ], "operations": [ { "operation_id": "3863095000000039095", "lead_time": "60:00", "instructions": "", "blocked_by_operations": [] } ], "custom_fields": [ { "customfield_id": "982000000000183", "value": "Batch-A" } ] }

Response Example

{ "code": 0, "message": "Bill of materials updated", "bill_of_material": { "billofmaterials_id": "3863095000000039881", "billofmaterials_name": "Pencil New-BOM", "billofmaterials_number": "BOM-00005", "version_id": "3863095000000039884", "version_name": "Pencil BOM 4 V1", "version_start_date": "2026-05-08", "version_end_date": "", "version_status": "active", "status": "active", "finished_product_id": "3863095000000046004", "finished_product_group_id": "3863095000000046007", "finished_product_name": "Pencil", "finished_product_sku": "", "finished_product_quantity": 1000, "unit": "pcs", "quantity_decimal_place": "", "description": "", "associated_mo_count": 0, "is_effective_version": true, "custom_fields": [ { "customfield_id": "982000000000183", "value": "Batch-A" } ], "custom_fields_hash": {...}, "components": [ { "bom_component_id": "3863095000000039902", "item_id": "3863095000000046015", "name": "Wood", "item_sku": "", "description": "", "quantity": 1, "bom_quantity": 1, "has_bom": false, "item_type": "inventory", "unit": "kg", "quantity_decimal_place": "", "subassembly_bom_id": "", "subassembly_bom_version_id": "", "subassembly_bom_name": "", "stock_on_hand": -21.01, "available_stock": -21.01, "actual_available_stock": -21.01, "committed_stock": 1.01, "actual_committed_stock": 1.01, "available_for_sale_stock": -22.02, "actual_available_for_sale_stock": -22.02 } ], "operations": [ { "bom_operation_id": "3863095000000039890", "operation_id": "3863095000000039095", "operation_name": "Manufacturing OPR", "workcenter_type_id": "3863095000000039041", "workcenter_type_name": "Manufacturing WCT", "lead_time": "60:00", "instructions": "", "documents": [ {...} ], "blocked_by_operations": [], "cost_template": { "cost_template_id": "", "cost_template_name": "", "cost_items": [ {...} ] } } ], "comments": [ { "comment_id": "3863095000000057297", "description": "Bill of materials updated", "commented_by_id": "3863095000000032003", "commented_by": "Suganthan Gnanvelan", "comment_type": "system", "date": "2026-05-11", "date_description": "few seconds ago", "time": "10:13 AM", "operation_type": "Updated", "transaction_type": "bill_of_materials" } ], "versions": [ { "version_id": "3863095000000039884", "version_name": "Pencil BOM 4 V1", "version_status": "active", "version_start_date": "2026-05-08", "version_end_date": "", "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "created_by_name": "Suganthan Gnanvelan", "last_modified_by_id": "3863095000000032003" } ], "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "last_modified_by_id": "3863095000000032003" } }

Get a bill of materials AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Get the details of a bill of materials.
OAuth Scope : ERP.manufacturing.READ

Path Parameters

billofmaterials_id
string
(Required)
ID of the Bill of Materials. Note: This value is a set of numeric characters.

Query Parameters

organization_id
string
(Required)
ID of the organization.
planned_start_date
string
Planned start date used to compute BOM cost overview and scheduling. Date format: yyyy-MM-dd.
print
boolean
Print the exported pdf.
accept
string
Get the details of a particular bill of materials in formats such as json/ pdf. Default format is json. Allowed Values: json and pdf.

Request Example

Click to copy
headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695" type: GET headers: headers_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695") .get() .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'GET', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.in") headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } conn.request("GET", "/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "GET", "hostname": "www.zohoapis.in", "port": null, "path": "/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end();
curl --request GET \ --url 'https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "success", "bill_of_material": { "billofmaterials_id": "3863095000000039881", "billofmaterials_name": "Pencil New-BOM", "billofmaterials_number": "BOM-00005", "version_id": "3863095000000039884", "version_name": "Pencil BOM 4 V1", "version_start_date": "2026-05-08", "version_end_date": "", "version_status": "active", "status": "active", "finished_product_id": "3863095000000046004", "finished_product_group_id": "3863095000000046007", "finished_product_name": "Pencil", "finished_product_sku": "", "finished_product_quantity": 1000, "unit": "pcs", "quantity_decimal_place": "", "description": "", "associated_mo_count": 0, "is_effective_version": true, "custom_fields": [ { "customfield_id": "982000000000183", "value": "Batch-A" } ], "custom_fields_hash": {...}, "components": [ { "bom_component_id": "3863095000000039902", "item_id": "3863095000000046015", "name": "Wood", "item_sku": "", "description": "", "quantity": 1, "bom_quantity": 1, "has_bom": false, "item_type": "inventory", "unit": "kg", "quantity_decimal_place": "", "subassembly_bom_id": "", "subassembly_bom_version_id": "", "subassembly_bom_name": "", "stock_on_hand": -21.01, "available_stock": -21.01, "actual_available_stock": -21.01, "committed_stock": 1.01, "actual_committed_stock": 1.01, "available_for_sale_stock": -22.02, "actual_available_for_sale_stock": -22.02 } ], "operations": [ { "bom_operation_id": "3863095000000039890", "operation_id": "3863095000000039095", "operation_name": "Manufacturing OPR", "workcenter_type_id": "3863095000000039041", "workcenter_type_name": "Manufacturing WCT", "lead_time": "60:00", "instructions": "", "documents": [ {...} ], "blocked_by_operations": [], "cost_template": { "cost_template_id": "", "cost_template_name": "", "cost_items": [ {...} ] } } ], "comments": [ { "comment_id": "3863095000000057297", "description": "Bill of materials updated", "commented_by_id": "3863095000000032003", "commented_by": "Suganthan Gnanvelan", "comment_type": "system", "date": "2026-05-11", "date_description": "few seconds ago", "time": "10:13 AM", "operation_type": "Updated", "transaction_type": "bill_of_materials" } ], "versions": [ { "version_id": "3863095000000039884", "version_name": "Pencil BOM 4 V1", "version_status": "active", "version_start_date": "2026-05-08", "version_end_date": "", "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "created_by_name": "Suganthan Gnanvelan", "last_modified_by_id": "3863095000000032003" } ], "created_time": "2026-05-08T16:05:45+0530", "last_modified_time": "2026-05-08T16:05:45+0530", "created_by_id": "3863095000000032003", "last_modified_by_id": "3863095000000032003" } }

Delete a bill of materials AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Delete an existing bill of materials. A bill of materials linked to a manufacturing order cannot be deleted.
OAuth Scope : ERP.manufacturing.DELETE

Path Parameters

billofmaterials_id
string
(Required)
ID of the Bill of Materials. Note: This value is a set of numeric characters.

Query Parameters

organization_id
string
(Required)
ID of the organization.

Request Example

Click to copy
headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695" type: DELETE headers: headers_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695") .delete(null) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'DELETE', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.in") headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } conn.request("DELETE", "/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "DELETE", "hostname": "www.zohoapis.in", "port": null, "path": "/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end();
curl --request DELETE \ --url 'https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "Bill of materials deleted" }

Update bill of materials status AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Update the status of a bill of materials.
OAuth Scope : ERP.manufacturing.UPDATE

Arguments

status
string
(Required)
New status to apply to the BOM. Allowed Values: active and inactive. The new status must differ from the current status; sending the same value as the existing status is rejected.

Path Parameters

billofmaterials_id
string
(Required)
ID of the Bill of Materials. Note: This value is a set of numeric characters.

Query Parameters

organization_id
string
(Required)
ID of the organization.

Request Example

Click to copy
parameters_data='{"field1":"value1","field2":"value2"}'; headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/status?organization_id=10234695" type: PUT headers: headers_data content-type: application/json parameters: parameters_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}"); Request request = new Request.Builder() .url("https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/status?organization_id=10234695") .put(body) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .addHeader("content-type", "application/json") .build(); Response response = client.newCall(request).execute();
const options = { method: 'PUT', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f', 'content-type': 'application/json' }, body: '{"field1":"value1","field2":"value2"}' }; fetch('https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/status?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.in") payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}" headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", 'content-type': "application/json" } conn.request("PUT", "/erp/v3/billofmaterials/3863095000000039881/status?organization_id=10234695", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "PUT", "hostname": "www.zohoapis.in", "port": null, "path": "/erp/v3/billofmaterials/3863095000000039881/status?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", "content-type": "application/json" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.write(JSON.stringify({field1: 'value1', field2: 'value2'})); req.end();
curl --request PUT \ --url 'https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/status?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \ --header 'content-type: application/json' \ --data '{"field1":"value1","field2":"value2"}'

Body Parameters

Click to copy
{ "status": "inactive" }

Response Example

{ "code": 0, "message": "Status updated" }

Add a comment AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Add a comment to a bill of materials.
OAuth Scope : ERP.manufacturing.CREATE

Arguments

description
string
(Required)
Content of the comment.

Path Parameters

billofmaterials_id
string
(Required)
ID of the Bill of Materials. Note: This value is a set of numeric characters.

Query Parameters

organization_id
string
(Required)
ID of the organization.

Request Example

Click to copy
parameters_data='{"field1":"value1","field2":"value2"}'; headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/comments?organization_id=10234695" type: POST headers: headers_data content-type: application/json parameters: parameters_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}"); Request request = new Request.Builder() .url("https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/comments?organization_id=10234695") .post(body) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .addHeader("content-type", "application/json") .build(); Response response = client.newCall(request).execute();
const options = { method: 'POST', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f', 'content-type': 'application/json' }, body: '{"field1":"value1","field2":"value2"}' }; fetch('https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/comments?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.in") payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}" headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", 'content-type': "application/json" } conn.request("POST", "/erp/v3/billofmaterials/3863095000000039881/comments?organization_id=10234695", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "POST", "hostname": "www.zohoapis.in", "port": null, "path": "/erp/v3/billofmaterials/3863095000000039881/comments?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f", "content-type": "application/json" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.write(JSON.stringify({field1: 'value1', field2: 'value2'})); req.end();
curl --request POST \ --url 'https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/comments?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \ --header 'content-type: application/json' \ --data '{"field1":"value1","field2":"value2"}'

Body Parameters

Click to copy
{ "description": "Component quantities revised for Q2 production." }

Response Example

{ "code": 0, "message": "Comment added", "comment": { "comment_id": "3863095000000057297", "description": "Bill of materials updated", "commented_by_id": "3863095000000032003", "commented_by": "Suganthan Gnanvelan", "comment_type": "system", "date": "2026-05-11", "date_description": "few seconds ago", "time": "10:13 AM", "operation_type": "Updated", "transaction_type": "bill_of_materials" } }

Delete a comment AI Tools

Open in ChatGPT

Open in ChatGPT to ask questions about this page

Open in Claude

Open in Claude to ask questions about this page

Copy as Markdown

Copy this page as markdown to use with AI assistants

View as Markdown

Open this page as markdown in a new tab

Delete a comment from a bill of materials.
OAuth Scope : ERP.manufacturing.DELETE

Path Parameters

billofmaterials_id
string
(Required)
ID of the Bill of Materials. Note: This value is a set of numeric characters.
comment_id
string
(Required)
ID of the comment. Note: This value is a set of numeric characters.

Query Parameters

organization_id
string
(Required)
ID of the organization.

Request Example

Click to copy
headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"); response = invokeUrl [ url: "https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/comments/3863095000000057297?organization_id=10234695" type: DELETE headers: headers_data connection: <connection_name> ]; info response;
OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/comments/3863095000000057297?organization_id=10234695") .delete(null) .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f") .build(); Response response = client.newCall(request).execute();
const options = { method: 'DELETE', headers: { Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' } }; fetch('https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/comments/3863095000000057297?organization_id=10234695', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
import http.client conn = http.client.HTTPSConnection("www.zohoapis.in") headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } conn.request("DELETE", "/erp/v3/billofmaterials/3863095000000039881/comments/3863095000000057297?organization_id=10234695", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
const http = require("https"); const options = { "method": "DELETE", "hostname": "www.zohoapis.in", "port": null, "path": "/erp/v3/billofmaterials/3863095000000039881/comments/3863095000000057297?organization_id=10234695", "headers": { "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" } }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end();
curl --request DELETE \ --url 'https://www.zohoapis.in/erp/v3/billofmaterials/3863095000000039881/comments/3863095000000057297?organization_id=10234695' \ --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'

Response Example

{ "code": 0, "message": "Comment deleted" }