• Tools
  • Tools
loading...
No Results
Home > Documentation

Move Groups to a Group

> Tool Name: airdroid_business_group_move

> Risk Level: Write

> Execution Mode: Synchronous

> Category: Group Management

Quick Start

Summary: Move one to 50 groups beneath a destination group, or use 0 as the destination to move groups to the top level.

You need: GroupIds, TargetGroupId, and ReplacePolicyConfig.

Success criteria: StatusCode == 200, ErrorMessage is empty, and every requested ID appears in SuccessIds. A 200 response with a non-empty ErrorMessage can be a partial success; inspect both SuccessIds and FailedIds.

Next step: Correct the reason in each FailedIds item and submit only those failed group IDs again.

Minimal request example:

{
  "GroupIds": [24693, 24718],
  "TargetGroupId": 24580,
  "ReplacePolicyConfig": true
}

Minimal response example:

{
  "SuccessIds": [24693, 24718],
  "FailedIds": [],
  "Hint": "",
  "Retryable": false,
  "OriginalStatusCode": 200,
  "StatusCode": 200,
  "ErrorMessage": ""
}

Recipes

Recipe 1: Move groups to a parent

When to use: The groups should become children of one existing parent group.

{
  "GroupIds": [24693, 24718],
  "TargetGroupId": 24580,
  "ReplacePolicyConfig": true
}

Recipe 2: Move groups to the top level

When to use: The selected groups should have no parent group.

{
  "GroupIds": [24693, 24718],
  "TargetGroupId": 0,
  "ReplacePolicyConfig": false
}

Recipe 3: Retry only partial failures

When to use: A prior response includes a non-empty FailedIds array.

{
  "GroupIds": [24718],
  "TargetGroupId": 24580,
  "ReplacePolicyConfig": true
}

Use the id values from FailedIds after correcting their ErrorMessage cause. Do not resend groups already listed in SuccessIds.

1. Overview

1.1 Description

Moves existing groups under TargetGroupId. The action completes synchronously and can report successful and failed group moves in the same response.

1.2 When to Use

  • Reorganize an existing group hierarchy.
  • Move groups to the top level by setting TargetGroupId to 0.
  • Decide whether moved groups adopt the destination group Policy/Kiosk configuration.

1.3 Execution Mode and Response

This is a synchronous write. SuccessIds lists completed moves. FailedIds lists group-level failures, so StatusCode == 200 alone does not establish a complete move.

1.4 Prerequisites

Condition Description
Valid group IDs Obtain IDs from Batch Resolve Group IDs by Name, Resolve Group ID by Name, or List Groups.
Valid destination Use an existing positive group ID, or 0 for the top level.
Permission The credential must be allowed to modify groups.

1.5 Prerequisite Tools

Tool Purpose
Batch Resolve Group IDs by Name Resolve several group names before moving them.
Resolve Group ID by Name Resolve one source or destination group name.
List Groups Inspect group IDs and the current hierarchy.

1.6 Similar Tools

Use List Groups when you only need to inspect the hierarchy. Use this action only when changing the parent relationship.

2. Inputs

2.1 Parameter List

Parameter Type Required Default Description
GroupIds number-array Yes - One to 50 positive group IDs to move.
TargetGroupId number Yes - New parent group ID; 0 means top level.
ReplacePolicyConfig bool Yes true Whether moved groups adopt the destination Policy/Kiosk configuration.

2.2 Parameter Details

`GroupIds`

  • Must be a non-empty array of at most 50 positive whole-number group IDs.
  • Obtain IDs from Batch Resolve Group IDs by Name, Resolve Group ID by Name, or List Groups.
  • Do not include TargetGroupId in this array.

`TargetGroupId`

  • Must be a non-negative integer.
  • 0 moves the groups to the top level; a positive value identifies the destination parent group.
  • Obtain a positive destination ID from Batch Resolve Group IDs by Name, Resolve Group ID by Name, or List Groups.

`ReplacePolicyConfig`

  • true (default) applies the destination group's Policy/Kiosk configuration to moved groups.
  • false keeps the moved groups' current Policy/Kiosk configuration.

2.3 Parameter Combination Logic

  • GroupIds and TargetGroupId cannot overlap.
  • If every selected group is already under the destination, the action returns StatusCode -1 and no move is submitted.
  • A destination group cannot contain a sibling with the same name as a moved group; correct the hierarchy conflict before retrying.

3. Outputs

3.1 Response Examples

Complete success:

{
  "SuccessIds": [24693, 24718],
  "FailedIds": [],
  "Hint": "",
  "Retryable": false,
  "OriginalStatusCode": 200,
  "StatusCode": 200,
  "ErrorMessage": ""
}

Partial success:

