Invoke an agent tool
Invokes one high-level Backwork tool through the controlled agent access layer.
Endpoint: POST /api/v1/agent/tools/{tool}
Availability: Live in production.
Authentication: API key in Authorization: Bearer <key> with the read scope.
Invokes one high-level Backwork tool through the controlled agent access layer. Use GET /agent/tools first to fetch the exact input schema for each tool. Read tools accept read, admin, agent:tool:*, or the tool-specific agent:tool:<tool_id> scope; write tools require write, admin, agent:tool:*, or the tool-specific scope. A key that holds any agent:tool: scope is limited to its agent scopes. acknowledge_policy_change also requires a plan with compliance dashboard access. Requests containing patient-identifying field names are rejected with PHI_NOT_ALLOWED.
Parameters
tool(path, required): Agent tool IDX-Backwork-Agent(header): Optional agent name recorded in the invocation ledger. Must not contain PHI.X-Backwork-Approval(header): Set toreviewedonly after authorized review for tools that return approval_required=true.
Example request
curl -X POST "https://backworkhealth.com/api/v1/agent/tools/check_coverage" \
-H "Authorization: Bearer $BACKWORK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"code": "string"
}'Example response (200)
{
"success": true,
"data": {},
"meta": {
"request_id": "string",
"timestamp": "2026-01-15T10:30:00Z",
"tool": "check_coverage",
"actor_type": "api_client",
"actor_name": "string",
"approval_status": "not_required"
}
}Authorization
bearerAuth API key in format: bwk_live_xxxxx. Keys issued before the rename (vrt_live_) remain valid. bwk_test_ keys work only on the sandbox.
In: header
Path Parameters
Agent tool ID
Value in
- "check_coverage"
- "validate_claim"
- "find_policies"
- "check_updates"
- "acknowledge_policy_change"
Header Parameters
Optional agent name recorded in the invocation ledger. Must not contain PHI.
length <= 120Set to reviewed only after authorized review for tools that return approval_required=true.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Tool-specific input. Fetch /agent/tools for the exact JSON schema for each tool.
Tool-specific input. Fetch /agent/tools for the exact JSON schema for each tool.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/agent/tools/check_coverage" \ -H "Content-Type: application/json" \ -d '{ "code": "string" }'{ "success": true, "data": { "property1": null, "property2": null }, "meta": { "request_id": "string", "timestamp": "2019-08-24T14:15:22Z", "tool": "check_coverage", "actor_type": "api_client", "actor_name": "string", "approval_status": "not_required" }}Last updated on
List agent tools
Returns the machine-readable tool catalog for controlled agent access, including input and output schemas, required scopes, approval posture, and whether the authenticated key can invoke each tool.
Research prior authorization requirements
Use AI-powered web research to find prior authorization requirements directly from payer websites.