Bconnect - v1.0 API Documentation
Bconnect - v1.0 API Documentation
Credit note: The information provided in this document is subject to constant change. We cannot guarantee that the
information given in this document is complete or correct. The contents of this document must not otherwise be used without
explicit written consent from baramundi software AG, irrespective of the manner or the means, electronic or mechanical, by
which this occurs.
Copyright © 2001, 2020 baramundi software AG. All rights reserved.
BARAMUNDI SOFTWARE AG, BEIM GLASPALAST 1, 86153 AUGSBURG
Revision History
Version Author Description
bMS 2020 R2 SF - Extended EndpointEnrollment controller by optional
bConnect V1.0 “EmailLanguageId” property. Change in default behavior: If the
parameter for the email language is not specified, the English
default template is used.
- Extended VPPUsersController by optional “EmailLanguageId”
property.
- Extended Endpoint by properties:
“EmailLanguageId”
“EmailRecipient”
- Extended VPPUser by optional “EmailLanguageId” property
bMS 2020 R2 SKL - Extended Endpoint by property
bConnect V1.0 “DedicatedDeviceModeEnabled”
bMS 2020 R2 MMU - Extended Endpoint by properties
bConnect V1.1 “LastUpdateInventoryDate”
“UpdateInventorySource”
“MissingCriticalUpdatesCount”
“MissingSecurityUpdatesCount”
“MissingOtherUpdatesCount”
“LastSuccessfulUpdateDate”
“LastSuccessfulUpdateSource”
bMS 2020 R2 ACH - Extended Endpoint by property
bConnect V1.0 “HasAppleAppUpdates”
bMS 2020 R2 BRI - Extended steps for windows job by step MicrosoftUpdateInventory
bConnect V1.0
bMS 2020 R2 MLA - Introduced MicrosoftUpdateInventories Controller
bConnect V1.0
bMS 2020 R2 FK - Extended Endpoint by properties
bConnect V1.0 “AppleManagementMode”,
“ManagedAppleId”
bMS 2020 R2 AC - Introduced VPPUsers and VPPLicenseAssociations Controller
bConnect V1.0
bMS 2020 R2 DK / - Introduced UniversalDynamicGroups Controller
bConnect V1.0 PWE - Extended controller Endpoints by parameter UniversalDynamicGroup
bMS 2020 R1 FHI - Extended Endpoint by properties
bConnect V1.0 “VirusAndThreadProtectionStatus”,
“AutomaticUpdateStatus”,
“FirewallAndNetworkProtectionStatus”,
“AppAndBrowserControlStatus”,
“WindowsSecurityServiceStatus”,
“UserAccountControlStatus”,
“SecurityCenterUser”
bMS 2020 R1 CB - Description of how credentials can be passed in the URL has been
bConnect V1.0 removed
bMS 2020 R1 MWA - Introduced ServerStateController
bConnect V1.0
bMS 2020 R1 MWA/ - Extended JobInstanceController by TimePeriod query to filter by
bConnect V1.0 DS LastActionTime.
bMS 2020 R1 MLA - Introduced EndpointEnrollment controller
bConnect V1.0 FHI - Extended controller Endpoints by IndustrialData
TABLE OF CONTENTS
1 Overview ......................................................................................................................... 10
2 Configuration................................................................................................................... 11
3 Calling Syntax ................................................................................................................. 13
4 Authentication & Headers ............................................................................................... 15
4.1 Authentication ...................................................................................................... 15
4.2 Headers ............................................................................................................... 15
5 Controllers and actions ................................................................................................... 16
5.1 Controller Version ................................................................................................ 17
5.2 Controller Info ...................................................................................................... 18
5.3 Controller Search ................................................................................................. 19
5.4 Controller OrgUnits .............................................................................................. 20
5.5 Controller DynamicGroups .................................................................................. 22
5.6 Controller UniversalDynamicGroups ................................................................... 25
5.7 Controller StaticGroups ....................................................................................... 26
5.8 Controller Endpoints ............................................................................................ 29
5.9 Controller Jobs ..................................................................................................... 34
5.10 Controller JobInstances ....................................................................................... 36
5.11 Controller HardwareProfiles ................................................................................. 39
5.12 Controller BootEnvironment ................................................................................. 40
5.13 Controller Variables ............................................................................................. 41
5.14 Controller Apps .................................................................................................... 44
5.15 Controller Icons .................................................................................................... 44
5.16 Controller Applications ......................................................................................... 45
5.17 Controller InventoryDataRegistryScans ............................................................... 48
5.18 Controller InventoryDataFileScans ...................................................................... 49
5.19 Controller InventoryDataWMIScans .................................................................... 50
5.20 Controller InventoryDataCustomScans ............................................................... 51
5.21 Controller InventoryDataHardwareScans ............................................................ 52
5.22 Controller InventoryDataSnmpScans .................................................................. 53
5.23 Controller InventoryOverviews ............................................................................. 53
5.24 Controller InventoryAppScans ............................................................................. 54
5.25 Controller SoftwareScanRules ............................................................................. 55
5.26 Controller SoftwareScanRuleCounts ................................................................... 56
5.27 Controller EndpointInvSoftware ........................................................................... 57
5.28 Controller Images ................................................................................................ 58
5.29 Controller VariableDefinitions .............................................................................. 59
5.30 Controller KioskJobs ............................................................................................ 62
5.31 Controller EndpointSecrets .................................................................................. 63
5.32 Controller EndpointEnrollment ............................................................................. 64
5.33 Controller ServerState ......................................................................................... 66
5.34 Controller VPPUsers ............................................................................................ 67
1 Overview
baramundi Connect (abbr. bConnect) is a REST web server, that gives you the opportunity to
request data objects (like endpoints, jobs, etc.) out of the baramundi Management Suite and
to create new or modify data objects with the baramundi Management Suite (bMS). Only an
application that is using a HTTP web client with a version 1.1 or above is needed for access.
The REST web server expects an authentication according to the BasicAuthentication method.
The provided credentials as well as the data are transmitted securely using SSL/TLS
encryption. Beside the authentication against the Active Directory (in domains) or local rights
(in work groups) the credentials are also used for authorization in the baramundi Management
Suite. The scope of operations supported by bConnect and the results are therefore limited to
the configured rights of the specified user in the baramundi Management Suite.
JSON and XML are the two data formats supported by bConnect. They can be configured
either over the URL or in the HTTP request header. If no format is specified, JSON is used as
default.
2 Configuration
bConnect is listening on HTTPS standard port 443 for incoming requests. The port can be
configured in the view Interfaces of module Configuration, if required. Therefore you need to
switch to the edit mode by selecting the menu point Edit in the context menu or in the menu
bar as shown in Figure 1. If a HTTPS port number different from the default is used, it has to
be set explicitly in the request URL.
The same view provides the possibility to activate or deactivate the bConnect service. If Yes
is configured for “bConnect Module active”, the service is listening to incoming requests.
Otherwise it is deactivated. A restart of the baramundi Management Server (bServer) is
necessary for changes to take effect.
As bConnect is using the HTTPS protocol by default for communication a valid server
certificate needs to be bound to the configured port. By default the baramundi Mobile Devices
Module, automatically creates a certificate for the baramundi Root Certification Authority (CA)
and an appropriate server certificate – even no license for baramundi Mobile Devices is
available. The server certificate is automatically bound to the standard HTTPS port 443. With
default configuration bConnect and baramundi Mobile Devices Module share the same port.
Since it is not possible to bind more than one certificate to a port, they also share the same
server certificate. Hence no further settings are required when using default configuration.
Changing the communication port number for bConnect requires an appropriate binding of the
certificate, which can be either done with Internet Information Server (IIS) or “netsh” on
command line. The usage of an external server certificate, e.g. bought from public Certification
Authority or self-created, requires a different port number and a new appropriate binding.
Some web clients or underlying libraries check the complete certificate chain by default. To
avoid problems it is recommended to import the certificates of all CAs down to the Root CA
to the Trusted Root Certification Authorities store of the machine, the web client is running
on. The certificate of the baramundi Root CA used for baramundi Mobile Devices can be
exported over the corresponding configuration site.
3 Calling Syntax
bConnect exposes over so called Controller several actions for requests. Each controller
handles usually all requests concerning a specific object type. Therefore the bConnect API
consist of several controllers where each of them provides specific actions according to the
object type they represent.
The Info and Version controller provide general or version information of bConnect and can be
requested with URLs of the following scheme:
https://<BMSServer>:<Port>/bConnect/<Controller>.
The other controller provide functionality to manage bMS objects (e.g. endpoint, job). The URL
requests for this controller must include the bConnect version number:
https://<BMSServer>:<Port>/bConnect/v<bConnect Version>/<Controller>.
If the HTTPS standard port number 443 is configured for bConnect (default configuration), the
port declaration is voluntary for the URL. Otherwise the port is mandatory.
bConnect supports only JSON and XML data format. If it is not possible to specify the data
format in the HTTP-Header, e.g. because using a browser, it can be appended as an extension
to the controller in the URL as follows:
https://<BMSServer>:<Port>/bConnect/<Controller >.<Format>
https://<BMSServer>/bConnect/v<bConnect Version>/< Controller >.<Format>
If XML format is used for POST, PUT and PATCH-Requests the elements must be sorted
alphabetically and the following namespaces must be appended as attributes to the root
element.
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/Baramundi.Bms.Server.Connector.Rest.BCo
nnect.DataModel"
Different controller actions can be requested by appropriate HTTP methods and additional
parameter(s) in the URL. All parameters specified for a specific action are mandatory. A
parameter is a key-value-pair connected over the “=”-sign. They must be appended (without
blanks) with a “?”-sign at the end of the base URL and in case of multiple they must be
concatenated (without blanks) with a “&”-sign.
In case a specific resource is identifiable by its ID it can be addressed for all supported actions
either by appending the ID as further segment in the URL or as parameter.
https://<BMSServer>:<Port>/bConnect/<Controller >.<Format>/<ID>?param1=1234
https://<BMSServer>:<Port>/bConnect/<Controller >.<Format>?id=<ID>¶m2=4567
• https://bmsserver.customer.net/bConnect/Info
• https://bmsserver.customer.net/bConnect/Version.xml
• https://bmsserver.customer.net/bConnect/v1.0/endpoints.json
• https://bmsserver.customer.net/bConnect/v1.0/jobinstances.xml/9d6a3f49-5c66-40c6-ae80-
d6bd85fe3628 (equal to example below)
• https://bmsserver.customer.net/bConnect/v1.0/jobinstances.xml?id=9d6a3f49-5c66-40c6-
ae80-d6bd85fe3628 (equal to example above)
• https://bmsserver.customer.net/bConnect/v1.0/jobinstances.json?endpointid=26f8284e-538d-
422a-9b01-7597382bb71d&jobid=104196a1-1862-45fe-be3f-b312fcfc1ca9&startifexists=false
4.2 Headers
With each API call you can set specific request headers. With bMS 2016 two further headers
are supported.
The response data format is either configured over the .JSON or .XML extension in the URL
(case insensitive) or over the Accept-field in the HTTP header. In latter case an extension must
not be specified in the URL.
The response code of each request is a standard HTTP status code, e.g. one of the following:
• 200 ➔ OK
• 201 ➔ Created
• 204 ➔ No Content
• 401 ➔ Unauthorized
• 403 ➔ Forbidden
baramundi software AG reserves the right to extend bConnect by new controllers, to extend
existing controllers by new actions, to extend object types by new properties and to skip
transmission of properties with value null without notification or change of the bConnect
version number.
To request the Version object the URL must not contain version information and the provided
user does not need configured rights in the baramundi Management Suite (bMS).
URL: https://<bmsserver>:<port>/bConnect/Version
Properties of Version.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/version.json
Result:
{
"SupportedVersions":["1.0"],
"CurrentVersion":"1.0"
}
• GET-Request:
https://bmsserver.customer.net/bConnect/version.xml
Result:
<Version>
<CurrentVersion>1.0</CurrentVersion>
<SupportedVersions>
<d2p1:string>1.0</d2p1:string>
</SupportedVersions>
</Version>
To request the Info object the URL must not contain version information and the provided user
does not need configured rights in the baramundi Management Suite (bMS).
URL: https://<bmsserver>:<port>/bConnect/Info
Properties of Info.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/info.json
Result:
{
"Description":"Interface to baramundi Management Server",
"Company":"baramundi software AG",
"Copyright":"Copyright (c) 2015 R2 baramundi software AG",
"bConnectVersion":"1.0",
"bMSVersion":"15.2.314.0",
"UserContext":"user@customer.net"
}
• GET-Request:
https://bmsserver.customer.net/bConnect/info.xml
Result:
<Info>
<Company>baramundi software AG</Company>
<Copyright>Copyright (c) 2015 R2 baramundi software AG</Copyright>
<Description>Interface to baramundi Management Server</Description>
<UserContext>user@customer.net</UserContext/>
<bConnectVersion>1.0</bConnectVersion>
<bMSVersion>15.2.314.0</bMSVersion>
</Info>
The Search controller looks for org units only in nodes “Logical groups”, “Dynamic groups”,
“Static groups”, “Jobs”, “Applications” and “Apps”.
To request SearchResult objects data the URL must contain the bConnect version information.
Only those objects can be scanned, the specified user has at least configured read rights on.
URL: https://<bmsserver>:<port>/bConnect/v1.0/Search
Properties of Search.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/search.json?type=endpoint&term=test
Result:
[{
"Id": "d9d4b3d9-8265-4001-ab23-993228a18b2f",
"Name": "TestWindows",
"AdditionalInfo": "",
"Type": "1",
"Deactivated": null
}]
To request OrgUnit objects data the URL must contain the bConnect version information. Only
those OrgUnit objects the specified user has at least configured read rights on will be available.
Previously, only organizational units contained in the well-known org units LogicalGroups and
JobManagement could be requested. In bMS 2016 StaticGroups and DynamicGroups as well
as in bMS 21016R2 Applications and Apps were added to the scope of this controller. A request
for other elements than these six root org units or its children will lead to a HTTP response
code NotFound (e.g. a request with the ParentGuid of one of these six root org units).
To create an OrgUnit object with HTTP method POST the appropriate rights (create object,
modify) must be given for the specified parent org unit to the specified user. To update an
OrgUnit object with HTTP method PATCH the user needs the appropriate rights (modify) for
the specified object and if ParentId is specified also for the new parent org unit.
URL: https://<bmsserver>:<port>/bConnect/v1.0/OrgUnits
Properties of OrgUnit.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/orgunits.json?id=a79851ff-3c9e-4973-b828-
ced7c6a39f4b
Result:
{
"Id": "a79851ff-3c9e-4973-b828-ced7c6a39f4b",
"ParentId": " b2ef5159-d8b8-4e9e-92fe-96889cec8491",
"Name": "MyJobs ",
"GuidParent": "b2ef5159-d8b8-4e9e-92fe-96889cec8491",
"Comment": "",
"HierarchyPath": "JobManagement\MyJobs",
"Extension": null
}
To request DynamicGroup data, the URL must contain the bConnect version information. Only
DynamicGroup objects with effective read-access for the specified user will be available with
GET method.
To create a DynamicGroup object with HTTP method POST the appropriate rights (create
object, modify) must be given for the specified parent org unit to the user. If the property
ParentId is not specified the root node for dynamic groups is used.
To update a DynamicGroup object with HTTP method PATCH the user needs the appropriate
rights (modify) for the specified object and if ParentId is specified also for the new parent org
unit.
URL: https://<bmsserver>:<port>/bConnect/v1.0/DynamicGroups
Properties of DynamicGroup.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/DynamicGroups.json?id=643E6070-E31A-
4DE2-8372-900965047B39
Result:
{
"Id":"643E6070-E31A-4DE2-8372-900965047B39",
"ParentId":"BDE918DC-89C0-458A-92F7-0BB9147A2706",
"Name":"64-bit systems",
"Statement":" WHERE \r\n(\r\n (machine.arch =
'x64')\r\n)\r\n",
"Comment":"",
“HierarchyPath”:”Dynamic Groups”
}
• POST-Request:
https://bmsserver.customer.net /bConnect/v1.0/dynamicgroups.xml
Result:
<DynamicGroup xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/Baramundi.Bms.Server.Connector.Rest.BC
onnect.DataModel">
<Comment>A group of all English systems.</Comment>
<Id>D32CE263-AD72-4D86-B093-5796AC7F7D3F</Id>
<Name>English systems</Name>
<ParentId>BDE918DC-89C0-458A-92F7-0BB9147A2706</ParentId>
<Statement>WHERE ( machine.lcid = 1033 )</Statement>
</DynamicGroup>
• PATCH-Request:
https://bmsserver.customer.net /bConnect/v1.0/dynamicgroups?id=D32CE263-AD72-4D86-
B093-5796AC7F7D3F
Result:
{
"Id":"41068A9F-405E-49BB-891B-65FAF1107CD9",
"ParentId":"BDE918DC-89C0-458A-92F7-0BB9147A2706",
"Name":"Systems with englisch lcid","Statement":"WHERE ( machine.lcid = 1033 )",
"Comment":""
}
• DELETE-Request:
https://bmsserver.customer.net /bConnect/v1.0/dynamicgroups.json?id=D32CE263-AD72-
4D86-B093-5796AC7F7D3F
Result: No Content.
To request UniversalDynamicGroup data, the URL must contain the bConnect version
information. Only UniversalDynamicGroup objects with effective read-access for the specified
user will be available with GET method.
URL: https://<bmsserver>:<port>/bConnect/v1.0/UniversalDynamicGroups
Properties of UniversalDynamicGroup.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/UniversalDynamicGroups.json?id=643E6070-
E31A-4DE2-8372-900965047B39
Result:
{
"Id":"643E6070-E31A-4DE2-8372-900965047B39",
"ParentId":"BDE918DC-89C0-458A-92F7-0BB9147A2706",
"Name":"64-bit systems",
"DisplayName":"64-bit systems",
“IsArgusSynced”:”true”
"Comment":"",
“HierarchyPath”:”Dynamic Groups”
}
To request StaticGroup data, the URL must contain the bConnect version information. Only
StaticGroup objects with effective read-access for the specified user will be available with GET
method.
To create a StaticGroup object with HTTP method POST the appropriate rights (create object,
modify) must be given for the specified parent org unit to the user. If property ParentId is not
specified the root node for static groups is used.
To update a StaticGroup object with HTTP method PATCH the user needs the appropriate
rights (modify) for the specified object and if ParentId is specified also for the new parent org
unit.
URL: https://<bmsserver>:<port>/bConnect/v1.0/StaticGroups
Properties of StaticGroup.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/StaticGroups.json?id=41F24185-71DB-47F0-
B036-05C5C2616479
Result:
{
"Id": "41F24185-71DB-47F0-B036-05C5C2616479",
"ParentId": "5020494B-04D3-4654-A256-80731E953746",
"Name": "Server Group A",
"Comment": "",
"EndpointIds":
[
"4B3C0BBE-C7BC-4CF8-9598-0CD86DB3639A",
"CC14E396-3919-4EDE-B302-D2FAD35B0986",
"D13F5074-E773-4445-93F1-ACE372B54A21"
]
}
• POST-Request:
https://bmsserver.customer.net /bConnect/v1.0/staticgroups
Result:
<StaticGroup xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/Baramundi.Bms.Server.Connector.Rest.BC
onnect.DataModel">
<Comment>A group of servers.</Comment>
<EndpointIds xmlns:d3p1="http://schemas.microsoft.com/2003/10/
Serialization/Arrays">
<d3p1:string>CC28388A-5156-4BDE-A411-C2A5AD42EA9E</d3p1:string>
<d3p1:string>37762ED0-9A20-4E44-8EA4-A97FF4625439</d3p1:string>
</EndpointIds>
<Id>1B3B05B0-2DDD-4847-89CF-2E726BB918AE</Id>
<Name>Server Group B</Name>
<ParentId>5020494B-04D3-4654-A256-80731E953746</ParentId>
</StaticGroup>
• PATCH-Request:
https://bmsserver.customer.net /bConnect/v1.0/staticgroups?id=1B3B05B0-2DDD-4847-89CF-
2E726BB918AE
Result:
<StaticGroup xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/Baramundi.Bms.Server.Connector.Rest.BC
onnect.DataModel">
<Comment>Updated the name of this group.</Comment>
<EndpointIds xmlns:d3p1="http://schemas.microsoft.com/2003/10/
Serialization/Arrays">
<d3p1:string>CC28388A-5156-4BDE-A411-C2A5AD42EA9E</d3p1:string>
<d3p1:string>37762ED0-9A20-4E44-8EA4-A97FF4625439</d3p1:string>
</EndpointIds>
<Id>1B3B05B0-2DDD-4847-89CF-2E726BB918AE</Id>
<Name>Server Group NEW</Name>
<ParentId>5020494B-04D3-4654-A256-80731E953746</ParentId>
</StaticGroup>
• DELETE-Request:
https://bmsserver.customer.net /bConnect/v1.0/staticgroups.json?id=1B3B05B0-2DDD-4847-
89CF-2E726BB918AE
Result: No Content.
To request Endpoint object data the URL must contain the bConnect version information. Only
those Endpoint objects, the specified user has at least configured read rights on, will be
available.
To create an Endpoint object with HTTP method POST in the specified organizational unit
(OrgUnit) the appropriate rights (create object) must be given for the specified parent org unit
to the user. To update an Endpoint object with HTTP method PATCH the user needs the
appropriate rights (modify) for the specified object and if ParentId is specified also for the new
parent org unit. Endpoints of type NetworkEndpoint cannot be created or updated.
URL: https://<bmsserver>:<port>/bConnect/v1.0/Endpoints
• IndustrialData
• EmailLanguageId
• EmailRecipient
Properties of Endpoint.
Examples:
• GET-Request:
https://bmsserver.customer.net /bConnect/v1.0/endpoints.json?id=bd4a57c1-efe2-45bb-bf4a-
58a5f4164d52
Result:
{
"Id":"bd4a57c1-efe2-45bb-bf4a-58a5f4164d52",
"GuidGroup":"b2ef5159-d8b8-4e9e-92fe-96889cec8491",
"DisplayName":"vm-cb-ws2008R2",
"HostName":"vm-cb-ws2008R2",
…
}
• POST-Request:
https://bmsserver.customer.net /bConnect/v1.0/endpoints.xml
Result:
<NewEndpoint xmlns:i="…" xmlns="…">
<Endpoint>
<Activity i:nil="true"/>
<DisplayName>DeviceDisplayName</DisplayName>
…
<GuidGroup>B2EF5159-D8B8-4E9E-92FE-96889CEC8491</GuidGroup>
<HostName>DeviceHostName</HostName>
<Options>563</Options>
<PrimaryMAC>12:34:56:78:90:12</PrimaryMAC>
…
<Type>1</Type>
…
</Endpoint>
<EnrollmentToken i:nil="true" />
• DELETE-Request:
https://bmsserver.customer.net /bConnect/v1.0/endpoints.json?id=bd4a57c1-efe2-45bb-bf4a-
58a5f4164d52
Result: No Content.
To request Job object data the URL must contain the bConnect version information. Only those
Job objects the specified user has at least configured read rights on will be available.
URL: https://<bmsserver>:<port>/bConnect/v1.0/Jobs
Properties of Job.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/jobs.json?id=104196a1-1862-45fe-be3f-
b312fcfc1ca9
Result:
{
"Id":"104196a1-1862-45fe-be3f-b312fcfc1ca9",
"GuidParent":"a12994b1-7691-4f15-b149-98abbc721f67",
"Name":"HW-Inventory (Default)",
"State":2,
"JobCount":1,
"Interval":"0",
…
…
"MinBandwidth":100000000,
"JobExecutionTimeout":0,
"JobProperties":
{
"MaxDelayMinutes":"90",
"Retries":"0",
"RetryInterval":"0"
}
}
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/jobs.json?id=104196a1-1862-45fe-be3f-
b312fcfc1ca9&steps=true
Result:
{
"Id":"104196a1-1862-45fe-be3f-b312fcfc1ca9",
"Type":6,
…
…
…
"Steps":
[{
"Properties":
{
"ScanProfileName":"Vulnerability Scan: Windows (Community)"
},
"Sequence":1,
"Type":"ComplianceScan"
},
{
"Properties":
{
"Name":"[Default Software Template]"
},
"Sequence":2,
"Type":"InventoryScan"
}],
"SupportEndpointsInInternetMode":false
}
To request JobInstance object data the URL must contain the bConnect version information.
Only those JobInstance objects, the specified user has at least configured read rights on their
Endpoint, will be available.
To create a JobInstance the specified user needs read rights for the specific Endpoint and Job
objects in the bMS. Furthermore the user needs the right to assign the Endpoint object a job
and the right to assign the specific Job object.
URL: https://<bmsserver>:<port>/bConnect/v1.0/JobInstances
Example:
MyThirdPartyTool via admin@domain.com
GET EndpointID=<endpoint id> Returns a list of all JobInstance objects of 2018R2
& Jobs released for the specified user.
User=<user_principal_name> User must be the registered user of the
specified Endpoint.
GET TimePeriod=<seconds> Returns a list of all JobInstance objects 2020
whose TimeLastAction is at most
TimePeriod seconds ago.
Steps = <true / false> Optional for all above GET methods: 2016 R2
If true, the returned job objects will also
contain the steps.
GET ID=<job instance id> Starts, resumes or stops the specified 2015
& JobInstance object, according to the
cmd=<start/stop/resume> specified command.
To “start” a JobInstance object successfully,
it must not have the state “Running”.
Properties of JobInstance.
Examples:
Result: No data.
• POST-Request:
https://bmsserver.customer.net/bConnect/v1.1/jobinstances
Request:
{
"EndpointId": "AAFF8188-A10A-436C-9AEB-92D88BB31CCA",
"JobDefinitionId": "E4B87F22-F0D8-4F13-92AD-485044743329"
}
Result:
{
"Id": "8DBF2A27-FE91-46C6-0000-000000086A9C",
"EndpointId": "AAFF8188-A10A-436C-9AEB-92D88BB31CCA",
"EndpointName": "bConnect-Device",
"JobDefinitionId": "E4B87F22-F0D8-4F13-92AD-485044743329",
"JobDefinitionName": "Inventur",
"TimeStart": "2020-02-24T09:48:12.8463917Z",
"TimeLastAction": "2020-02-24T09:48:12.8463917Z",
"StateText": "Job assigned",
"Properties": {},
"Initiator": "user@domain.net",
"EndpointCategory": 7,
"JobDefinitionDisplayName": ""
}
• DELETE-Request:
https://bmsserver.customer.net/bConnect/v1.0/jobinstances?Id=EB6A02C3-BDCF-49EA-BD71-
C12BB5C3561D
Result: No data.
To request HardwareProfile objects the URL must contain the bConnect version information.
Only those HardwareProfile objects can be read, the specified user has at least configured read
rights on.
URL: https://<bmsserver>:<port>/bConnect/v1.0/HardwareProfiles
Properties of HardwareProfile.
To request BootEnvironment object data the URL must contain the bConnect version
information. Only those BootEnvironment objects, the specified user has at least configured
read rights on, will be available.
URL: https://<bmsserver>:<port>/bConnect/v1.0/BootEnvironment
Properties of BootEnvironment
To request Variable object data the URL must contain the bConnect version information. Only
those Variable objects can be read, the specified user has at least configured read rights on
the corresponding object in the bMS. To set a new value for a Variable object, the specified
user needs modify rights on the corresponding object in the bMS.
With bMS 2015 job objects of type WindowsJob, org units in node Logical Groups and all
endpoint objects supported reading and modification of their variables over bConnect. Since
Version 2016R2 it is also possible to read and modify variables for Software (Windows
Application only) and HardwareProfile objects.
URL: https://<bmsserver>:<port>/bConnect/v1.0/Variables
Properties of ObjectVariables.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/variables.xml?scope=device&objectid=AA61A5
22-6EE6-4623-A47C-7A35D270F0DF
Result:
<ObjectVariables xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/Baramundi.Bms.Server.Connector.Rest.BC
onnect.DataModel">
<ObjectId>AA60A522-6EE6-4623-A47C-7A35D270F0DF</ObjectId>
<Scope>Device</Scope>
<Variables>
<Variable>
<Category>Location</Category>
<Name>Building</Name>
<UseDefault>false</UseDefault>
<Value>Building1</Value>
<Type>String</Type>
</Variable>
…
<Variable>
<Category> Location </Category>
<Name>Room</Name>
<UseDefault>false</UseDefault>
<Value>Laboratory</Value>
<Type>String</Type>
</Variable>
</Variables>
</ObjectVariables>
• PUT-Request:
https://bmsserver.customer.net/bConnect/v1.0/variables.xml
Body (xml format):
<ObjectVariables xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/Baramundi.Bms.Server.Connector.Rest.BC
onnect.DataModel">
<ObjectId>AA60A522-6EE6-4623-A47C-7A35D270F0DF</ObjectId>
<Scope>Device</Scope>
<Variables>
<Variable>
<Category>Location</Category>
<Name>Building</Name>
<UseDefault>false</UseDefault>
<Value>OtherBuilding</Value>
</Variable>
</Variables>
</ObjectVariables>
Result:
<ObjectVariables xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/Baramundi.Bms.Server.Connector.Rest.BC
onnect.DataModel">
<ObjectId>AA60A522-6EE6-4623-A47C-7A35D270F0DF</ObjectId>
<Scope>Device</Scope>
<Variables>
<Variable>
<Category>Location</Category>
<Name>Building</Name>
<UseDefault>false</UseDefault>
<Value>OtherBuilding</Value>
</Variable>
…
<Variable>
<Category> Location </Category>
<Name>Room</Name>
<UseDefault>false</UseDefault>
<Value>Laboratory</Value>
</Variable>
</Variables>
</ObjectVariables>
Properties of Apps.
To request Icons object data the URL must contain the bConnect version information. Only
those Icon objects, the specified user has at least configured read rights on the appropriate
App or InventoryApp object, will be available.
URL: https://<bmsserver>:<port>/bConnect/v1.0/Icons
Properties of Icons.
To request Application object data the URL must contain the bConnect version information.
Only those Application objects, the specified user has at least configured read rights on, will
be available.
To create an Application object with HTTP method POST in the specified organizational unit
(OrgUnit) the appropriate rights (create object) must be given for the specified parent org unit
to the user. To update an Application object with HTTP method PATCH the user needs the
appropriate rights (modify) for the specified object and if ParentId is specified also for the new
parent org unit.
URL: https://<bmsserver>:<port>/bConnect/v1.0/Applications
• Cost
• Files
• SecurityContext
• Licenses
• AUT
• SoftwareDependencies
• SoftwareLicenseActions
• Parameters
See properties of Applications for further
information. The returned object is of type
Application
DELETE ID=<application id> Deletes the Application object by ID. 2017
Properties of Applications.
Examples:
• POST-Request:
https://bmsserver.customer.net /bConnect/v1.0/applications.json
"ExecuteAtEveryLogin": false,
"baramundiDeployScript": "{DIP}\\Scripts\\BDS\\Office_App_Ubds.bds",
"ValidForInstallUser": false,
"RunbDSVisible": false,
"CopyScriptToClient": false
}
},
"SoftwareDependencies": [
{
"DependencyId": "B9E90391-AECC-44D5-8FF6-3AFCD4F0683E",
"DependencyType": "InstallBeforeIfNotInstalled",
"ValidForOS": [
"Windows7_x64",
"WindowsServer2008R2_x64",
"Windows8_x64",
"WindowsServer2012_x64",
"Windows10_x64",
"WindowsServer2016_x64"
]
}
],
"SecurityContext": "LocalInstallUser",
"Parameters": [
{
"Name": "MaxParralelUsers",
"Type": "Number",
"Value": "2",
"DefaultValue": "3"
}
]
}
To request Inventory objects with registry scan data the URL must contain the bConnect
version information. Only those Inventory objects can be read, the specified user has at least
configured read rights on the node Inventoried Files and the corresponding endpoint in the
bMS. To delete Inventory objects the specified user needs read rights on the node Inventoried
Files as well as read and modify rights on the endpoint. Inventory Registry scan data can be
managed for endpoints of type WindowsEndpoint only.
URL: https://<bmsserver>:<port>/bConnect/v1.0/InventoryDataRegistryScans
Properties of Inventory.
Properties of DataRegistry.
To request Inventory objects with file scan data the URL must contain the bConnect version
information. Only those Inventory objects can be read, the specified user has at least
configured read rights on the node Inventoried Files and the corresponding endpoint in the
bMS. To delete Inventory objects the specified user needs read rights on the node Inventoried
Files as well as read and modify rights on the endpoint. Inventory file scan data can be
managed for endpoints of type WindowsEndpoint only.
URL: https://<bmsserver>:<port>/bConnect/v1.0/InventoryDataFileScans
Properties of Inventory.
Properties of DataFile.
To request Inventory objects with WMI scan data the URL must contain the bConnect version
information. Only those Inventory objects can be read, the specified user has at least
configured read rights on the corresponding endpoint. Inventory WMI scan data can be read
for endpoints of type WindowsEndpoint only.
URL: https://<bmsserver>:<port>/bConnect/v1.0/InventoryDataWMIScans
Properties of Inventory.
Properties of DataWMI.
To request Inventory objects with custom scan data the URL must contain the bConnect
version information. Only those Inventory objects can be read, the specified user has at least
configured read rights on the corresponding endpoint. Inventory Custom scan data can be read
for endpoints of type WindowsEndpoint only.
URL: https://<bmsserver>:<port>/bConnect/v1.0/InventoryDataCustomScans
Properties of Inventory.
Properties of DataCustom.
To request Inventory objects with hardware scan data the URL must contain the bConnect
version information. Only those Inventory objects can be read, the specified user has at least
configured read rights on the corresponding endpoint. Inventory hardware scan data can be
requested for the following types of endpoints (Windows, iOS, Android, WindowsPhone and
Mac).
URL: https://<bmsserver>:<port>/bConnect/v1.0/InventoryDataHardwareScans
Properties of Inventory.
Properties of DataHardware.
To request Inventory objects with SNMP scan data the URL must contain the bConnect version
information. Only those Inventory objects can be read, the specified user has at least
configured read rights on the node Inventoried Files and the corresponding endpoint in the
bMS.
URL: https://<bmsserver>:<port>/bConnect/v1.0/InventoryDataSnmpScans
Properties of DataSnmp.
To request InventoryOverview objects the URL must contain the bConnect version information.
Only those InventoryOverview objects can be read, the specified user has at least configured
read rights on the corresponding endpoint. InventoryOverview objects can be read for
endpoints of type WindowsEndpoint only.
URL: https://<bmsserver>:<port>/bConnect/v1.0/InventoryOverviews
Properties of InventoryOverview
To request Inventory objects with app scan data the URL must contain the bConnect version
information. Only those Inventory objects can be read, the specified user has at least
configured read rights on the corresponding endpoints of type Android, iOS and WindowsPhone
only.
URL: https://<bmsserver>:<port>/bConnect/v1.0/InventoryAppScans
Properties of Inventory.
Properties of InventoryApp.
To request SoftwareScanRule object data the URL must contain the bConnect version
information and the specified user needs at least configured read rights on the node “Software
scan rules” in the module Inventory.
URL: https://<bmsserver>:<port>/bConnect/v1.0/SoftwareScanRules
Properties of SoftwareScanRule.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/softwarescanrules.xml
Result:
<ArrayOfSoftwareScanRule>
<SoftwareScanRule>
<Category>ManagedSoftware</Category>
<Comment/>
<Id>006548b4-d65b-4e6a-870e-a9f1eb8542f5</Id>
<IsMswRule>true</IsMswRule>
<Protected>true</Protected>
<Rules>chlcdfkeanhekcdakeigla…hlniifpakf</Rules>
<SoftwareManufacturer>VideoLan</SoftwareManufacturer>
<SoftwareName>VLC</SoftwareName>
<SoftwareVersion>2.1.1-x64</SoftwareVersion>
</SoftwareScanRule>
<SoftwareScanRule>
<Category/>
<Comment/>
…
<SoftwareVersion>5.0.0.16964</SoftwareVersion>
</SoftwareScanRule>
…
…
</ArrayOfSoftwareScanRule>
To request SoftwareScanRuleCount object data the URL must contain the bConnect version
information and the specified user needs at least configured read rights on the node “Licenses”
in the module Licenses.
URL: https://<bmsserver>:<port>/bConnect/v1.0/SoftwareScanRuleCounts
Properties of SoftwareScanRuleCount.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/softwarescanrulecounts.xml
Result:
<ArrayOfSoftwareScanRuleCount>
<SoftwareScanRuleCount>
<InstalledCount>50</InstalledCount>
<InstalledEndpoints>
<EndpointInfo>
<Id>17B65E8A-DBF3-456C-B5A5-38E596F01C20</Id>
<Name>WIN10-ENT</Name>
</EndpointInfo>
</InstalledEndpoints>
<SoftwareScanRule>
<Category>ManagedSoftware</Category>
<Comment/>
<Id>006548b4-d65b-4e6a-870e-a9f1eb8542f5</Id>
<IsMswRule>true</IsMswRule>
<Protected>false</Protected>
<Rules>chlcdfkeanhekcdakeigla…hlniifpakf</Rules>
<SoftwareManufacturer>Oracle</SoftwareManufacturer>
<SoftwareName>Java JRE</SoftwareName>
<SoftwareVersion>8.0.111.14-x64</SoftwareVersion>
</SoftwareScanRule>
</SoftwareScanRuleCount>
</ArrayOfSoftwareScanRuleCount>
To request EndpointInvSoftware object data the URL must contain the bConnect version
information and the specified user needs at least configured read rights for the corresponding
Endpoint objects and the node “Software scan rules” in the module Inventory.
URL: https://<bmsserver>:<port>/bConnect/V1.0/EndpointInvSoftware
Properties of EndpointInvSoftware.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/endpointinvsoftware.xml
Result:
<ArrayOfEndpointInvSoftware>
<EndpointInvSoftware>
<ConflictedRules>0</ConflictedRules>
<GuidEndpoint>26c2712a-7f5e-4307-b675-8139accf4b4d</GuidEndpoint>
<GuidRule>04b2928e-645b-4a99-8a2c-746fdc2c122d</GuidRule>
<InventoryPath>$Registry$</InventoryPath>
<InventoryVersion>8.8.9.237</InventoryVersion>
<LastSeen>2013-05-22T09:30:56+02:00</LastSeen>
</EndpointInvSoftware>
<EndpointInvSoftware>
<ConflictedRules>0</ConflictedRules>
<GuidEndpoint>26c2712a-7f5e-4307-b675-8139accf4b4d</GuidEndpoint>
<GuidRule>0574135c-901d-4b70-8f4c-f18d911068f5</GuidRule>
<InventoryPath>$Registry$</InventoryPath>
<InventoryVersion>6.2 SP0 x64-EN</InventoryVersion>
<LastSeen>2013-05-22T09:30:56+02:00</LastSeen>
</EndpointInvSoftware>
…
</ArrayOfEndpointInvSoftware>
To request Images object data the URL must contain the bConnect version information.
URL: https://<bmsserver>:<port>/bConnect/V1.0/Images
Properties of Image.
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/images.xml?Id=B227BAACC41C9D51BD03B8
23E785A084
Result:
<Image>
<Id>B227BAACC41C9D51BD03B823E785A084</Id>
<MimeType>image/jpeg</MimeType>
<Data>…</Data>
</Image>
Note: The deletion of a VariableDefinition object will also delete all its corresponding
ObjectVariable instances.
To request VariableDefinition object data the URL must contain the bConnect version
information.
URL: https://<bmsserver>:<port>/bConnect/V1.0/VariableDefinitions
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/variabledefinitions
Result:
<ArrayOfVariableDefinition>
<VariableDefinition>
<Category>Location</Category>
<Comments></Comments>
<Id>07311C36-668C-4794-BD60-C79DD4A3D191</Id>
<Name>Cost center</Name>
<Scope>Device</Scope>
<Type>Checkbox</Type>
<Value>1</Value>
</VariableDefinition>
<VariableDefinition>
<Category>Location</Category>
<Comments/>
<Id>292F4106-6CBD-410D-8527-FB2B979A828F</Id>
<Name>Building</Name>
<Scope>Device</Scope>
<Type>String</Type>
<Value></Value>
</VariableDefinition>
<VariableDefinition>
<Category>Warranty data</Category>
<Comments/>
<Id>95371B4C-3F14-4ADA-9F8D-C13ED7F2878E</Id>
<Name>Inventory id</Name>
<Scope>Device</Scope>
<Type>String</Type>
<Value></Value>
</VariableDefinition>
…
</ArrayOfVariableDefinition>
• PATCH-Request:
https://localhost:443/bconnect/v1.0/variabledefinitions.xml?id=0E3D4C92-96F3-4260-BBFD-
6D5218FDB087
Result:
<VariableDefinition>
<Category>Location</Category>
<Comments>default value updated</Comments>
<Id>0E3D4C92-96F3-4260-BBFD-6D5218FDB087</Id>
<Name>Building</Name>
<Scope>Device</Scope>
<Type>String</Type>
<Value>new default value</Value>
</VariableDefinition>
URL: https://<bmsserver>:<port>/bConnect/V1.0/KioskJobs
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/KioskJobs?endpointId=E4D6F70F-290C-4B0E-
B9A9-D823171FF5E3
Result:
[{
"Id": "4",
"AssignedObjectId": "E4D6F70F-290C-4B0E-B9A9-D823171FF5E3",
"AssignedObjectName": "Windows PC",
"AssignedObjectType": "WindowsEndpoint",
"JobDefinitionId": "A57D8D92-D088-4FBF-BDE3-38FE3102297D",
"JobDefinitionName": "Windows-Scan",
"JobDefinitionDisplayName": "Windows-Scan",
"JobDefinitionCategory": "",
"JobDefinitionSupportedPlatforms": [
"Windows"
]
}
]
URL: https://<bmsserver>:<port>/bConnect/V1.0/EndpointSecrets
Examples:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/EndpointSecrets?endpointId=E4D6F70F-290C-
4B0E-B9A9-D823171FF5E3
Result:
{
"EndpointId": "E4D6F70F-290C-4B0E-B9A9-D823171FF5E3",
"Pin": "123456",
"VolumeSecretEntries": [
{
"VolumeId": "\\\\?\\Volume{1bc10a7f-b18c-3591-c322-075836942588}\\",
"VolumeName": "System (C:)",
"IsSystemVolume": true,
"GeneratedRecoveryKey": "123456-789012-345678-901234-567890-123456-789012",
"InventoryRecoveryKey": "123456-789012-345678-901234-567890-123456-789012",
"InventoryTimestamp": "2019-10-10T09:14:33Z"
}
]
}
URL: https://<bmsserver>:<port>/bConnect/V1.0/EndpointEnrollment
Example:
• POST-Request:
https://bmsserver.customer.net/bConnect/v1.0/EndpointEnrollment.json
Request body:
{
"EndpointId" : " E4D6F70F-290C-4B0E-B9A9-D823171FF5E3",
"EmailRecipient" : "user@customer.com",
"EmailLanguageId": "de-DE"
}
Result:
{
"EndpointId": " E4D6F70F-290C-4B0E-B9A9-D823171FF5E3",
"InstallCommand":
"ManagementAgent_setup.exe /Q OPTIONS=655667 INTERNET_MODE=1
INTERNET_SERVER=172.16.5.55 INTERNET_SERVERPORT=443
INTERNET_SERVERKEY=\"308201223…\" SERVERKEY=\"308201223…\"
ENROLLMENT_TOKEN_DATA=\"ChF5dX…\"",
"ValidUntil": "\"2019-12-19T14:41:18.717792500Z\""
}
URL: https://<bmsserver>:<port>/bConnect/V1.0/ServerState
Example:
• GET-Request:
https://bmsserver.customer.net/bConnect/v1.0/ServerState.json
Result:
{
"Name": "bmsserver.customer.net ",
"ExecutionState": "Running",
"Services": [
{
"Name": "Active Directory Connector",
"ExecutionState": "Running",
"StateText": []
},
...
{
"Name": "Windows Software Inventory",
"ExecutionState": "Running",
"StateText": [
"Idle"
]
}
]
}
Note: In order to use the VPPUsers controller a valid VPP token must be imported.
To request VPPUser object data the URL must contain the bConnect version information.
URL: https://<bmsserver>:<port>/bConnect/V1.0/VPPUsers
Examples:
• POST-Request:
https://localhost:443/bconnect/v1.0/vppusers.json?sendInvitationMail=true
Result:
{
"Id": "BF945C04-1A13-4F44-BCE6-FC998AE819FB",
"Email": "Jones.Dow@myprivatemail.com ",
"ManagedAppleId": null,
"EmailLanguageId": "de-DE",
"ItunesStoreHash": "",
"InviteUrl":
"https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/associateVPPUserWit
hITSAccount?cc=de&l=en&inviteCode=fdbf5fb69b4feba7222edfb6&mt=8",
"Status": "Registered",
"UserId": "94675313",
"IsManagedAppleId": false
}
Note: In order to use the VPPLicenseAssociations controller a valid VPP token must be
imported.
To request VPPLicenseAssociation object data the URL must contain the bConnect version
information.
URL: https://<bmsserver>:<port>/bConnect/V1.0/VPPLicenseAssociations
Examples:
• POST-Request:
https://localhost:443/bconnect/v1.0/vpplicenseassociations.xml
Result:
<VPPLicenseAssociation xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/Baramundi.Bms.Server.Connector.Rest.BC
onnect.DataModel">
<AdamId>593959012</AdamId>
<BmsNetEndpoint i:nil="true" />
<BundleId>com.baramundi.bmdenroll</BundleId>
<ClientUserIdStr>2E97E7C1-CEF9-4611-A8BB-3E90ADFFE8A8</ClientUserIdStr>
<Id>D04ABB35-16B2-499C-AF3B-440A1A07C3BE</Id>
<LicenseIdStr>561967974</LicenseIdStr>
<SerialNumber i:nil="true" />
<ShouldBeDisassociated>false</ShouldBeDisassociated>
</VPPLicenseAssociation>
To request MicrosoftUpdateInventories object data the URL must contain the bConnect version
information.
URL: https://<bmsserver>:<port>/bConnect/V1.0/MicrosoftUpdateInventories
Examples:
• GET-Request:
https://<bmsserver>:<port>/bConnect/V1.0/MicrosoftUpdateInventories?GroupID=036D9C03-
4F3E-47E9-8123-2E8B0456C4C7&Recursive=true
Result:
{
"Endpoints": [
{
"EndpointID":"A61C9A21-DB8D-498C-9F9C-7B28E9DF9B9B",
"UpdateInformation": [
{
"IsInstalled":False,
"UpdateId":"C2A8FCE2-B93A-4FC0-95EA-16B783F341F4",
"RevisionNumber":"200",
"Classification":"Security Updates",
"Products": [
"Windows 10"
],
"Title":"2020-02 Security Update for Adobe Flash Player for Windows 10 (KB4537759)",
"Type":"Software",
"SupportURL":"https://support.microsoft.com/help/4537759",
"LastDeploymentChangeTime":"2019-01-15T00:00:00Z",
"MsrcSeverity":"Critical",
…
}]}
# credentials
$username = "<domain>\<user>"
$password = "<password>" | ConvertTo-SecureString -asPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential($username,$password)
# configuration
$server = "<baramundi server>" # bramundi Management Server as specified in the
bound certificate
$version = "v1.0" # current version of bConnect
$outputformat = "json" # request the data in json format
$controller = "orgunits" # an existing controller
$attributes = "" # starting with '?'
# request
$response = Invoke-WebRequest -Uri $url -Credential $creds
# HTTP status codes: 200=OK; 400=bad request; 403=unauthorized; 500=internal server error;
$stat = $response.statuscode;
write-host "Status:" $stat "$([char]10)"
'credentials
user = "<user>" 'user authorized in baramundi Management Suite
password = "<password>" 'password for the user above
'configuration
server = "<baramundi server>" 'baramundi Management Server as specified in the bound
certificate
version = "v1.0" 'current version of bConnect
outputformat = "xml" 'request the data in xml or json format
controller = "orgunits" 'an existing controller
attribues = "" 'starting with '?'
url = "https://" & server & "/bConnect/" & version & "/" & controller & "." & outputformat
& attribues
'request
httpObj.Open "GET", url, False, user, password
httpObj.setOption 2, 13056 'suppress cert warning
httpObj.SetRequestHeader "pragma", "no-cache" 'avoid caching
httpObj.SetRequestHeader "Cache-Control", "no-cache, no-store" 'avoid caching
httpObj.send
'HTTP status codes: 200=OK; 400=bad request; 403=unauthorized; 500=internal server error;
plot = "HTTPS response status code: " & httpObj.Status & vbCrLf & vbCrLf
6.3 C#
Simple sample in C# to request available bMS org units over bConnect. Used with .NET
Framework 4.5.
namespace bConnectSample
{
using System;
using System.IO;
using System.Net;
using Newtonsoft.Json;
// configuration
string server = "<baramundi server>"; // baramundi Management Server
string version = "v1.0"; // current version of bConnect
string outputformat = "json"; // request the data in xml format
string controller = "orgunits"; // an existing controller
string attribtues = ""; // starting with '?'
try
{
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader streamReader = new StreamReader(response.GetResponseStream());
var results = JsonConvert.DeserializeObject<dynamic>(streamReader.ReadToEnd());
streamReader.Close();
response.Close();
}
catch (WebException ex)
{
Console.WriteLine(ex.Message);
}
Console.Read();
}
}
}
7.1 Version
Property Data type Access Description
SupportedVersions List of String (*) R List of supported versions
CurrentVersion String (*) R Current version of bConnect
(*) must not be null for reading access
7.2 Info
Property Data type Access Description
bConnectVersion String (*) R Current version of bConnect
Description String (*) R Simple description of bConnect
Company String (*) R baramundi Software AG
Copyright String (*) R Copyright …
bMSVersion String (*) R Current version of the bMS
UserContext String (*) R Context this request is processed in
(*) must not be null for reading access
7.3 SearchResult
Property Data type Access Description
Id String (*) R Unique ID of a found object. Use this
ID to load the whole object
Name String (*) R Name of an object found
Type Int (*) R Type of an object found (see coding
below)
AdditionalInfo String R Additional data of an object found
Deactivated Bool (**) R For endpoints only: The endpoint is
deactivated (Windows) or not
managed (mobile endpoints, Macs).
(*) must not be null for reading access
(**) applies for endpoints only
Codings:
[Type]
0 Unknown
1 WindowsEndpoint endpoint of type WindowsEndpoint
2 AndroidEndpoint BmsNetEndpoint
3 iOSEndpoint BmsNetEndpoint
4 MacEndpoint BmsNetEndpoint
5 WindowsPhoneEndpoint BmsNetEndpoint
6 WindowsJob for endpoints of type WindowsEndpoint only
7 BmsNetJob for endpoints of type BmsNetEndpoint only
8 OrgUnit different nodes (including Logical Goups)
9 DynamicGroup for endpoints of type WindowsEndpoint only
10 StaticGroup for endpoints of all endpoint types
11 Application for endpoints of type WindowsEndpoint only
12 App for endpoints of type BmsNetEndpoint only
16 NetworkEndpoint endpoint of type NetworkEndpoint
17 AD Object user or user group
7.4 OrgUnit
Property Data type Access Description
Id String R ID of an org unit
Comment String R/C/U Freely editable text field
Extension Extension (*) R/C/U Extended data for org units of node
Logical Groups
GuidParent DEPRECATED String R ID of a superior org unit
(use ParentId instead)
HierarchyPath String R Path of an org unit in the organizational
hierarchy
Name String R/C/U Name of an org unit
ParentId String R/C/U ID of a superior org unit
(*) applies for org units of node Logical Groups only
7.4.1 Extension
Property Data type Access Description
DIP String R/C/U DIP list, separated by semi-colon
Domain String R/C/U Windows domain name
LocalAdminPassword String R/C/U Password for a local administrator
(must be encrypted with baramundi
Cryptor)
EnableDHCP Bool R/C/U If set the network settings will be
provided by the dhcp server
SubnetMask String R/C/U If not EnableDHCP: Network mask
DefaultGateway String R/C/U If not EnableDHCP: Standard gateway
DnsServer String R/C/U If not EnableDHCP: DNS 1
DnsServer2 String R/C/U If not EnableDHCP: DNS 2
DnsDomain String R/C/U If not EnableDHCP: DNS domain
WinsServer String R/C/U If not EnableDHCP: WINS 1
WinsServer2 String R/C/U If not EnableDHCP: WINS 2
AutoInstallJobs List of String R/C/U List of job IDs for auto installation
(see object type Job)
HardwareProfiles List of String R/C/U List of hardware profile IDs (see object
type HardwareProfile)
InheritAutoInstallJobs Bool R/C/U If set, the auto install jobs of parent org
unit will be inherited (see object type
Job)
RequestableJobs List of String R/C/U List of job ids (for Kiosk; see object
type Job)
7.5 DynamicGroup
Property Data type Access Description
Id String R ID of a dynamic group
Comment String R/C/U Freely editable text field
HierarchyPath String R Path of a dynamic group in the
organizational hierarchy
Name String R/C/U Name of a dynamic group
ParentId String R/C/U ID of a superior org unit
Statement String R/C/U SQL statement of a dynamic group
(only WHERE clause can be defined;
target is always the table “machine”)
7.6 UniversalDynamicGroup
Property Data type Access Description
Id String R ID of a universal dynamic group
Comment String R Freely editable text field
HierarchyPath String R Path of a universal dynamic group in
the organizational hierarchy
DisplayName String R Display Name of a universal dynamic
group
Name String R Name of a universal dynamic group
ParentId String R ID of a superior org unit
IsArgusSynced Bool R If true, a universal dynamic group is
synchronized to Argus Cockpit
7.7 StaticGroup
Property Data type Access Description
Id String R ID of a static group
Comment String R/C/U Freely editable text field
EndpointIds List of String R/C/U List of endpoint IDs linked to the static
group
HierarchyPath String R Path of a static group in the
organizational hierarchy
Name String R/C/U Name of a static group
ParentId String R/C/U ID of a superior org unit
7.8 Endpoint
For bMS 2014 R2 the Endpoint object has been extended for mobile devices (Android,
WindowsPhone, iOS) and Mac devices. Hence the property Type specifies if the endpoint is
of type WindowsEndpoint, AndroidEndpoint, WindowsPhoneEndpoint, iOSEndpoint,
MacEndpoint or NetworkEndpoint.
Owner Int (***) R/C/U Owner type of the device (see coding
below)
ComplianceState Int (***) R Compliance state of an endpoint (see
coding below)
Codings:
[Mode]
LAN LAN only
Internet Internet only
Dynamic Device selects dynamically the appropriate channel
[LastChannel]
[VirusAndThreadProtectionStatus]
[AutomaticUpdateStatus]
[AppAndBrowserControlStatus]
[WindowsSecurityServiceStatus]
[UserAccountControlStatus]
[SecurityCenterUser]
Unknown The status of the security provider could not be determined.
Good The status of the security provider category is good and does not
need user attention.
NotMonitored The status of the security provider category is not monitored by WSC.
Poor The status of the security provider category is poor and the computer
may be at risk.
Snooze The security provider category is in snooze state. Snooze indicates
that WSC is not actively protecting the computer.
[Type]
0 Unknown
1 WindowsEndpoint
2 AndroidEndpoint
3 iOSEndpoint
4 MacEndpoint
5 WindowsPhoneEndpoint
16 NetworkEndpoint
18 IndustrialEndpoint
[ClientAgentState]
-1 Unchanged
0 Unknown
1 Not Installed
3 Running
4 Rebooting
[Options]
0x00000001 Admits an OS installation
0x00000002 Inherits auto installation
Bit 3-4 PrimaryUserUpdateOptions (see below)
Bit 5-6 UserJobOptions (see below)
0x00000100 Automatic Usage Tracking is active
0x00000200 Energy Management is active
0x80000000 Client is deactivated (read only flag)
[PrimaryUserUpdateOptions]
0x00000000 Primary user will be updated at the next announce (default).
0x00000004 Do not use the primary user.
0x00000008 Always update the primary user.
0x0000000C Never update the primary user.
[UserJobOptions]
0x00000000 Always execute user related jobs.
[ManagementState]
0 Unknown
1 Enrollable
2 Enrolling
3 Managed
4 Unmanaged
[Owner]
-2 Unknown
0 Company
1 Private
[ComplianceState]
0 Unknown
1 Compliant
2 Not compliant, just a info
3 Not compliant, a warning
4 Not compliant, severe
5 Compliance inactive
[ComplianceCheckCategory]
0 active Compliance is activated for the device
1 inactive Compliance is deactivated for the device
2 temporarily inactive Compliance is temporarily deactivated for the device
[AndroidEnterpriseProfileType]
0 None (Android Legacy Device)
1 Fully managed device
2 Work Profile
4 Dedicated Device
[AppleManagementMode]
0 None (Will default to DeviceEnrollment for iOS Devices)
1 DeviceEnrollment
2 UserEnrollment
[BitLockerNetworkUnlockStatus]
0 Deactivated
BitLocker Network Unlock is not active, User needs to enter BitLocker PIN at startup.
1 OtherCertificate
BitLocker Network Unlock is active, but not configured for using with bMS. Installed BitLocker
Network Unlock Certificate is unknown.
2 Activated
BitLocker Network Unlock is active, System boots without requesting PIN, if connected per LAN
3 NotSupported
BitLocker Network Unlock is not supported on device.
4 Unknown
BitLockerNetworkUnlock status was not inventorised yet.
[LastSuccessfulUpdateSource, UpdateInventorySource]
WSUS
Windows Online
Microsoft Online
7.8.1 TPMData
Property Data type Access Description
Version String R TPM version
TPMStatus Int R 0 : Not available
1 : Deactivated
2 : Enabled
3 : Activated
IsOwned Bool R Indicates whether the TPM has an
owner
7.8.2 StorageMedium
Property Data type Access Description
Index Int R Disk index
Name String R Disk name
ByteSize ULong R Total size in bytes
BusType Int R Bus type (see coding below)
PartitionStyle Int R 0 : Unknown
1 : MBR (Master boot record)
2 : GPT (GUID partition table)
StorageVolumes List of R Volumes on this disk
<StorageVolumes>
[BusType]
0 Unknown
1 SCSI
2 ATAPI
3 ATA
4 IEEE1394
5 SSA
6 FibreChannel
7 USB
8 RAID
9 ISCSI
10 SAS
11 SATA
12 SD
13 MMC
14 Virtual
15 FileBackedVirtual
16 StorageSpaces
17 NVMe
7.8.3 StorageVolumes
Property Data type Access Description
DriveLetter String R Current volume letter
Label String R Volume label
FileSystem String R NTFS, ReFS, FAT32 or CSVFS
FileSystemType Int R File system type (see coding below)
ByteSize ULong R Total size in bytes
ByteSizeRemaining ULong R Free space in bytes
IsSystemVolume Bool R Contains operating system
BitLockerVolumeData BitLockerVolumeData R BitLocker data
VolumeID String R Volume ID
PartitionType String R Type of the partition
[FileSystemType]
0 Unknown
1 FAT
2 FAT32
3 NTFS
4 EXFAT
5 CSVFS
6 ReFS
7.8.4 BitLockerVolumeData
Property Data type Access Description
ConversionStatus Int R Conversion status (see coding below)
EncryptionPercentage Int R Encryption progress in percent
SuspendCount Int R Suspend BitLocker for n reboots
BitLockerVersion Int R 0 : Unknown
1 : Vista
2 : Win7+
ProtectionStatus Int R 0 : Unprotected
1 : Protected
2 : Unknown
LockStatus Int R 0 : Unknown
1 : Unlocked
2 : Locked
[ConversionStatus]
0 Fully decrypted
1 Fully encrypted
2 Encryption in progress
3 Decryption in progress
4 Encryption paused
5 Decryption paused
6 Unknown
7.8.5 Software
Property Data type Access Description
Id String R Unique ID of a software
Name String R Name of a software
Version String R Version of a software
Package String R Identifier of a software
Manufacturer String R Name of the manufacturer
7.8.6 SNMPDeviceData
Property Data type Access Description
SNMPName String R Name of a device
Description String R Description of a device
VendorId Int R SNMP ID of a vendor
UpTime String R The time since a device has been
running. Format:
days.hours:minutes:sec.millisec
PrimaryMAC String R Primary MAC address of a device
LastContact DateTime R Date and time of last successful
communication with a device
Comment String R Freely editable text field
PrimaryIP String R Primary IP address of a device
DetectionRules List of R Detection Rules that apply for a device
<DetectionRule>
7.8.6.1 DetectionRule
7.8.7 IndustrialData
Property Data type Access Description
GatewayType Int R/C Device type
Url String R/C/U Web interface URL
Port int R/C/U Communication port
SnmpConfiguration SnmpConfiguration R/C/U SNMP configuration
LastInventory DateTime R Last inventory date
ModelType String R Model type
IndustrialCPU String R CPU description
FirmwareVersion String R Firmware version
HardwareVersion String R Hardware version
OrderNumber String R Order number
UpTime Long R Uptime
Contact String R Contact person
Location String R Location
7.8.8 SnmpConfiguration
Property Data type Access Description
Version Int R/C/U SNMP version
1: V1
2: V2c
3: V3
Community String R/C/U Community
Required for V1 and V2c
Username String R/C/U Username
Required for V3
Authentication Int R/C/U Authentication Type:
0 : None
1: MD5 (96 Bit)
2: SHA (96 Bit)
3: SHA (196 or 256 Bit)
AuthenticationPassword String C/U Authentication password
Required for Authentication > 0
Encryption Int R/C/U Encryption algorithm:
0: DES
1: AES
2: 3DES
3: AES (192 Bit)
4: AES (256 Bit)
EncryptionPassword String C/U Encryption password
Required for Encryption > 0
7.9 NewEndpoint
Property Data type Access Description
EnrollmentToken String R Token for enrollment (null for
endpoints of type WindowsEndpoints)
TokenValidUntil DateTime R Validity time for created token (null for
endpoints of type WindowsEndpoints)
Endpoint Endpoint R Newly created endpoint object
7.10 Job
For bMS 2014 R2 the Job object has been extended for mobile (Android, iOS,
WindowsPhone) and Mac devices. Hence the property Type specifies if the Job object is for
endpoint of type WindowsEndpoint or BmsNetEndpoint (Android, WindowsPhone, iOS, Mac).
Property Data type Access Description
Id String (*) R Unique ID of a job
Type DEPRECATED Int (*) R Type of a job (see coding below)
GuidParent String (*) R ID of a superior org unit
Name String (*) R Name of a job
State DEPRECATED UInt (**) R State of a job (see coding below)
JobCount Int (**) R Number of max job executions
Interval DEPRECATED String (**) R Intervals of job executions if
JobCount >1
Initiator String (**) R User, who had created the job.
Options UInt (**) R Job options (see coding below)
Validity DEPRECATED String (**) R Validity of a job
Comments String (**) R Freely editable text field
Priority Int (**) R Priority of a job
MaxConcurrentTargets Int (**) R Max number of simultaneous job
instances
Unlocksequence String (**) R Unlock sequence of a job
MinBandwidth Int (**) R Minimal bandwidth for job execution
JobExecutionTimeout Int (**) R Timeout for job execution
JobProperties List of <Key, R Further properties of a job
Value> (**)
AssignOnEndpointCreation Bool (***) R If true, a job is assigned automatically
to new devices
Description String (*) R Description of a job
RemoveInstanceAfterCompletion Bool (***) R If true, the job instance is removed
DEPRECATED after completion
RepeatOnFailure Bool (***) R If set the job is repeated on failure
Repetition Int (***) R Interval of job execution
RequiredComplianceLevel Int (***) R Required compliance level for a job
ShowInKiosk Bool (***) R Show job in Kiosk
CanRunOnMobileDevice R If true a job for a mobile device,
otherwise if CanRunOnMac is false
also a job for WindowsEndpoint
device.
CanRunOnMac R If true a job for a Mac device,
otherwise if CanRunOnMobileDevice is
false also a job for WindowsEndpoint
device
Destructive Bool (***) R If true, a job contains destructive
steps (e.g. Wipe, OS-Install, ...)
SupportEndpointsInInternetMode Bool (**) R If true, a job can be executed on an
endpoint that is in the internet mode
Steps List of <Step> R Step can be type of Application or
Common
DisplayName String R DisplayName of a Job
IconId String R Id of associated Image
Category String R Category of a job
(*) must not be null for reading access, (**) applies for WindowsJob only, (***) applies for BmsNetJob only
Codings:
[Type] DEPRECATED
0 Unknown
6 WindowsJob Valid for WindowsEndpoints only (use instead properties
CanRunOnMac = false AND CanRunOnMobileDevice = false)
7 BmsNetJob Valid for Android, WindowsPhone8, iOS and MacEndpoints (use instead
properties CanRunOnMac = true OR CanRunOnMobileDevice = true)
[State] DEPRECATED
0 Unknown
1 Inactiv
2 Activ
[Options]
0x00000001 UseWakeOnLan
0x00000002 Cancel, if an error occurs
0x00000004 Passive mode
0x00000008 If the job is done start screen saver
0x00000010 If the job is done shut down the system
0x00010000 Show always the information window
0x00020000 Log off other users before a job will be executed
0x00040000 Force a logoff
0x00080000 Hide the information window
0x00200000 User can delay a job execution
0x00400000 User can deny a job execution
[RequiredComplianceLevel]
0 Unknown
1 Compliant
2 Not compliant, just a info
3 Not compliant, a warning
4 Not compliant, severe
5 Compliance inactive
7.10.2.1 Property
7.10.3 Type
[Type]
Unknown
MicrosoftUpdateInventory
7.11 JobInstance
For bMS 2014 R2 the JobInstance object has been extended to expose properties for mobile
(Android, iOS, WindowsPhone) and Mac devices too.
[EndpointCategory]
-1 Any
0 Unknown
1 MicrosoftWindows
2 GoogleAndroid
3 AppleIOS,
4 AppleMac
5 WindowsPhone
6 Network
7 Industrial
0 Unknown
1 Inactive
2 Active
5 Running
6 Paused
7 Finished
0x00000100 Resume Job steps will not be new created.
0x00000200 Warning Cancels with warning
0x00000400 Error Cancels with error
0x00000800 Rebooting Client new start
0x00001000 RetryFailed Retry failed
0x00002000 Waiting Waiting for event to proceed
0x00004000 Connecting Server connects to client
0x00008000 Delayed Job on client is delayed (locked workstation)
0x00010000 Rescheduled Job has been re-planned
0x00020000 Preparing Job preparation phase
0x00040000 Initializing Job initializing phase
0x00080000 Rebooted Client rebooted
0x00100000 WaitingForBootClient Job waits for a boot client connection.
0x00200000 OtherJobActive Another Job is active for this client
0x00400000 ConnectFailed Attempt to connect failed
0x00800000 PreconditionFailed Set when Preconditions do not apply
0x01000000 DownloadsFinished Job instance has finished downloading files via bBT
0x02000000 DownloadingFiles Job instance is downloading files via bBT
0x04000000 UBDSExecuteOnEachLogin UBDS Option ExecuteOnEachLogin is set
0x08000000 RescheduledForShutdown Job rescheduled to time of the shutdown
0x10000000 ExecuteShutdownJob Shutdown Job ready for execution
[BmsNetState]
-1 Unknown
0 Assigned
1 Running
2 FinishedSuccess
3 FinishedError
4 FinishedCanceled
5 ReScheduled
6 ReScheduledError
7 WaitingForUser
8 RequirementsNotMet
9 Downloading
10 SkippedDueToIncompatibility
11 NonBlockingWaitingForUser
7.11.3 State
[State]
0 Assigned
1 Running
2 FinishedSuccess
3 FinishedError
4 FinishedCanceled
5 ReScheduled
6 ReScheduledError
7 WaitingForUser
8 RequirementsNotMet
9 Downloading
10 SkippedDueToIncompatibility
7.12 BootEnvironment
This object type applies for endpoints of type WindowsEndpoint only.
Codings:
[Type]
Unknown
DOS
WinPE
WinPE_UEFI
Custom
7.13 HardwareProfile
This object type applies for endpoints of type WindowsEndpoint only.
7.14 ObjectVariables
Property Data type Access Description
ObjectId String R Unique ID of the object the variables
belong to (e.g. an endpoint)
Scope String R Scope of the variables (e.g. Device)
Variables List of R List of all variables of an object
<Variable>
Codings:
[Scope]
Device Covers endpoints of type WindowsEndpoint and MacEndpoint
MobileDevice Covers endpoints of type Android, WindowsPhone and iOSEndpoint
Job Covers jobs of type WindowsJob
OrgUnit Covers org units in node Logical Groups only
Software Covers software (applications) for Windows clients only
Hardwareprofile Covers hardware profiles
7.14.1 Variable
Property Data type Access Description
Category String R Category of a variable
Name String R Name of a variable
Value String R/U Value of a variable
UseDefault Bool (*) R/U If true the default variable value (from
variable definition) is used
Type String R The type of a variable (see coding
below)
(*) applies for BmsNetEndpoints only
Codings:
[Type]
Unknown
Number
String
Date
Checkbox
Dropdownbox
DropdownListbox
Filelink
Folder
Password
Certificate
7.15 App
This object type applies for endpoints of type AndroidEndpoint, iOSEndpoint and
WindowsPhoneEndpoint only.
7.15.1 AppLicenseCounter
Property Data type Access Description
TotalInstalledOn Int R Number of devices the app is installed
on
InUse Int R Number of devices where the app is in
use
TotalLicense Int R Number of available licenses
FreeLicense Int R Number of free licenses
7.16 Icon
Property Data type Access Description
Id String R Unique ID of an app
Data Array of Bytes R The apps binary icon data
7.17 Application
This object type applies for endpoints of type WindowsEndpoint only.
Codings:
[SecurityContext]
AnyUser
InstallUser
LocalInstallUser
LocalSystem
LoggedOnUser
RegisteredUser
SpecifiedUser
[ValidForOS]
NT4
Windows2000
WindowsXP
WindowsServer2003
WindowsVista
WindowsServer2008
Windows7
WindowsServer2008R2
WindowsXP_x64
WindowsServer2003_x64
WindowsVista_x64
WindowsServer2008_x64
Windows7_x64
WindowsServer2008R2_x64
Windows8
Windows8_x64
WindowsServer2012_x64
Windows10
Windows10_x64
WindowsServer2016_x64
WindowsServer2019_x64
7.17.1 ApplicationLicense
Property Data type Access Description
Count Int R/C/U Count of all available licenses
LicenseKey String R/C/U Key of the license
Offline Int R/C/U Count of all offline licenses
Online Int R Count of all online licenses
7.17.2 ApplicationFile
Property Data type Access Description
Source String R/C/U Source of the file
Type String R/C/U Type of the file (see coding below)
Codings:
[Type]
FolderWithSubFolders
SingleFolder
File
7.17.3 InstallationData
Property Data type Access Description
Command String R/C/U Installation / Uninstallation command
Parameter String R/C/U Parameters for installation /
uninstallation
Response File String R/C/U Source of the response file after
installation / uninstallation
Engine String R/C/U Name of the installation /
uninstallation engine
EngineFile String R/C/U Source of the installation /
uninstallation engine
Options InstallApplicatio R/C/U InstallApplicationOption
nOption
UserSettings InstallUserSetti R/C/U InstallUserSettings
ngs
Codings:
[Engine]
baramundi Deploy Package
Rational Visual Test 6.5
baramundi Deploy Script
7.17.3.1 InstallApplicationOption
Codings:
[RebootBehaviour]
NoReboot
Reboot
AppReboot
DeferrableReboot
[VisibleExecution]
Silent
NeedsDesktop
VisibleWhenUserLoggedOn
7.17.3.2 InstallUserSettings
7.17.4 UninstallationData
Property Data type Access Description
Command String R/C/U Installation / Uninstallation command
Parameter String R/C/U Parameters for installation /
uninstallation
Response File String R/C/U Source of the response file after
installation / uninstallation
Engine String R/C/U Name of the installation /
uninstallation engine
EngineFile String R/C/U Source of the installation /
uninstallation engine
Options UninstallApplica R/C/U UninstallApplicationOption
tionOption
UserSettings UninstallUserSe R/C/U UninstallUserSettings
ttings
Codings:
[Engine]
baramundi Deploy Package
Rational Visual Test 6.5
baramundi Deploy Script
7.17.4.1 UninstallApplicationOption
Codings:
[VisibleExecution]
Silent
NeedsDesktop
VisibleWhenUserLoggedOn
[RebootBehaviour]
NoReboot
Reboot
AppReboot
DeferrableReboot
7.17.4.2 UninstallUserSettings
7.17.5 AUTFileRule
Property Data type Access Description
FileName String R/C/U Name of the file
FileSize ULong R/C/U Size of the file
Date String R/C/U Timestamp as Date of the file
CRC ULong R/C/U Checksum of the file
Version String R/C/U Version of the file
Company String R/C/U Company of the file
ProductName String R/C/U Product name of the file
InternalName String R/C/U Internal name of the file
Language String R/C/U Language of the file
ProductVersion String R/C/U Product version of the file
FileDescription String R/C/U File description of the file
FileVersionNumeric String R/C/U Numerical file version
CommandLine String R/C/U Command line parameters
7.17.6 SoftwareDependency
Property Data type Access Description
DependencyId String R/C Unique ID of the dependency
(software Unique ID)
DependencyAppName String R Name of the application
DependencyType String R/C Type of the dependency (see coding
below)
ValidForOS List of Strings R/C List of all supported operating
systems of the dependency (see
coding below)
[DependencyType]
InstallBeforeIfNotInstalled
AlwaysInstallAfterwards
AlwaysInstallBefore
DeinstallBeforeIfInstalled
ErrorIfNotInstalled
ErrorIfInstalled
[ValidForOS]
NT4
Windows2000
WindowsXP
WindowsServer2003
WindowsVista
WindowsServer2008
Windows7
WindowsServer2008R2
WindowsXP_x64
WindowsServer2003_x64
WindowsVista_x64
WindowsServer2008_x64
Windows7_x64
WindowsServer2008R2_x64
Windows8
Windows8_x64
WindowsServer2012_x64
Windows10
Windows10_x64
WindowsServer2016_x64
7.17.7 SoftwareLicenseAction
Property Data type Access Description
AlarmCount int R/C Count, when the alarm is executed.
AlarmAction String R/C Action of the alarm
ContinueInstall bool R/C If false, the application won’t be
installed, if less than ‘AlarmCount’
licenses are available
[AlarmAction]
LogInfo
LogWarning
7.17.8 Parameter
Property Data type Access Description
Name String R/C Name of the parameter
Type String R/C The type of the parameter
Value String R/C The actual value of the parameter
DefaultValue String R/C The default value of the parameter
when Value is not set
[Type]
Unknown
Number
String
Date
Checkbox
Dropdownbox
DropdownListbox
Filelink
Folder
Password
Certificate
7.18 Inventory
This object type applies for all endpoint types.
7.18.1 InventoryScan
Property Data type Access Description
Time DateTime R Scan execution time (in UTC)
Template String R Name of the template used for the
inventory scan
Data List of R Inventory data is one of following
InventoryData> types: DataRegistry, DataFile,
DataWMI, DataCustom and
DataHardware
7.18.2 DataRegistry
Property Data type Access Description
Name String R Name of a scanned registry entry
Version String R Version of a scanned registry entry
Company String R Responsible Company
ProductName String R Name of a product the entry is for
7.18.3 DataFile
Property Data type Access Description
Name String R Name of a scanned file
Path String R Path of a scanned file
Size Long R Size of a scanned file in Bytes
LastWriteTime DateTime R Last time the file was modified
Version String R Version of a scanned file
Company String R Manufacturer of a scanned file
ProductName String R Product a scanned file is part of
ProductVersion String R Version of a product
OriginalName String R Internal name of a scanned file
Description String R Description of a scanned file
7.18.4 DataWMI
Property Data type Access Description
ClassName String R Corresponding WMI class name
Items List of <Item> R List of found items with data type Item
7.18.4.1 Item
7.18.5 DataCustom
Property Data type Access Description
Name String R Custom name of a root node
Properties List of R List of custom node properties with
<Property> type Property
SubNodes List of R List of SubNodes with data type
<DataCustom> DataCustom
7.18.6 DataHardware
Property Data type Access Description
Name String R Name of a root node
Properties List of R List of node properties with type
<Property> Property
SubNodes List of< R List of SubNodes with data type
DataHardware> DataHardware
7.18.6.1 Property
7.18.7 DataSnmp
Property Data type Access Description
Name String R Name of a SNMP property
ObjectId String R SNMP object identifier
PropertyId String R Id of a SNMP property
Found Bool R True if the object was found
Value String R Value of a SNMP property
7.19 InventoryOverview
This object type applies for endpoints of type WindowsEndpoint only.
7.19.1 Scan
Property Data type Access Description
Template String R Name of a used template
Time DateTime R Date and time of a scan (in UTC)
Type String R Inventory Type (see coding below)
Coding:
[Type]
Unknown
Custom
WMI
Hardware
7.20 InventoryApp
This object type applies for endpoints of type AndroidEndpoint, iOSEndpoint and
WindowsPhoneEndpoint only.
7.21 SoftwareScanRule
Property Data type Access Description
Id String (*) R Unique ID of a software scan rule
SoftwareManufacturer String (*) R Manufacturer of a software
SoftwareName String (*) R Name of a software
SoftwareVersion String (*) R Version of a software
Protected Bool R True, if scan rule is protected
Comment String R Freely editable text field
Rules DEPRECATED String R The rule to detect a software
Category String R Category of the software
IsMswRule Bool R True, if scan rule is for
ManagedSoftware product
(*) must not be null for reading access
7.22 SoftwareScanRuleCount
Property Data type Access Description
SoftwareScanRule SoftwareScanR R SoftwareScanRule object that a
ule object detection rule that identifies installed
and deployed software
InstalledCount String R Cumulated count of deployed and
inventoried software
InstalledEndpoints List of R The Endpoints which match the scan
EndpointInfo rule
objects
7.23 EndpointInvSoftware
Property Data type Access Description
GuidEndpoint String (*) R Unique ID of an endpoint
GuidRule String (*) R Unique ID of a software scan rule
LastSeen DateTime(*) R Last time a software was detected on
an endpoint
InventoryPath String R Inventory path
InventoryVersion String R Inventory version
ConflictedRules DEPRECATED String R List of IDs of conflicted scan rules
(*) must not be null for reading access
7.24 EndpointInfo
Property Data type Access Description
Id String R Unique ID of an endpoint
Name String R Name of the endpoint
7.25 Image
Property Data type Access Description
Id String R Unique ID of an image
MimeType String R Image Internet Media Type
Data Array of Bytes R The binary icon data
7.26 VariableDefinition
Property Data type Access Description
Id String R/C Unique ID of a custom variable
Scope String R/C Scope of a custom variable (e.g.
MobileDevice)
Category String R/C/U Category of a custom variable
Name String R/C/U Name of a custom variable
Type String R/C/U Type of a custom variable (see coding
below)
Value String R/C/U The default value of a custom variable
Comments String R/C/U Freely editable text field
Codings:
[Type]
Unknown
Number
String
Date
Checkbox
Dropdownbox
DropdownListbox
Filelink
Folder
Password
Certificate
[Scope]
Device Covers endpoints of type WindowsEndpoint and MacEndpoint
MobileDevice Covers endpoints of type Android, WindowsPhone and iOSEndpoint
Job Covers jobs of type WindowsJob
OrgUnit Covers org units in node Logical Groups only
Software Covers software (applications) for Windows clients only
Hardwareprofile Covers hardware profiles
AdObject Covers Active Directory users and groups
Bulletin Covers patch bulletins
Component Covers hardware components
7.27 KioskJob
Property Data type Access Description
Id long R/D Unique ID of the job release
AssignedObjectId String R/C Unique Id of endpoint, group or user
AssignedObjectName String R Name of endpoint, group or user
AssignedObjectType String R Types:
WindowsEndpoint
MacEndpoint
IOSEndpoint
AndroidEndpoint
WP8Endpoint
LegacyGroup (Logical Group)
ADObject (User or AD-Group)
JobDefinitionId String R/C Unique Id of the released job
JobDefinitionName String R Name of the released job
JobDefinitionDisplayName String R (Kiosk) Display name of the released
job
JobDefinitionCategory String R Category of the released job
JobDefinitionSupportedPlatforms List of Strings R Supported device platforms of the
released job
7.28 EndpointSecrets
Property Data type Access Description
EndpointId String R Unique ID of the endpoint
Pin String R/P BitLocker unlock pin
VolumeSecretEntries List of R Volume secrets
<VolumeSecretEntry>
7.28.1 VolumeSecretEntry
Property Data type Access Description
VolumeId String R Unique ID of the volume
VolumeName String R Name of the volume
IsSystemVolume Bool R Operation system on volume
GeneratedRecoveryKey String R Generated recovery key sent to
endpoint
InventoryRecoveryKey String R Inventoried recovery key
InventoryTimestamp DateTime R Last inventory time
7.29 EnrollmentData
Property Data type Access Description
EndpointId String R Unique ID of the endpoint
InstallCommand String R Specific install command for the given
endpoint
ValidUntil String R Timestamp until the enrollment data is
valid
7.30 ServerState
Property Data type Access Description
Name String R Name of the baramundi server
ExecutionState ExecutionState R The current execution state of the
baramundi server (see below)
Services List of ServiceState R The states of the sub services of the
server
[ExecutionState]
0 Unknown
1 Stopped
2 StoppedNotConfigured
3 Starting
4 Running
5 RunningNotConfigured
6 MaintenanceMode
7 Warning
8 Stopping
9 RestartRequired
10 NotLicensed
7.30.1 ServiceState
Property Data type Access Description
Name String R Name of the service (The name of the
service may change in future
releases.)
ExecutionState ExecutionState R The current execution state of the
service (see above)
StateText List of String R The current state text of the service
7.31 VPPUser
Property Data type Access Description
Id String R Unique ID of the VPP user
Email String R/C The email address of the VPP user
ManagedAppleId String R/C The managed Apple ID of the VPP
user
ItunesStoreHash String R The hash of the user's iTunes Store ID
InviteUrl String R The URL for VPP users to complete
the registration process
Status String R Status of a VPP user (see coding
below)
UserId String R An Id assigned by Apple upon user
registration
IsManagedAppleId Bool R/C True, if the VPP user is associated
with a managed Apple Id
ADObjectId String R The Id of the AD-User, if an AD-User
has been attached to the VPP user
Codings:
[Status]
Registered
Associated
Retired
Deleted
7.32 VPPLicenseAssociation
Property Data type Access Description
Id String R Unique ID of the VPP license
association
ClientUserIdStr String R/C The unique ID of the associated VPP
user
LicenseIdStr String R The identifier of the assigned license
BmsNetEndpoint String R The unique ID of the associated
Mobile Endpoint
SerialNumber String R The serial number of the associated
Mobile Endpoint
AdamId String R The unique identifier for a product in
the iTunes Store
ShouldBeDisassociated Bool R True, if the VPP license is marked for
disassociation, otherwise False
BundleId String R/C The unique bundle ID of the
associated app
7.33 MicrosoftUpdateInventories
Property Data type Access Description
Endpoints List of R Inventoried Microsoft
MicrosoftUpdateEndpointInventory updates of Windows
endpoints
7.34 MicrosoftUpdateEndpointInventory
Property Data type Access Description
EndpointID String R Unique ID of the
Windows endpoint
UpdateInformation List of R Inventoried
MicrosoftUpdateInventoryInformation Microsoft updates
of the Windows
endpoint
7.35 MicrosoftUpdateInventoryInformation
Property Data type Access Description
IsInstalled Bool R Indicates whether the update is
installed or not
UpdateId String R Revision-independent identifier of the
update
RevisionNumber String R Revision number of the update
Classification String R Classification of the update
Products List of String R Collection of the product names that
are associated with the update
Title String R Title of the update
Type String R Specifies the update type (see below)
SupportURL String R Hyperlink to the support information
for the update
LastDeploymentChangeTime String R Last published date of the update on
the server that deploys the update (in
UTC)
MsrcSeverity String R Microsoft Security Response Center
severity rating of the update.
Is null when not set.
KBArticleIDs List of String R Collection of Microsoft Knowledge
Base article IDs that are associated
with the update
MoreInfoUrls List of String R Collection of hyperlinks to more
information about the update
SecurityBulletinIDs List of String R Collection of the security bulletin IDs
that are associated with the update
CveIDs List of String R Collection of common vulnerabilities
and exposures (CVE) IDs that are
associated with the update
Description String R Description of the update
[Type]
Software
Driver
[MsrcSeverity]
Low,
Medium,
High,
Critical