FetchStreamTransport
Production transport that connects to a LangGraph Platform API via HTTP and SSE.
Creates threads automatically if no threadId is provided, and streams events using the LangGraph SDK client.
import { FetchStreamTransport } from '@threadplane/langgraph';Declaration
export declare class FetchStreamTransport implements AgentTransport {
constructor(apiUrl: string, onThreadId?: (id: string) => void, clientOptions?: LangGraphClientOptions,
reportOperationFailure?: RuntimeOperationFailureReporter);
cancelRun(threadId: string, runId: string, signal: AbortSignal): Promise<void>;
createQueuedRun(assistantId: string, threadId: string, payload: unknown, signal: AbortSignal, options?: LangGraphSubmitOptions): Promise<AgentQueueEntry>;
getChildState(threadId: string, checkpointNs: string, signal: AbortSignal): Promise<ThreadState | undefined>;
getHistory(threadId: string, signal: AbortSignal): Promise<ThreadState[]>;
getState(threadId: string, checkpoint: OwnedCheckpointPosition, signal: AbortSignal): Promise<ThreadState>;
joinStream(threadId: string, runId: string, lastEventId: string | undefined, signal: AbortSignal, options?: {
streamMode?: StreamMode[];
}): AsyncIterable<StreamEvent>;
stream(assistantId: string, threadId: string | null, payload: unknown, signal: AbortSignal, options?: LangGraphSubmitOptions): AsyncIterable<StreamEvent>;
updateState(threadId: string, values: Record<string, unknown>, signal: AbortSignal, options?: {
asNode?: string;
checkpoint?: OwnedCheckpointPosition;
}): Promise<void | OwnedCheckpointPosition>;
}Examples
const transport = new FetchStreamTransport(
'http://localhost:2024',
(id) => console.log('New thread:', id),
);Members
Constructor · overload 1
Constructs a new instance of the FetchStreamTransport class
constructor(apiUrl: string, onThreadId?: (id: string) => void, clientOptions?: LangGraphClientOptions,
reportOperationFailure?: RuntimeOperationFailureReporter);Parameters
apiUrl· requiredstringBase URL of the LangGraph Platform API
onThreadId· optional(id: string) => voidOptional callback invoked when a new thread is created
clientOptions· optionalLangGraphClientOptionsOptional SDK client tuning (e.g.
maxRetries)reportOperationFailure· optionalRuntimeOperationFailureReporter
cancelRun · overload 1
Cancel a server-side run.
cancelRun(threadId: string, runId: string, signal: AbortSignal): Promise<void>;Parameters
threadId· requiredstringrunId· requiredstringsignal· requiredAbortSignal
Returns
Promise<void>createQueuedRun · overload 1
Create a pending server-side run using LangGraph's enqueue strategy.
createQueuedRun(assistantId: string, threadId: string, payload: unknown, signal: AbortSignal, options?: LangGraphSubmitOptions): Promise<AgentQueueEntry>;Parameters
assistantId· requiredstringthreadId· requiredstringpayload· requiredunknownsignal· requiredAbortSignaloptions· optionalLangGraphSubmitOptions
Returns
Promise<AgentQueueEntry>getChildState · overload 1
Read the newest checkpoint saved under one child checkpoint namespace.
getChildState(threadId: string, checkpointNs: string, signal: AbortSignal): Promise<ThreadState | undefined>;Parameters
threadId· requiredstringcheckpointNs· requiredstringsignal· requiredAbortSignal
Returns
Promise<ThreadState | undefined>getHistory · overload 1
Load persisted checkpoint history for a thread.
getHistory(threadId: string, signal: AbortSignal): Promise<ThreadState[]>;Parameters
threadId· requiredstringsignal· requiredAbortSignal
Returns
Promise<ThreadState[]>getState · overload 1
Read one exact saved checkpoint with the command's cancellation signal.
getState(threadId: string, checkpoint: OwnedCheckpointPosition, signal: AbortSignal): Promise<ThreadState>;Parameters
threadId· requiredstringcheckpoint· requiredOwnedCheckpointPositionsignal· requiredAbortSignal
Returns
Promise<ThreadState>joinStream · overload 1
Join an already-started run without creating a new thread.
joinStream(threadId: string, runId: string, lastEventId: string | undefined, signal: AbortSignal, options?: {
streamMode?: StreamMode[];
}): AsyncIterable<StreamEvent>;Parameters
threadId· requiredstringrunId· requiredstringlastEventId· requiredstring | undefinedsignal· requiredAbortSignaloptions· optional{ streamMode?: StreamMode[]; }
Returns
AsyncIterable<StreamEvent>stream · overload 1
Open a streaming connection, creating a thread if needed.
stream(assistantId: string, threadId: string | null, payload: unknown, signal: AbortSignal, options?: LangGraphSubmitOptions): AsyncIterable<StreamEvent>;Parameters
assistantId· requiredstringthreadId· requiredstring | nullpayload· requiredunknownsignal· requiredAbortSignaloptions· optionalLangGraphSubmitOptions
Returns
AsyncIterable<StreamEvent>updateState · overload 1
Update state once and return only usable root routing, when supplied.
updateState(threadId: string, values: Record<string, unknown>, signal: AbortSignal, options?: {
asNode?: string;
checkpoint?: OwnedCheckpointPosition;
}): Promise<void | OwnedCheckpointPosition>;Parameters
threadId· requiredstringvalues· requiredRecord<string, unknown>signal· requiredAbortSignaloptions· optional{ asNode?: string; checkpoint?: OwnedCheckpointPosition; }
Returns
Promise<void | OwnedCheckpointPosition>