Control Text Content
API Migration Notice
The legacy endpoint https://dot.mindreset.tech/api/open/text will be retired soon.
To reduce migration effort, requests sent to the legacy endpoint will be automatically forwarded
to the new API, but this compatibility behavior may be removed in the future.
We strongly recommend completing the following updates as soon as possible:
- Update the request URL to the new endpoint:
/api/authV2/open/device/:deviceId/text - Send parameters according to this document (e.g.
refreshNow/title/message/signature/icon/link/taskKey) - If you rely on legacy response payloads or error codes, adapt your integration to the new API responses
Quick Guide
Prerequisites
- Make sure you have retrieved and saved your API key in the Dot. App;
- Make sure you own at least one device and have obtained its device serial number;
- Make sure your device is connected to power;
- Make sure your device is connected to the network;
- Make sure you've added the Text API content to the device task from the Content Studio in the Dot. App.
The API rate limit is 10 requests per second. With the API, you can control device behavior and responses more flexibly.
Placeholders wrapped in ‘{{variable}}’ indicate values you must replace. Fill them with your actual values and remove the ‘{{}}’ braces.
Request Examples
/api/authV2/open/device/:deviceId/text1curl --request POST \
2 --url https://dot.mindreset.tech/api/authV2/open/device/{{DEVICEID}}/text \
3 --header 'Authorization: Bearer {{API_KEY}}' \
4 --header 'Content-Type: application/json' \
5 --data '{}'Response Example
{
"code": 200,
"message": "Device Text API content switched",
"result": {
"message": "Device ABCD1234ABCD Text API content switched"
}
}Reference Usage
- Simple text without immediate display
curl -X POST \
https://dot.mindreset.tech/api/authV2/open/device/{{deviceId}}/text \
-H 'Authorization: Bearer dot_app_UlSpzXNEXhYZIAFakHLCkMVVBLbsBIWxaRMVaJZGUOYKhDoDRZwLLvLujAIwQxbY' \
-H 'Content-Type: application/json' \
-d '{
"refreshNow": false,
"title": "evnydd0sf",
"message": "我能吞下玻璃而不伤身体"
}'- Complex text and display immediately
curl -X POST \
https://dot.mindreset.tech/api/authV2/open/device/{{deviceId}}/text \
-H 'Authorization: Bearer dot_app_UlSpzXNEXhYZIAFakHLCkMVVBLbsBIWxaRMVaJZGUOYKhDoDRZwLLvLujAIwQxbY' \
-H 'Content-Type: application/json' \
-d '{
"title": "验证码小助手",
"message": "一个来自「少数派」的验证码\n205112",
"signature": "2025年8月4日 19:58"
}'- Complex text with icon and link, display immediately
curl -X POST \
https://dot.mindreset.tech/api/authV2/open/device/{{deviceId}}/text \
-H 'Authorization: Bearer dot_app_UlSpzXNEXhYZIAFakHLCkMVVBLbsBIWxaRMVaJZGUOYKhDoDRZwLLvLujAIwQxbY' \
-H 'Content-Type: application/json' \
-d '{
"title": "每日健康",
"message": "消耗卡路里:702千卡\n今日步数:4183步\n站立时间:62分钟",
"signature": "2025年8月4日 20:16",
"icon": "{{base64-encoded PNG image data}}",
"link": "x-apple-health://"
}'- Highly customized text or graphics
Refer to the Image API section on text-as-image usage
Troubleshooting
Endpoint
/api/authV2/open/device/:deviceId/text
Method
POST
Request Schema
Prop
Type
Default
true
Response Schema
Prop
Type
Status Codes
| code | Meaning | Description |
|---|---|---|
200 | Success | Text API content switched / Data updated but content not switched |
400 | Invalid parameters | Invalid icon format |
403 | Forbidden | You do not have permission to operate this device |
404 | Not found | Device not found or not registered Text API content not added |
500 | Device response failure | Failed to switch Text API content |
Did this solve your problem?
Join our community