Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Base URL for these endpoints:  https://ws.bsn.cloud/rest/v1/

_________________________________________________________________________

GET  /info/ 

Retrieves general information about the player

Request Example

GET /rest/v1/info/?destinationType=player&destinationName={{deviceSerial}} HTTP/1.1
Host: ws.bsn.cloud
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json

Response

  • serial string: The serial number of the player

  • model string: The model number of the device (e.g. "XD234")

  • connectionType string: The currently active network interface, which can be either "Ethernet" or "WiFi"

  • ethernet object: An object containing information about the ethernet connection. This property will only be available if there's a valid ethernet connection on the player. The object can contain the following properties:

    • IPv4 object: An object containing information about the IPv4 configuration. The object can contain the following properties:

      • address string: The assigned IPv4 address

      • netmask string: The IPv4 network mask

      • family string: IPv4

      • mac string: The MAC address of the network interface

      • internal bool: true if the network interface is a loopback or similar interface that is not remotely accessible; otherwise false

      • cidr string: The assigned IPv4 address with the routing prefix in CIDR notation. If the netmask is invalid, this property is set to null.

    • IPv6 object: An object containing information about the IPv6 configuration:

      • address string: The assigned IPv6 address

      • netmask string: The IPv6 network mask

      • family string: IPv6

      • mac string: The MAC address of the network interface

      • internal bool: true if the network interface is a loopback or similar interface that is not remotely accessible; otherwise false

      • cidr string: The assigned IPv4 address with the routing prefix in CIDR notation. If the netmask is invalid, this property is set to null.

  • bootVersion string: The current version of the boot loader

  • fwVersion  string: The current version of firmware installed on the player

  • upTime string: The amount of time (as a human-readable string) that the player has been powered on and working correctly

  • upTimeSeconds int: The amount of time (in seconds) that the player has been powered on and working correctly

  • extensions extension[ ]: An array of Extension objects describing Firmware Extensions currently installed on the player

  • blessings blessing[ ]: An array of Blessing objects describing proprietary codecs that are currently authorized on the player

Response Example

 Expand to see response example:
{
    "route": "/v1/info",
    "method": "GET",
    "data": {
        "result": {
            "serial": "RE433D006644",
            "upTime": "30 minutes",
            "upTimeSeconds": 1832,
            "model": "XD1035",
            "FWVersion": "9.0.97",
            "bootVersion": "9.0.85",
            "family": "cobra",
            "isPlayer": true,
            "power": {
                "result": {
                    "battery": "absent",
                    "source": "AC",
                    "switch_mode": "hard"
                }
            },
            "poe": {
                "result": {
                    "status": "inactive"
                }
            },
            "extensions": {
                "result": {
                    "extensions": []
                }
            },
            "blessings": {
                "result": {
                    "ac3": false,
                    "eac3": false
                }
            },
            "networking": {
                "result": {
                    "description": "Test_player",
                    "name": "XD5-RE433D006644"
                }
            },
            "bvnPipelines": {
                "result": {
                    "pipelines": []
                }
            },
            "bvnComponents": {
                "result": {
                    "components": []
                }
            },
            "hardware_features": {
                "hdmi": true,
                "component video": false,
                "vga": false,
                "two channel audio": true,
                "ethernet": true,
                "usb": true,
                "serial port 0": true,
                "serial port 1": false,
                "gpio connector": true,
                "svc button": true,
                "reset button": true,
                "rtc": true,
                "settings rom": false,
                "microsd": false,
                "sdhc": true,
                "six channel audio": false,
                "ir blaster": true,
                "wifi": false,
                "serial port 2": false,
                "audio input": false,
                "cec": true,
                "battery": false,
                "portrait lcd": false,
                "hdmi input": false,
                "digital tuner": false,
                "spdif": true,
                "audio input loopback": false,
                "msata": false,
                "ac3": false,
                "eac3": false,
                "onboard storage": true,
                "no 4k decode": false,
                "no bluetooth": false,
                "no poe": false,
                "internal storage only": false,
                "disable packet capture": false,
                "disable bsn cloud": false,
                "brightear": false,
                "disable dws": false
            },
            "api_features": {
                "video": true
            },
            "active_features": {
                "legacyDWS": true
            },
            "connectionType": "eth0",
            "ethernet": [
                {
                    "interfaceName": "eth0",
                    "interfaceType": "Ethernet",
                    "IPv4": [
                        {
                            "address": "123.456.7.890",
                            "netmask": "255.255.255.0",
                            "family": "IPv4",
                            "mac": "90:ac:3f:2a:01:79",
                            "internal": false,
                            "cidr": "192.168.1.174/24"
                        }
                    ],
                    "IPv6": [
                        {
                            "address": "2600:1700:dac0:2060::23",
                            "netmask": "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff",
                            "family": "IPv6",
                            "mac": "90:ac:3f:2a:01:79",
                            "internal": false,
                            "cidr": "2600:1700:dac0:2060::23/128",
                            "scopeid": 0
                        },
                        {
                            "address": "2600:1700:dac0:2060:92ac:3fff:fe2a:179",
                            "netmask": "ffff:ffff:ffff:ffff::",
                            "family": "IPv6",
                            "mac": "90:ac:3f:2a:01:79",
                            "internal": false,
                            "cidr": "2600:1700:dac0:2060:92ac:3fff:fe2a:179/64",
                            "scopeid": 0
                        },
                        {
                            "address": "fe80::92ac:3fff:fe2a:179",
                            "netmask": "ffff:ffff:ffff:ffff::",
                            "family": "IPv6",
                            "mac": "90:ac:3f:2a:01:79",
                            "internal": false,
                            "cidr": "fe80::92ac:3fff:fe2a:179/64",
                            "scopeid": 2
                        }
                    ]
                }
            ],
            "wireless": [],
            "interfaces": [],
            "bsnce": true
        }
    }
}

