Connect Coze to Lark (Feishu)
Step-by-step guide to running your Coze app as a Lark (Feishu) bot with LangBot: Coze setup, bot credentials, networking, testing and troubleshooting.
This recipe puts your Coze app behind a Lark (Feishu) bot. LangBot receives messages from Lark (Feishu), runs them through a pipeline, and sends the answer back, so you do not write any platform code.
Coze builds agents visually. LangBot calls a Coze bot through the Coze API, so you can reach platforms Coze does not publish to and keep one bot across many channels.
What you need
- A running LangBot instance: LangBot Cloud (no server needed) or a self-hosted deployment with Docker or
uvx langbot. - A Coze account or instance that LangBot can reach over the network.
- A Feishu or Lark custom app (
app_idandapp_secret). The one-click setup in LangBot can create and authorize it for you.
Networking
The default WebSocket long connection needs no public IP. Where long connection is unavailable (for example some Lark international setups), webhook mode requires a public HTTPS address; LangBot Cloud includes one.
1. Prepare Coze
- In the Coze developer console, create a token under API Management (coze.com offers Personal Access Tokens; coze.cn also supports service credentials).
- Publish your agent with the API channel selected and copy its
bot_id.
2. Create a pipeline
Open Pipelines in the LangBot WebUI, create a pipeline (or edit the default one) and set AI as follows. If the runner is not listed, install the official runner plugin from Plugins or the LangBot Space marketplace.
| Field | Value |
|---|---|
| Runner | Coze (official Coze Agent runner plugin) |
| API Key | The Coze token |
| Bot ID | The agent's bot_id |
| API Base URL | https://api.coze.cn for coze.cn or https://api.coze.com for coze.com |
3. Create the Lark (Feishu) bot
- Create a bot with the Lark adapter, select the platform domain (Feishu or Lark) and use One-Click Setup, or enter
app_idandapp_secretmanually. - Add the message permissions and event subscriptions from the guide (and the card permissions if you want streaming cards), then publish an app version.
4. Bind and test
Open the bot, select the pipeline you created, save and make sure the bot is enabled.
Search for the bot in Feishu/Lark, send it a direct message, then add it to a group and mention it.
Troubleshooting
- Calls fail: check the token and
bot_idfor extra spaces, that the agent was published with the API channel, and that the base URL matches the Coze site. - No messages arrive: confirm the app version is published and the event subscription uses the same mode (long connection or webhook) as LangBot.
- Check Monitoring in the WebUI: every message, pipeline run and error is recorded there.
FAQ
Do I need a server with a public IP for Lark (Feishu)?
Not necessarily. The default WebSocket long connection needs no public IP. Where long connection is unavailable (for example some Lark international setups), webhook mode requires a public HTTPS address; LangBot Cloud includes one.
Does the Lark (Feishu) bot support streaming replies?
Yes. Enable streaming on the bot; the AI back end must also stream. See the platform feature matrix for details.
Can the same Coze setup serve other platforms too?
Yes. A pipeline can be bound to many bots, so one configuration can answer on several platforms at once.
Related guides
- Full Lark (Feishu) setup guide
- Full Coze runner guide
- Other AI back ends on Lark (Feishu): Dify · n8n · Langflow · DeepSeek · OpenAI (ChatGPT models)
- Coze on other platforms: Telegram · Discord · Slack · DingTalk · WeCom (internal app) · WeCom Intelligent Bot
Connect Coze to Slack
Step-by-step guide to running your Coze app as a Slack bot with LangBot: Coze setup, bot credentials, networking, testing and troubleshooting.
Connect Coze to DingTalk
Step-by-step guide to running your Coze app as a DingTalk bot with LangBot: Coze setup, bot credentials, networking, testing and troubleshooting.
