Tool Name: airdroid_business_update_group_remark
Risk Level: 🟠 Medium Risk
Execution Mode: ⚡ Synchronous
Category: Group Management
Quick Start (Copy & Use)
One-liner: Modify the remark/description of a specified group.
You need: GroupId (group ID), Remark (new remark content, optional; pass an empty string to clear the remark)
Success criteria: StatusCode == 200 AND ErrorMessage == ""
What to do next: No further action needed, or call Get a Group to confirm the change
Minimum request example:
{
"GroupId": 12,
"Remark": "Responsible for answering sales inquiries"
}
Minimum response example:
{
"StatusCode": 200,
"ErrorMessage": ""
}
Recipes (Common Recipes)
Recipe 1: Add a group remark
Scenario: Add a descriptive remark to a group
{
"GroupId": 100,
"Remark": "North region sales team devices, managed by John Smith"
}
Recipe 2: Clear a group remark
Scenario: Remove the remark from a group
{
"GroupId": 100,
"Remark": ""
}
Recipe 3: Look up by group name then update the remark
Scenario: Only know the group name; need to look up the ID first
Step 1: Get the group ID
{
"GroupName": "Sales Team"
}
Response:
{
"GroupIds": [100],
"StatusCode": 200,
"ErrorMessage": ""
}
Step 2: Update the remark
{
"GroupId": 100,
"Remark": "Updated: Q1 2025 - Focus on enterprise clients"
}
1. Overview
1.1 Description
Modify the remark/description of a specified device group in AirDroid Business. Remarks are used to record the group's purpose, responsible person, management policies, and other supplementary information.
1.2 When to Use
- Record group purpose: Describe the business purpose and use case of the group
- Note the responsible person: Record the group manager's information
- Add management notes: Record special management policies or precautions
- Update information: Refresh outdated remark content
- Clear remark: Remove remark content that is no longer needed
1.3 Execution Mode & Response
This is a synchronous operation that returns the result immediately.
- Return value: StatusCode and ErrorMessage
- Typical latency: < 1 second
1.4 Prerequisites
| Condition | Description | How to Check |
|---|---|---|
| Group exists | The GroupId must correspond to an existing group | Use Get a Group to verify |
| Sufficient permissions | Account must have permission to modify groups | - |
1.5 Prerequisite Tools
| Dependency Tool | Purpose | Necessity |
|---|---|---|
| Get a Group ID by Group Name | Get GroupId by group name | If only the group name is known |
| Get a Group | Check if the group exists and its current remark | Optional |
2. Inputs
2.1 Parameter List
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| GroupId | number | ✅ Yes | - | Group unique identifier |
| Remark | string | No | "" | New remark content |
2.2 Parameter Details
`GroupId`
Unique identifier of the group whose remark is to be updated.
- Type: number (integer)
- Format requirements: Must be a positive integer greater than 0
- Source:
How to obtain:
- Use Get a Group ID by Group Name to look up by group name
- Use the group_id field from Get All Devices response
- Use the id field from Get a Group response
- Use the GroupId returned by Create a Group
- How to fill in a GI node:
- Constant value: Enter a number directly, e.g. 100
- Upstream output reference: Get from Get a Group ID by Group Name output GroupIds[0]
- Example:
100
`Remark`
New remark content for the group.
- Type: string
- Format requirements:
- Maximum length: 1024 characters
- Can be an empty string (to clear the remark)
- Prohibited special characters: / \ < > &
- Source: User-specified
- How to fill in a GI node:
- Constant value: Enter a string directly, e.g. "Sales team devices"
- Upstream output reference: Get the remark content from user input
- Example:
Add a remark:
"Responsible for answering sales inquiries. Contact: sales@example.com"
Clear a remark:
""
3. Outputs
3.1 Response Examples
Success response:
{
"StatusCode": 200,
"ErrorMessage": ""
}
Error response (group not found):
{
"StatusCode": 200,
"ErrorMessage": "Group not found"
}
Error response (parameter error):
{
"StatusCode": -1,
"ErrorMessage": "Invalid group_id."
}
3.2 Field Descriptions
| Field Path | Type | Description |
|---|---|---|
| StatusCode | number | Status code. See 5.1 AB Three-Layer Error Codes |
| ErrorMessage | string | Error message. Empty string on success |
4. Examples
4.1 Basic Example: Add a group remark
Request parameters:
{
"GroupId": 12,
"Remark": "Responsible for answering sales inquiries"
}
Response:
{
"StatusCode": 200,
"ErrorMessage": ""
}
4.2 Advanced Example: Add a detailed remark
Request parameters:
{
"GroupId": 100,
"Remark": "North Region Sales Team\nManager: John Smith\nContact: john.smith@example.com\nPolicy: Standard MDM policy applied\nLast updated: 2025-02-04"
}
Response:
{
"StatusCode": 200,
"ErrorMessage": ""
}
4.3 Example: Clear a group remark
Request parameters:
{
"GroupId": 100,
"Remark": ""
}
Response:
{
"StatusCode": 200,
"ErrorMessage": ""
}
4.4 Error Example: Group not found
Request parameters:
{
"GroupId": 99999,
"Remark": "Test remark"
}
Response:
{
"StatusCode": 200,
"ErrorMessage": "Group not found"
}
5. Error Handling
5.1 AB Three-Layer Error Codes
Core principle: AB uses a three-layer error code strategy. The Agent should decide its handling approach based on the StatusCode.
| StatusCode | Meaning | Scenario | Agent Action |
|---|---|---|---|
| -1 | Parameter validation error | GroupId is invalid or remark format is incorrect | ❌ Do not retry; fix parameters and call again |
| 200 | Business success or business error | HTTP request succeeded; check ErrorMessage | Empty ErrorMessage = success; non-empty = business error |
| 500 | Network/request exception | Timeout, connection failure | ⚠️ Retry up to 2 times with 5-second intervals |
5.2 Common Errors
| StatusCode | ErrorMessage Example | Cause | Fix |
|---|---|---|---|
| -1 | Invalid group_id. | GroupId is not a positive integer | Verify GroupId is valid |
| -1 | Invalid remark. | Remark format is incorrect | Check for prohibited special characters |
| 200 | Group not found | Group does not exist | Use Get a Group ID by Group Name to confirm the group |
| 200 | access_token is invalid. | Token is invalid or expired | Refresh the AccessToken |
| 500 | Request timeout after 60 seconds. | Request timed out | Retry later |
5.3 Agent Self-Healing Decision Table
| StatusCode | Auto-Retry | Retry Strategy | Requires Manual Intervention |
|---|---|---|---|
| -1 | ❌ | - | Fix parameters and call again |
| 200 (non-empty ErrorMessage) | ❌ | - | Fix based on error message |
| 500 | ⚠️ | Retry up to 2 times with 5-second intervals | Escalate if failures persist |
6. Best Practices
6.1 Performance Optimization
- Update as needed: Only call when the remark content has changed to avoid unnecessary calls
- Batch scenario: For updating remarks on multiple groups, call in parallel
6.2 Security Considerations
🟡 Write operation: This operation modifies group data.
- Accuracy: Ensure remark content is accurate and up-to-date
- Sensitive information: Avoid recording sensitive information (e.g., passwords, keys) in remarks
- Format standards: Establish a remark content format standard for consistency
6.3 Idempotency
Idempotency of this operation: Naturally idempotent.
- Setting the same remark content multiple times has no side effects
- Regardless of how many times it is called, the final result is the specified remark content
7. Related Tools
7.1 Prerequisite Tools
| Tool Name | Purpose |
|---|---|
| Get a Group ID by Group Name | Get GroupId by group name |
| Get a Group | View the current group remark |
7.2 Follow-up Tools
| Tool Name | Purpose |
|---|---|
| Get a Group | Confirm the remark change |
7.3 Similar Tools Comparison
| Tool Name | Use Case | Difference |
|---|---|---|
| Update a Group Remark | Modify group remark | Modifies the remark/description |
| Update a Group Name | Modify group name | Modifies the name |
8. Tool Chains
8.1 Look Up by Name and Update Remark
Scenario: User provides the group name and new remark; perform the update
Tool chain:
Get a Group ID by Group Name → Update a Group Remark
Steps:
- Call Get a Group ID by Group Name to get the group ID
- Verify the group exists (GroupIds is not empty)
- Use the GroupId to call Update a Group Remark
8.2 Create a Group Then Add a Remark
Scenario: Add a remark immediately after creating a new group
Tool chain:
Create a Group → Update a Group Remark
Steps:
- Call Create a Group to create the new group
- Use the returned GroupId to call Update a Group Remark to add the remark
8.3 Update Name and Remark Simultaneously
Scenario: Update both the group name and remark at the same time
Tool chain:
Update a Group Name → Update a Group Remark
Or call in parallel (if using the same GroupId):
Update a Group Name ─┬─→ Done Update a Group Remark ─┘
Steps:
- Call Update a Group Name to change the name
- Call Update a Group Remark to update the remark
- These two operations are independent and can be executed in parallel
8.4 View Then Update Remark
Scenario: View the current remark before deciding whether to update
Tool chain:
Get a Group → [Decision] → Update a Group Remark
Steps:
- Call Get a Group to retrieve group info including the current remark
- Decide whether an update is needed based on the current remark
- If an update is needed, call Update a Group Remark
Leave a Reply.