Retrieve the Bills of Material

If you are using the contract-based REST API to integrate MYOB Acumatica with an external system, this external system can retrieve the list of existing bills of material (BOMs). For details about the management of bills of material, see Managing Bills of Material.

Testing of the Request

Before you test the code below, you need to do the following to configure your client application and the MYOB Acumatica instance to be used:

  1. Deploy a new MYOB Acumatica instance with the SalesDemo dataset. For details on deploying an instance, see To Deploy an MYOB Acumatica Instance.
  2. On the Enable/Disable Features (CS100000) form, make sure the Manufacturing feature is enabled.
  3. If you use Postman as the client application for testing, in the IntegrationDevelopmentGuide.postman_collection.json collection (which is located in the IntegrationDevelopment\Help folder of the Help-and-Training-Examples repository on GitHub), make sure the collection variables have the proper values.
  4. To sign in to the instance in the client application, use the tenant name (which you specified when you created the instance) and the PRODWHOLE branch.

Request

Tip: In the request example below, <MYOB Acumatica instance URL> is the URL of the MYOB Acumatica instance (such as https://my.acumatica.com/MyInstance). You can omit the instance name in the URL (that is, you can use https://my.acumatica.com) if the instance is installed in the root of the website.

You can use the following HTTP request example to retrieve the list of BOMs registered in the system along with their operations.

GET ?$expand=Operations HTTP/1.1
Host: [<MYOB Acumatica instance URL>]/entity/MANUFACTURING/23.200.001/BillOfMaterial
Accept: application/json
Content-Type: application/json

If you want to retrieve additional details of the operations of BOMs, you cannot specify the Operations/Material, Operations/Overheads, Operations/Steps, or Operations/Tools fields in the $expand parameter of the above request, because this would cause the Optimization cannot be performed error to be generated. Instead, you should retrieve a single BOM and specify these fields in the $expand parameter of the request (see Retrieve the Details of a Bill of Material's Operations).