siyuan-note/siyuan · warning
The sidebar feature that comes with the plugin needs to be c
Error message
The sidebar feature that comes with the plugin needs to be configured on the desktop (you can access http://127.0.0.1:6806/stage/build/desktop using a mobile browser, after the configuration is complete, please restart SiYuan APP)
What it means
Returned by SetCloudReminder when util.Container == "ios" and IsSubscriber() is false. Conf.Language(122) is the iOS-specific message instructing the user that the sidebar/cloud feature must be configured on desktop. iOS App Store policy requires routing such features through subscription, so the kernel gates them on iOS.
Source
Thrown at kernel/model/blockial.go:43
"github.com/88250/gulu"
"github.com/88250/lute/ast"
"github.com/88250/lute/editor"
"github.com/88250/lute/html"
"github.com/88250/lute/parse"
"github.com/araddon/dateparse"
"github.com/siyuan-note/siyuan/kernel/av"
"github.com/siyuan-note/siyuan/kernel/cache"
"github.com/siyuan-note/siyuan/kernel/filesys"
"github.com/siyuan-note/siyuan/kernel/sql"
"github.com/siyuan-note/siyuan/kernel/treenode"
"github.com/siyuan-note/siyuan/kernel/util"
)
func SetCloudReminder(id, content, timed string) (err error) {
if !IsSubscriber() {
if "ios" == util.Container {
return errors.New(Conf.Language(122))
}
return errors.New(Conf.Language(29))
}
var timedMills int64
if "0" != timed {
t, e := dateparse.ParseIn(timed, time.Now().Location())
if nil != e {
return e
}
timedMills = t.UnixMilli()
}
content = strings.TrimSpace(content)
err = SetCloudBlockReminder(id, content, timedMills)
if err != nil {
return
}View on GitHub (pinned to 251596fc0d)
Solutions
- Purchase the annual subscription and refresh login in Settings - Account & Sync.
- Perform the operation on desktop (or via the desktop endpoint from a mobile browser) where the iOS gate does not apply.
- Refresh account state (Settings - Account & Sync - Account) if recently subscribed.
Defensive patterns
Strategy: validation
Validate before calling
if util.Container == "ios" && !model.IsSubscriber() {
return errors.New("cloud reminders on iOS require a subscription")
} Prevention
- Gate the SetCloudReminder UI affordance on subscription status when running on iOS.
- Prompt the user to subscribe before the call rather than after.
- Offer a desktop flow as a fallback on iOS.
When it happens
Trigger: Calling SetCloudReminder from the iOS build without an active subscription; calling from a non-subscriber iOS session.
Common situations: User on iOS attempting to set a cloud-based reminder; iOS user whose subscription expired; iOS user logged out of their account.
Related errors
- This feature requires the purchase of an <a target='_blank'
- Account authentication failed, please login again
- You have already used a free trial subscription. Duplicate t
- writing file paths to clipboard is not supported on this pla
AI-assisted analysis of siyuan-note/siyuan@251596fc0d (2026-08-12).
Data as JSON: /api/errors/470c6f90935511b1.
Report an issue: GitHub.