**[@langchain/langgraph-sdk](https://github.com/langchain-ai/langgraph/tree/main/libs/sdk-js)** *** ## [@langchain/langgraph-sdk](https://github.com/langchain-ai/langgraph/tree/main/libs/sdk-js) ### Classes - [AssistantsClient](#classesassistantsclientmd) - [Client](#classesclientmd) - [CronsClient](#classescronsclientmd) - [RunsClient](#classesrunsclientmd) - [StoreClient](#classesstoreclientmd) - [ThreadsClient](#classesthreadsclientmd) ### Interfaces - [ClientConfig](#interfacesclientconfigmd) ### Functions - [getApiKey](#functionsgetapikeymd) **@langchain/langgraph-sdk** *** ## @langchain/langgraph-sdk/auth ### Classes - [Auth](#authclassesauthmd) - [HTTPException](#authclasseshttpexceptionmd) ### Interfaces - [AuthEventValueMap](#authinterfacesautheventvaluemapmd) ### Type Aliases - [AuthFilters](#authtype-aliasesauthfiltersmd) [**@langchain/langgraph-sdk**](#authreadmemd) *** [@langchain/langgraph-sdk](#authreadmemd) / Auth ## Class: Auth\ Defined in: [src/auth/index.ts:11](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/index.ts#L11) ### Type Parameters • **TExtra** = \{\} • **TAuthReturn** *extends* `BaseAuthReturn` = `BaseAuthReturn` • **TUser** *extends* `BaseUser` = `ToUserLike`\<`TAuthReturn`\> ### Constructors #### new Auth() > **new Auth**\<`TExtra`, `TAuthReturn`, `TUser`\>(): [`Auth`](#authclassesauthmd)\<`TExtra`, `TAuthReturn`, `TUser`\> ##### Returns [`Auth`](#authclassesauthmd)\<`TExtra`, `TAuthReturn`, `TUser`\> ### Methods #### authenticate() > **authenticate**\<`T`\>(`cb`): [`Auth`](#authclassesauthmd)\<`TExtra`, `T`\> Defined in: [src/auth/index.ts:25](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/index.ts#L25) ##### Type Parameters • **T** *extends* `BaseAuthReturn` ##### Parameters ###### cb `AuthenticateCallback`\<`T`\> ##### Returns [`Auth`](#authclassesauthmd)\<`TExtra`, `T`\> *** #### on() > **on**\<`T`\>(`event`, `callback`): `this` Defined in: [src/auth/index.ts:32](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/index.ts#L32) ##### Type Parameters • **T** *extends* `CallbackEvent` ##### Parameters ###### event `T` ###### callback `OnCallback`\<`T`, `TUser`\> ##### Returns `this` [**@langchain/langgraph-sdk**](#authreadmemd) *** [@langchain/langgraph-sdk](#authreadmemd) / HTTPException ## Class: HTTPException Defined in: [src/auth/error.ts:66](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/error.ts#L66) ### Extends - `Error` ### Constructors #### new HTTPException() > **new HTTPException**(`status`, `options`?): [`HTTPException`](#authclasseshttpexceptionmd) Defined in: [src/auth/error.ts:70](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/error.ts#L70) ##### Parameters ###### status `number` ###### options? ####### cause? `unknown` ####### headers? `HeadersInit` ####### message? `string` ##### Returns [`HTTPException`](#authclasseshttpexceptionmd) ##### Overrides `Error.constructor` ### Properties #### cause? > `optional` **cause**: `unknown` Defined in: node\_modules/typescript/lib/lib.es2022.error.d.ts:24 ##### Inherited from `Error.cause` *** #### headers > **headers**: `HeadersInit` Defined in: [src/auth/error.ts:68](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/error.ts#L68) *** #### message > **message**: `string` Defined in: node\_modules/typescript/lib/lib.es5.d.ts:1077 ##### Inherited from `Error.message` *** #### name > **name**: `string` Defined in: node\_modules/typescript/lib/lib.es5.d.ts:1076 ##### Inherited from `Error.name` *** #### stack? > `optional` **stack**: `string` Defined in: node\_modules/typescript/lib/lib.es5.d.ts:1078 ##### Inherited from `Error.stack` *** #### status > **status**: `number` Defined in: [src/auth/error.ts:67](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/error.ts#L67) *** #### prepareStackTrace()? > `static` `optional` **prepareStackTrace**: (`err`, `stackTraces`) => `any` Defined in: node\_modules/@types/node/globals.d.ts:28 Optional override for formatting stack traces ##### Parameters ###### err `Error` ###### stackTraces `CallSite`[] ##### Returns `any` ##### See https://v8.dev/docs/stack-trace-api#customizing-stack-traces ##### Inherited from `Error.prepareStackTrace` *** #### stackTraceLimit > `static` **stackTraceLimit**: `number` Defined in: node\_modules/@types/node/globals.d.ts:30 ##### Inherited from `Error.stackTraceLimit` ### Methods #### captureStackTrace() > `static` **captureStackTrace**(`targetObject`, `constructorOpt`?): `void` Defined in: node\_modules/@types/node/globals.d.ts:21 Create .stack property on a target object ##### Parameters ###### targetObject `object` ###### constructorOpt? `Function` ##### Returns `void` ##### Inherited from `Error.captureStackTrace` [**@langchain/langgraph-sdk**](#authreadmemd) *** [@langchain/langgraph-sdk](#authreadmemd) / AuthEventValueMap ## Interface: AuthEventValueMap Defined in: [src/auth/types.ts:218](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L218) ### Properties #### assistants:create > **assistants:create**: `object` Defined in: [src/auth/types.ts:226](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L226) ##### assistant\_id? > `optional` **assistant\_id**: `Maybe`\<`string`\> ##### config? > `optional` **config**: `Maybe`\<`AssistantConfig`\> ##### graph\_id > **graph\_id**: `string` ##### if\_exists? > `optional` **if\_exists**: `Maybe`\<`"raise"` \| `"do_nothing"`\> ##### metadata? > `optional` **metadata**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### name? > `optional` **name**: `Maybe`\<`string`\> *** #### assistants:delete > **assistants:delete**: `object` Defined in: [src/auth/types.ts:229](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L229) ##### assistant\_id > **assistant\_id**: `string` *** #### assistants:read > **assistants:read**: `object` Defined in: [src/auth/types.ts:227](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L227) ##### assistant\_id > **assistant\_id**: `string` ##### metadata? > `optional` **metadata**: `Maybe`\<`Record`\<`string`, `unknown`\>\> *** #### assistants:search > **assistants:search**: `object` Defined in: [src/auth/types.ts:230](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L230) ##### graph\_id? > `optional` **graph\_id**: `Maybe`\<`string`\> ##### limit? > `optional` **limit**: `Maybe`\<`number`\> ##### metadata? > `optional` **metadata**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### offset? > `optional` **offset**: `Maybe`\<`number`\> *** #### assistants:update > **assistants:update**: `object` Defined in: [src/auth/types.ts:228](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L228) ##### assistant\_id > **assistant\_id**: `string` ##### config? > `optional` **config**: `Maybe`\<`AssistantConfig`\> ##### graph\_id? > `optional` **graph\_id**: `Maybe`\<`string`\> ##### metadata? > `optional` **metadata**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### name? > `optional` **name**: `Maybe`\<`string`\> ##### version? > `optional` **version**: `Maybe`\<`number`\> *** #### crons:create > **crons:create**: `object` Defined in: [src/auth/types.ts:232](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L232) ##### cron\_id? > `optional` **cron\_id**: `Maybe`\<`string`\> ##### end\_time? > `optional` **end\_time**: `Maybe`\<`string`\> ##### payload? > `optional` **payload**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### schedule > **schedule**: `string` ##### thread\_id? > `optional` **thread\_id**: `Maybe`\<`string`\> ##### user\_id? > `optional` **user\_id**: `Maybe`\<`string`\> *** #### crons:delete > **crons:delete**: `object` Defined in: [src/auth/types.ts:235](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L235) ##### cron\_id > **cron\_id**: `string` *** #### crons:read > **crons:read**: `object` Defined in: [src/auth/types.ts:233](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L233) ##### cron\_id > **cron\_id**: `string` *** #### crons:search > **crons:search**: `object` Defined in: [src/auth/types.ts:236](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L236) ##### assistant\_id? > `optional` **assistant\_id**: `Maybe`\<`string`\> ##### limit? > `optional` **limit**: `Maybe`\<`number`\> ##### offset? > `optional` **offset**: `Maybe`\<`number`\> ##### thread\_id? > `optional` **thread\_id**: `Maybe`\<`string`\> *** #### crons:update > **crons:update**: `object` Defined in: [src/auth/types.ts:234](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L234) ##### cron\_id > **cron\_id**: `string` ##### payload? > `optional` **payload**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### schedule? > `optional` **schedule**: `Maybe`\<`string`\> *** #### store:delete > **store:delete**: `object` Defined in: [src/auth/types.ts:242](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L242) ##### key > **key**: `string` ##### namespace? > `optional` **namespace**: `Maybe`\<`string`[]\> *** #### store:get > **store:get**: `object` Defined in: [src/auth/types.ts:239](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L239) ##### key > **key**: `string` ##### namespace > **namespace**: `Maybe`\<`string`[]\> *** #### store:list\_namespaces > **store:list\_namespaces**: `object` Defined in: [src/auth/types.ts:241](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L241) ##### limit? > `optional` **limit**: `Maybe`\<`number`\> ##### max\_depth? > `optional` **max\_depth**: `Maybe`\<`number`\> ##### namespace? > `optional` **namespace**: `Maybe`\<`string`[]\> ##### offset? > `optional` **offset**: `Maybe`\<`number`\> ##### suffix? > `optional` **suffix**: `Maybe`\<`string`[]\> *** #### store:put > **store:put**: `object` Defined in: [src/auth/types.ts:238](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L238) ##### key > **key**: `string` ##### namespace > **namespace**: `string`[] ##### value > **value**: `Record`\<`string`, `unknown`\> *** #### store:search > **store:search**: `object` Defined in: [src/auth/types.ts:240](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L240) ##### filter? > `optional` **filter**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### limit? > `optional` **limit**: `Maybe`\<`number`\> ##### namespace? > `optional` **namespace**: `Maybe`\<`string`[]\> ##### offset? > `optional` **offset**: `Maybe`\<`number`\> ##### query? > `optional` **query**: `Maybe`\<`string`\> *** #### threads:create > **threads:create**: `object` Defined in: [src/auth/types.ts:219](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L219) ##### if\_exists? > `optional` **if\_exists**: `Maybe`\<`"raise"` \| `"do_nothing"`\> ##### metadata? > `optional` **metadata**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### thread\_id? > `optional` **thread\_id**: `Maybe`\<`string`\> *** #### threads:create\_run > **threads:create\_run**: `object` Defined in: [src/auth/types.ts:224](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L224) ##### after\_seconds? > `optional` **after\_seconds**: `Maybe`\<`number`\> ##### assistant\_id > **assistant\_id**: `string` ##### if\_not\_exists? > `optional` **if\_not\_exists**: `Maybe`\<`"reject"` \| `"create"`\> ##### kwargs > **kwargs**: `Record`\<`string`, `unknown`\> ##### metadata? > `optional` **metadata**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### multitask\_strategy? > `optional` **multitask\_strategy**: `Maybe`\<`"reject"` \| `"interrupt"` \| `"rollback"` \| `"enqueue"`\> ##### prevent\_insert\_if\_inflight? > `optional` **prevent\_insert\_if\_inflight**: `Maybe`\<`boolean`\> ##### run\_id > **run\_id**: `string` ##### status > **status**: `Maybe`\<`"pending"` \| `"running"` \| `"error"` \| `"success"` \| `"timeout"` \| `"interrupted"`\> ##### thread\_id? > `optional` **thread\_id**: `Maybe`\<`string`\> *** #### threads:delete > **threads:delete**: `object` Defined in: [src/auth/types.ts:222](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L222) ##### run\_id? > `optional` **run\_id**: `Maybe`\<`string`\> ##### thread\_id? > `optional` **thread\_id**: `Maybe`\<`string`\> *** #### threads:read > **threads:read**: `object` Defined in: [src/auth/types.ts:220](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L220) ##### thread\_id? > `optional` **thread\_id**: `Maybe`\<`string`\> *** #### threads:search > **threads:search**: `object` Defined in: [src/auth/types.ts:223](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L223) ##### limit? > `optional` **limit**: `Maybe`\<`number`\> ##### metadata? > `optional` **metadata**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### offset? > `optional` **offset**: `Maybe`\<`number`\> ##### status? > `optional` **status**: `Maybe`\<`"error"` \| `"interrupted"` \| `"idle"` \| `"busy"` \| `string` & `object`\> ##### thread\_id? > `optional` **thread\_id**: `Maybe`\<`string`\> ##### values? > `optional` **values**: `Maybe`\<`Record`\<`string`, `unknown`\>\> *** #### threads:update > **threads:update**: `object` Defined in: [src/auth/types.ts:221](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L221) ##### action? > `optional` **action**: `Maybe`\<`"interrupt"` \| `"rollback"`\> ##### metadata? > `optional` **metadata**: `Maybe`\<`Record`\<`string`, `unknown`\>\> ##### thread\_id? > `optional` **thread\_id**: `Maybe`\<`string`\> [**@langchain/langgraph-sdk**](#authreadmemd) *** [@langchain/langgraph-sdk](#authreadmemd) / AuthFilters ## Type Alias: AuthFilters\ > **AuthFilters**\<`TKey`\>: \{ \[key in TKey\]: string \| \{ \[op in "$contains" \| "$eq"\]?: string \} \} Defined in: [src/auth/types.ts:367](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/auth/types.ts#L367) ### Type Parameters • **TKey** *extends* `string` \| `number` \| `symbol` [**@langchain/langgraph-sdk**](#readmemd) *** [@langchain/langgraph-sdk](#readmemd) / AssistantsClient ## Class: AssistantsClient Defined in: [client.ts:294](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L294) ### Extends - `BaseClient` ### Constructors #### new AssistantsClient() > **new AssistantsClient**(`config`?): [`AssistantsClient`](#classesassistantsclientmd) Defined in: [client.ts:88](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L88) ##### Parameters ###### config? [`ClientConfig`](#interfacesclientconfigmd) ##### Returns [`AssistantsClient`](#classesassistantsclientmd) ##### Inherited from `BaseClient.constructor` ### Methods #### create() > **create**(`payload`): `Promise`\<`Assistant`\> Defined in: [client.ts:359](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L359) Create a new assistant. ##### Parameters ###### payload Payload for creating an assistant. ####### assistantId? `string` ####### config? `Config` ####### description? `string` ####### graphId `string` ####### ifExists? `OnConflictBehavior` ####### metadata? `Metadata` ####### name? `string` ##### Returns `Promise`\<`Assistant`\> The created assistant. *** #### delete() > **delete**(`assistantId`): `Promise`\<`void`\> Defined in: [client.ts:415](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L415) Delete an assistant. ##### Parameters ###### assistantId `string` ID of the assistant. ##### Returns `Promise`\<`void`\> *** #### get() > **get**(`assistantId`): `Promise`\<`Assistant`\> Defined in: [client.ts:301](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L301) Get an assistant by ID. ##### Parameters ###### assistantId `string` The ID of the assistant. ##### Returns `Promise`\<`Assistant`\> Assistant *** #### getGraph() > **getGraph**(`assistantId`, `options`?): `Promise`\<`AssistantGraph`\> Defined in: [client.ts:311](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L311) Get the JSON representation of the graph assigned to a runnable ##### Parameters ###### assistantId `string` The ID of the assistant. ###### options? ####### xray? `number` \| `boolean` Whether to include subgraphs in the serialized graph representation. If an integer value is provided, only subgraphs with a depth less than or equal to the value will be included. ##### Returns `Promise`\<`AssistantGraph`\> Serialized graph *** #### getSchemas() > **getSchemas**(`assistantId`): `Promise`\<`GraphSchema`\> Defined in: [client.ts:325](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L325) Get the state and config schema of the graph assigned to a runnable ##### Parameters ###### assistantId `string` The ID of the assistant. ##### Returns `Promise`\<`GraphSchema`\> Graph schema *** #### getSubgraphs() > **getSubgraphs**(`assistantId`, `options`?): `Promise`\<`Subgraphs`\> Defined in: [client.ts:336](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L336) Get the schemas of an assistant by ID. ##### Parameters ###### assistantId `string` The ID of the assistant to get the schema of. ###### options? Additional options for getting subgraphs, such as namespace or recursion extraction. ####### namespace? `string` ####### recurse? `boolean` ##### Returns `Promise`\<`Subgraphs`\> The subgraphs of the assistant. *** #### getVersions() > **getVersions**(`assistantId`, `payload`?): `Promise`\<`AssistantVersion`[]\> Defined in: [client.ts:453](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L453) List all versions of an assistant. ##### Parameters ###### assistantId `string` ID of the assistant. ###### payload? ####### limit? `number` ####### metadata? `Metadata` ####### offset? `number` ##### Returns `Promise`\<`AssistantVersion`[]\> List of assistant versions. *** #### search() > **search**(`query`?): `Promise`\<`Assistant`[]\> Defined in: [client.ts:426](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L426) List assistants. ##### Parameters ###### query? Query options. ####### graphId? `string` ####### limit? `number` ####### metadata? `Metadata` ####### offset? `number` ####### sortBy? `AssistantSortBy` ####### sortOrder? `SortOrder` ##### Returns `Promise`\<`Assistant`[]\> List of assistants. *** #### setLatest() > **setLatest**(`assistantId`, `version`): `Promise`\<`Assistant`\> Defined in: [client.ts:481](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L481) Change the version of an assistant. ##### Parameters ###### assistantId `string` ID of the assistant. ###### version `number` The version to change to. ##### Returns `Promise`\<`Assistant`\> The updated assistant. *** #### update() > **update**(`assistantId`, `payload`): `Promise`\<`Assistant`\> Defined in: [client.ts:388](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L388) Update an assistant. ##### Parameters ###### assistantId `string` ID of the assistant. ###### payload Payload for updating the assistant. ####### config? `Config` ####### description? `string` ####### graphId? `string` ####### metadata? `Metadata` ####### name? `string` ##### Returns `Promise`\<`Assistant`\> The updated assistant. [**@langchain/langgraph-sdk**](#readmemd) *** [@langchain/langgraph-sdk](#readmemd) / Client ## Class: Client\ Defined in: [client.ts:1448](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1448) ### Type Parameters • **TStateType** = `DefaultValues` • **TUpdateType** = `TStateType` • **TCustomEventType** = `unknown` ### Constructors #### new Client() > **new Client**\<`TStateType`, `TUpdateType`, `TCustomEventType`\>(`config`?): [`Client`](#classesclientmd)\<`TStateType`, `TUpdateType`, `TCustomEventType`\> Defined in: [client.ts:1484](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1484) ##### Parameters ###### config? [`ClientConfig`](#interfacesclientconfigmd) ##### Returns [`Client`](#classesclientmd)\<`TStateType`, `TUpdateType`, `TCustomEventType`\> ### Properties #### ~ui > **~ui**: `UiClient` Defined in: [client.ts:1482](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1482) **`Internal`** The client for interacting with the UI. Used by LoadExternalComponent and the API might change in the future. *** #### assistants > **assistants**: [`AssistantsClient`](#classesassistantsclientmd) Defined in: [client.ts:1456](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1456) The client for interacting with assistants. *** #### crons > **crons**: [`CronsClient`](#classescronsclientmd) Defined in: [client.ts:1471](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1471) The client for interacting with cron runs. *** #### runs > **runs**: [`RunsClient`](#classesrunsclientmd)\<`TStateType`, `TUpdateType`, `TCustomEventType`\> Defined in: [client.ts:1466](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1466) The client for interacting with runs. *** #### store > **store**: [`StoreClient`](#classesstoreclientmd) Defined in: [client.ts:1476](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1476) The client for interacting with the KV store. *** #### threads > **threads**: [`ThreadsClient`](#classesthreadsclientmd)\<`TStateType`, `TUpdateType`\> Defined in: [client.ts:1461](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1461) The client for interacting with threads. [**@langchain/langgraph-sdk**](#readmemd) *** [@langchain/langgraph-sdk](#readmemd) / CronsClient ## Class: CronsClient Defined in: [client.ts:197](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L197) ### Extends - `BaseClient` ### Constructors #### new CronsClient() > **new CronsClient**(`config`?): [`CronsClient`](#classescronsclientmd) Defined in: [client.ts:88](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L88) ##### Parameters ###### config? [`ClientConfig`](#interfacesclientconfigmd) ##### Returns [`CronsClient`](#classescronsclientmd) ##### Inherited from `BaseClient.constructor` ### Methods #### create() > **create**(`assistantId`, `payload`?): `Promise`\<`CronCreateResponse`\> Defined in: [client.ts:238](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L238) ##### Parameters ###### assistantId `string` Assistant ID to use for this cron job. ###### payload? `CronsCreatePayload` Payload for creating a cron job. ##### Returns `Promise`\<`CronCreateResponse`\> *** #### createForThread() > **createForThread**(`threadId`, `assistantId`, `payload`?): `Promise`\<`CronCreateForThreadResponse`\> Defined in: [client.ts:205](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L205) ##### Parameters ###### threadId `string` The ID of the thread. ###### assistantId `string` Assistant ID to use for this cron job. ###### payload? `CronsCreatePayload` Payload for creating a cron job. ##### Returns `Promise`\<`CronCreateForThreadResponse`\> The created background run. *** #### delete() > **delete**(`cronId`): `Promise`\<`void`\> Defined in: [client.ts:265](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L265) ##### Parameters ###### cronId `string` Cron ID of Cron job to delete. ##### Returns `Promise`\<`void`\> *** #### search() > **search**(`query`?): `Promise`\<`Cron`[]\> Defined in: [client.ts:276](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L276) ##### Parameters ###### query? Query options. ####### assistantId? `string` ####### limit? `number` ####### offset? `number` ####### threadId? `string` ##### Returns `Promise`\<`Cron`[]\> List of crons. [**@langchain/langgraph-sdk**](#readmemd) *** [@langchain/langgraph-sdk](#readmemd) / RunsClient ## Class: RunsClient\ Defined in: [client.ts:776](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L776) ### Extends - `BaseClient` ### Type Parameters • **TStateType** = `DefaultValues` • **TUpdateType** = `TStateType` • **TCustomEventType** = `unknown` ### Constructors #### new RunsClient() > **new RunsClient**\<`TStateType`, `TUpdateType`, `TCustomEventType`\>(`config`?): [`RunsClient`](#classesrunsclientmd)\<`TStateType`, `TUpdateType`, `TCustomEventType`\> Defined in: [client.ts:88](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L88) ##### Parameters ###### config? [`ClientConfig`](#interfacesclientconfigmd) ##### Returns [`RunsClient`](#classesrunsclientmd)\<`TStateType`, `TUpdateType`, `TCustomEventType`\> ##### Inherited from `BaseClient.constructor` ### Methods #### cancel() > **cancel**(`threadId`, `runId`, `wait`, `action`): `Promise`\<`void`\> Defined in: [client.ts:1063](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1063) Cancel a run. ##### Parameters ###### threadId `string` The ID of the thread. ###### runId `string` The ID of the run. ###### wait `boolean` = `false` Whether to block when canceling ###### action `CancelAction` = `"interrupt"` Action to take when cancelling the run. Possible values are `interrupt` or `rollback`. Default is `interrupt`. ##### Returns `Promise`\<`void`\> *** #### create() > **create**(`threadId`, `assistantId`, `payload`?): `Promise`\<`Run`\> Defined in: [client.ts:885](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L885) Create a run. ##### Parameters ###### threadId `string` The ID of the thread. ###### assistantId `string` Assistant ID to use for this run. ###### payload? `RunsCreatePayload` Payload for creating a run. ##### Returns `Promise`\<`Run`\> The created run. *** #### createBatch() > **createBatch**(`payloads`): `Promise`\<`Run`[]\> Defined in: [client.ts:921](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L921) Create a batch of stateless background runs. ##### Parameters ###### payloads `RunsCreatePayload` & `object`[] An array of payloads for creating runs. ##### Returns `Promise`\<`Run`[]\> An array of created runs. *** #### delete() > **delete**(`threadId`, `runId`): `Promise`\<`void`\> Defined in: [client.ts:1157](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1157) Delete a run. ##### Parameters ###### threadId `string` The ID of the thread. ###### runId `string` The ID of the run. ##### Returns `Promise`\<`void`\> *** #### get() > **get**(`threadId`, `runId`): `Promise`\<`Run`\> Defined in: [client.ts:1050](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1050) Get a run by ID. ##### Parameters ###### threadId `string` The ID of the thread. ###### runId `string` The ID of the run. ##### Returns `Promise`\<`Run`\> The run. *** #### join() > **join**(`threadId`, `runId`, `options`?): `Promise`\<`void`\> Defined in: [client.ts:1085](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1085) Block until a run is done. ##### Parameters ###### threadId `string` The ID of the thread. ###### runId `string` The ID of the run. ###### options? ####### signal? `AbortSignal` ##### Returns `Promise`\<`void`\> *** #### joinStream() > **joinStream**(`threadId`, `runId`, `options`?): `AsyncGenerator`\<\{ `data`: `any`; `event`: `StreamEvent`; \}\> Defined in: [client.ts:1111](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1111) Stream output from a run in real-time, until the run is done. Output is not buffered, so any output produced before this call will not be received here. ##### Parameters ###### threadId `string` The ID of the thread. ###### runId `string` The ID of the run. ###### options? Additional options for controlling the stream behavior: - signal: An AbortSignal that can be used to cancel the stream request - cancelOnDisconnect: When true, automatically cancels the run if the client disconnects from the stream - streamMode: Controls what types of events to receive from the stream (can be a single mode or array of modes) Must be a subset of the stream modes passed when creating the run. Background runs default to having the union of all stream modes enabled. `AbortSignal` | \{ `cancelOnDisconnect`: `boolean`; `signal`: `AbortSignal`; `streamMode`: `StreamMode` \| `StreamMode`[]; \} ##### Returns `AsyncGenerator`\<\{ `data`: `any`; `event`: `StreamEvent`; \}\> An async generator yielding stream parts. *** #### list() > **list**(`threadId`, `options`?): `Promise`\<`Run`[]\> Defined in: [client.ts:1013](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1013) List all runs for a thread. ##### Parameters ###### threadId `string` The ID of the thread. ###### options? Filtering and pagination options. ####### limit? `number` Maximum number of runs to return. Defaults to 10 ####### offset? `number` Offset to start from. Defaults to 0. ####### status? `RunStatus` Status of the run to filter by. ##### Returns `Promise`\<`Run`[]\> List of runs. *** #### stream() Create a run and stream the results. ##### Param The ID of the thread. ##### Param Assistant ID to use for this run. ##### Param Payload for creating a run. ##### Call Signature > **stream**\<`TStreamMode`, `TSubgraphs`\>(`threadId`, `assistantId`, `payload`?): `TypedAsyncGenerator`\<`TStreamMode`, `TSubgraphs`, `TStateType`, `TUpdateType`, `TCustomEventType`\> Defined in: [client.ts:781](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L781) ###### Type Parameters • **TStreamMode** *extends* `StreamMode` \| `StreamMode`[] = `StreamMode` • **TSubgraphs** *extends* `boolean` = `false` ###### Parameters ####### threadId `null` ####### assistantId `string` ####### payload? `Omit`\<`RunsStreamPayload`\<`TStreamMode`, `TSubgraphs`\>, `"multitaskStrategy"` \| `"onCompletion"`\> ###### Returns `TypedAsyncGenerator`\<`TStreamMode`, `TSubgraphs`, `TStateType`, `TUpdateType`, `TCustomEventType`\> ##### Call Signature > **stream**\<`TStreamMode`, `TSubgraphs`\>(`threadId`, `assistantId`, `payload`?): `TypedAsyncGenerator`\<`TStreamMode`, `TSubgraphs`, `TStateType`, `TUpdateType`, `TCustomEventType`\> Defined in: [client.ts:799](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L799) ###### Type Parameters • **TStreamMode** *extends* `StreamMode` \| `StreamMode`[] = `StreamMode` • **TSubgraphs** *extends* `boolean` = `false` ###### Parameters ####### threadId `string` ####### assistantId `string` ####### payload? `RunsStreamPayload`\<`TStreamMode`, `TSubgraphs`\> ###### Returns `TypedAsyncGenerator`\<`TStreamMode`, `TSubgraphs`, `TStateType`, `TUpdateType`, `TCustomEventType`\> *** #### wait() Create a run and wait for it to complete. ##### Param The ID of the thread. ##### Param Assistant ID to use for this run. ##### Param Payload for creating a run. ##### Call Signature > **wait**(`threadId`, `assistantId`, `payload`?): `Promise`\<`DefaultValues`\> Defined in: [client.ts:938](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L938) ###### Parameters ####### threadId `null` ####### assistantId `string` ####### payload? `Omit`\<`RunsWaitPayload`, `"multitaskStrategy"` \| `"onCompletion"`\> ###### Returns `Promise`\<`DefaultValues`\> ##### Call Signature > **wait**(`threadId`, `assistantId`, `payload`?): `Promise`\<`DefaultValues`\> Defined in: [client.ts:944](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L944) ###### Parameters ####### threadId `string` ####### assistantId `string` ####### payload? `RunsWaitPayload` ###### Returns `Promise`\<`DefaultValues`\> [**@langchain/langgraph-sdk**](#readmemd) *** [@langchain/langgraph-sdk](#readmemd) / StoreClient ## Class: StoreClient Defined in: [client.ts:1175](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1175) ### Extends - `BaseClient` ### Constructors #### new StoreClient() > **new StoreClient**(`config`?): [`StoreClient`](#classesstoreclientmd) Defined in: [client.ts:88](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L88) ##### Parameters ###### config? [`ClientConfig`](#interfacesclientconfigmd) ##### Returns [`StoreClient`](#classesstoreclientmd) ##### Inherited from `BaseClient.constructor` ### Methods #### deleteItem() > **deleteItem**(`namespace`, `key`): `Promise`\<`void`\> Defined in: [client.ts:1296](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1296) Delete an item. ##### Parameters ###### namespace `string`[] A list of strings representing the namespace path. ###### key `string` The unique identifier for the item. ##### Returns `Promise`\<`void`\> Promise *** #### getItem() > **getItem**(`namespace`, `key`, `options`?): `Promise`\<`null` \| `Item`\> Defined in: [client.ts:1252](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1252) Retrieve a single item. ##### Parameters ###### namespace `string`[] A list of strings representing the namespace path. ###### key `string` The unique identifier for the item. ###### options? ####### refreshTtl? `null` \| `boolean` Whether to refresh the TTL on this read operation. If null, uses the store's default behavior. ##### Returns `Promise`\<`null` \| `Item`\> Promise ##### Example ```typescript const item = await client.store.getItem( ["documents", "user123"], "item456", { refreshTtl: true } ); console.log(item); // { // namespace: ["documents", "user123"], // key: "item456", // value: { title: "My Document", content: "Hello World" }, // createdAt: "2024-07-30T12:00:00Z", // updatedAt: "2024-07-30T12:00:00Z" // } ``` *** #### listNamespaces() > **listNamespaces**(`options`?): `Promise`\<`ListNamespaceResponse`\> Defined in: [client.ts:1392](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1392) List namespaces with optional match conditions. ##### Parameters ###### options? ####### limit? `number` Maximum number of namespaces to return (default is 100). ####### maxDepth? `number` Optional integer specifying the maximum depth of namespaces to return. ####### offset? `number` Number of namespaces to skip before returning results (default is 0). ####### prefix? `string`[] Optional list of strings representing the prefix to filter namespaces. ####### suffix? `string`[] Optional list of strings representing the suffix to filter namespaces. ##### Returns `Promise`\<`ListNamespaceResponse`\> Promise *** #### putItem() > **putItem**(`namespace`, `key`, `value`, `options`?): `Promise`\<`void`\> Defined in: [client.ts:1196](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1196) Store or update an item. ##### Parameters ###### namespace `string`[] A list of strings representing the namespace path. ###### key `string` The unique identifier for the item within the namespace. ###### value `Record`\<`string`, `any`\> A dictionary containing the item's data. ###### options? ####### index? `null` \| `false` \| `string`[] Controls search indexing - null (use defaults), false (disable), or list of field paths to index. ####### ttl? `null` \| `number` Optional time-to-live in minutes for the item, or null for no expiration. ##### Returns `Promise`\<`void`\> Promise ##### Example ```typescript await client.store.putItem( ["documents", "user123"], "item456", { title: "My Document", content: "Hello World" }, { ttl: 60 } // expires in 60 minutes ); ``` *** #### searchItems() > **searchItems**(`namespacePrefix`, `options`?): `Promise`\<`SearchItemsResponse`\> Defined in: [client.ts:1347](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L1347) Search for items within a namespace prefix. ##### Parameters ###### namespacePrefix `string`[] List of strings representing the namespace prefix. ###### options? ####### filter? `Record`\<`string`, `any`\> Optional dictionary of key-value pairs to filter results. ####### limit? `number` Maximum number of items to return (default is 10). ####### offset? `number` Number of items to skip before returning results (default is 0). ####### query? `string` Optional search query. ####### refreshTtl? `null` \| `boolean` Whether to refresh the TTL on items returned by this search. If null, uses the store's default behavior. ##### Returns `Promise`\<`SearchItemsResponse`\> Promise ##### Example ```typescript const results = await client.store.searchItems( ["documents"], { filter: { author: "John Doe" }, limit: 5, refreshTtl: true } ); console.log(results); // { // items: [ // { // namespace: ["documents", "user123"], // key: "item789", // value: { title: "Another Document", author: "John Doe" }, // createdAt: "2024-07-30T12:00:00Z", // updatedAt: "2024-07-30T12:00:00Z" // }, // // ... additional items ... // ] // } ``` [**@langchain/langgraph-sdk**](#readmemd) *** [@langchain/langgraph-sdk](#readmemd) / ThreadsClient ## Class: ThreadsClient\ Defined in: [client.ts:489](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L489) ### Extends - `BaseClient` ### Type Parameters • **TStateType** = `DefaultValues` • **TUpdateType** = `TStateType` ### Constructors #### new ThreadsClient() > **new ThreadsClient**\<`TStateType`, `TUpdateType`\>(`config`?): [`ThreadsClient`](#classesthreadsclientmd)\<`TStateType`, `TUpdateType`\> Defined in: [client.ts:88](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L88) ##### Parameters ###### config? [`ClientConfig`](#interfacesclientconfigmd) ##### Returns [`ThreadsClient`](#classesthreadsclientmd)\<`TStateType`, `TUpdateType`\> ##### Inherited from `BaseClient.constructor` ### Methods #### copy() > **copy**(`threadId`): `Promise`\<`Thread`\<`TStateType`\>\> Defined in: [client.ts:566](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L566) Copy an existing thread ##### Parameters ###### threadId `string` ID of the thread to be copied ##### Returns `Promise`\<`Thread`\<`TStateType`\>\> Newly copied thread *** #### create() > **create**(`payload`?): `Promise`\<`Thread`\<`TStateType`\>\> Defined in: [client.ts:511](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L511) Create a new thread. ##### Parameters ###### payload? Payload for creating a thread. ####### graphId? `string` Graph ID to associate with the thread. ####### ifExists? `OnConflictBehavior` How to handle duplicate creation. **Default** ```ts "raise" ``` ####### metadata? `Metadata` Metadata for the thread. ####### supersteps? `object`[] Apply a list of supersteps when creating a thread, each containing a sequence of updates. Used for copying a thread between deployments. ####### threadId? `string` ID of the thread to create. If not provided, a random UUID will be generated. ##### Returns `Promise`\<`Thread`\<`TStateType`\>\> The created thread. *** #### delete() > **delete**(`threadId`): `Promise`\<`void`\> Defined in: [client.ts:599](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L599) Delete a thread. ##### Parameters ###### threadId `string` ID of the thread. ##### Returns `Promise`\<`void`\> *** #### get() > **get**\<`ValuesType`\>(`threadId`): `Promise`\<`Thread`\<`ValuesType`\>\> Defined in: [client.ts:499](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L499) Get a thread by ID. ##### Type Parameters • **ValuesType** = `TStateType` ##### Parameters ###### threadId `string` ID of the thread. ##### Returns `Promise`\<`Thread`\<`ValuesType`\>\> The thread. *** #### getHistory() > **getHistory**\<`ValuesType`\>(`threadId`, `options`?): `Promise`\<`ThreadState`\<`ValuesType`\>[]\> Defined in: [client.ts:752](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L752) Get all past states for a thread. ##### Type Parameters • **ValuesType** = `TStateType` ##### Parameters ###### threadId `string` ID of the thread. ###### options? Additional options. ####### before? `Config` ####### checkpoint? `Partial`\<`Omit`\<`Checkpoint`, `"thread_id"`\>\> ####### limit? `number` ####### metadata? `Metadata` ##### Returns `Promise`\<`ThreadState`\<`ValuesType`\>[]\> List of thread states. *** #### getState() > **getState**\<`ValuesType`\>(`threadId`, `checkpoint`?, `options`?): `Promise`\<`ThreadState`\<`ValuesType`\>\> Defined in: [client.ts:659](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L659) Get state for a thread. ##### Type Parameters • **ValuesType** = `TStateType` ##### Parameters ###### threadId `string` ID of the thread. ###### checkpoint? `string` | `Checkpoint` ###### options? ####### subgraphs? `boolean` ##### Returns `Promise`\<`ThreadState`\<`ValuesType`\>\> Thread state. *** #### patchState() > **patchState**(`threadIdOrConfig`, `metadata`): `Promise`\<`void`\> Defined in: [client.ts:722](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L722) Patch the metadata of a thread. ##### Parameters ###### threadIdOrConfig Thread ID or config to patch the state of. `string` | `Config` ###### metadata `Metadata` Metadata to patch the state with. ##### Returns `Promise`\<`void`\> *** #### search() > **search**\<`ValuesType`\>(`query`?): `Promise`\<`Thread`\<`ValuesType`\>[]\> Defined in: [client.ts:611](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L611) List threads ##### Type Parameters • **ValuesType** = `TStateType` ##### Parameters ###### query? Query options ####### limit? `number` Maximum number of threads to return. Defaults to 10 ####### metadata? `Metadata` Metadata to filter threads by. ####### offset? `number` Offset to start from. ####### sortBy? `ThreadSortBy` Sort by. ####### sortOrder? `SortOrder` Sort order. Must be one of 'asc' or 'desc'. ####### status? `ThreadStatus` Thread status to filter on. Must be one of 'idle', 'busy', 'interrupted' or 'error'. ##### Returns `Promise`\<`Thread`\<`ValuesType`\>[]\> List of threads *** #### update() > **update**(`threadId`, `payload`?): `Promise`\<`Thread`\<`DefaultValues`\>\> Defined in: [client.ts:579](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L579) Update a thread. ##### Parameters ###### threadId `string` ID of the thread. ###### payload? Payload for updating the thread. ####### metadata? `Metadata` Metadata for the thread. ##### Returns `Promise`\<`Thread`\<`DefaultValues`\>\> The updated thread. *** #### updateState() > **updateState**\<`ValuesType`\>(`threadId`, `options`): `Promise`\<`Pick`\<`Config`, `"configurable"`\>\> Defined in: [client.ts:693](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L693) Add state to a thread. ##### Type Parameters • **ValuesType** = `TUpdateType` ##### Parameters ###### threadId `string` The ID of the thread. ###### options ####### asNode? `string` ####### checkpoint? `Checkpoint` ####### checkpointId? `string` ####### values `ValuesType` ##### Returns `Promise`\<`Pick`\<`Config`, `"configurable"`\>\> [**@langchain/langgraph-sdk**](#readmemd) *** [@langchain/langgraph-sdk](#readmemd) / getApiKey ## Function: getApiKey() > **getApiKey**(`apiKey`?): `undefined` \| `string` Defined in: [client.ts:53](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L53) Get the API key from the environment. Precedence: 1. explicit argument 2. LANGGRAPH_API_KEY 3. LANGSMITH_API_KEY 4. LANGCHAIN_API_KEY ### Parameters #### apiKey? `string` Optional API key provided as an argument ### Returns `undefined` \| `string` The API key if found, otherwise undefined [**@langchain/langgraph-sdk**](#readmemd) *** [@langchain/langgraph-sdk](#readmemd) / ClientConfig ## Interface: ClientConfig Defined in: [client.ts:71](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L71) ### Properties #### apiKey? > `optional` **apiKey**: `string` Defined in: [client.ts:73](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L73) *** #### apiUrl? > `optional` **apiUrl**: `string` Defined in: [client.ts:72](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L72) *** #### callerOptions? > `optional` **callerOptions**: `AsyncCallerParams` Defined in: [client.ts:74](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L74) *** #### defaultHeaders? > `optional` **defaultHeaders**: `Record`\<`string`, `undefined` \| `null` \| `string`\> Defined in: [client.ts:76](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L76) *** #### timeoutMs? > `optional` **timeoutMs**: `number` Defined in: [client.ts:75](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/client.ts#L75) **@langchain/langgraph-sdk** *** ## @langchain/langgraph-sdk/react ### Interfaces - [UseStream](#reactinterfacesusestreammd) - [UseStreamOptions](#reactinterfacesusestreamoptionsmd) ### Type Aliases - [MessageMetadata](#reacttype-aliasesmessagemetadatamd) ### Functions - [useStream](#reactfunctionsusestreammd) [**@langchain/langgraph-sdk**](#reactreadmemd) *** [@langchain/langgraph-sdk](#reactreadmemd) / useStream ## Function: useStream() > **useStream**\<`StateType`, `Bag`\>(`options`): [`UseStream`](#reactinterfacesusestreammd)\<`StateType`, `Bag`\> Defined in: [react/stream.tsx:618](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L618) ### Type Parameters • **StateType** *extends* `Record`\<`string`, `unknown`\> = `Record`\<`string`, `unknown`\> • **Bag** *extends* `object` = `BagTemplate` ### Parameters #### options [`UseStreamOptions`](#reactinterfacesusestreamoptionsmd)\<`StateType`, `Bag`\> ### Returns [`UseStream`](#reactinterfacesusestreammd)\<`StateType`, `Bag`\> [**@langchain/langgraph-sdk**](#reactreadmemd) *** [@langchain/langgraph-sdk](#reactreadmemd) / UseStream ## Interface: UseStream\ Defined in: [react/stream.tsx:507](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L507) ### Type Parameters • **StateType** *extends* `Record`\<`string`, `unknown`\> = `Record`\<`string`, `unknown`\> • **Bag** *extends* `BagTemplate` = `BagTemplate` ### Properties #### assistantId > **assistantId**: `string` Defined in: [react/stream.tsx:592](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L592) The ID of the assistant to use. *** #### branch > **branch**: `string` Defined in: [react/stream.tsx:542](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L542) The current branch of the thread. *** #### client > **client**: `Client` Defined in: [react/stream.tsx:587](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L587) LangGraph SDK client used to send request and receive responses. *** #### error > **error**: `unknown` Defined in: [react/stream.tsx:519](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L519) Last seen error from the thread or during streaming. *** #### experimental\_branchTree > **experimental\_branchTree**: `Sequence`\<`StateType`\> Defined in: [react/stream.tsx:558](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L558) **`Experimental`** Tree of all branches for the thread. *** #### getMessagesMetadata() > **getMessagesMetadata**: (`message`, `index`?) => `undefined` \| [`MessageMetadata`](#reacttype-aliasesmessagemetadatamd)\<`StateType`\> Defined in: [react/stream.tsx:579](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L579) Get the metadata for a message, such as first thread state the message was seen in and branch information. ##### Parameters ###### message `Message` The message to get the metadata for. ###### index? `number` The index of the message in the thread. ##### Returns `undefined` \| [`MessageMetadata`](#reacttype-aliasesmessagemetadatamd)\<`StateType`\> The metadata for the message. *** #### history > **history**: `ThreadState`\<`StateType`\>[] Defined in: [react/stream.tsx:552](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L552) Flattened history of thread states of a thread. *** #### interrupt > **interrupt**: `undefined` \| `Interrupt`\<`GetInterruptType`\<`Bag`\>\> Defined in: [react/stream.tsx:563](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L563) Get the interrupt value for the stream if interrupted. *** #### isLoading > **isLoading**: `boolean` Defined in: [react/stream.tsx:524](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L524) Whether the stream is currently running. *** #### messages > **messages**: `Message`[] Defined in: [react/stream.tsx:569](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L569) Messages inferred from the thread. Will automatically update with incoming message chunks. *** #### setBranch() > **setBranch**: (`branch`) => `void` Defined in: [react/stream.tsx:547](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L547) Set the branch of the thread. ##### Parameters ###### branch `string` ##### Returns `void` *** #### stop() > **stop**: () => `void` Defined in: [react/stream.tsx:529](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L529) Stops the stream. ##### Returns `void` *** #### submit() > **submit**: (`values`, `options`?) => `void` Defined in: [react/stream.tsx:534](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L534) Create and stream a run to the thread. ##### Parameters ###### values `undefined` | `null` | `GetUpdateType`\<`Bag`, `StateType`\> ###### options? `SubmitOptions`\<`StateType`, `GetConfigurableType`\<`Bag`\>\> ##### Returns `void` *** #### values > **values**: `StateType` Defined in: [react/stream.tsx:514](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L514) The current values of the thread. [**@langchain/langgraph-sdk**](#reactreadmemd) *** [@langchain/langgraph-sdk](#reactreadmemd) / UseStreamOptions ## Interface: UseStreamOptions\ Defined in: [react/stream.tsx:408](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L408) ### Type Parameters • **StateType** *extends* `Record`\<`string`, `unknown`\> = `Record`\<`string`, `unknown`\> • **Bag** *extends* `BagTemplate` = `BagTemplate` ### Properties #### apiKey? > `optional` **apiKey**: `string` Defined in: [react/stream.tsx:430](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L430) The API key to use. *** #### apiUrl? > `optional` **apiUrl**: `string` Defined in: [react/stream.tsx:425](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L425) The URL of the API to use. *** #### assistantId > **assistantId**: `string` Defined in: [react/stream.tsx:415](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L415) The ID of the assistant to use. *** #### callerOptions? > `optional` **callerOptions**: `AsyncCallerParams` Defined in: [react/stream.tsx:435](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L435) Custom call options, such as custom fetch implementation. *** #### client? > `optional` **client**: `Client`\<`DefaultValues`, `DefaultValues`, `unknown`\> Defined in: [react/stream.tsx:420](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L420) Client used to send requests. *** #### defaultHeaders? > `optional` **defaultHeaders**: `Record`\<`string`, `undefined` \| `null` \| `string`\> Defined in: [react/stream.tsx:440](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L440) Default headers to send with requests. *** #### messagesKey? > `optional` **messagesKey**: `string` Defined in: [react/stream.tsx:448](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L448) Specify the key within the state that contains messages. Defaults to "messages". ##### Default ```ts "messages" ``` *** #### onCustomEvent()? > `optional` **onCustomEvent**: (`data`, `options`) => `void` Defined in: [react/stream.tsx:470](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L470) Callback that is called when a custom event is received. ##### Parameters ###### data `GetCustomEventType`\<`Bag`\> ###### options ####### mutate (`update`) => `void` ##### Returns `void` *** #### onDebugEvent()? > `optional` **onDebugEvent**: (`data`) => `void` Defined in: [react/stream.tsx:494](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L494) **`Internal`** Callback that is called when a debug event is received. This API is experimental and subject to change. ##### Parameters ###### data `unknown` ##### Returns `void` *** #### onError()? > `optional` **onError**: (`error`) => `void` Defined in: [react/stream.tsx:453](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L453) Callback that is called when an error occurs. ##### Parameters ###### error `unknown` ##### Returns `void` *** #### onFinish()? > `optional` **onFinish**: (`state`) => `void` Defined in: [react/stream.tsx:458](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L458) Callback that is called when the stream is finished. ##### Parameters ###### state `ThreadState`\<`StateType`\> ##### Returns `void` *** #### onLangChainEvent()? > `optional` **onLangChainEvent**: (`data`) => `void` Defined in: [react/stream.tsx:488](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L488) Callback that is called when a LangChain event is received. ##### Parameters ###### data ####### data `unknown` ####### event `string` & `object` \| `"on_tool_start"` \| `"on_tool_stream"` \| `"on_tool_end"` \| `"on_chat_model_start"` \| `"on_chat_model_stream"` \| `"on_chat_model_end"` \| `"on_llm_start"` \| `"on_llm_stream"` \| `"on_llm_end"` \| `"on_chain_start"` \| `"on_chain_stream"` \| `"on_chain_end"` \| `"on_retriever_start"` \| `"on_retriever_stream"` \| `"on_retriever_end"` \| `"on_prompt_start"` \| `"on_prompt_stream"` \| `"on_prompt_end"` ####### metadata `Record`\<`string`, `unknown`\> ####### name `string` ####### parent_ids `string`[] ####### run_id `string` ####### tags `string`[] ##### Returns `void` ##### See https://langchain-ai.github.io/langgraph/cloud/how-tos/stream_events/#stream-graph-in-events-mode for more details. *** #### onMetadataEvent()? > `optional` **onMetadataEvent**: (`data`) => `void` Defined in: [react/stream.tsx:482](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L482) Callback that is called when a metadata event is received. ##### Parameters ###### data ####### run_id `string` ####### thread_id `string` ##### Returns `void` *** #### onThreadId()? > `optional` **onThreadId**: (`threadId`) => `void` Defined in: [react/stream.tsx:504](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L504) Callback that is called when the thread ID is updated (ie when a new thread is created). ##### Parameters ###### threadId `string` ##### Returns `void` *** #### onUpdateEvent()? > `optional` **onUpdateEvent**: (`data`) => `void` Defined in: [react/stream.tsx:463](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L463) Callback that is called when an update event is received. ##### Parameters ###### data ##### Returns `void` *** #### threadId? > `optional` **threadId**: `null` \| `string` Defined in: [react/stream.tsx:499](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L499) The ID of the thread to fetch history and current values from. [**@langchain/langgraph-sdk**](#reactreadmemd) *** [@langchain/langgraph-sdk](#reactreadmemd) / MessageMetadata ## Type Alias: MessageMetadata\ > **MessageMetadata**\<`StateType`\>: `object` Defined in: [react/stream.tsx:169](https://github.com/langchain-ai/langgraph/blob/d4f644877db6264bd46d0b00fc4c37f174e502d5/libs/sdk-js/src/react/stream.tsx#L169) ### Type Parameters • **StateType** *extends* `Record`\<`string`, `unknown`\> ### Type declaration #### branch > **branch**: `string` \| `undefined` The branch of the message. #### branchOptions > **branchOptions**: `string`[] \| `undefined` The list of branches this message is part of. This is useful for displaying branching controls. #### firstSeenState > **firstSeenState**: `ThreadState`\<`StateType`\> \| `undefined` The first thread state the message was seen in. #### messageId > **messageId**: `string` The ID of the message used.