{
  "SuccessIds": [24693],
  "FailedIds": [
    {
      "id": 24718,
      "ErrorMessage": "Move failed for this group."
    }
  ],
  "Hint": "Server-side operation failed; retry later. If it persists, provide ErrorMessage and OriginalStatusCode to support@airdroid.com.",
  "Retryable": false,
  "OriginalStatusCode": 200,
  "StatusCode": 200,
  "ErrorMessage": "Partial success: 1 moved, 1 failed. ID 24718: Move failed for this group."
}

3.2 Field Descriptions

Field Type Description
SuccessIds number-array Group IDs moved successfully.
FailedIds object-array Per-group failures. Each item has id and ErrorMessage.
Hint string Recommended next action after a failure; empty on complete success.
Retryable bool Whether retrying the same request may help.
OriginalStatusCode number Upstream HTTP status; 0 means no upstream response.
StatusCode number 200 completed; -1 local validation; 500 system or network failure.
ErrorMessage string Empty only when all requested groups moved. A non-empty value at 200 reports a partial failure.

3.3 Status Values

FailedIds[].id is the group that was not moved. FailedIds[].ErrorMessage is the caller-visible reason for that group.

4. Examples

4.1 Move groups with destination configuration

{
  "GroupIds": [24693, 24718],
  "TargetGroupId": 24580,
  "ReplacePolicyConfig": true
}

4.2 Keep current Policy/Kiosk configuration

{
  "GroupIds": [24693],
  "TargetGroupId": 0,
  "ReplacePolicyConfig": false
}

4.3 Invalid destination overlap

{
  "GroupIds": [24580, 24693],
  "TargetGroupId": 24580,
  "ReplacePolicyConfig": true
}

This returns StatusCode -1 because TargetGroupId cannot appear in GroupIds.

5. Error Handling

5.1 StatusCode Semantics

StatusCode Meaning Action
-1 Local validation failed. Correct the IDs or configuration and resubmit.
200 The upstream response was processed. Success requires an empty ErrorMessage and no FailedIds.
500 HTTP, network, or tool failure. Use Retryable and Hint; verify the hierarchy before retrying a write.

5.2 Common Errors

Error condition Resolution
More than 50 groups Split GroupIds into requests of 50 or fewer.
Invalid or default group Resolve IDs with List Groups or a group-ID resolver and choose non-default groups where required.
Group already at destination Skip the group or choose a different TargetGroupId.
Destination sibling name conflict Rename the conflict or choose another destination.

5.3 Partial Failure Handling

Read SuccessIds and FailedIds together. After correcting the reported group-specific issue, retry only the IDs in FailedIds.

6. Best Practices

6.1 Limit the batch

Keep each request to the necessary groups and no more than 50 IDs.

6.2 Review Policy/Kiosk impact

Choose ReplacePolicyConfig deliberately because it controls whether moved groups adopt the destination group's Policy/Kiosk configuration.

6.3 Idempotency

This action is conditionally idempotent. Repeat it only when the current group hierarchy does not already match the requested result. If all selected groups are already under the target parent, the runtime returns StatusCode -1 and no move is submitted.

7. Related Tools

Tool Role
Batch Resolve Group IDs by Name Obtain multiple group IDs.
Resolve Group ID by Name Obtain one group ID.
List Groups Inspect group IDs and hierarchy.

8. Tool Chains

8.1 Resolve, move, and recover

Batch Resolve Group IDs by Name -> Move Groups to a Group -> retry FailedIds only
  1. Resolve source and destination group IDs.
  2. Move the selected source IDs.
  3. If FailedIds is non-empty, correct the recorded issue and submit only those IDs again.
Updated on: Aug 5, 2026
Was This Page Helpful?
Discussion

Leave a Reply. Cancel reply

Your email address will not be published. Required fields are marked*

Product-related questions?Contact Our Support Team to Get a Quick Solution>
On this page
  • Quick Start
  • Recipes
    • Recipe 1: Move groups to a parent
    • Recipe 2: Move groups to the top level
    • Recipe 3: Retry only partial failures
  • 1. Overview
    • 1.1 Description
    • 1.2 When to Use
    • 1.3 Execution Mode and Response
    • 1.4 Prerequisites
    • 1.5 Prerequisite Tools
    • 1.6 Similar Tools
  • 2. Inputs
    • 2.1 Parameter List
    • 2.2 Parameter Details
    • 2.3 Parameter Combination Logic
  • 3. Outputs
    • 3.1 Response Examples
    • 3.2 Field Descriptions
    • 3.3 Status Values
  • 4. Examples
    • 4.1 Move groups with destination configuration
    • 4.2 Keep current Policy/Kiosk configuration
    • 4.3 Invalid destination overlap
  • 5. Error Handling
    • 5.1 StatusCode Semantics
    • 5.2 Common Errors
    • 5.3 Partial Failure Handling
  • 6. Best Practices
    • 6.1 Limit the batch
    • 6.2 Review Policy/Kiosk impact
    • 6.3 Idempotency
  • 7. Related Tools
  • 8. Tool Chains
    • 8.1 Resolve, move, and recover
loading...
No Results