Skip to content

BOM

GetBom

Retrieve a Bill of Materials from the external system.

Capability: getBom

Request

Field Type Required Description
projectId string Project identifier.
projectPath string Full path to the project file.

Response

Field Type Required Description
bomId string BOM identifier in external system.
revision string BOM revision.
items array<BomItem> List of BOM items.

Example

```json { "method": "GetBom", "request": {

"projectId": "PRJ-2025-0042", "projectPath": "C:\Projects\valve-assembly.hsc" } } ```

```json { "result": "OK", "response": {

"bomId": "BOM-2025-1234", "revision": "C", "items": [/ BomItem /] } } ```

C# Override

public override GetBomResponse GetBom(GetBomRequest request)
{
        // return new GetBomResponse { BomId = ... };
    throw new NotImplementedException();
}

JSON Schemas: Request · Response


UploadBom

Push a BOM from HydroSym to the external system.

Capability: uploadBom

Request

Field Type Required Description
projectId string Project identifier.
projectPath string Full path to the project file.
format string 'structured' (JSON items) or 'file' (exportedFiles only).
items array<BomItem> BOM items when format is structured.
exportedFiles array<ExportedFile> Pre-rendered BOM files (PDF, XML).

Response

Field Type Required Description
bomId string Identifier assigned by the external system.
message string Optional message to display.

Example

```json { "method": "UploadBom", "request": {

"projectId": "PRJ-2025-0042", "projectPath": "C:\Projects\valve-assembly.hsc", "format": "pdf", "items": [/ BomItem /], "exportedFiles": [/ ExportedFile /] } } ```

```json { "result": "OK", "response": {

"bomId": "BOM-2025-1234", "message": "Operation completed successfully." } } ```

C# Override

public override UploadBomResponse UploadBom(UploadBomRequest request)
{
        // return new UploadBomResponse { BomId = ... };
    throw new NotImplementedException();
}

JSON Schemas: Request · Response