We’re proud to announce the release of ConfigMgr WebService version 1.3.0.

What’s new

In this new version, new methods for Configuration Manager and Active Directory are included. In addition, this version now also includes an wizard-driven installer. Read the installation guide for more information regarding this installation option.

See the list below for new methods available within this release including general improvements:

General improvements
  • Addded Description property to GetCMPackage
  • Updated Connect (SMS Provider) method with better event logging
  • Added event logging for start and end of all web methods including client IP address
Configuration Manager
  • AddCMComputerAssociationForUser
  • GetCMCollectionsForDeviceByUUID
  • GetCMOSImageVersionForTaskSequence
  • RemoveCMComputerAssociation
  • RemoveCMDeviceFromCollection
  • RemoveCMLastPXEAdvertisementForDevice
  • RemoveCMLastPXEAdvertisementForCollection
Active Directory
  • GetADSiteNameByIPAddress

Download ConfigMgr WebService

In order to get your hands on the bits for this web service, you have some options. You can download the source code from my GitHub page, and compile the web service yourself. For installation instructions, follow what’s outlined in the README.md file in the repository. You can visit my GitHub page from the link below:


Your other option is to download a compiled version of the web service, ready for use. This version has been made available on TechNet Gallery:


We’ve published the source code for the purpose of making it available for those organisations that cannot leverage untrusted publishers, but also if you’d want to get your hands dirty and have a look at it.


If you already have ConfigMgr WebService installed in your environment, you can update it simply by replacing the ConfigMgrWebService.dll file in the bin folder of where you’ve placed the web service files. Please not though, that since version 1.1.0, 3 new Application Settings was introduced that you need to add manually, or replace the web.config file with the existing one and re-enter the values for each application setting.


Please refer to the ConfigMgr WebService 1.3.0 – Installation Guide PDF attached in the package available on TechNet Gallery (see link above).


Also attached in the package is the documentation for each method currently available in the latest version of ConfigMgr WebService. Please refer to ConfigMgr WebService 1.3.0 – Documentation PDF for more information.

Nickolaj Andersen
Principal Consultant and Enterprise Mobility MVP. Nickolaj has been in the IT industry for the past 10 years specializing in Enterprise Mobility and Security, Windows deployments and Automation. In 2015 Nickolaj was awarded as PowerShell Hero by the community for his script and tools contributions. Author of ConfigMgr Prerequisites Tool, ConfigMgr OSD FrontEnd, ConfigMgr WebService and a frequent speaker at user groups.


  • Jordan
    Posted at 04:31 June 2, 2017

    Hi Nickolaj,

    Thank you very much for this! I noticed that several of the methods I’ve tried to use involving users return nothing or time out. For example, OSD FrontEnd 1.1.2 crashes in a boot image when I enter a username, click apply and it searches for a unique user name for several seconds. Additionally, GetCMPrimaryUserByDevice returns the correct value, but GetCMPrimaryDeviceByUser times out.

    I’ve tried making the application pool identity a full administrator in ConfigMgr and encounter the same issue, so I don’t think the account is limited in terms of permissions.

    Do you have any suggestions as to how I could troubleshoot this?

    Thank you,


  • Mikael S
    Posted at 08:33 June 5, 2017
    Mikael S

    Hi Nickolaj!

    Great work! Something I noticed is that “RemoveADComputerFromGroup” do not work if there is more than 1500 members of the Group. If member Count drop below 1500, it returns true and the computer is removed from the group.

    • Nickolaj Andersen
      Posted at 16:32 June 5, 2017
      Nickolaj Andersen

      Hi Mikael, thanks for reporting this. Will look into this, is probably the default limit when searching. Regards, Nickolaj

  • David
    Posted at 09:42 June 12, 2017

    It looks like the function GetCMPrimaryDeviceByUser filters by the wrong parameter. The query is identical to the one used in GetCMPrimaryUserByDevice and yelds the same result.

    Solution: Change the query from “WHERE ResourceName” to “WHERE UniqueUserName”?

  • Leave a Reply