A.3 Configuring the device with the API

Caution: Barco discourages configuring the system and users to match older versions of the software. The default user names, passwords and PIN codes are widely known. Barco cannot be held accountable for breaches caused by using well-known default credentials on purpose. Similarly, Barco discourages to enable or disable toggles that make it easier for unauthorized agents on the network to gain control over the device, possibly interrupting use of the device.
About configuring the projector using the Pulse API

It is possible to configure the device via the API, but it does require setting up a TLS connection to the API (port 9091). It also requires administrator or service user rights.

This topic gives an example of the API call that can be used to complete the setup process. Keep in mind that the EULA step might not be required for some devices.

This topic covers a number of API commands to configure the device in legacy setups. It however will not go in detail about how to use the Pulse API. For more information on the Pulse API, see “Pulse API Console

Initial setup with API
{ 
  "jsonrpc": "2.0",  
  "method": "initialsetup.activate",  
  "id": 707,  
  "params": {    
    "steps":  [ ["Eula", ["true"]], ["AdminAccount", ["setup123", "userChosenPass"]]]  
  }
}
Note: the variable “userChosenPass” is the password for the default administrator. Change this with the desired strong password (minimum 8 characters).
Enable unsecured connections with API

Unsecure communication protocols can individually be enabled by setting the values for the following properties to “True”: 

Enabling Port 9090:

{"jsonrpc": "2.0", "id": 17, "method": "property.set", "params": {"property": "protocols.jsonrpc.port-raw.enable", "value": true}}

Enabling port 80:

{"jsonrpc": "2.0", "id": 16, "method": "property.set", "params": {"property": "protocols.http.enable", "value": true}}
Add users with API

It’s possible to create a user using the following API method:`user.adduser `.  See the following example:

{"jsonrpc": "2.0", "id": 21, "method": "user.adduser", "params": {"username": "admin", "password": "default1234", "group": "Administrator"}}
Enabling and configuring PIN codes with the API

It is possible to enable and set the PIN code, using the API. See the following examples to enable the PIN code and to configure a PIN code:

{"jsonrpc": "2.0", "id": 9, "method": "property.set", "params": {"property": "user.pincodeauthenticationenabled", "value": true}}
{"jsonrpc": "2.0", "id": 23, "method": "user.admin.changepincode", "params": {"newpincode": 123123}}
Disabling password authentication with the API

Unauthenticated access can be enabled by setting the value for the following property to `False`, See the following example:

{"jsonrpc": "2.0", "id": 10, "method": "property.set", "params": {"property": "user.authenticationrequired", "value": false}}
Enabling custom test pattern upload with the API
{"jsonrpc":"2.0","method":"property.set","id":1897,"params": {"property":"image.testpattern.enablefilemanagement","value": true}}