URL format
Every REST request targets a path in your database, with.json appended:
/players/alice in the my-game database of project chess-app:
Database-in-subdomain format
You can also specify the database as part of the subdomain using--:
Authentication
Pass an auth token as a query parameter:auth parameter accepts any token that Lark supports: Lark tokens (HS256 JWTs signed with your secret key) or Firebase Auth tokens.
You can also use access_token as an alias:
Operations at a glance
| HTTP method | Operation | Description |
|---|---|---|
GET | Read | Fetch data at a path |
PUT | Set | Replace data at a path |
POST | Push | Add a child with an auto-generated key |
PATCH | Update | Merge data at a path |
DELETE | Remove | Delete data at a path |
When to use the REST API
- Reading or writing data from your backend without maintaining a WebSocket connection.
- One-off scripts to import data, seed a database, or run migrations.
- Receiving a webhook and writing to Lark with a single HTTP call.
- Edge functions, serverless workers, or other runtimes without WebSocket support.
- Quick reads with
curlto inspect your data.
Quick example
What’s next
Reading data
GET requests, shallow reads, queries, and formatting options.
Writing data
PUT, POST, PATCH, DELETE, multi-path updates, and server values.
Streaming
Server-Sent Events for real-time updates over HTTP.
Conditional requests
ETags and compare-and-swap for safe concurrent writes.

