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