Endpoints:

GET  /time/ 

Retrieves the date and time as configured on the player. The date/time value is formatted as "yyyy-mm-dd hh:mm:ss <timezone>". This call is identical to using the Node.js® time API.

Request Example

GET /rest/v1/time/?destinationType=player&destinationName={{deviceSerial}} HTTP/1.1
Host: ws.bsn.cloud
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json

Response Example

{
    "route": "/v1/time",
    "method": "GET",
    "data": {
        "result": {
            "time": "2018-10-18 14:34:34 PDT",
            "timezone_mins": null,
            "timezone_name": "America/Los_Angeles",
            "timezone_abbr": "PDT",
            "year": 2018,
            "month": 10,
            "date": 18,
            "hour": 14,
            "minute": 34,
            "second": 34,
            "millisecond": 569
        }
    }
}

PUT  /time/ 

Sets the date/time on the player

Request Body

  • time string: The time to set on the player, formatted as "hh:mm:ss <timezone>"

  • date string:  The date to set on the player, formatted as "yyyy-mm-dd"

  • applyTimezone bool:  A flag specifying whether the date and time should be applied using the time zone configured on the player (true) or the UTC time zone (false)

Request Example

PUT /rest/v1/time/?destinationType=player&destinationName={{deviceSerial}} HTTP/1.1
Host: ws.bsn.cloud
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Content-Type: application/json
Content-Length: 117

This is the example request body:

{
    "data": {
        "time": "22:00:00",
        "date": "2023-11-07",
        "applyTimezone": true
    }
}

Response Example

A successful response would be a 200 status code with the following body:

{
  "data": {
    "result": true
  }
}

GET  /health/ 

Retrieves the current status of the player. Currently, this endpoint is only used to determine if a player can respond to a WebSockets request; it cannot determine the error state of a player.

Request Example

GET /rest/v1/health/?destinationType=player&destinationName={{deviceSerial}} HTTP/1.1
Host: ws.bsn.cloud
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json

Response Body

  • status string: The player status. The only possible value is "active".

  • statusTime string: The date and time the player responded to the status request. The date/time is formatted as "yyyy-mm-dd hh:mm:ss <timezone>".

Response Example

{
    "route": "/v1/health",
    "method": "GET",
    "data": {
        "result": {
            "status": "active",
            "statusTime": "2024-01-30 07:38:05 PST"
        }
    }
}
  • No labels