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
@@ -24,9 +24,15 @@
24
24
  {
25
25
  "name": "scope",
26
26
  "in": "query",
27
- "description": "Search scope: 'my' (default), 'division', 'all'",
27
+ "description": "Search scope (default: my)",
28
28
  "schema": {
29
- "type": "string"
29
+ "type": "string",
30
+ "enum": [
31
+ "MY",
32
+ "DIVISION",
33
+ "ALL"
34
+ ],
35
+ "default": "my"
30
36
  }
31
37
  },
32
38
  {
@@ -48,17 +54,38 @@
48
54
  {
49
55
  "name": "fmeaType",
50
56
  "in": "query",
51
- "description": "FMEA type filter: Design|Process|Equipment|FA|FTA|CPlan",
57
+ "description": "FMEA type filter",
52
58
  "schema": {
53
- "type": "string"
59
+ "type": "string",
60
+ "enum": [
61
+ "DESIGN",
62
+ "PROCESS",
63
+ "EQUIPMENT",
64
+ "FA",
65
+ "FTA",
66
+ "CPLAN"
67
+ ]
54
68
  }
55
69
  },
56
70
  {
57
71
  "name": "status",
58
72
  "in": "query",
59
- "description": "Project status filter: In-Progress|Completed|Review|etc.",
73
+ "description": "Project status filter",
60
74
  "schema": {
61
- "type": "string"
75
+ "type": "string",
76
+ "enum": [
77
+ "IN_PROGRESS",
78
+ "REFUSED",
79
+ "SELF_COMPLETED",
80
+ "REVIEW",
81
+ "APPROVE",
82
+ "SCORE",
83
+ "COMPLETED",
84
+ "ASK_MODIFY_REVIEW",
85
+ "ASK_MODIFY_APPROVE",
86
+ "DELAY",
87
+ "NA"
88
+ ]
62
89
  }
63
90
  },
64
91
  {
@@ -136,11 +163,11 @@
136
163
  "blockType": {
137
164
  "type": "string",
138
165
  "enum": [
139
- "Function",
140
- "Structure",
141
- "FunctionStructure",
142
- "StructureFunction",
143
- "Process"
166
+ "FMM_FUNCTION",
167
+ "FMM_STRUCTURE",
168
+ "FMM_FUNCTION_STRUCTURE",
169
+ "FMM_STRUCTURE_FUNCTION",
170
+ "FMM_PROCESS"
144
171
  ]
145
172
  },
146
173
  "blockNodeId": {
@@ -152,10 +179,7 @@
152
179
  "fmmDiagramType": {
153
180
  "type": "string",
154
181
  "enum": [
155
- "UNUSED",
156
- "NOT_SELECTED",
157
- "TYPE_A",
158
- "TYPE_C"
182
+ "UNUSED"
159
183
  ]
160
184
  },
161
185
  "complete": {
@@ -263,9 +287,15 @@
263
287
  {
264
288
  "name": "scope",
265
289
  "in": "query",
266
- "description": "Search scope: 'my' (default), 'division', 'all'",
290
+ "description": "Search scope (default: my)",
267
291
  "schema": {
268
- "type": "string"
292
+ "type": "string",
293
+ "enum": [
294
+ "MY",
295
+ "DIVISION",
296
+ "ALL"
297
+ ],
298
+ "default": "my"
269
299
  }
270
300
  },
271
301
  {
@@ -287,25 +317,51 @@
287
317
  {
288
318
  "name": "fmeaType",
289
319
  "in": "query",
290
- "description": "FMEA type filter: Design|Process|Equipment|FA|FTA|CPlan",
320
+ "description": "FMEA type filter",
291
321
  "schema": {
292
- "type": "string"
322
+ "type": "string",
323
+ "enum": [
324
+ "DESIGN",
325
+ "PROCESS",
326
+ "EQUIPMENT",
327
+ "FA",
328
+ "FTA",
329
+ "CPLAN"
330
+ ]
293
331
  }
294
332
  },
295
333
  {
296
334
  "name": "status",
297
335
  "in": "query",
298
- "description": "Project status filter: In-Progress|Completed|Review",
336
+ "description": "Project status filter",
299
337
  "schema": {
300
- "type": "string"
338
+ "type": "string",
339
+ "enum": [
340
+ "IN_PROGRESS",
341
+ "REFUSED",
342
+ "SELF_COMPLETED",
343
+ "REVIEW",
344
+ "APPROVE",
345
+ "SCORE",
346
+ "COMPLETED",
347
+ "ASK_MODIFY_REVIEW",
348
+ "ASK_MODIFY_APPROVE",
349
+ "DELAY",
350
+ "NA"
351
+ ]
301
352
  }
302
353
  },
303
354
  {
304
355
  "name": "tag",
305
356
  "in": "query",
306
- "description": "Project tag filter: NORMAL|MASTER|REFERENCE",
357
+ "description": "Project tag filter",
307
358
  "schema": {
308
- "type": "string"
359
+ "type": "string",
360
+ "enum": [
361
+ "NORMAL",
362
+ "MASTER",
363
+ "REFERENCE"
364
+ ]
309
365
  }
310
366
  },
311
367
  {
@@ -383,9 +439,13 @@
383
439
  {
384
440
  "name": "groupBy",
385
441
  "in": "query",
386
- "description": "Group by: 'division' or 'item'. When specified, returns grouped response without paging.",
442
+ "description": "Group by field. When specified, returns grouped response without paging.",
387
443
  "schema": {
388
- "type": "string"
444
+ "type": "string",
445
+ "enum": [
446
+ "DIVISION",
447
+ "ITEM"
448
+ ]
389
449
  }
390
450
  },
391
451
  {
@@ -607,9 +667,15 @@
607
667
  {
608
668
  "name": "scope",
609
669
  "in": "query",
610
- "description": "Search scope: 'my' (default), 'division', 'all'",
670
+ "description": "Search scope (default: my)",
611
671
  "schema": {
612
- "type": "string"
672
+ "type": "string",
673
+ "enum": [
674
+ "MY",
675
+ "DIVISION",
676
+ "ALL"
677
+ ],
678
+ "default": "my"
613
679
  }
614
680
  },
615
681
  {
@@ -631,25 +697,51 @@
631
697
  {
632
698
  "name": "fmeaType",
633
699
  "in": "query",
634
- "description": "FMEA type filter: Design|Process|Equipment|FA|FTA|CPlan",
700
+ "description": "FMEA type filter",
635
701
  "schema": {
636
- "type": "string"
702
+ "type": "string",
703
+ "enum": [
704
+ "DESIGN",
705
+ "PROCESS",
706
+ "EQUIPMENT",
707
+ "FA",
708
+ "FTA",
709
+ "CPLAN"
710
+ ]
637
711
  }
638
712
  },
639
713
  {
640
714
  "name": "status",
641
715
  "in": "query",
642
- "description": "Project status filter: In-Progress|Completed|Review",
716
+ "description": "Project status filter",
643
717
  "schema": {
644
- "type": "string"
718
+ "type": "string",
719
+ "enum": [
720
+ "IN_PROGRESS",
721
+ "REFUSED",
722
+ "SELF_COMPLETED",
723
+ "REVIEW",
724
+ "APPROVE",
725
+ "SCORE",
726
+ "COMPLETED",
727
+ "ASK_MODIFY_REVIEW",
728
+ "ASK_MODIFY_APPROVE",
729
+ "DELAY",
730
+ "NA"
731
+ ]
645
732
  }
646
733
  },
647
734
  {
648
735
  "name": "tag",
649
736
  "in": "query",
650
- "description": "Project tag filter: NORMAL|MASTER|REFERENCE",
737
+ "description": "Project tag filter",
651
738
  "schema": {
652
- "type": "string"
739
+ "type": "string",
740
+ "enum": [
741
+ "NORMAL",
742
+ "MASTER",
743
+ "REFERENCE"
744
+ ]
653
745
  }
654
746
  },
655
747
  {
@@ -6,17 +6,24 @@
6
6
  {
7
7
  "path": "/api/v2/open/metrics/{apType}/constants",
8
8
  "method": "GET",
9
- "summary": "Get metric constants",
10
- "description": "Retrieves metric scoring constants (Severity, Occurrence, Detection, Action Priorities) for the specified Analysis Type. Supports two FMEA methodologies: 'aiag' (AIAG/VDA standard) and 'msr' (Machinery Safety Regulation). Use this endpoint to fetch valid rating scales and calculation parameters required for risk assessment analysis. Commonly used when initializing FMEA worksheets, validating metric values, or configuring dropdown options. The {apType} parameter is case-insensitive but must match supported types. Returns 400 error if type is invalid.",
11
- "tags": [],
9
+ "summary": "Get metric constants for an AP type",
10
+ "description": "Returns severity, occurrence, and detection metric constants for the given action priority type (AIAG or MSR). Used to populate evaluation criteria dropdowns and compute RPN values. This endpoint is open and does not require authentication.",
11
+ "tags": [
12
+ "Metrics"
13
+ ],
12
14
  "operationId": "getMetricConstants",
13
15
  "parameters": [
14
16
  {
15
17
  "name": "apType",
16
18
  "in": "path",
19
+ "description": "Action priority type",
17
20
  "required": true,
18
21
  "schema": {
19
- "type": "string"
22
+ "type": "string",
23
+ "enum": [
24
+ "AIAG",
25
+ "MSR"
26
+ ]
20
27
  }
21
28
  }
22
29
  ],
@@ -33,14 +40,17 @@
33
40
  {
34
41
  "path": "/api/v2/system/context-version",
35
42
  "method": "GET",
36
- "summary": "Get Context Version",
37
- "description": "Fetches the current application version, deployment semantic tag, and build metadata associated with the specific API context path. Historically replaces legacy health-check endpoints. Use this modern endpoint to verify proper API deployment, check version compatibility before complex operations, or display software version in the UI footer. (Check Version / Get Release Tag / Context Information / API Revision).",
38
- "tags": [],
43
+ "summary": "Get version info for a deployed web application context",
44
+ "description": "Reads the VERSION file from the given Tomcat webapp sub-path and returns the version string and build date. Returns 400 if contextPath is missing, 404 if the VERSION file does not exist or is unreadable.",
45
+ "tags": [
46
+ "System"
47
+ ],
39
48
  "operationId": "checkContext",
40
49
  "parameters": [
41
50
  {
42
51
  "name": "contextPath",
43
52
  "in": "query",
53
+ "description": "Tomcat webapp sub-path to read the VERSION file from (e.g. 'fmea-frontend'). Leading slashes are stripped.",
44
54
  "schema": {
45
55
  "type": "string"
46
56
  }
@@ -59,9 +69,11 @@
59
69
  {
60
70
  "path": "/api/v2/system/health",
61
71
  "method": "GET",
62
- "summary": "System Health",
63
- "description": "Performs a lightweight diagnostic check and retrieves the basic operational health status of the FMEA system. Use this endpoint for load balancer pinging, uptime monitoring services (e.g., Datadog, Pingdom), or ensuring backend connectivity before user authentication. Returns a simple success payload if the core services and database connections are operational. (Health Check / System Status / Ping API / Service Heartbeat).",
64
- "tags": [],
72
+ "summary": "Health check",
73
+ "description": "Returns the current server status and UTC timestamp. Always returns HTTP 200 with status='UP' when the application is running. No authentication required.",
74
+ "tags": [
75
+ "System"
76
+ ],
65
77
  "operationId": "health",
66
78
  "parameters": [],
67
79
  "requestBody": null,
@@ -25,15 +25,21 @@
25
25
  {
26
26
  "name": "scope",
27
27
  "in": "query",
28
- "description": "Condition scope (owned|candidate|all). If omitted, defaults to all.",
28
+ "description": "Condition scope filter. If omitted, defaults to all.",
29
29
  "schema": {
30
- "type": "string"
30
+ "type": "string",
31
+ "enum": [
32
+ "OWNED",
33
+ "CANDIDATE",
34
+ "ALL"
35
+ ],
36
+ "default": "all"
31
37
  }
32
38
  },
33
39
  {
34
40
  "name": "type",
35
41
  "in": "query",
36
- "description": "Condition type (stress|design|process). If omitted, returns all types.",
42
+ "description": "Condition type filter. If omitted, returns all types.",
37
43
  "schema": {
38
44
  "type": "string",
39
45
  "enum": [
@@ -25,7 +25,7 @@
25
25
  {
26
26
  "name": "type",
27
27
  "in": "query",
28
- "description": "Condition type (stress|design|process)",
28
+ "description": "Condition type",
29
29
  "required": true,
30
30
  "schema": {
31
31
  "type": "string",
@@ -9,7 +9,9 @@
9
9
  "operationId": "getAll_1",
10
10
  "summary": "Get all action statuses",
11
11
  "description": "Returns all action status items. Used for populating action status dropdowns in worksheets.",
12
- "tags": [],
12
+ "tags": [
13
+ "Template"
14
+ ],
13
15
  "parameters": [],
14
16
  "responses": {
15
17
  "default": {
@@ -41,7 +43,9 @@
41
43
  "operationId": "create_7",
42
44
  "summary": "Create action status",
43
45
  "description": "Creates a new action status. Returns 201 with Location header. Requires ADMIN role. Throws 409 if title already exists.",
44
- "tags": [],
46
+ "tags": [
47
+ "Template"
48
+ ],
45
49
  "parameters": [],
46
50
  "requestBody": {
47
51
  "content": {
@@ -77,7 +81,9 @@
77
81
  "operationId": "getById_1",
78
82
  "summary": "Get action status by ID",
79
83
  "description": "Returns a single action status by ID. Returns 404 if not found.",
80
- "tags": [],
84
+ "tags": [
85
+ "Template"
86
+ ],
81
87
  "parameters": [
82
88
  {
83
89
  "name": "id",
@@ -116,7 +122,9 @@
116
122
  "operationId": "update_6",
117
123
  "summary": "Update action status",
118
124
  "description": "Updates an existing action status title. Returns updated DTO. Requires ADMIN role. Throws 404 if not found, 409 if title conflicts.",
119
- "tags": [],
125
+ "tags": [
126
+ "Template"
127
+ ],
120
128
  "parameters": [
121
129
  {
122
130
  "name": "id",
@@ -162,7 +170,9 @@
162
170
  "operationId": "delete_6",
163
171
  "summary": "Delete action status",
164
172
  "description": "Deletes an action status by ID. Returns 204 No Content. Requires ADMIN role. Throws 404 if not found.",
165
- "tags": [],
173
+ "tags": [
174
+ "Template"
175
+ ],
166
176
  "parameters": [
167
177
  {
168
178
  "name": "id",
@@ -32,9 +32,9 @@
32
32
  "queryMode": {
33
33
  "type": "string",
34
34
  "enum": [
35
- "referenceNode",
36
- "anchorPattern",
37
- "contextCompletion"
35
+ "REFERENCE_NODE",
36
+ "ANCHOR_PATTERN",
37
+ "CONTEXT_COMPLETION"
38
38
  ]
39
39
  },
40
40
  "query": {
@@ -270,7 +270,7 @@
270
270
  "method": "POST",
271
271
  "operationId": "rebuild",
272
272
  "summary": "Rebuild tree search index",
273
- "description": "Triggers an asynchronous full rebuild (reindex) of the Lucene tree search index for the specified domain. Use this to reindex or regenerate the search index data. Requires ADMIN privileges. Returns 202 if rebuild started, 409 if already in progress.",
273
+ "description": "Triggers an asynchronous full rebuild of the Lucene tree search index for the specified domain. Requires ADMIN privileges. Returns 202 if rebuild started, 409 if already in progress.",
274
274
  "tags": [
275
275
  "Tree Search"
276
276
  ],
@@ -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": "dept",
35
26
  "in": "query",
@@ -9,11 +9,14 @@
9
9
  "operationId": "get_7",
10
10
  "summary": "Get worksheet template",
11
11
  "description": "Returns a worksheet template. When search is provided, template headers are keyword-filtered.",
12
- "tags": [],
12
+ "tags": [
13
+ "Worksheet Templates"
14
+ ],
13
15
  "parameters": [
14
16
  {
15
17
  "name": "id",
16
18
  "in": "path",
19
+ "description": "Worksheet template ID",
17
20
  "required": true,
18
21
  "schema": {
19
22
  "type": "integer",
@@ -158,14 +161,24 @@
158
161
  "operationId": "list_13",
159
162
  "summary": "List worksheet templates",
160
163
  "description": "Returns worksheet templates filtered by FMEA type. When fmeaType is omitted, returns all templates for Design, Process, Equipment, and FA types, ordered by type and template order.",
161
- "tags": [],
164
+ "tags": [
165
+ "Worksheet Templates"
166
+ ],
162
167
  "parameters": [
163
168
  {
164
169
  "name": "fmeaType",
165
170
  "in": "query",
166
- "description": "FMEA type filter (Design|Process|Equipment|FA). Omit for all types.",
171
+ "description": "FMEA type filter. Omit for all types.",
167
172
  "schema": {
168
- "type": "string"
173
+ "type": "string",
174
+ "enum": [
175
+ "DESIGN",
176
+ "PROCESS",
177
+ "EQUIPMENT",
178
+ "FA",
179
+ "FTA",
180
+ "CPLAN"
181
+ ]
169
182
  }
170
183
  }
171
184
  ],
@@ -6,13 +6,16 @@
6
6
  {
7
7
  "path": "/api/v2/projects/{projectId}/worksheets",
8
8
  "method": "GET",
9
- "summary": "Get worksheet summaries",
10
- "description": "Retrieves a list of all worksheet summaries within a project. This endpoint provides a high-level overview (summary/directory) of available worksheets, excluding detailed content. Use this to browse, list, or enumerate worksheets before fetching specific worksheet details. The response contains basic metadata such as report numbers and titles. Ideal for dashboard views, worksheet selection interfaces, or getting a quick inventory of all worksheets in a project. No authentication required for read access.",
11
- "tags": [],
9
+ "summary": "List worksheet summaries for a project",
10
+ "description": "Returns summary information for all worksheets belonging to the given project. Each summary includes the report number, title, and status. Requires NORMAL user level.",
11
+ "tags": [
12
+ "Worksheet"
13
+ ],
12
14
  "parameters": [
13
15
  {
14
16
  "name": "projectId",
15
17
  "in": "path",
18
+ "description": "Project ID to list worksheets for",
16
19
  "required": true,
17
20
  "schema": {
18
21
  "type": "string"
@@ -118,13 +121,16 @@
118
121
  {
119
122
  "path": "/api/v2/projects/{projectId}/worksheets",
120
123
  "method": "POST",
121
- "summary": "Create worksheet",
122
- "description": "Creates a new worksheet within the specified project. Use this endpoint to initialize a blank worksheet, set up a new analysis document, or establish a fresh worksheet structure. The request accepts worksheet creation parameters via WorksheetCreationDTO. Upon successful creation, returns the report number (reportNoSimple) of the newly created worksheet. Requires NORMAL user level and PROJECT MEMBER role. This is the initiating action for any worksheet-based workflow. Common use cases include: starting a new FMEA analysis, creating additional worksheets for different subsystems, or generating worksheet templates.",
123
- "tags": [],
124
+ "summary": "Create a new worksheet in a project",
125
+ "description": "Creates a new worksheet under the given project using the provided creation DTO. Returns HTTP 201 Created with a Location header pointing to the new worksheet. Requires NORMAL user level and project MEMBER role.",
126
+ "tags": [
127
+ "Worksheet"
128
+ ],
124
129
  "parameters": [
125
130
  {
126
131
  "name": "projectId",
127
132
  "in": "path",
133
+ "description": "Project ID to create the worksheet under",
128
134
  "required": true,
129
135
  "schema": {
130
136
  "type": "string"
@@ -177,13 +183,16 @@
177
183
  {
178
184
  "path": "/api/v2/projects/{projectId}/worksheets/{reportNoSimple}",
179
185
  "method": "GET",
180
- "summary": "Get worksheet by report number",
181
- "description": "Fetches the complete details of a specific worksheet identified by its report number. The reportNoSimple parameter accepts formats like '3' or '3-1' (handling sub-worksheets via ReportNoSetDTO). Returns the full worksheet data including all rows, columns, headers, and cell values. Use this endpoint after listing summaries to retrieve detailed content for editing or analysis. Requires NORMAL user level. Common scenarios include: loading a worksheet for editing, viewing worksheet content, exporting worksheet data, or fetching worksheet structure for UI rendering. This is the primary read operation for full worksheet content.",
182
- "tags": [],
186
+ "summary": "Get worksheet detail by report number",
187
+ "description": "Returns the full worksheet detail for the given report number within a project. Report number format: 'N' for primary only (e.g. '3'), or 'N-M' for primary-secondary (e.g. '3-1'). The '#' prefix is optional and will be stripped. Requires NORMAL user level.",
188
+ "tags": [
189
+ "Worksheet"
190
+ ],
183
191
  "parameters": [
184
192
  {
185
193
  "name": "projectId",
186
194
  "in": "path",
195
+ "description": "Project ID the worksheet belongs to",
187
196
  "required": true,
188
197
  "schema": {
189
198
  "type": "string"
@@ -192,6 +201,7 @@
192
201
  {
193
202
  "name": "reportNoSimple",
194
203
  "in": "path",
204
+ "description": "Report number: 'N' (primary) or 'N-M' (primary-secondary), e.g. '3-1'",
195
205
  "required": true,
196
206
  "schema": {
197
207
  "type": "string"
@@ -270,13 +280,16 @@
270
280
  {
271
281
  "path": "/api/v2/projects/{projectId}/worksheets/{reportNoSimple}",
272
282
  "method": "PUT",
273
- "summary": "Update worksheet",
274
- "description": "Updates and saves changes to an existing worksheet identified by its report number. Accepts WorksheetSaveDTO containing modified worksheet data including cell values, structure changes, and metadata updates. The reportNoSimple parameter supports both simple numbers ('3') and sub-worksheet notation ('3-1'). All changes are persisted to the database. Requires NORMAL user level and PROJECT MEMBER role with write permissions. Common use cases: saving worksheet edits, updating cell values, modifying worksheet structure, applying bulk changes, or synchronizing client-side modifications. This is the primary write operation for worksheets and should be called after any user modifications to persist data.",
275
- "tags": [],
283
+ "summary": "Save worksheet data by report number",
284
+ "description": "Saves (updates) the worksheet content for the given report number. Accepts a WorksheetSaveDTO containing row data and column values. Requires NORMAL user level and project MEMBER role.",
285
+ "tags": [
286
+ "Worksheet"
287
+ ],
276
288
  "parameters": [
277
289
  {
278
290
  "name": "projectId",
279
291
  "in": "path",
292
+ "description": "Project ID the worksheet belongs to",
280
293
  "required": true,
281
294
  "schema": {
282
295
  "type": "string"
@@ -285,6 +298,7 @@
285
298
  {
286
299
  "name": "reportNoSimple",
287
300
  "in": "path",
301
+ "description": "Report number: 'N' (primary) or 'N-M' (primary-secondary), e.g. '3-1'",
288
302
  "required": true,
289
303
  "schema": {
290
304
  "type": "string"
@@ -419,13 +433,16 @@
419
433
  {
420
434
  "path": "/api/v2/projects/{projectId}/worksheets/{reportNoSimple}",
421
435
  "method": "DELETE",
422
- "summary": "Delete worksheet",
423
- "description": "Permanently removes a worksheet from the project using its report number identifier. The reportNoSimple parameter accepts formats like '3' or '3-1' for sub-worksheets. This operation is irreversible and will delete all worksheet data including rows, columns, cell values, and associated metadata. Requires NORMAL user level and PROJECT MEMBER role. Use with caution as deleted worksheets cannot be recovered without database restore. Common scenarios: removing obsolete worksheets, cleaning up test data, deleting unused analysis documents, or managing worksheet lifecycle. Consider archiving instead of deleting if the worksheet might be needed for future reference.",
424
- "tags": [],
436
+ "summary": "Delete worksheet by report number",
437
+ "description": "Deletes the worksheet identified by the report number within the project. Returns HTTP 200 on success. Requires NORMAL user level and project MEMBER role.",
438
+ "tags": [
439
+ "Worksheet"
440
+ ],
425
441
  "parameters": [
426
442
  {
427
443
  "name": "projectId",
428
444
  "in": "path",
445
+ "description": "Project ID the worksheet belongs to",
429
446
  "required": true,
430
447
  "schema": {
431
448
  "type": "string"
@@ -434,6 +451,7 @@
434
451
  {
435
452
  "name": "reportNoSimple",
436
453
  "in": "path",
454
+ "description": "Report number: 'N' (primary) or 'N-M' (primary-secondary), e.g. '3-1'",
437
455
  "required": true,
438
456
  "schema": {
439
457
  "type": "string"