@fetch-hive/sdk package when you want to send a message to an agent from Node.js or TypeScript. The SDK wraps the public POST /v1/agent/invoke endpoint, handles authentication, exposes streaming as an AsyncIterable, and supports multimodal inputs.
Installation
fetch) and ships with TypeScript types.
Authentication
Set theFETCH_HIVE_API_KEY environment variable to your workspace API key:
Basic example
Send a message to an agent and read the final response:Method reference
The SDK injects
streaming: false for invokeAgent. To stream, use invokeAgentStream (below).
Handling the response
Streaming
UseinvokeAgentStream to receive Server-Sent Events as they arrive. The method returns an AsyncIterable:
summary (when auto-summarization fires), reasoning, response, tool, a final usage event, or an error event if the provider fails mid-stream.
Multi-turn conversations
Persistent threads
Pass any string asthread_id and Fetch Hive will create the thread on the first call and resume it on subsequent calls with the same value:
Stateless history
Manage state yourself by passing the previous turns inmessages. Fetch Hive uses the supplied history for context but does not persist it:
Multimodal inputs
Attach images to the current message withattachments:
https://.
Configuration
Errors
Non-2xx responses throw anError whose message includes the status code and response body:
Links
Next steps
- Run with API - The same flow with cURL
- Run with Python SDK
- Run with Ruby SDK
- Run with PHP SDK
- Invoke Agent - Full endpoint reference
Tool approvals
When a tool needs approval, the invoke response hasstatus: "awaiting_approval" and pending_tool_approvals. Decide with decideToolActionApproval(workspaceId, approvalId, "allow_once") or "deny". List pending approvals with listToolActionApprovals, or fetch one with getToolActionApproval. always_allow is only available in the dashboard.
An API key call resumes on the server after the decision. Poll the run or use the webhook. Do not send decided_tool_approvals.
A workspace owner or admin can allow this API key to auto-approve actions in Settings → API keys. Pass tool_approval: "auto_approve" on invokeAgent, invokeAgentStream, or invokeWorkflow. That applies to this call only. Omit the field, or send "policy", to follow workspace rules and any saved auto-approve switch. Destructive actions still ask. Deny rules still block the action. See Tool approvals.
