fmea-api-mcp-server 1.1.46 → 1.1.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/data/endpoint-lookup.json +1 -1
  2. package/data/search-index.oxy +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/synonyms.js +3 -2
  5. package/endpoints/v2/additional-info/core.json +30 -6
  6. package/endpoints/v2/api-keys/core.json +86 -33
  7. package/endpoints/v2/block-diagrams/core.json +6 -3
  8. package/endpoints/v2/condition-library/core.json +62 -301
  9. package/endpoints/v2/condition-library-excel/core.json +1 -4
  10. package/endpoints/v2/divisions/core.json +0 -9
  11. package/endpoints/v2/documents/core.json +49 -21
  12. package/endpoints/v2/evaluation/core.json +158 -34
  13. package/endpoints/v2/excel/core.json +18 -9
  14. package/endpoints/v2/failure-modes/core.json +5 -5
  15. package/endpoints/v2/files/core.json +5 -3
  16. package/endpoints/v2/fourm/core.json +65 -49
  17. package/endpoints/v2/high-items/core.json +1 -0
  18. package/endpoints/v2/projects/core.json +69 -26
  19. package/endpoints/v2/recommendation-items/core.json +16 -3
  20. package/endpoints/v2/search/core.json +125 -33
  21. package/endpoints/v2/system/core.json +22 -10
  22. package/endpoints/v2/system-definition/core.json +9 -3
  23. package/endpoints/v2/system-definition-excel/core.json +1 -1
  24. package/endpoints/v2/templates/core.json +15 -5
  25. package/endpoints/v2/tree-search/core.json +4 -4
  26. package/endpoints/v2/users/core.json +0 -9
  27. package/endpoints/v2/worksheet-templates/core.json +17 -4
  28. package/endpoints/v2/worksheets/core.json +33 -15
  29. package/endpoints/v2/worksheets/excel.json +35 -15
  30. package/endpoints/v2/worksheets/management.json +28 -10
  31. package/endpoints/v2/worksheets/templates.json +4 -1
  32. package/package.json +1 -1
@@ -3,305 +3,6 @@
3
3
  "version": "v2",
4
4
  "description": "",
