webhook 参数。如果某个可以接受 POST 请求的端点指定了此参数,LangSmith 将在运行完成时发送一个请求。
在使用 LangSmith 时,您可能希望使用 Webhook 在 API 调用完成后接收更新。Webhook 对于在运行处理完成后触发您服务中的操作非常有用。要实现这一点,您需要暴露一个可以接受 POST 请求的端点,并在您的 API 请求中将此端点作为 webhook 参数传递。
目前,SDK 没有提供内置支持来定义 Webhook 端点,但您可以通过 API 请求手动指定它们。
支持的端点
以下 API 端点接受webhook 参数:
在本指南中,我们将展示如何在流式运行后触发 Webhook。
设置您的助手和线程
在进行 API 调用之前,请先设置您的助手和线程。- Python
- JavaScript
- CURL
在图形运行中使用 Webhook
要使用 Webhook,请在您的 API 请求中指定webhook 参数。当运行完成时,LangSmith 会向指定的 Webhook URL 发送一个 POST 请求。
例如,如果您的服务器在 https://my-server.app/my-webhook-endpoint 监听 Webhook 事件,请在您的请求中包含此 URL:
- Python
- JavaScript
- CURL
Webhook 负载
LangSmith 以 运行 的格式发送 Webhook 通知。请求负载包括运行输入、配置以及kwargs 字段中的其他元数据。除了标准的运行字段外,Webhook 负载还包括 values、webhook_sent_at 和 error 字段。
完整的 Webhook 负载包含以下字段:
示例负载:
error 字段包含失败的详细信息:
安全的 Webhook
为确保只有经过授权的请求才能访问您的 Webhook 端点,请考虑将安全令牌作为查询参数添加:向 Webhook 请求添加头部
在
langgraph-api>=0.5.36 中可用。langgraph.json 文件中添加 webhooks.headers 配置:
在头部中使用环境变量
要在不将机密或环境特定值检入配置文件的情况下包含它们,请使用${{ env.VAR }} 模板语法:
LG_WEBHOOK_ 开头的环境变量。这可以防止意外泄露不相关的环境变量。您可以使用 env_prefix 自定义此前缀:
缺少必需的环境变量将阻止服务器启动,确保您不会在配置不完整的情况下部署。
限制 Webhook 目标地址
在
langgraph-api>=0.5.36 中可用。webhooks.url 配置来限制哪些 URL 是有效的 Webhook 目标地址:
禁用 Webhook
从langgraph-api>=0.2.78 开始,开发者可以在 langgraph.json 文件中禁用 Webhook:
测试 Webhook
您可以使用以下在线服务测试您的 Webhook:- Beeceptor – 快速创建测试端点并检查传入的 Webhook 负载。
- Webhook.site – 实时查看、调试和记录传入的 Webhook 请求。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

