AppSheet LINE Integration Tutorial: Build a LINE Notification Bot [2025]
AppSheet LINE Integration Tutorial: Build a LINE Notification Bot [2025]
When building Apps in Asia, notifications need to reach users instantly.
Emails might not be checked immediately, but messaging app notifications are read within seconds.
This tutorial teaches you how to make AppSheet send LINE notifications, from setup to practical applications.
Want to learn AppSheet basics first? See AppSheet Complete Guide.
Why Integrate with LINE?
First, let's explain why LINE notifications are so important.
Most Popular Messaging App
LINE has extremely high penetration in Taiwan and other Asian markets.
Almost everyone has LINE and keeps it open all day.
In comparison:
- Email: Might only check once a day
- SMS: Has costs and often ignored
- App Push: Requires installing dedicated App
LINE's Advantages:
| Feature | Description |
|---|---|
| Instant | Messages arrive instantly, most people read immediately |
| Ubiquitous | Almost everyone has it |
| Free | LINE Notify is completely free |
| No learning curve | Users don't need new apps or new interfaces |
AppSheet + LINE Application Scenarios
What can you do connecting AppSheet and LINE?
- Order notifications: New order comes in, sales immediately gets LINE message
- Approval reminders: Leave request submitted, manager gets LINE notification
- Alert warnings: Inventory below safety level, purchasing knows immediately
- Daily reports: Every morning auto-send yesterday's sales summary
These things that required manual tracking can all be automated.
Integration Methods
AppSheet can integrate with LINE through two main methods.
Method 1: LINE Notify
Suitable for: One-way notifications, simple needs
LINE Notify is a free notification service provided officially by LINE.
Features:
- Simple setup
- Completely free
- One-way (can only send notifications, can't receive replies)
- 1000 messages per hour limit
Use cases:
- New data notifications
- Status change reminders
- Scheduled report sending
Method 2: LINE Messaging API
Suitable for: Two-way interaction, complex needs
Requires creating a LINE Bot—more powerful features.
Features:
- Two-way interaction possible
- Can receive user replies
- Requires developer account
- More complex setup
Use cases:
- Chatbots
- Query bots (user messages to check inventory)
- Approval workflows (manager can reply to approve directly in LINE)
This article focuses on LINE Notify because it's simple to set up, free, and sufficient for most needs.
If you need Messaging API, we recommend professional development.

LINE Notify Integration Tutorial
Step by step setup guide.
Step 1: Get LINE Notify Token
First, get a Token—this is AppSheet's pass to send messages to LINE.
Steps:
- Go to LINE Notify website: https://notify-bot.line.me/
- Log in with your LINE account
- Click your name in top right → "My page"
- Scroll down to "Generate token" section
- Click "Generate token"
Configure token:
- Token name: Enter a recognizable name, e.g., "AppSheet Notifications"
- Select chat room:
- "1-on-1 chat with LINE Notify" = Send to yourself
- Select a group = Send to that LINE group
- Click "Generate"
- Important: Copy and save this Token (only shown once)
Token format example:
BbXs9Hg5K2J8mN1pQ4rT7wY0zA3dF6iL9oU2eP5vX
Step 2: Set Up AppSheet Automation
Next, set up automation in AppSheet to call LINE Notify when triggered.
Steps:
- Open your AppSheet App
- Go to "Automation" page
- Click "New Bot" to create new automation
Configure Event (Trigger Condition):
-
Click "Create a new event"
-
Event Type select (as needed):
- Data Change: Trigger on data change
- Schedule: Scheduled execution
-
If selecting Data Change:
- Table: Select table to monitor
- Data change type: Select Adds only / Updates only / or All changes
Configure Process (Flow):
- Click "Add a step"
- Select "Call a webhook"
Configure Webhook:
- Preset: Select "Custom"
- URL:
https://notify-api.line.me/api/notify - HTTP Method: POST
- HTTP Content Type: Application/x-www-form-urlencoded
Configure Headers:
Click "Add" to add Header:
- Header Name: Authorization
- Header Value: Bearer YOUR_TOKEN_HERE
Replace YOUR_TOKEN_HERE with your LINE Notify Token.
Format is Bearer + space + Token.
Configure Body:
message=<<[FieldName]>> message content
Step 3: Configure Message Content
Message content can include dynamic data.
Basic format:
message=New Order Notification%0A%0ACustomer: <<[CustomerName]>>%0AAmount: <<[Amount]>>%0ANotes: <<[Notes]>>
Explanation:
%0A= Line break<<[FieldName]>>= Insert that field's value%0A%0A= Two line breaks (blank line)
Actual received message:
New Order Notification
Customer: John Smith
Amount: 5000
Notes: Please process urgently
Step 4: Test Notification
Must test after setup is complete.
Test steps:
- Return to AppSheet App main screen
- Add a record that matches trigger conditions
- Wait a few seconds (usually 5-10 seconds)
- Check if LINE received notification
Not receiving?
| Problem | Possible Cause | Solution |
|---|---|---|
| Not receiving at all | Token error | Confirm Token is correct, includes "Bearer " |
| Not receiving at all | URL error | Confirm it's notify-api.line.me |
| Not receiving at all | Trigger condition not met | Confirm Event settings are correct |
| Received but garbled | Encoding issue | Confirm message format is correct |

Application Scenarios
Practical application examples.
Scenario 1: Order Notification
New order comes in, sales immediately gets notification.
Trigger Condition:
- Table: Orders
- Event: Adds only (when new order added)
Message Content:
message=📦 New Order Notification%0A%0AOrder ID: <<[OrderID]>>%0ACustomer Name: <<[CustomerName]>>%0AOrder Amount: $<<[Amount]>>%0AOrder Time: <<[CreatedAt]>>%0A%0APlease process promptly!
Received Message:
📦 New Order Notification
Order ID: ORD-2025-001
Customer Name: John Smith
Order Amount: $15,000
Order Time: 2025-12-15 14:30
Please process promptly!
Scenario 2: Approval Reminder
Leave request submitted, manager gets notification.
Trigger Condition:
- Table: LeaveRequests
- Event: Adds only
- Condition (optional): [Status] = "Pending"
Message Content:
message=📝 Leave Request Notification%0A%0AApplicant: <<[EmployeeName]>>%0AType: <<[LeaveType]>>%0ADates: <<[StartDate]>> ~ <<[EndDate]>>%0AReason: <<[Reason]>>%0A%0APlease review in system
Scenario 3: Alert Warning
Inventory below safety level, purchasing gets alert.
This is slightly more complex, requiring Automation's conditional logic.
Setup Method:
- Event: Schedule (e.g., every morning at 9 AM)
- In Process, add "Run a data action"
- Execute Action on Products table
- In Action, set condition: [Stock] < [SafetyStock]
- Only matching items send Webhook
Message Content:
message=⚠️ Inventory Alert%0A%0AProduct: <<[ProductName]>>%0ACurrent Stock: <<[Stock]>>%0ASafety Stock: <<[SafetyStock]>>%0A%0APlease restock immediately!
For more automation setup, see AppSheet Automation Tutorial.
Scenario 4: Daily Report
Every morning auto-send yesterday's sales summary.
Setup Method:
-
Event: Schedule
- Frequency: Daily
- Time: 8:00 AM
-
Create a Virtual Column to calculate yesterday's total
-
Webhook message includes statistics
Message Example:
message=📊 Daily Sales Report%0A%0ADate: <<[TODAY() - 1]>>%0A%0AOrders: <<[YesterdayOrderCount]>>%0ARevenue: $<<[YesterdayRevenue]>>%0A%0AKeep it up!
Want more complex LINE integration? LINE Notify suits basic needs; complex interaction requires Messaging API.
Schedule technical consultation and let us help evaluate the best integration solution for you.
Advanced Tips
Make LINE notifications smarter.
Conditional Notifications
Not all data needs notification—you can set conditions.
Example: Only notify for large orders
In Automation's Event, set Condition:
[Amount] >= 10000
This way only orders with amount >= 10000 send LINE.
Example: Only notify specific personnel
[AssignedTo] = USEREMAIL()
Only notifies the responsible person.
Image Notifications
LINE Notify can also send images.
Method 1: Use Image URL
Add imageThumbnail and imageFullsize in Body:
message=New Product Listed&imageThumbnail=https://example.com/thumb.jpg&imageFullsize=https://example.com/full.jpg
Method 2: Send Stickers
LINE Notify supports LINE stickers:
message=Task Complete!&stickerPackageId=1&stickerId=13
Sticker ID lookup: https://developers.line.biz/en/docs/messaging-api/sticker-list/
Group Notifications
Send to LINE group instead of individual.
Setup Method:
- When generating Token, select target group
- LINE Notify official account must first join that group
- Messages sent with that Token go to the group
Notes:
- Each Token can only correspond to one target
- Different groups need different Tokens
- All group members see the notification
Multi-Target Notifications
Notify multiple people or groups simultaneously.
Method: Create multiple Webhooks
In the same Bot's Process, add multiple "Call a webhook" steps, each using different Tokens.

Common Questions
Is LINE Notify free?
Yes, completely free.
But there are usage limits: maximum 1000 messages per hour.
For typical business applications, this is more than enough.
What if I lose the Token?
Can't recover—must regenerate.
- Go to LINE Notify personal page
- Delete old Token (disconnect)
- Generate new Token
- Update settings in AppSheet
Recommendation: Save Token in a secure place.
Can I send to specific users?
LINE Notify itself doesn't support dynamically selecting recipients.
Each Token corresponds to only one target (individual or group).
If you need dynamic recipient selection, you need LINE Messaging API.
Does AppSheet need paid plan to use Webhook?
Yes. Webhook is an Automation feature, requires Starter plan or above.
For detailed pricing, see AppSheet Pricing Guide.
Is there a message length limit?
Yes. LINE Notify single message max 1000 characters.
Exceeding will be truncated.
Why aren't line breaks in messages working?
Confirm you're using %0A not \n.
In URL encoded Body, line breaks use %0A.
Can I receive user replies?
LINE Notify cannot—only one-way sending.
If you need two-way interaction, use LINE Messaging API.
For advanced Webhook setup, see AppSheet API Integration Guide.
Next Steps
With LINE notifications set up, your App can instantly notify users.
Continue Learning
- AppSheet Complete Guide: Learn all features
- AppSheet Automation Tutorial: More automation settings
- AppSheet API Integration: Advanced Webhook applications
- AppSheet Examples Gallery: Inventory management example includes low stock alerts
Implementation Recommendations
- Test before going live: Confirm message format is correct
- Don't send too many: Avoid notification spam—only send important ones
- Keep Token secure: If leaked, others can impersonate your messages
- Monitor send volume: Watch not to exceed 1000 per hour limit
Need More Advanced LINE Integration?
LINE Notify can satisfy most notification needs, but if you need two-way interaction and auto-replies, you need LINE Messaging API.
Common advanced needs:
- Users query inventory in LINE
- Manager approves leave directly in LINE
- LINE chatbot answers common questions
- Integration with LINE Official Account features
Schedule technical consultation and let us help build a complete LINE integration solution.
References
- LINE Notify Official Documentation
- LINE Developers - Messaging API
- AppSheet Documentation - Call a Webhook
- AppSheet Community - LINE Integration Best Practices
Need Professional Cloud Advice?
Whether you're evaluating cloud platforms, optimizing existing architecture, or looking for cost-saving solutions, we can help
Book Free ConsultationRelated Articles
AppSheet API Integration Guide: Connecting with External Systems [2025 Complete Tutorial]
AppSheet API complete tutorial: Getting API Key, REST API operations (CRUD), integration with Zapier/Make, enabling AppSheet to connect with any external system.
AppSheetAppSheet Automation Complete Tutorial | 4 Practical Examples [2025]
AppSheet Automation complete tutorial: Event triggers, Process flows, Task configuration, with 4 practical examples to help you build automated workflows.
AppSheetAppSheet Interface Settings and Usage Tips | Complete Localization Tutorial [2025]
AppSheet localization complete tutorial, from interface language settings to App content localization, solving common issues like display problems and inaccurate search.