Call SecObserve Action
secobserve_call_actionInvoke any non-CRUD SecObserve action like apply_rules, simulate, or export observations when no dedicated tool covers it.
Instructions
Invoke a named non-CRUD action on a resource (apply_rules, copy, simulate, exports, ...).
This is the escape hatch for the long tail of SecObserve endpoints that are neither CRUD nor common enough to deserve their own tool. secobserve_list_resources lists every action with its verb and whether it needs an id. Actions that return a file are written to the server's export directory and the path is reported.
Prefer the dedicated tools where they exist: secobserve_assess_observation, secobserve_bulk_assess_observations, secobserve_approve_observation_log, secobserve_run_periodic_task. They validate the payload; this tool does not.
Args: resource (str): Resource owning the action. action (str): Action name (bare name, no slashes). id (Optional[int]): Required for detail actions, omitted for collection ones. body (Optional[dict]): JSON body for POST/PATCH actions. params (Optional[dict]): Query parameters for GET actions. method (Optional[str]): Override the default verb (only needed for product_notifications/override, which is POST to set and DELETE to clear). filename (Optional[str]): Base filename for file-returning actions. response_format (ResponseFormat): "markdown" or "json".
Returns: str: For JSON actions, the response body as markdown or JSON (a list response is rendered as items with pagination-style metadata, and a list too long for the result budget is cut to the rows that fit, with a "trimmed" block saying so; such a list is not paginated, so the rest is reachable only by narrowing the request). For file actions, a line giving the absolute path and byte size written. For empty 204 responses, a confirmation that the action was accepted.
Examples: - Use when: "re-apply rules to product 12" -> resource="products", action="apply_rules", id=12 - Use when: "how many observations would this rule match?" -> resource="general_rules", action="simulate", id=4, body={...rule definition...} - Use when: "export product 12's observations to Excel" -> resource="products", action="export_observations_excel", id=12 - Don't use when: a dedicated tool covers it (assessments, approvals, imports, scans, metrics, periodic tasks).
Error Handling: Unknown action -> error listing the resource's valid actions. Missing or stray id -> error saying which the action needs. Read-only mode blocks every non-GET action.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Record id. Required for detail actions, must be omitted for collection actions. | |
| body | No | JSON request body, for POST/PATCH actions. | |
| action | Yes | Action name as listed by secobserve_list_resources, e.g. 'apply_rules'. | |
| method | No | Override the action's default verb. Only 'product_notifications/override' needs this (POST or DELETE). | |
| params | No | Query parameters, for GET actions. | |
| filename | No | For export actions that return a file: the base filename to write into the export directory. No directory separators. Defaults to '<resource>-<action>-<id>'. | |
| resource | Yes | Resource the action belongs to, e.g. 'products', 'license_policies'. | |
| response_format | No | 'markdown' for reading, 'json' for further processing. | markdown |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |