LogMeIn Rescue API User Guide

setGroup

Updates the properties of a user group. You can modify the same group details in the Rescue Administration Center by selecting a user group. For information about group permissions, see How to Create a Technician Group and Assign Permissions in the LogMeIn Rescue Administration Center User Guide.

Input Parameters

Element Description
node The ID of the user group. Required.
name The name of the user group. Required.
status The status of the user group. Required.
The possible values are the following:
  • Enabled
  • Disabled
description The description of the user group. Optional.
permission The possible permissions of a group. Use commas (,) to define multiple permissions. Optional.
The possible values are as follows:
  • RemoteControl
  • RemoteView
  • SendFile
  • SendURL
  • ViewSystemInformation
  • RebootClientComputer
  • ReceiveFile
  • SessionRecording
  • PrivateSessions
  • OneTimePermission
  • FileManagement
  • ScriptRunning
  • UnlimitedScripting
  • SessionTransferNotAllowed
  • EditCustomField
  • WindowsCredentialsRequestNotAllowed
  • ClipboardSynchronizationNotAllowed
  • CallingCardDeployment
  • ScreenSharingNotAllowed
  • CollaborationNotAllowed
  • DeviceConfiguration
  • ChatSuppression
  • ChatSuppressionConsoleSwitch
  • TechEndSessionSurvey
lockedpermission The locked permissions of a group. Use commas (,) to define multiple permissions. Optional.
The possible values are as follows:
  • RemoteControl
  • RemoteView
  • SendURL
  • SendFile
  • ViewSystemInformation
  • RebootClientComputer
  • ReceiveFile
  • SessionRecording
  • PrivateSessions
  • OneTimePermission
  • FileManagement
  • ScriptRunning
  • UnlimitedScripting
  • SessionTransferNotAllowed
  • EditCustomField
  • WindowsCredentialsRequestNotAllowed
  • ClipboardSynchronizationNotAllowed
  • CallingCardDeployment
  • ScreenSharingNotAllowed
  • CollaborationNotAllowed
  • DeviceConfiguration
  • ChatSuppression
  • ChatSuppressionConsoleSwitch
  • TechEndSessionSurvey
standardconcurrentlimit The limit of the standard concurrent seats. Required.
mobileconcurrentlimit The limit of the mobile concurrent seats. Required.
authcode The secret authentication code that is used to authenticate the user without logging in to Rescue. Optional.

Return Values

Displayed Return Value Description
ERROR An unspecified error occurred, such as timeout.
OK Updating user group properties succeeded.
NOTLOGGEDIN Updating user group properties failed because the current user is no longer logged in.
INVALIDPARAM_NODE The specified ID is either not the ID of a user node or does not exist.
INVALIDPARAM_NAME The name is too long or the field is empty.
INVALIDPARAM_STATUS The specified status is incorrect or does not exist.
INVALIDPARAM_PERMISSION The defined permissions of the user are either incorrect or empty.
INVALIDPARAM_LOCKEDPERMISSION The defined locked permission set of the user are either incorrect or empty.
INVALIDPARAM_STANDARDCONCURRENTLIMIT The number of standard concurrent users cannot exceed the limit defined for either globally for the organization or for the group.
INVALIDPARAM_MOBILECONCURRENTLIMIT The number of mobile concurrent users cannot exceed the limit defined for either globally for the organization or for the group.
NOT_ENOUGH_SEAT_LICENSES_AVAILABLE There are not enough standard or mobile licenses available.
NODE_CANNOT_BE_ENABLED_BECAUSE_ITS_ PARENT_NODE_IS_DISABLED The status of the user cannot be set to enabled because the parent node is disabled.
INVALID_SECRETAUTHCODE The secret authentication code for the user is invalid.
USER_DELETED_OR_DISABLED The user is deleted or disabled.

Sample Code

The following are examples for using the setGroup method that you can call in your environment.

HTTP GET

https://secure.logmeinrescue.com/API/setGroup.aspx?node=337364&name=TechGroup&status=Enabled
 &description=TechGroup1&permission=RemoteControl, RemoteView&lockedpermission=
CallingCardDeployment&standardconcurrentlimit=10&mobileconcurrentlimit=10
&authcode=4ahx...80u0

HTTP POST

<form method="post" action="https://secure.logmeinrescue.com/API/setGroup.aspx">
        <input name="node" value="337364">
        <input name="name" value="TechGroup">
        <input name="status" value="Enabled">
        <input name="description" value="TechGroup1">
        <input name="permission" value="RemoteControl, RemoteView">
        <input name="lockedpermission" value="CallingCardDeployment">
        <input name="standardconcurrentlimit" value="10">
        <input name="mobileconcurrentlimit" value="10">
        <input name="authcode" value="4ahx...80u0">
</form>

SOAP

For sample SOAP 1.1 and SOAP 1.2 request and response messages, visit https://secure.logmeinrescue.com/api/API.asmx?op=setGroup.

PHP with SOAP

The example values shown must be replaced with actual values.

<?php
	$soapclient = new SoapClient("https://secure.logmeinrescue.com/api/api.asmx?wsdl");

	$loginparams = array (
		'sEmail' => 'some@email.com',
		'sPassword' => 'secretPassword'
	);

	$iNodeID = 337364;
	$sName = "TechGroup";
	$eStatus = Enabled;
	$sDescription = "TechGroup1";
	$aPermission = array(
		0 => "RemoteControl",
		1 => "RemoteView"
	);
	$aLockedPermission = array(
		0 => "RemoteControl",
		1 => "RemoteView"
	);
	$iStandardConcurrentLimit = 10;
	$iMobileConcurrentLimit = 10;
	$sAuthCode = "4ahx...80u0";
	
	$setgroupparams = array (
		'iNodeID' => $iNodeID,
		'sName' => $sName,
		'eStatus' => $eStatus,
		'sDescription' => $sDescription,
		'aPermission' => $aPermission,
		'aLockedPermission' => $aLockedPermission,
		'iStandardConcurrentLimit' => $iStandardConcurrentLimit,
		'iMobileConcurrentLimit' => $iMobileConcurrentLimit,
		'sAuthCode' => $sAuthCode
	);

	$loginResult = $soapclient->login($loginparams);
	
	print_r($loginResult);

	$setGroupResult = $soapclient->setGroup($setgroupparams);
	
	print_r($setGroupResult);
?>

C# with HttpWebRequest

The example values shown must be replaced with actual values.

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using apiSamples.WebServiceClients;

namespace apiSamples
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                string sEndpoint = "https://secure.logmeinrescue.com/api/";
                string sEmail = "some@email.com";
                string sPwd = "secretPassword";
                int iNodeID = 337364;
                string sName = "TechGroup";
                string eNodeStatus = "Enabled";           
                string sDescription = "TechGroup1";
                string aPermission = "RemoteControl, RemoteView";
                string aLockedPermission = "RemoteControl, RemoteView" ;
                int iStandardConcurrentLimit = 10;
                int iMobileConcurrentLimit = 10;
                string sAuthCode = "4ahx...80u0";

                HttpWebRequest oLogin = (HttpWebRequest)WebRequest.Create(sEndpoint +
 "login.aspx?email=" + sEmail + "&pwd=" + sPwd);
                oLogin.CookieContainer = new CookieContainer();
                HttpWebResponse oRespLogin = (HttpWebResponse)oLogin.GetResponse();

                string sRespLogin = new StreamReader(oRespLogin.GetResponseStream())
.ReadToEnd();
                Response.Write(sRespLogin + "<br />");

                CookieContainer sessioncookie = oLogin.CookieContainer;

                HttpWebRequest oSetGroup = (HttpWebRequest)WebRequest.Create(sEndpoint +
 "setGroup.aspx?node=" + iNodeID + "&name=" + sName + "&status=" + eNodeStatus
 + "&description=" + sDescription + "&permission=" + aPermission + "&lockedpermission="
 + aLockedPermission + "&standardconcurrentlimit=" + iStandardConcurrentLimit
 + "&mobileconcurrentlimit=" + iMobileConcurrentLimit + "&authcode=" + sAuthCode);
                oSetGroup.CookieContainer = sessioncookie;
                HttpWebResponse oRespSetGroup = (HttpWebResponse)oSetGroup.GetResponse();
                
                string sRespSetGroup = new StreamReader(oRespSetGroup.GetResponseStream())
.ReadToEnd();
                Response.Write(sRespSetGroup);
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
        }
    }
}

C# with SOAP

The example values shown must be replaced with actual values.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using apiSamples.WebServiceClients;

namespace apiSamples
{
    public partial class SOAP : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                WebServiceClients.API proxy = new WebServiceClients.API();
                proxy.CookieContainer = new CookieContainer();

                string sEmail = "some@email.com";
                string sPwd = "secretpassword";
                int iNodeID = 123456;
                string sName = "Testing";
                nodeStatus eNodeStatus = nodeStatus.Enabled;           
                string sDescription = "";
                NODE_PERMISSIONS[] aPermissions = { NODE_PERMISSIONS.RemoteControl,
 NODE_PERMISSIONS.RemoteView };
                NODE_PERMISSIONS[] aLockedPermissions = { NODE_PERMISSIONS.RemoteControl,
 NODE_PERMISSIONS.RemoteView };
                int iStandardConcurrentLimit = 0;
                int iMobileConcurrentLimit = 0;
                string sAuthCode = "";

                WebServiceClients.loginRet oLogin = proxy.login(sEmail, sPwd);
                Response.Write(oLogin + "<br />");

                WebServiceClients.setGroupRet oSetGroup = proxy.setGroup(iNodeID, sName,
 eNodeStatus, sDescription, aPermissions, aLockedPermissions, iStandardConcurrentLimit,
 iMobileConcurrentLimit, sAuthCode);
                Response.Write(oSetGroup + "<br />");
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
        }
    }
}