Description
# LangGraph Python SDK This repository contains the Python SDK for interacting with the LangSmith Deployment REST API. ## Quick Start To get started with the Python SDK, [install the package](https://pypi.org/project/langgraph-sdk/) ```bash pip install -U langgraph-sdk ``` You will need a running LangGraph API server. If you're running a server locally using `langgraph-cli`, SDK will automatically point at `http://localhost:8123`, otherwise you would need to specify the server URL when creating a client. ```python from langgraph_sdk import get_client # If you're using a remote server, initialize the client with `get_client(url=REMOTE_URL)` client = get_client() # List all assistants assistants = await client.assistants.search() # We auto-create an assistant for each graph you register in config. agent = assistants[0] # Start a new thread thread = await client.threads.create() # Start a streaming run input = {"messages": [{"role": "human", "content": "what's the weather in la"}]} async for chunk in client.runs.stream(thread['thread_id'], agent['assistant_id'], input=input): print(chunk) ```
Release History
| Version | Changes | Urgency | Date |
|---|---|---|---|
| 0.3.13 | Imported from PyPI (0.3.13) | Low | 4/21/2026 |
| 1.1.9 | Changes since 1.1.8 * chore(langgraph): bump version 1.1.8 -> 1.1.9 (#7563) * fix(langgraph): don't propagate ReplayState to subgraphs on plain resume (#7561) * chore(langgraph): undo unnecessary changes in stream handler (#7536) | High | 4/21/2026 |
| 1.1.8 | Changes since 1.1.7 * release(langgraph): 1.1.8 (#7545) * fix(langgraph): remove strict add_handler type check that breaks OTel instrumentation (#7544) * release(prebuilt): 1.0.10 (#7541) * release(cli): 0.4.23 (#7542) | High | 4/17/2026 |
| prebuilt==1.0.10 | Changes since prebuilt==1.0.9 * release(prebuilt): 1.0.10 (#7541) * release(langgraph): 1.1.7 (#7540) * fix(prebuilt): handle injected NotRequired keys (#7392) * chore(deps): bump langsmith from 0.6.4 to 0.7.31 in /libs/prebuilt (#7530) * release(checkpoint): 4.0.2 (#7518) * chore(deps): bump pytest from 9.0.2 to 9.0.3 in /libs/prebuilt (#7505) * release(langgraph): 1.1.7a2 (#7511) * chore: allow passing some metadata only for tracing purposes (#7383) * release(langgraph): 1.1.7a1 (#7476) * cho | High | 4/17/2026 |
| cli==0.4.23 | Changes since cli==0.4.22 * release(cli): 0.4.23 (#7542) | High | 4/17/2026 |
| 1.1.7 | Changes since 1.1.7a2 * release(langgraph): 1.1.7 (#7540) * fix: time travel when going back to interrupt node (#7498) * chore(deps): bump langsmith from 0.6.4 to 0.7.31 in /libs/langgraph (#7526) * release(checkpoint): 4.0.2 (#7518) | High | 4/17/2026 |
| cli==0.4.22 | Changes since cli==0.4.21 * CLI bump * chore: start tracking cli deploy source (#7520) * chore(deps): bump langsmith from 0.7.26 to 0.7.31 in /libs/cli (#7529) * chore(deps): bump the uv group across 2 directories with 1 update (#7531) * chore(deps): bump langsmith from 0.5.18 to 0.5.20 in /libs/cli/js-examples (#7522) * chore(deps): bump langsmith from 0.5.18 to 0.5.20 in /libs/cli/js-monorepo-example (#7521) * chore(deps): bump langchain-core from 1.2.27 to 1.2.28 in /libs/cli (#7450) * chore | High | 4/16/2026 |
| checkpoint==4.0.2 | Changes since checkpoint==4.0.1 * release(checkpoint): 4.0.2 (#7518) * docs: document LANGGRAPH_STRICT_MSGPACK for checkpoint security (#7517) * chore(deps): bump pytest from 9.0.2 to 9.0.3 in /libs/checkpoint (#7506) * chore(deps): bump langchain-core from 1.2.23 to 1.2.28 in /libs/checkpoint (#7453) * chore(deps): bump the minor-and-patch group in /libs/checkpoint with 3 updates (#7373) * chore(deps): bump pygments from 2.19.2 to 2.20.0 in /libs/checkpoint (#7348) * chore(deps): bump the mino | High | 4/15/2026 |
| 1.1.7a2 | Changes since 1.1.7a1 * chore(deps): bump pytest from 9.0.2 to 9.0.3 in /libs/langgraph (#7507) * release(langgraph): 1.1.7a2 (#7511) * chore: allow passing some metadata only for tracing purposes (#7383) * fix: populate assistant_id from config configurable instead of metadata (#7468) | Medium | 4/14/2026 |
| 1.1.7a1 | Changes since 1.1.6 * release(langgraph): 1.1.7a1 (#7476) * test(langgraph): use monotonic clock in flaky streaming test (#7477) * feat(langgraph): add graph lifecycle callback handlers (#7429) * chore(deps): bump cryptography from 46.0.6 to 46.0.7 in /libs/langgraph (#7457) * chore: update conformance lint (#7459) * chore: uv lock resolution (#7342) | Medium | 4/10/2026 |
| cli==0.4.21 | Changes since cli==0.4.20 * chore(cli): add validate command (#7438) | Medium | 4/8/2026 |
| cli==0.4.20 | Changes since cli==0.4.19 * release(cli): lockfile (#7436) * chore: uv lock resolution (#7342) * chore: bump langgraph version to 1.1.5 in CI and examples (#7435) * chore(deps-dev): bump the minor-and-patch group in /libs/cli with 2 updates (#7378) * chore(deps): bump the minor-and-patch group in /libs/cli/js-examples with 4 updates (#7372) * chore(deps): bump the minor-and-patch group across 1 directory with 5 updates (#7375) * feat(cli): add remote build support for langgraph deploy (#7234) | Medium | 4/8/2026 |
| sdk==0.3.13 | Changes since sdk==0.3.12 * chore: validate reconnect url (#7434) * feat(sdk-py): add langsmith_tracing param to runs.create/stream/wait (#7431) * release: langgraph 1.1.6 (#7407) * release: prebuilt 1.0.9 and langgraph 1.1.5 (#7401) * release(langgraph): 1.1.4 (#7356) * chore(deps): bump pygments from 2.19.2 to 2.20.0 in /libs/sdk-py (#7351) * chore(deps): bump langchain-core from 1.2.20 to 1.2.22 in /libs/sdk-py (#7321) * chore(deps): bump starlette from 0.52.1 to 1.0.0 in /libs/sdk-py (#7294 | Medium | 4/7/2026 |
| 1.1.6 | Changes since 1.1.5 * release: langgraph 1.1.6 (#7407) * fix: execution info patching (#7406) | Medium | 4/3/2026 |
| 1.1.5 | Changes since 1.1.4 * release: prebuilt 1.0.9 and langgraph 1.1.5 (#7401) * feat: enhance runtime w/ more execution information (#7363) * Revert "chore: update configurable metadata" (#7393) * feat(cli): add remote build support for langgraph deploy (#7234) * chore: fix URL (#7385) * fix(langgraph): update readme (#7384) * chore: update configurable metadata (#7367) | Medium | 4/3/2026 |
| prebuilt==1.0.9 | Changes since prebuilt==1.0.8 * release: prebuilt 1.0.9 and langgraph 1.1.5 (#7401) * feat: enhance runtime w/ more execution information (#7363) * fix: tool node injection bug (#7391) * release(langgraph): 1.1.4 (#7356) * chore(deps): bump pygments from 2.19.2 to 2.20.0 in /libs/prebuilt (#7354) * chore(deps): bump langchain-core from 1.2.20 to 1.2.22 in /libs/prebuilt in the minor-and-patch group (#7289) * chore(deps): bump requests from 2.32.5 to 2.33.0 in /libs/prebuilt (#7281) * chore(deps | Medium | 4/3/2026 |
| 1.1.4 | Changes since 1.1.3 * release(langgraph): 1.1.4 (#7356) * fix(langgraph): avoid recursion limit default sentinel collision (#7355) * feat: Add LangSmith integration metadata to langgraph (#7203) * chore(deps): bump pygments from 2.19.2 to 2.20.0 in /libs/langgraph (#7353) * chore(deps): bump cryptography from 46.0.5 to 46.0.6 in /libs/langgraph (#7324) * chore(deps): bump types-requests from 2.32.4.20260107 to 2.32.4.20260324 in /libs/langgraph (#7297) * chore(deps): bump the minor-and-patch gr | Medium | 3/31/2026 |
| cli==0.4.19 | Changes since cli==0.4.18 * release: Create new release for CLI version 0.4.19. (#7232) * feat(cli): Add `deploy revisions list` command (#7142) * chore(deps): bump the all-dependencies group in /libs/cli/js-monorepo-example with 5 updates (#7192) * chore(deps): bump the all-dependencies group in /libs/cli with 2 updates (#7199) * chore(deps): bump the all-dependencies group in /libs/cli/js-examples with 5 updates (#7195) * chore(deps): bump langgraph to 1.1.2 in cli example fixtures (#7211) * | Low | 3/20/2026 |
| 1.1.3 | Changes since 1.1.2 * release(checkpoint-postgres): 3.0.5 (#7221) * release(langgraph): 1.1.3 (#7215) * feat: add execution info to runtime (#7143) * chore(deps): bump the all-dependencies group in /libs/sdk-py with 2 updates (#7197) * chore(deps): bump the all-dependencies group in /libs/langgraph with 2 updates (#7200) * chore(deps): bump pyjwt from 2.10.1 to 2.12.0 in /libs/langgraph (#7189) * chore(deps): bump orjson from 3.11.5 to 3.11.6 in /libs/langgraph (#7147) | Low | 3/18/2026 |
| sdk==0.3.12 | Changes since sdk==0.3.11 * release(sdk-py): 0.3.12 (#7224) * release(langgraph): 1.1.3 (#7215) * chore(deps): bump the all-dependencies group in /libs/sdk-py with 2 updates (#7197) * release(langgraph): 1.1.2 (#7135) * release(langgraph): 1.1.1 (#7120) | Low | 3/18/2026 |
| checkpointpostgres==3.0.5 | Changes since checkpointpostgres==3.0.4 * release(checkpoint-postgres): 3.0.5 (#7221) * fix: re-use connection (#7220) * chore(deps): bump ruff from 0.15.5 to 0.15.6 in /libs/checkpoint-postgres in the all-dependencies group (#7194) * chore(deps): bump the all-dependencies group across 1 directory with 2 updates (#7071) * release(checkpoint): 0.4.1 (#6966) * chore: add serde events (#6954) * chore: update defaults (#6953) * release: rc2 (#6949) * release: Candidate (#6947) * Merge commit from | Low | 3/18/2026 |
| cli==0.4.18 | Changes since cli==0.4.17 * release(cli): 0.4.18 (#7186) * chore: update error message (#7185) | Low | 3/15/2026 |
| cli==0.4.17 | Changes since cli==0.4.16 * release(cli): 0.4.17 (#7166) * feat(cli): new deep agent templates (#7165) | Low | 3/13/2026 |
| cli==0.4.16 | Changes since cli==0.4.15 * release(cli): 0.4.16 (#7151) * fix(cli): use --tag for langgraph deploy (#7148) * fix(cli): cleanup client creation code (#7140) * feat(cli): add langgraph deploy logs subcommand (#7100) * feat(cli): add deploy list and deploy delete subcommands (#7118) * fix: Revert "feat(cli): Add `deploy list` and `deploy delete` subcommands" (#7116) * feat(cli): Add `deploy list` and `deploy delete` subcommands (#7106) * feat(cli): add distributed runtime support to langgraph cli | Low | 3/12/2026 |
| 1.1.2 | Changes since 1.1.1 * release(langgraph): 1.1.2 (#7135) * fix: stream part generic order (#7134) * feat: add context for remote graph api (#7132) * chore: fix typo (#7131) * chore(deps): bump tornado from 6.5.4 to 6.5.5 in /libs/langgraph (#7122) | Low | 3/12/2026 |
| 1.1.1 | Changes since 1.1.0 * release(langgraph): 1.1.1 (#7120) * fix: replay bug, direct to subgraphs (#7115) * chore: remove md notes (#7103) | Low | 3/11/2026 |
| sdk==0.3.11 | Changes since sdk==0.3.10 * chore(sdk-py): cron tz support (#7108) * release(langgraph): 1.1 (#7102) * chore(deps): bump the all-dependencies group across 1 directory with 3 updates (#7072) | Low | 3/11/2026 |
| 1.1.0 | Changes since 1.0.10 * release(langgraph): 1.1 (#7102) * fix: replay behavior for parent + subgraphs! (#7038) * feat: type safe stream/invoke w/ proper output type coercion (#6961) ## Type-Safe Streaming & Invoke LangGraph 1.1 introduces `version="v2"` — a new opt-in streaming format that brings full type safety to `stream()`, `astream()`, `invoke()`, and `ainvoke()`. ### What's changing **v1 (default, unchanged):** `stream()` yields bare tuples like `(stream_mode, data)` or jus | Low | 3/10/2026 |
| cli==0.4.15 | Changes since cli==0.4.14 * release(cli): 0.4.15 (#7095) * feat(cli): add langgraph deploy (#7004) * chore(deps): bump the all-dependencies group in /libs/cli with 2 updates (#7075) * chore(deps): bump the all-dependencies group in /libs/cli/js-examples with 6 updates (#6992) * chore(deps): bump the all-dependencies group in /libs/cli/js-monorepo-example with 7 updates (#6991) * fix(cli): block shell injection chars in build/install commands (#7044) | Low | 3/10/2026 |
| sdk==0.3.10 | Changes since sdk==0.3.9 * chore: Add cache (#7092) * feat: type safe stream/invoke w/ proper output type coercion (#6961) * release(langgraph) 1.0.10 (#6967) * release(checkpoint): 0.4.1 (#6966) * chore: add serde events (#6954) * chore: update defaults (#6953) * release: rc2 (#6949) * release: Candidate (#6947) * docs(sdk-py): update auth docstrings to default-deny pattern (#6933) | Low | 3/9/2026 |
| cli==0.4.14 | Changes since cli==0.4.12 * chore(cli): pass checkpointer config to CLI (#7003) * fix: bump minimatch to resolve CVE-2026-26996, CVE-2026-27903, CVE-2026-27904 (#6968) * Merge commit from fork * chore(deps): bump the all-dependencies group in /libs/cli with 2 updates (#6920) * chore(deps): bump the all-dependencies group in /libs/cli/js-monorepo-example with 4 updates (#6914) * chore(deps): bump the all-dependencies group in /libs/cli/js-examples with 3 updates (#6912) * fix(cli): update graph | Low | 3/2/2026 |
| checkpoint==4.0.1 | Changes since checkpoint==4.0.1rc3 * release(checkpoint): 0.4.1 (#6966) * chore: add serde events (#6954) | Low | 2/27/2026 |
| 1.0.10 | Changes since 1.0.10rc1 * release(langgraph) 1.0.10 (#6967) * release(checkpoint): 0.4.1 (#6966) * chore: add serde events (#6954) * chore: update defaults (#6953) * release: rc2 (#6949) * chore(deps-dev): bump the all-dependencies group across 1 directory with 3 updates (#6946) | Low | 2/27/2026 |
| checkpoint==4.0.1rc3 | Changes since checkpoint==4.0.1rc2 * chore: update defaults (#6953) * chore: support workflow dispatch on ci (#6952) | Low | 2/26/2026 |
| checkpoint==4.0.1rc2 | Changes since checkpoint==4.0.1rc1 * release: rc2 (#6949) * chore: improve subclass handling (#6948) | Low | 2/26/2026 |
| checkpoint==4.0.1rc1 | Changes since checkpoint==4.0.0 * release: Candidate (#6947) * Merge commit from fork * chore(deps): bump the all-dependencies group in /libs/checkpoint with 2 updates (#6918) * chore: add `make type` target for type checking (#6748) * chore(deps): bump the all-dependencies group in /libs/checkpoint with 2 updates (#6850) * chore: conformance testing (#6842) * chore(deps): bump the all-dependencies group in /libs/checkpoint with 4 updates (#6812) * docs: add clarity to use of `thread_id` (#6515 | Low | 2/26/2026 |
| 1.0.10rc1 | Changes since 1.0.9 * release: Candidate (#6947) * Merge commit from fork * chore: add tests to confirm expected subgraph persistence behavior (#6943) * fix(langgraph): correct ParentCommand bubbling when checkpoint_ns includes numeric task segments (#6864) * chore: add `make type` target for type checking (#6748) | Low | 2/26/2026 |
| sdk==0.3.9 | Changes since sdk==0.3.8 * release(sdk-py): 0.3.9 (#6932) * feat(sdk-py): add extract parameter to threads.search() (#6880) * chore: add `make type` target for type checking (#6748) | Low | 2/24/2026 |
| sdk==0.3.8 | Changes since sdk==0.3.7 * release(sdk-py): 0.3.8 (#6873) * feat(sdk-py): add stream_mode, stream_subgraphs, stream_resumable, durability to crons (#6876) * release: langgraph + prebuilt (#6875) * feat(sdk-py): improve store auth type safety and docstrings (#6867) | Low | 2/19/2026 |
| 1.0.9 | Changes since 1.0.8 * release: langgraph + prebuilt (#6875) * fix: sequential interrupt handling w/ functional API (#6863) * chore: state_updated_at sort by (#6857) * chore: bump orjson (#6852) * chore: conformance testing (#6842) * chore(deps): bump the all-dependencies group in /libs/langgraph with 6 updates (#6815) * chore(deps): bump protobuf from 6.33.4 to 6.33.5 in /libs/langgraph (#6833) * chore(deps): bump cryptography from 46.0.3 to 46.0.5 in /libs/langgraph (#6837) * chore(deps): bump | Low | 2/19/2026 |
| prebuilt==1.0.8 | Changes since prebuilt==1.0.7 * release: langgraph + prebuilt (#6875) * fix: inject ToolRuntime for dynamically registered tools (#6874) * chore: bump orjson (#6852) * chore(deps): bump langchain-core from 1.2.12 to 1.2.13 in /libs/prebuilt in the all-dependencies group (#6849) * chore: conformance testing (#6842) * chore(deps): bump the all-dependencies group in /libs/prebuilt with 3 updates (#6810) * chore: server runtime type (#6774) * docs(prebuilt): update warning for `create_react_agent` | Low | 2/19/2026 |
| sdk==0.3.7 | Changes since sdk==0.3.6 * fix(sdk-py): allow reset of config/context in assistants update (#6862) * chore: state_updated_at sort by (#6857) * chore: bump orjson (#6852) * chore: conformance testing (#6842) * chore(deps): bump the all-dependencies group in /libs/sdk-py with 4 updates (#6809) * chore(deps): bump langchain-core from 1.2.10 to 1.2.11 in /libs/sdk-py (#6829) | Low | 2/18/2026 |
| sdk==0.3.6 | Changes since sdk==0.3.5 * release(sdk-py): 0.3.6 (#6805) * chore: update to add prune method (#6804) * chore: Re-organize client files. (#6787) | Low | 2/14/2026 |
| sdk==0.3.5 | Changes since sdk==0.3.4 * chore: server runtime type (#6774) | Low | 2/10/2026 |
| 1.0.8 | Changes since 1.0.7 * release(langgraph): 1.0.8 (#6757) * chore: shallow copy futures (#6755) * fix: pydantic messages double streaming (#6753) * chore(deps-dev): bump ruff from 0.14.7 to 0.14.11 in /libs/sdk-py (#6673) * chore: Omit lock when using connection pool (#6734) * docs: enhance `Runtime` and `ToolRuntime` class descriptions for clarity (#6689) * docs: add clarity to use of `thread_id` (#6515) * docs: add docstrings to `add_node` overloads (#6514) * docs: update notebook links and add | Low | 2/6/2026 |
| sdk==0.3.4 | Changes since sdk==0.3.3 * chore: release python sdk (#6754) * feat(sdk-py): add update method for crons client (#6742) * feat(sdk-py): add support for enabling/disabling crons (#6740) * chore(deps-dev): bump ruff from 0.14.7 to 0.14.11 in /libs/sdk-py (#6673) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * docs: clarify cron job schedule interpretation in UTC (#6692) * chore: update twitter URLs (#6683) | Low | 2/6/2026 |
| checkpointpostgres==3.0.4 | Changes since checkpointpostgres==3.0.3 * chore: Omit lock when using connection pool (#6734) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683) | Low | 1/31/2026 |
| cli==0.4.12 | Changes since cli==0.4.11 * release(cli): 0.4.12 (#6716) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683) | Low | 1/23/2026 |
| 1.0.7 | Changes since 1.0.6 * release: langgraph and prebuilt 1.0.7 (#6712) * fix: aiosqlite's breaking change (#6699) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683) | Low | 1/22/2026 |
| prebuilt==1.0.7 | Changes since prebuilt==1.0.6 * release: langgraph and prebuilt 1.0.7 (#6712) * feat: support dynamic tool calling via `tool` override in `wrap_model_call` (#6711) * fix: aiosqlite's breaking change (#6699) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683) | Low | 1/22/2026 |
| checkpointsqlite==3.0.3 | Changes since checkpointsqlite==3.0.2 * fix: aiosqlite's breaking change (#6699) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683) | Low | 1/19/2026 |