5
5
  "endpoints": [
6
- {
7
- "path": "/api/v2/condition-library/{type}/{serial}",
8
- "method": "DELETE",
9
- "operationId": "deleteConditionLibraryNode",
10
- "summary": "Delete condition library node",
11
- "description": "Deletes the target node and its subtree for the requested type. Root node deletion is not allowed.",
12
- "tags": [
13
- "Condition Library"
14
- ],
15
- "parameters": [
16
- {
17
- "name": "type",
18
- "in": "path",
19
- "description": "Condition library type (stress|design|process)",
20
- "required": true,
21
- "schema": {
22
- "type": "string",
23
- "enum": [
24
- "STRESS",
25
- "DESIGN",
26
- "PROCESS"
27
- ]
28
- }
29
- },
30
- {
31
- "name": "serial",
32
- "in": "path",
33
- "description": "Condition library serial",
34
- "required": true,
35
- "schema": {
36
- "type": "integer",
37
- "format": "int32",
38
- "minimum": 0
39
- }
40
- }
41
- ],
42
- "requestBody": null,
43
- "responses": {
44
- "default": {
45
- "description": "default response",
46
- "content": {
47
- "application/json": {}
48
- }
49
- }
50
- }
51
- },
52
- {
53
- "path": "/api/v2/condition-library/{type}/{serial}",
54
- "method": "PATCH",
55
- "operationId": "updateConditionLibraryNode",
56
- "summary": "Update condition library node",
57
- "description": "Updates the node title by serial for the requested type. Duplicate titles under the same parent are rejected.",
58
- "tags": [
59
- "Condition Library"
60
- ],
61
- "parameters": [
62
- {
63
- "name": "type",
64
- "in": "path",
65
- "description": "Condition library type (stress|design|process)",
66
- "required": true,
67
- "schema": {
68
- "type": "string",
69
- "enum": [
70
- "STRESS",
71
- "DESIGN",
72
- "PROCESS"
73
- ]
74
- }
75
- },
76
- {
77
- "name": "serial",
78
- "in": "path",
79
- "description": "Condition library serial",
80
- "required": true,
81
- "schema": {
82
- "type": "integer",
83
- "format": "int32",
84
- "minimum": 0
85
- }
86
- }
87
- ],
88
- "requestBody": {
89
- "content": {
90
- "application/json": {
91
- "schema": {
92
- "required": [
93
- "title"
94
- ],
95
- "type": "object",
96
- "properties": {
97
- "title": {
98
- "type": "string"
99
- }
100
- }
101
- }
102
- }
103
- },
104
- "required": true
105
- },
106
- "responses": {
107
- "default": {
108
- "description": "default response",
109
- "content": {
110
- "application/json": {
111
- "schema": {
112
- "type": "object",
113
- "properties": {
114
- "serial": {
115
- "type": "integer"
116
- },
117
- "type": {
118
- "type": "string",
119
- "enum": [
120
- "STRESS",
121
- "DESIGN",
122
- "PROCESS"
123
- ]
124
- },
125
- "title": {
126
- "type": "string"
127
- },
128
- "id": {
129
- "type": "string"
130
- },
131
- "parentId": {
132
- "type": "string"
133
- },
134
- "depth": {
135
- "type": "integer"
136
- },
137
- "rank": {
138
- "type": "integer"
139
- }
140
- }
141
- }
142
- }
143
- }
144
- }
145
- }
146
- },
147
- {
148
- "path": "/api/v2/condition-library/{type}",
149
- "method": "POST",
150
- "operationId": "createConditionLibraryNode",
151
- "summary": "Create condition library node",
152
- "description": "Creates a node in the condition library for the requested type. When parentTag is omitted, the node is created under the root tag (0000).",
153
- "tags": [
154
- "Condition Library"
155
- ],
156
- "parameters": [
157
- {
158
- "name": "type",
159
- "in": "path",
160
- "description": "Condition library type (stress|design|process)",
161
- "required": true,
162
- "schema": {
163
- "type": "string",
164
- "enum": [
165
- "STRESS",
166
- "DESIGN",
167
- "PROCESS"
168
- ]
169
- }
170
- }
171
- ],
172
- "requestBody": {
173
- "content": {
174
- "application/json": {
175
- "schema": {
176
- "required": [
177
- "title"
178
- ],
179
- "type": "object",
180
- "properties": {
181
- "title": {
182
- "type": "string"
183
- },
184
- "parentTag": {
185
- "type": "string"
186
- }
187
- }
188
- }
189
- }
190
- },
191
- "required": true
192
- },
193
- "responses": {
194
- "default": {
195
- "description": "default response",
196
- "content": {
197
- "application/json": {
198
- "schema": {
199
- "type": "object",
200
- "properties": {
201
- "serial": {
202
- "type": "integer"
203
- },
204
- "type": {
205
- "type": "string",
206
- "enum": [
207
- "STRESS",
208
- "DESIGN",
209
- "PROCESS"
210
- ]
211
- },
212
- "title": {
213
- "type": "string"
214
- },
215
- "id": {
216
- "type": "string"
217
- },
218
- "parentId": {
219
- "type": "string"
220
- },
221
- "depth": {
222
- "type": "integer"
223
- },
224
- "rank": {
225
- "type": "integer"
226
- }
227
- }
228
- }
229
- }
230
- }
231
- }
232
- }
233
- },
234
- {
235
- "path": "/api/v2/condition-library/{type}/order",
236
- "method": "PUT",
237
- "operationId": "updateConditionLibraryOrder",
238
- "summary": "Update condition library order",
239
- "description": "Updates rank values for sibling nodes in the requested type. All items must belong to the same parent and include serial/rank pairs.",
240
- "tags": [
241
- "Condition Library"
242
- ],
243
- "parameters": [
244
- {
245
- "name": "type",
246
- "in": "path",
247
- "description": "Condition library type (stress|design|process)",
248
- "required": true,
249
- "schema": {
250
- "type": "string",
251
- "enum": [
252
- "STRESS",
253
- "DESIGN",
254
- "PROCESS"
255
- ]
256
- }
257
- }
258
- ],
259
- "requestBody": {
260
- "content": {
261
- "application/json": {
262
- "schema": {
263
- "required": [
264
- "items"
265
- ],
266
- "type": "object",
267
- "properties": {
268
- "items": {
269
- "maxItems": 2147483647,
270
- "minItems": 1,
271
- "type": "array",
272
- "items": {
273
- "required": [
274
- "rank",
275
- "serial"
276
- ],
277
- "type": "object",
278
- "properties": {
279
- "serial": {
280
- "type": "integer",
281
- "format": "int32"
282
- },
283
- "rank": {
284
- "type": "integer",
285
- "format": "int32"
286
- }
287
- }
288
- }
289
- }
290
- }
291
- }
292
- }
293
- },
294
- "required": true
295
- },
296
- "responses": {
297
- "default": {
298
- "description": "default response",
299
- "content": {
300
- "application/json": {}
301
- }
302
- }
303
- }
304
- },
305
6
  {
306
7
  "path": "/api/v2/condition-library",
307
8
  "method": "GET",
@@ -315,7 +16,7 @@
315
16
  {
316
17
  "name": "type",
317
18
  "in": "query",
318
- "description": "Condition library type (stress|design|process). If omitted, returns all types.",
19
+ "description": "Condition library type. If omitted, returns all types.",
319
20
  "schema": {
320
21
  "type": "string",
321
22
  "enum": [
@@ -439,7 +140,7 @@
439
140
  {
440
141
  "name": "type",
441
142
  "in": "query",
442
- "description": "Condition library type (stress|design|process)",
143
+ "description": "Condition library type",
443
144
  "schema": {
444
145
  "type": "string",
445
146
  "enum": [
@@ -526,6 +227,66 @@
526
227
  }
527
228
  }
528
229
  }
230
+ },
231
+ {
232
+ "path": "/api/v2/condition-library/{type}/children",
233
+ "method": "PUT",
234
+ "operationId": "saveConditionLibraryChildren",
235
+ "summary": "Save condition library children",
236
+ "description": "Replaces the entire condition library tree for the requested type. The request contains a recursive tree starting from ROOT's direct children. Server diffs each level: deletes omitted nodes (with subtrees), updates changed titles, creates new nodes, and reorders by array position. Nodes with null children field keep their existing subtree; nodes with an empty children array have their subtree deleted.",
237
+ "tags": [
238
+ "Condition Library"
239
+ ],
240
+ "parameters": [
241
+ {
242
+ "name": "type",
243
+ "in": "path",
244
+ "description": "Condition library type",
245
+ "required": true,
246
+ "schema": {
247
+ "type": "string",
248
+ "enum": [
249
+ "STRESS",
250
+ "DESIGN",
251
+ "PROCESS"
252
+ ]
253
+ }
254
+ }
255
+ ],
256
+ "requestBody": {
257
+ "content": {
258
+ "application/json": {
259
+ "schema": {
260
+ "type": "object",
261
+ "properties": {
262
+ "children": {
263
+ "type": "array",
264
+ "items": {
265
+ "type": "object",
266
+ "properties": {
267
+ "serial": {
268
+ "type": "integer",
269
+ "format": "int32"
270
+ },
271
+ "title": {
272
+ "type": "string"
273
+ }
274
+ }
275
+ }
276
+ }
277
+ }
278
+ }
279
+ }
280
+ }
281
+ },
282
+ "responses": {
283
+ "default": {
284
+ "description": "default response",
285
+ "content": {
286
+ "application/json": {}
287
+ }
288
+ }
289
+ }
529
290
  }
530
291
  ]
531
292
  }
@@ -16,7 +16,7 @@
16
16
  {
17
17
  "name": "type",
18
18
  "in": "path",
19
- "description": "Condition library type (stress|design|process)",
19
+ "description": "Condition library type",
20
20
  "required": true,
21
21
  "schema": {
22
22
  "type": "string",
@@ -43,9 +43,6 @@
43
43
  "schema": {
44
44
  "type": "object",
45
45
  "properties": {
46
- "parentTag": {
47
- "type": "string"
48
- },
49
46
  "sheetIndex": {
50
47
  "type": "integer",
51
48
  "format": "int32"
@@ -21,15 +21,6 @@
21
21
  "type": "string"
22
22
  }
23
23
  },
24
- {
25
- "name": "useSynonym",
26
- "in": "query",
27
- "description": "Whether to expand q with synonym dictionary terms (default: true)",
28
- "schema": {
29
- "type": "boolean",
30
- "default": true
31
- }
32
- },
33
24
  {
34
25
  "name": "page",
35
26
  "in": "query",
@@ -7,13 +7,16 @@
7
7
  "path": "/api/v2/projects/{projectId}/documents/categories/{documentCategory}",
8
8
  "method": "GET",
9
9
  "operationId": "listByCategory",
10
- "summary": "List documents by category",
11
- "description": "Retrieves all documents belonging to a specific category within a project (Filter / Query by type). Use this endpoint when you need to fetch documents filtered by their document category type, such as input files, output reports, analysis results, or reference materials. The category parameter allows you to narrow down the document list to a specific classification, enabling targeted document retrieval and organization.",
12
- "tags": [],
10
+ "summary": "List documents by category for a project",
11
+ "description": "Returns documents in the specified category for the given project. Document categories group related files (e.g., FMEA reports, reference materials).",
12
+ "tags": [
13
+ "Documents"
14
+ ],
13
15
  "parameters": [
14
16
  {
15
17
  "name": "projectId",
16
18
  "in": "path",
19
+ "description": "Project ID whose documents to list",
17
20
  "required": true,
18
21
  "schema": {
19
22
  "type": "string"
@@ -22,6 +25,7 @@
22
25
  {
23
26
  "name": "documentCategory",
24
27
  "in": "path",
28
+ "description": "Document category",
25
29
  "required": true,
26
30
  "schema": {
27
31
  "type": "string",
@@ -88,13 +92,16 @@
88
92
  "path": "/api/v2/projects/{projectId}/documents/categories/{documentCategory}",
89
93
  "method": "POST",
90
94
  "operationId": "add_1",
91
- "summary": "Add document to category",
92
- "description": "Creates and registers a new document entry within a specific category for a project (Upload / Create / Attach file). Use this endpoint to add documents such as analysis reports, input data files, or reference materials to the project. The document will be classified under the specified category, enabling organized storage and retrieval. Requires project member role with NORMAL user level permissions.",
93
- "tags": [],
95
+ "summary": "Add a document to a project category",
96
+ "description": "Adds a new document entry to the specified category within the project. The document file must be uploaded separately via POST /api/v2/files. Requires project membership.",
97
+ "tags": [
98
+ "Documents"
99
+ ],
94
100
  "parameters": [
95
101
  {
96
102
  "name": "projectId",
97
103
  "in": "path",
104
+ "description": "Project ID to add the document to",
98
105
  "required": true,
99
106
  "schema": {
100
107
  "type": "string"
@@ -103,6 +110,7 @@
103
110
  {
104
111
  "name": "documentCategory",
105
112
  "in": "path",
113
+ "description": "Document category to add to",
106
114
  "required": true,
107
115
  "schema": {
108
116
  "type": "string",
@@ -192,13 +200,16 @@
192
200
  "path": "/api/v2/projects/{projectId}/documents/{documentId}",
193
201
  "method": "GET",
194
202
  "operationId": "get_8",
195
- "summary": "Get document by ID",
196
- "description": "Fetches detailed information for a specific document using its unique identifier (Retrieve / Fetch / View document details). Use this endpoint to obtain complete document metadata including name, category, path, creation timestamp, and associated file information. This is essential when you need to display document details, verify document existence, or access specific document properties before performing further operations like download or deletion.",
197
- "tags": [],
203
+ "summary": "Get a project document by ID",
204
+ "description": "Returns a single project document by its numeric ID. The document must belong to the specified project.",
205
+ "tags": [
206
+ "Documents"
207
+ ],
198
208
  "parameters": [
199
209
  {
200
210
  "name": "projectId",
201
211
  "in": "path",
212
+ "description": "Project ID that owns the document",
202
213
  "required": true,
203
214
  "schema": {
204
215
  "type": "string"
@@ -207,6 +218,7 @@
207
218
  {
208
219
  "name": "documentId",
209
220
  "in": "path",
221
+ "description": "Document ID (numeric)",
210
222
  "required": true,
211
223
  "schema": {
212
224
  "type": "integer",
@@ -265,13 +277,16 @@
265
277
  "path": "/api/v2/projects/{projectId}/documents/{documentId}",
266
278
  "method": "DELETE",
267
279
  "operationId": "delete_8",
268
- "summary": "Delete document",
269
- "description": "Permanently removes a document from the project using its unique identifier (Remove / Erase document). This operation deletes the document record and disassociates it from the project. Use with caution as this action cannot be undone. Requires project member role with NORMAL user level permissions. Ensure you have the correct document ID before initiating deletion to avoid accidental data loss.",
270
- "tags": [],
280
+ "summary": "Delete a project document",
281
+ "description": "Permanently deletes the specified document from the project. Returns 204 No Content on success. Requires project membership.",
282
+ "tags": [
283
+ "Documents"
284
+ ],
271
285
  "parameters": [
272
286
  {
273
287
  "name": "projectId",
274
288
  "in": "path",
289
+ "description": "Project ID that owns the document",
275
290
  "required": true,
276
291
  "schema": {
277
292
  "type": "string"
@@ -280,6 +295,7 @@
280
295
  {
281
296
  "name": "documentId",
282
297
  "in": "path",
298
+ "description": "Document ID to delete (numeric)",
283
299
  "required": true,
284
300
  "schema": {
285
301
  "type": "integer",
@@ -301,13 +317,16 @@
301
317
  "path": "/api/v2/projects/{projectId}/documents/{documentId}/download",
302
318
  "method": "GET",
303
319
  "operationId": "getDownloadLink_2",
304
- "summary": "Get document download link",
305
- "description": "Generates a secure download URL for accessing the actual file associated with a document (Download file / Get file URL). Use this endpoint to obtain a temporary, authenticated link that allows users to download the document file. The link includes necessary security tokens to ensure only authorized users can access the file. This is the standard method for retrieving document files after you have identified the document ID through listing or search operations.",
306
- "tags": [],
320
+ "summary": "Get download link for a project document",
321
+ "description": "Generates and returns a download link (FileDownloadResponseDTO) for the specified document. Use GET /api/v1/files/{uuid} with the returned URI to download the actual file.",
322
+ "tags": [
323
+ "Documents"
324
+ ],
307
325
  "parameters": [
308
326
  {
309
327
  "name": "projectId",
310
328
  "in": "path",
329
+ "description": "Project ID that owns the document",
311
330
  "required": true,
312
331
  "schema": {
313
332
  "type": "string"
@@ -316,6 +335,7 @@
316
335
  {
317
336
  "name": "documentId",
318
337
  "in": "path",
338
+ "description": "Document ID to download (numeric)",
319
339
  "required": true,
320
340
  "schema": {
321
341
  "type": "integer",
@@ -349,13 +369,16 @@
349
369
  "path": "/api/v2/projects/{projectId}/documents",
350
370
  "method": "GET",
351
371
  "operationId": "list_14",
352
- "summary": "List all Documents",
353
- "description": "Retrieves a comprehensive list of all documents associated with a specific project (Get all files / Fetch project documents / Query document library). Use this endpoint when you need to view, browse, or display the complete collection of documents within a project, including all categories and types. The response includes document metadata such as names, categories, paths, and timestamps, enabling users to navigate and manage the project document repository effectively.",
354
- "tags": [],
372
+ "summary": "List all documents for a project",
373
+ "description": "Returns all documents associated with the specified project, across all categories.",
374
+ "tags": [
375
+ "Documents"
376
+ ],
355
377
  "parameters": [
356
378
  {
357
379
  "name": "projectId",
358
380
  "in": "path",
381
+ "description": "Project ID whose documents to list",
359
382
  "required": true,
360
383
  "schema": {
361
384
  "type": "string"
@@ -416,13 +439,16 @@
416
439
  "path": "/api/v2/projects/{projectId}/documents/categories/{documentCategory}/path/{documentPath}",
417
440
  "method": "GET",
418
441
  "operationId": "listByCategoryAndPath",
419
- "summary": "List documents by category and path",
420
- "description": "Fetches documents matching both a specific category and file path within a project (Filter by type and location / Query documents in folder). Use this endpoint for precise document filtering when you need to retrieve documents from a specific directory or subfolder within a category. The path parameter enables hierarchical navigation, allowing you to access documents organized in nested folder structures. This is particularly useful for browsing documents within specific subdirectories or locations.",
421
- "tags": [],
442
+ "summary": "List documents by category and path for a project",
443
+ "description": "Returns documents that match both the specified category and virtual path prefix. Supports hierarchical document organization within a category.",
444
+ "tags": [
445
+ "Documents"
446
+ ],
422
447
  "parameters": [
423
448
  {
424
449
  "name": "projectId",
425
450
  "in": "path",
451
+ "description": "Project ID whose documents to list",
426
452
  "required": true,
427
453
  "schema": {
428
454
  "type": "string"
@@ -431,6 +457,7 @@
431
457
  {
432
458
  "name": "documentCategory",
433
459
  "in": "path",
460
+ "description": "Document category",
434
461
  "required": true,
435
462
  "schema": {
436
463
  "type": "string",
@@ -445,6 +472,7 @@
445
472
  {
446
473
  "name": "documentPath",
447
474
  "in": "path",
475
+ "description": "Virtual document path prefix for filtering",
448
476
  "required": true,
449
477
  "schema": {
450
478
  "type": "string"