---
title: "Lark Base Integration"
description: "Use Lark Base tables as agent-writable databases. Agents list and create tables, discover fields, and create, update, delete, and search records with structured filters, ideal for syncing form submissions and app data into ByteDance's Lark suite."
url: https://flowrunner.ai/integrations/larksuitebase
date_modified: 2026-08-01T02:40:32-07:00
---

# Lark Base

[Database](https://flowrunner.ai/integrations/category/databases-warehouses)

Use Lark Base tables as agent-writable databases. Agents list and create tables, discover fields, and create, update, delete, and search records with structured filters, ideal for syncing form submissions and app data into ByteDance's Lark suite.

[Verified](https://flowrunner.ai/integrations/verified "What does verified mean?") · 9 actions · OAuth · available

[Lark Base website](https://larksuite.com/) · [Platform Documentation](https://open.larksuite.com/document/) · Capability data verified 2026-08-12

1.  A new batch of form submissions arrives from the intake form
2.  List Tables resolves the tracking table inside the Base app
3.  List Fields reads the table's field names and type codes so the payload maps correctly
4.  Search Records filters for existing entries matching each submission's email
5.  Create Record appends the genuinely new submissions as rows
6.  The flow flags submissions that match existing rows with conflicting details
7.  The ops owner resolves the conflicts, choosing which version of the truth the table keeps
8.  The team's Lark channel gets the batch summary with new and flagged counts

## What This Integration Enables

Inside companies that run on Lark, Base tables are where operations actually happen: the launch tracker, the vendor list, the hiring pipeline, each one a typed database wearing a spreadsheet's face. FlowRunner treats them as exactly that. Agents discover tables and fields at runtime, write and update records with values shaped to the schema, and search with structured filters, so the tables the team plans from stop depending on someone remembering to update them. And because Base lives inside Lark, the notification loop stays short: the same flow that writes the record posts its summary into the chat where the table's owners already work.

-   Sync form submissions and app data into Base tables as structured records
-   Update rows from workflow events: mark done, flip a status, correct a field
-   Search with structured filters, sorting, and field selection to power reports and downstream steps
-   Discover tables with List Tables and field schemas with List Fields so flows adapt to the Base as built
-   Create new tables with typed fields when a workflow needs a home for its output

### Without FlowRunner

**The tracker is updated by whoever remembers**: The Base table everyone plans from reflects last week, because updating it is nobody's job

**Spreadsheet copies multiply**: Data lives in the form tool, a sheet export, and the Base, and the three quietly diverge

**Filters are run by hand**: Answering "what's overdue" means someone opening the Base and fiddling with views

### With FlowRunner

**The table updates the moment events happen**: Form submissions, orders, and status changes write themselves in as structured rows

**The Base is the single copy**: External sources sync into one table on schedule, with conflicts surfaced instead of buried

**Filters run as workflow steps**: Search Records answers the overdue question on a timer and posts the result where the team lives

## Use Case Scenarios

### The intake table that fills itself

Responses from [Typeform](https://flowrunner.ai/integrations/typeform) land as rows the moment they arrive. The flow reads the schema with List Fields, shapes each response to the table's field names and types, and calls Create Record per submission. Duplicates are checked first via Search Records on the email field, so the table stays one-row-per-person, and the summary posts to the team's channel with counts and the link to the Base.

### The escalation sweep on a timer

Every morning, Search Records runs a structured filter: status not Done, due date before today, conjunction and. The matching rows post to [Slack](https://flowrunner.ai/integrations/slack) grouped by owner, and each row's record gets an Update Record stamping the escalation date so tomorrow's sweep knows what was already flagged. Nobody opens the Base to find out what slipped; the Base reports it. Owners who clear their list before the sweep see nothing at all, which is the point: the report spends attention only where attention is due.

### The migration off the spreadsheet

A team graduates a tracking sheet into Base. The flow pulls rows from [Google Sheets](https://flowrunner.ai/integrations/google-sheets), calls Create Table with typed field definitions, text, number, single select, date, person, then walks the rows through Create Record with values shaped by List Fields. The result is not a pasted copy but a typed table that validates its data, and the old sheet gets a final row pointing at its successor.

## Human-in-Loop Highlight

Delete Record permanently removes a row, and the dangerous case is not one deletion but a propagated one. A sync flow that mirrors an external source into Base has to decide what to do when rows vanish upstream, and the honest answer is: it depends on why they vanished. A botched export or a truncated API response looks identical to an intentional cleanup, and a sync that faithfully mirrors it will hollow out the table the whole team plans from, one permanent Delete Record at a time. So FlowRunner sync flows carry a deletion tripwire. Removing the odd stale row proceeds automatically, but when a run computes deletions beyond a small threshold, the agent stops, posts the would-be casualties with their field values, and waits. The ops owner looks at the list, recognizes the upstream export failure, and cancels; or confirms the cleanup and lets it run. Mirroring is machine work. Deciding that a mass disappearance upstream is real belongs to a person.

Agent processes routinely

Detects exception requiring judgment

Clear match Continues automatically

Ambiguous Routes to human via preferred channel

Human decides

Agent resumes with decision

## Agent Capabilities

9 actions

### Tables

2

-   **List Tables** Lists the data tables inside a Base app with ID, name, and revision, keyed by the Base app token. The entry point for every record operation.
-   **Create Table** Creates a table with a name and optional typed field definitions, from text and number through single select, date, checkbox, person, phone, URL, and attachment. The step that gives a workflow's output a structured home.

### Schema

1

-   **List Fields** Lists a table's fields with ID, name, numeric type code, and configuration. The discovery step that lets agents shape valid payloads against the table as it exists today.

### Records

6

-   **List Records** Lists a table's rows with pagination, optionally applying a view's filters and sorting. The bulk read behind exports and mirrors.
-   **Get Record** Retrieves a single record by ID with its full fields object. The context pull before an update decision.
-   **Create Record** Creates a row from a fields object mapping field names to values matched to the schema. The write that turns events into records.
-   **Update Record** Updates a record's supplied fields only, leaving the rest untouched. The status-flip and correction step.
-   **Delete Record** Permanently removes a row by record ID. The operation this page's deletion tripwire exists for.
-   **Search Records** Searches a table with a structured filter object supporting and/or conjunctions, sort criteria, and field selection, returning matches with pagination. The query engine behind sweeps, dedup checks, and reports.

## Frequently Asked Questions

### What can FlowRunner do with Lark Base?

FlowRunner agents can run List Tables, Create Table, and List Fields in Lark Base, plus 6 more actions.

### Does connecting Lark Base to FlowRunner require OAuth?

Yes. Lark Base connects to FlowRunner with OAuth 2.0, so agents authenticate without handling raw credentials.

### Can Lark Base trigger a FlowRunner workflow automatically?

Lark Base doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

**Work at Lark Base?** This integration exposes Lark Base to AI agents on every FlowRunner plan, including through MCP, at no cost to you. [See what FlowRunner offers integration partners](https://flowrunner.ai/integrations/partners), including how to keep this page current.

---
Markdown version of https://flowrunner.ai/integrations/larksuitebase. Site index: https://flowrunner.ai/llms.txt
