MSEndpointMgr

ConfigMgr WebService – Version 1.5.0 released

What’s new

ConfigMgr WebService 1.5.0 includes more than 10 new methods, bug fixes and several general improvements. See the list below what’s new for this release:

NOTE – If you’re using ConfigMgr OSD FrontEnd together with ConfigMgr WebService, wait for ConfigMgr OSD FrontEnd 1.3.0 to be released before you upgrade to ConfigMgr WebService 1.5.0.

General improvements

  • Inconsistency in parameter positioning has been addressed. The secretKey parameter is now required as the first parameter for all methods.
  • GetCMPrimaryUserByDevice has been renamed to GetCMPrimaryUserByDeviceName.
  • AddCMComputerToCollection now requires a device collection ID instead of the device collection name.
  • GetCMOSImageVersionForTaskSequence and GetCMOSImageArchitectureForTaskSequence now detects the proper information based upon the selected image index in the task sequence. This fixes a bug for when e.g. using a custom image that contains more than a single index or for Windows 10 version 1709 that changes the order of the indexes.
  • RemoveADComputerFromGroup now supports groups that contains more than 1500 members.

ConfigMgr WebService

  • GetCWVersion
  • NewCWEventLogEntry

Configuration Manager

  • GetCMApplication
  • GetCMCollectionsForDeviceByResourceID
  • GetCMCollectionsForDeviceByName
  • GetCMCollectionsForDeviceByUUID
  • GetCMFirstAvailableNameSequence
  • GetCMPrimaryUserByDeviceResourceId
  • RemoveCMPrimaryUserByDeviceResourceId

Microsoft Deployment Toolkit

  • RemoveMDTComputerByMacAddress

Active Directory

  • GetADComputer
  • GetADGroupsByUser
  • GetADGroupMembers
  • GetADGroupMemberByUser
  • RemoveADComputer

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 our 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 our GitHub page from the link below:

https://github.com/NickolajA/ConfigMgrWebService

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:

https://gallery.technet.microsoft.com/ConfigMgr-WebService-100-572825b2

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.

Update instructions

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, three 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.

If ConfigMgr WebService has been installed by using the included wizard driven installation, run the wizard again and the upgrade process will begin. From version 1.4.0 and onwards, the upgrade experience has improved and previously configured values will not be populated automatically within the wizard. See the documentation embedded in the download package from TechNet Gallery for more information.

Installation instructions

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

Documentation

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.5.0 – Documentation PDF for more information.

(3528)

Nickolaj Andersen

Chief Technical Architect and Enterprise Mobility MVP since 2016. Nickolaj has been in the IT industry for the past 10 years specializing in Enterprise Mobility and Security, Windows devices and deployments including automation. Awarded as PowerShell Hero in 2015 by the community for his script and tools contributions. Creator of ConfigMgr Prerequisites Tool, ConfigMgr OSD FrontEnd, ConfigMgr WebService to name a few. Frequent speaker at conferences such as Microsoft Ignite, NIC Conference and IT/Dev Connections including nordic user groups.

12 comments

  • “….the upgrade experience has improved and previously configured values will not be populated automatically within the wizard.”

    Did you mean now instead of not?

  • Running 1.5.0. Very nice work! But the ImportComputerByUUID method doesn’t seem to quite work as intended, or atleast like I intend ;). When I run it as part of a task sequence (MDT integrated TS. The web service is called with a powershell script using the UUID from the task sequence and using a NIC with its MAC address excluded in SCCM), it does create the computer Object and things look good, but when the task sequence is finished, it creates a duplicate object with the same name, and I die a little inside. The script, in essence, goes like this:

    $SCCMWebS = New-WebServiceProxy -Uri $WSURI
    $UUid = $Script:TSEnvironment.Value(“UUID”)
    $computername = $Script:TSEnvironment.Value(“OSDComputername”)

    $ResrouceID = $SCCMWebS.ImportCMComputerByUUID(“$apikey”,”$computername”,”$UUid”)

    Write-CMLogEntry -Value “Computer Imported with ResourceID: $($ResrouceID)!!” -Severity 1

    $SCCMWebS.AddCMComputerToCollection(“$apikey”,”$computername”,”$CollectionID”)
    Write-CMLogEntry -Value “Computer added successfully!!” -Severity 1
    Write-CMLogEntry -Value “Script completed – Continuing with Task Sequence” -Severity 1

    Am I using the wrong UUID or am I going insane?

    • https://imgur.com/gallery/hpdwS <- This is basically what happens. The Unknown Object is the "real one" while the other one was created by the web service. I'm guessing I can't run the method as part of a tasksequence running on unknown computers?

  • Nickolaj,
    Thanks for the update. When using this version of your webservice and OSD Frontend I’m getting the error: “unsupported version of ConfigMgr WebService detected. Required minimum version is 1.4.0. current implement versions is “. No version is listed in the error. Have you seen this issue yet, or am I missing something? I can’t download version 1.4.0 from Technet now that the new version is posted. Thanks again for everything.
    Jim.

    • Hi Jim, It’s because ConfigMgr OSD FrontEnd 1.2.0 doesn’t recognize the new GetCWVersion method that was renamed in this new version of the web service. ConfigMgr OSD FrontEnd 1.3.0 is about to be released soon, hopefully next week. If you wanna go back, send me an email and I’ll get you the previous web service DLL. You’ll find my email on the About page.

      Regards,
      Nickolaj

      • Hi,

        Having this same error and wish I had the option to download version 1.4.0 as my project is due to go live next week…

        But thanks anyway for the effort you have put into this.

Sponsors