apex_execute
Execute Apex REST requests to interact with Salesforce data by specifying endpoints, HTTP methods, and data payloads for streamlined integration and automation.
Instructions
Executes an Apex REST request
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | The Apex REST endpoint to call (e.g., '/MyApexClass') | |
| data | No | Data for POST/PATCH requests | |
| method | No | The HTTP method (default: 'GET') | GET |
Implementation Reference
- src/salesforce/server.py:433-449 (handler)Handler implementation for the 'apex_execute' tool within the tool dispatch function. Extracts arguments, validates, calls Salesforce's apeExecute method, and returns the JSON-formatted result.elif name == "apex_execute": action = arguments.get("action") method = arguments.get("method", "GET") data = arguments.get("data") if not action: raise ValueError("Missing 'action' argument") if not sf_client.sf: raise ValueError("Salesforce connection not established.") results = sf_client.sf.apexecute(action, method=method, data=data) return [ types.TextContent( type="text", text=f"Apex Execute Result (JSON):\n{json.dumps(results, indent=2)}", ) ]
- src/salesforce/server.py:255-280 (registration)Registration of the 'apex_execute' tool in the list_tools() function, including name, description, and input schema definition.types.Tool( name="apex_execute", description="Executes an Apex REST request", inputSchema={ "type": "object", "properties": { "action": { "type": "string", "description": "The Apex REST endpoint to call (e.g., '/MyApexClass')", }, "method": { "type": "string", "description": "The HTTP method (default: 'GET')", "enum": ["GET", "POST", "PATCH", "DELETE"], "default": "GET", }, "data": { "type": "object", "description": "Data for POST/PATCH requests", "properties": {}, "additionalProperties": True, }, }, "required": ["action"], }, ),