The Network API is the main API used by the Signagelive User Interface, and is designed to be a RESTful API.
Using the Network API it is possible to have access to all of the functionality available within the Signagelive User Interface, alongside being able to send and retrieve data from Signagelive.
This means that you can not only retrieve monitoring data about your Signagelive players, but also upload content, create/edit playlists and publish content to your Players without the need for interaction with the Signagelive User Interface.
API Status
The Network API is only available to Signagelive partners. If you would like to start using the Network API then please fill out our Signup Form.
API Updates
In the Signagelive Cloud release on the 26th September 2022, we made some improvements to the way in which Media Assets are created using the Network API.
These improvements include the creation of a single Network API endpoint for all Media Asset creation.
Currently the Network API also contains the previous methods, so that it is backward compatible, and as such you should not notice any issues in your current code base, if you use the Network API to create Media Assets.
This notice is to let you know that in a future release the existing methods will be retired and will no longer be usable.
The expected timescales for the retirement of these endpoints 1st August 2024 you will be notified again before this occurs and if this date changes, but if you do not update the methods being used, after this point Media Asset Uploads will no longer work.
If you have any questions regarding these changes please contact the Signagelive Team.
The new endpoint is available on the test environment so you can test the code changes there prior to migrating them to production.
The endpoints which are affected are:
End Point
Type
Body
networks/{networkid}/mediaassets/
Post
MediaAssetDTO
networks/{networkid}/mediaassets/upload
Post
Multipart form data
networks/{networkid}/mediaassets/remoteupload
Post
List
The new endpoint is as follows:
End Point
Type
Body
/networks/{networkid}/mediaassets/add
Post
List
This takes an array of NewMediaAssetRequest DTOs in the body of the request, this is defined as follows:
If performing direct file uploads, then this is a 2 step process. The request is sent to the Network API, which will return a pre-signed URL for the file to be uploaded to. An example of the request DTO in this scenario is:
Sending this request will return a NewMediaAssetResponse DTO, and this will include an upload URL, if the success field is set to true.
The file should then be attached to the body of a PUT request, which is sent to the upload URL, and the content/type of the PUT request must be set as the same as the “uploadContentType” returned in the NewMediaAssetResponse DTO.
Once the file is uploaded, it will be processed in the background, a thumbnail created and this will then be marked as supported in Signagelive and will be usable.
The NewMediaAssetResponseDTO will include the physical file name of the file uploaded. This physical file name is a GUID and is unique to reach upload request.
To get the details of the created media asset, once it has been processed in the background, you need to make a request to the READY endpoint, passing the physical file name on the query string.
While the asset is being processed in the background, this request will return a 404, once the asset has been processed and has been created a 200 response will be returned and the response body will contain a Media Asset DTO object, including the ID of the Media Asset.
Non File Uploads
When adding assets which are of the following types, a media asset DTO needs to be created in exactly the same way as you would have with the previous API method, but this needs to be sent as the media asset property of a NewMediaAssetRequestDTO.
Affected types:
Web Page
RSS Feed
MRSS Feed
IPTV Stream
This will return an array of NewMediaAssetResponse DTOs, if the asset creation was successful, then the success field of each object will be true. If it is false, then the reason will be set in the errorMessage field and the reason code will be in the errorCode field. The errorCode field matches HTTP response codes.
The most likely error you will receive is 409 (Conflict) and this will be because there is already an asset with the same URL or name on the Network.
Remote File Uploads will continue to work as defined here. But using the new method, you must include the Remote Sync request DTO as a property of a NewMediaAssetRequest DTO object in the body of the request to the Add API method.
This will return an array of NewMediaAssetRespone DTOs which will contain the same data as the original RemoteSyncRequestResponseDTO with the fields mapping as follows.
We will provide the API url once you have signed up.
API Setup & Onboarding
On receipt of a request for access to the Network API Signagelive will perform the initial on-boarding and setup to provide access to the Network API on a per network basis.
Note that a single application can be made available to multiple networks.
Response Codes
The Signagelive Player API will return standard HTTP response codes, clients are expected to respect the response from the API, particularly relating to bad requests, rate limits etc and not attempt to make the call again until either the issue has been resolved or timeout period has passed.
The following table shows a brief summary of the expected API response codes:
RESPONSE CODE
DESCRIPTION
200 OK
Request was fulfilled
201 Created
Request was successful and a new document was created
204 No Content
The request was successfully processed, but is not returning any content
400 Bad Request
The request cannot be fulfilled due to bad syntax
401 Unauthorized
The supplied credentials do not have access to the requested resource
403 Forbidden
The supplied credentials have been disabled
404 Not Found
The resource could not be found
405 Method Not Allowed
A request was made to a resource using a request method not supported by that resource
408 Request Timeout
The server timed out waiting for the request
409 Conflict
The request could not be completed because the request would conflict with data already available on the server
500 Internal Server Error
An internal server error occurred when processing the request
501 Not Implemented
The server does not recognise the request
503 Service Unavailable
The servers are up but currently overloaded with requests
Date Formats
Date Time values will be expressed using the ISO 8601 format e.g. 2012-12-31T23:59:59Z. Note that some date time values will be in UTC (using the ‘Z’ time zone designator) and some will be in local time.
Time only values will be expressed as a timespan in the form of “HH:MM:SS” e.g. “15:25:00” for 3:25 PM.
Security
The API currently implements an OAuth authentication and authorization model whereby a Signagelive UI Token generated by the application framework is exchanged for a OAuth token. OAuth services are provided by OWIN middleware.
Authorization is provided by a custom Authorization Attribute that allows user levels to be passed for each Controller or Methods.
In order to ensure the API is as secure as possible the API and callers do not need to change their code the API will continue to only accept an OAuth token when calling API Methods. Embedded into the OAuth Token is the original SLUI Token which will be passed to the Web Service via the existing Web Service Wrapper.
This methodology will mean that we (or third parties) will not need to change authentication models as we update the Network API, as we can change the data embedded as this is obfuscated by encryption to the caller, and also not change the web service security interface used by the existing Flash modules.
API Authentication & Authorization
As part of the on-boarding process Signagelive will provide the user with the following credentials, which are required to authenticate with the API:
Network ID
Client ID
Client Secret
Authorization Code
Grant Type
Upon successful authentication, these credentials will be exchanged for an access token, which should be included with each subsequent request in the Authorization header.
API Grant Type
The grant type will always be authorization_code.
API Authentication Operation
To authenticate with the Network API a POST request must be made to {API URL}/token. The body of this request should be populated with the credentials supplied by Signagelive in the form of key/value pairs.
If the authentication request is successful the operation will return a 200 response and a JSON object containing the access token and token type to include in the Authorization header for all subsequent API requests.
A network’s status is made of a number of networkwide KPIs. The network Status also includes a complete list of players on the network and each player’s individual player KPIs.
Field Definitions
NAME
DESCRIPTION
connectedPlayers
The total number of connected players
connectedPlayersAlert
A boolean indicating whether there is currently an active alert for the number of players not connecting to Signagelive
connectedPlayersPercentage
The percentage of all players that have connected
connectedPlayersWarning
A boolean indicating whether there is currently an active warning for the number of players not connecting to Signagelive
contentAlert
A boolean indicating whether there is currently an active alert for the number of players that do not have their latest content
contentWarning
A boolean indicating whether there is currently an active warning for the number of players that do not have their latest content
disconnectedPlayers
The total number of disconnected players
playersThatHaveNotGotContent
The total number of players that have not got their latest content
playersUnableToReportContentStatus
The total number of players unable to report their content status back to Signagelive
playersWithContent
The total number of players with their latest content
playersWithContentPercentage
The percentage of players that have their latest content
totalActiveAndLicencedPlayers
The total number of active and licenced players
totalDeactivatedPlayers
The total number of deactivated players
totalExpiredPlayers
The total number of players with licences that have expired
totalLicencedPlayers
The total number of licenced players
totalOutOfServicePlayers
The total number of players that are out of service
uniqueConnectionsThisMonth
The total number of unique connections this month
uniqueConnectionsThisWeek
The total number of unique connections this week
uniqueConnectionsThisYear
The total number of unique connections this Year
uniqueConnectionsToday
The total number of unique connections today
playerStatuses
An array of player statuses (Player KPI)
lastModifiedDate
The datetime that the network status was last updated
Each network has a collection of KPI settings packaged up within the Network KPI Setting object.
These settings are used to define when the various network and player KPIs will switch between “ok”, “warning” and alert states.
Field Definitions
NAME
DESCRIPTION
network
The network Id the Network KPI Settings are for
percentPlayersNotConnectedWarning
When the percentage of players connecting to Signagelive is at or below this value a warning will become active for the number of network connections
percentPlayersNotConnectedAlert
When the percentage of players connecting to Signagelive is at or below this value an alert will become active for the number of network connections
percentPlayersNotGotContentWarning
When the percentage of players without their latest content is at or below this value a warning will become active for the network content status
percentPlayersNotGotContentAlert
When the percentage of players without their latest content is at or below this value an alert will become active for the network content status
missedHealthCheckWarning
The number of health checks a player must miss consecutively in order to trigger a warning status for missed health checks. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
missedHealthCheckAlert
The number of health checks a player must miss consecutively in order to an alert status for missed health checks. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
cPUUsageWarning
When a player’s CPU usage reaches or exceeds this percentage a warning status will be triggered for high CPU usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
cPUUsageAlert
When a player’s CPU usage reaches or exceeds this percentage an alert status will be triggered for high CPU usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
memoryUsageWarning
When a player’s memory usage reaches or exceeds this percentage a warning status will be triggered for high memory usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
memoryUsageAlert
When a player’s memory usage reaches or exceeds this percentage an alert status will be triggered for high memory usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
diskUsageWarning
When a player’s disk usage reaches or exceeds this percentage a warning status will be triggered for high disk usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
diskUsageAlert
When a player’s disk usage reaches or exceeds this percentage an alert status will be triggered for high disk usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
temperatureWarning
When a player’s temperature reaches or exceeds this percentage a warning status will be triggered for operating at a high temperature. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
temperatureAlert
When a player’s temperature reaches or exceeds this percentage an alert status will be triggered for operating at a high temperature. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
rebootNumberWarning
When a player reboots this many times or more within the reboot warning period a warning status will be triggered for an unusual number of reboots.This is the default global setting for all player types that do not have a specific player type KPI setting defined.
rebootWarningPeriod
The reboot warning period. This is a number in minutes.
rebootNumberAlert
When a player reboots this many times or more within the reboot warning period an alert status will be triggered for an unusual number of reboots.This is the default global setting for all player types that do not have a specific player type KPI setting defined.
rebootAlertPeriod
The reboot alert period. This is a number in minutes.
Signagelive supports a large number of player types from Samsung Smart Signage players to PC’s. Each player has a player type that distinguishes it from other player types.
Field Definitions
NAME
DESCRIPTION
name
The name of the player type
Example
{"id":33,"name":"Samsung Smart Signage Solution"}
Player Type KPI Setting
The Player Type KPI Settings are used to override the default networkwide KPI settings on a player type specific basis.
This is useful for networks that use a variety of different players with different operating conditions. For example, certain player types may be more prone to higher memory usage or run at a higher operating temperature when compared against other player types.
Field Definitions
NAME
DESCRIPTION
playerType
The ID of the player type the KPI settings relate to
network
The ID of the network the KPI settings relate to
missedhealthCheckWarning
The number of health checks a player must miss consecutively in order to trigger a warning status for missed health checks. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
missedHealthCheckAlert
The number of health checks a player must miss consecutively in order to an alert status for missed health checks. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
cPUUsageWarning
When a player’s CPU usage reaches or exceeds this percentage a warning status will be triggered for high CPU usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
cPUUsageAlert
When a player’s CPU usage reaches or exceeds this percentage an alert status will be triggered for high CPU usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
memoryUsageWarning
When a player’s memory usage reaches or exceeds this percentage a warning status will be triggered for high memory usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
memoryUsageAlert
When a player’s memory usage reaches or exceeds this percentage an alert status will be triggered for high memory usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
diskUsageWarning
When a player’s disk usage reaches or exceeds this percentage a warning status will be triggered for high disk usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
diskUsageAlert
When a player’s disk usage reaches or exceeds this percentage an alert status will be triggered for high disk usage. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
temperatureWarning
When a player’s temperature reaches or exceeds this percentage a warning status will be triggered for operating at a high temperature. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
temperatureAlert
When a player’s temperature reaches or exceeds this percentage an alert status will be triggered for operating at a high temperature. This is the default global setting for all player types that do not have a specific player type KPI setting defined.
rebootNumberWarning
When a player reboots this many times or more within the reboot warning period a warning status will be triggered for an unusual number of reboots.This is the default global setting for all player types that do not have a specific player type KPI setting defined.
rebootWarningPeriod
The reboot warning period. This is a number in minutes.
rebootNumberAlert
When a player reboots this many times or more within the reboot warning period an alert status will be triggered for an unusual number of reboots.This is the default global setting for all player types that do not have a specific player type KPI setting defined.
rebootAlertPeriod
The reboot alert period. This is a number in minutes.
A Media Asset is a media object that plays within Signagelive. Media Assets can be audio, video, images, flash, web pages, external executable, IPTV stream, Capture cards or RSS feeds.
Field Definitions
NAME
DESCRIPTION
name
Original names of the file/ name given to the web page / IPTV Stream
duration
Duration of the media asset in seconds, if this is a video
dateCreated
The date the media asset was uploaded to the Signagelive Cloud
lastUsed
The date this asset was last added to a playlist.
size
The size of the asset in bytes if it is a downloadable asset
url
If this is a downloadable asset the url to download the file from the Signagelive CloudIf this is a remote asset (e.g. web page, IPTV, MRSS) then this is where the resource can be found e.g. the stream url in the case of IPTV
supported
Boolean indicating if this media asset is supported by any of the Sigangelive players.
includeInProofOfPlay
Boolean indicating if this asset should be logged by the Proof of Play solution each time it is played
thumbnails
The thumbnails object contains properties relating to different thumbnails that Signagelive generates when an asset is uploaded. All assets once processed will have an imageSmall and an imageLarge property referencing jpgs. Video assets will have a videoH264 thumbnail. If a thumbnail/preview is not available in a particular format (could be it’s not processed yet or is not applicable) then the relevant property will be omitted.
type
High level media type, possible values are: audio image video flash stream web rss tvin widget
hash
The hash value used to verify the integrity of the media asset if it is a downloadable asset
A playlist is a list of media assets (either physical or virtual such as streams, web pages) that play in the order specified. It is possible to add validity periods and recurrence to media assets in a playlist.
Field Definitions
Name
Description
name
The name given to the playlist
dateCreated
The date the playlist was created
lastModified
The date the playlist was last updated
thumbnailUrl
Url to the thumbnail for the playlist, usually this is the first asset in the playlist.
size
Total size of the playlist in bytes. Note this only includes the assets uploaded to the Signagelive Cloud, not any assets referenced by MRSS, as aside anything else they change on a regular basis.
includeInProofOfPlay
Boolean indicating if this asset should be logged by the Proof of Play solution each time it is played
mediaAssets
Array of PlaylistMediaAsset objects
Example
As you will see in the Playlist API Method descriptions it is possible to load a lightweight playlist with no Playlist Media Assets or deepload the Playlist which will include the Playlist Media Assets and associated objects such as conditional playback and validity instructions.
Playlist Media Assets represent an instance of a Media Asset in a Playlist, however contain additional data such as overridden duration and conditions, see Playlist Media Asset section for a full description of all Playlist Media Asset fields. The lightweight playlist is intended to instances where only playlist names and summary items are required e.g. selection lists
The deep loaded playlist is intended where operations are required to access playlist media assets e.g. displaying the contents of a playlist.
A playlist media asset represents an instance of a media asset in a playlist
Field Definitions
NAME
DESCRIPTION
mediaAsset
The media asset object
duration
The duration this media asset should play in the playlist, this may override the actual duration of the media asset. If this is 0 then the duration then this implies play to length i.e. the duration of the actual media asset. If this is 0 then the duration then this implies play to length i.e. the duration of the actual media asset
position
The position of the asset in the playlist, this is zero based
includeInProofOfPlay
Boolean indicating if this asset should be logged by the Proof of Play solution each time it is played
validity
Optional validity object. If this is null then the media asset is available to play at all times
conditions
Optional conditions, if this is not then there are no conditions associated with the playback of this media asset.
Boolean indicating if a match of tags includes (plays) the media asset or excludes it (does not play)
Example
{"tags":"testtag","include":true,"id":14661}
Validity
Field Definitions
NAME
DESCRIPTION
start
The day and time that the asset is valid from. Values will either be a date/time (ISO 8601) or null.
end
The day and time that the asset is valid to. Values will either be a date/time or null.
startTime
The time of day that the item can be displayed from.
endTime
The time of day that the item can be displayed to.
days
The days on which the item is valid. It is an integer representation of binary flags. 64 = Monday 32 = Tuesday 16 = Wednesday 8 = Thursday 4 = Friday 2 = Saturday 1 = Sunday i.e a value of 6 indicates that the screen control plan is valid Monday and Tuesday.
Where a start and end date are specified, the media asset is to be played between those dates only.
Where a startTime, endTime and days are specified, the asset is only to be played between the times of day and days of the week given. If the endTime is before the startTime the item has been configured to be active overnight.
An asset could have a start and end specified, or a startTime, endTime and days specified, or both.
HTTPGET HTTPPOST [Reserved for future use] HTTPPUT [Reserved for future use] HTTPDELETE [Reserved for future use] WRITETOFILE
url
The url to call if any any of the HTTPx action types are used, can be omitted if using WRITETOFILE
filename
The filename to write data to. Can be omitted if any of the HTTPx methods are used
data
The data to write data to the file specified in the filename property. Can be omitted if any of the HTTPx methods are used. Note that in the future this will be used to store data to be POSTed/PUT on the server by the appropriate HTTPx method.
days
The days on which the item is valid. It is an integer representation of binary flags. 64 = Monday 32 = Tuesday 16 = Wednesday 8 = Thursday 4 = Friday 2 = Saturday 1 = Sunday i.e a value of 6 indicates that the screen control plan is valid Monday and Tuesday.
Example
The following example shows how to specify that a url can be called when a media asset is played:
{"type":"","url":"http://www.signagelive.com"}
The following example shows how to specify a file and the data this is written to it when the media asset is played
{"type":"","filename":"test.txt","data":"12345"}
Thumbnail Request
Field Definitions
NAME
DESCRIPTION
assetId
Id of the media asset to create a thumbnail at all
timeIndex
Position in the media asset to take the screen capture
Example
{"assetId":12345,"timeIndex":12}
Media Asset Metadata
The media asset metadata object contains meta-data
Field Definitions
NAME
DESCRIPTION
NAME
DESCRIPTION
fileSize
The size of the file in bytes. This is omitted if this is not a downloadable file type e.g. a web page
duration
The duration of the content if this is a video of flash file, otherwise it is omitted
fileType
File Extension
width
If detected the pixel width of the file, will be omitted if this is not available
height
If detected the pixel height of the file, will be omitted if this is not available
bitrate
The high level bit rate of the file if it is a video, will be omitted if this is not available
videoCodec
The video codec used, will be omitted if this is not available
videoCodecFriendly
Friendly name for the video coded, will be omitted if this is not available
videoBitrate
Bitrate used to encode the video stream, will be omitted if this is not availabl
audioCodec
Audio Codec used, will be omitted if this is not available
audioCodecFriendly
Friendly name for the audio codec used, will be omitted if this is not available
audioBitRate
Bit rate used to encode the audio stream, will be omitted if this is not available
audioSampleRate
flashVersion
Version of Flash this file was created in, will be omitted if this is not available i.e. not a flash file flashFPS
flashFPS
Frame Per Second the Flash Video was created with, will be omitted if this is not available i.e. not a flash file
videoPreviewAvailable
Boolean indicating if a video preview is available, will be omitted if this is not available i.e. not a flash file
A layout is the design that is going to be displayed on the screen. Each layout has one or more media zones that define where scheduled content will play.
Field Definitions
NAME
DESCRIPTION
name
The layout name
dateCreated
The date the layout was created
createdBy
The username of the user who created the layout
width
Layout width in pixels
height
Layout height in pixels
orientation
Layout orientation
backgroundImage
The ID of the background image media asset, or null if there is none
backgroundColour
The background colour of the layout. Colours will be a HTML colour code e.g. “#FFAA11” or “transparent”
customBackgroundImage
If a custom background image has been created in the layout designer, this will be the ID of the the CustomBackgroundImage object
mediaWindows
A list of media windows in the layout
isInTrash
A boolean value indicating whether or not the layout is in the trash
isTemplate
A boolean value indicating whether or not the layout is a template layout
isDeployed
Is the layout deployed? Note: only returned for a single layout
font
The default font in use on the layout
fontSize
The default font size
fontColour
The default font colour. The colour will be a HTML colour code
fontIsBold
A boolean value to indicate whether or not the font is bold
fontIsItalic
A boolean value to indicate whether or not the font is italic
fontIsUnderlined
A boolean value to indicate whether or not the font is underlined
textAlign
The default text alignment. Possible values are: left right center justify
includeInProofOfPlay
A boolean value to indicate whether or not the layout is included in proof of play logging
A media window is an area on the screen that plays content (images, video etc or text). A media zone will contain a single media asset and or one or more playlists.
A default playlist plays in a media zone when there is nothing else to play.
Field Definitions
NAME
DESCRIPTION
x
The x coordinate of the window within the layout
y
The y coordinate of the window within the layout
width
Window Width
height
Window Height
zIndex
Window Z-Index
type
Window type. Possible values are: standard ticker staticText staticImage legacyWidget pictureInPicture webBrowserWidget qrCode widget
propertiesCSV
A CSV list of properties used to configure the window
layerName
The name of the window
includeInProofOfPlay
A boolean value indicating whether or not the window is enabled for proof of play
A player refers to a Signagelive player connecting to the Signagelive network.
A client/player is the device that connects to the Signagelive Player API and plays content that has been scheduled in the form of layouts downloaded from the server.
Field Definitions
NAME
DESCRIPTION
UPDATEABLE
serialNumber
The player serial number
No
type
The ID of the player type record for the player
No
pcClientEdition
The edition of the player. This only applies to the PC player and can be: 0 (Display Edition) 1 (Corporate Communications) 2 (Screensaver)
No
clientVersion
Version of the client installed on the player
No
clientId
Unique ID provided by the hardware
No
enabled
Boolean value indicating whether or not the player is enabled
No
scheduledRebootEnabled
Boolean value indicating whether or not the player is set to reboot automatically
Yes
isUploadingLogFiles
Boolean value indicating whether or not the player should upload its log files to Signagelive.
separateRssSync
Boolean value indicating whether or not the player should sync RSS feeds separately to content checks
Yes
lastHealthCheck
Date/time of the last health check
No
lastContentCheck
Date/time of the last content check
No
lastReboot
Date/time of the last reboot
No
contentCheckType
The type of content check done by the player. This will be one of the following: 0 – Set interval e.g. every 30 minutes 1 – Daily – Player will perform a content check at a set time every day
Yes
contentCheckFrequency
If contentCheckType is set to 0, this will be how frequently the player will perform content checks. Value is in minutes.
Yes
contentCheckTime
If contentCheckType is set to 1, this will be the time of day that the player will perform a content check. The value will be a string representation of the time e.g “11:44:00”.
Yes
healthCheckFrequency
The frequency, in minutes, that the player will perform health checks.
Yes
diagnosticsUpdateType
The type of diagnostics update done by the player. This will be one of the following: 0 – Set interval e.g. every 30 minutes 1 – Daily – Player will perform a diagnostics update at a set time every day
Yes
diagnosticsUpdateFrequency
If diagnosticsUpdateType is set to 0, this will be how frequently the player will perform diagnostics update. Value is in minutes.
Yes
diagnosticsUpdateTime
If diagnosticsUpdateType is set to 1, this will be the time of day that the player will perform a content check. The value will be a string representation of the time e.g “11:44:00”.
Yes
dateActivated
The date the licence was activated on the player.
No
inService
Boolean value indicating whether or not the player is marked as in service.
Yes
followUpRequired
Boolean value indicating whether or not the player is marked as requiring a follow up.
Yes
maintenanceRequired
Boolean value indicating whether or not the player is marked as requiring maintenance.
Yes
monthlyBandwidthLimit
The monthly bandwidth limit for the player, in gigabytes.
No
defaultPlaylist
The Id of the default playlist published to the player
Yes*
defaultPlaylistDeployed
Boolean value indicating whether or not the player has successfully downloaded the default playlist
No
licence
The Id of the player’s licence
No
scheduledRebootTime
The time of day that the player will reboot.
Yes
rebootAtNextContentCheck
A boolean value indicating whether or not the player should reboot when it next performs a content check.
Yes
proofOfPlayEnabled
A boolean value indicating whether or not proof of play has been enabled on the player.
Yes
site
The location and contact information for the playe
Yes
isInTrash
A boolean value indicating whether or not the player is in the trash
Yes
* This field can only be updated to ‘null’ to remove the default playlist
Example
{"id":12345,"serialNumber":"123321","type":33,"pcClientEdition":null,"clientVersion":"2.97","clientId":"71-65-7F-AA-E3-8E","enabled":true,"scheduledRebootEnabled":true,"isUploadingLogFiles":false,"separateRssSync":false,"lastHealthCheck":"2016-07-15T13:44:56.879Z","lastContentCheck":"2016-07-15T13:44:56.879Z","lastReboot":"2016-07-15T13:44:56.879Z","contentCheckType":0,"contentCheckFrequency":30,"contentCheckTime":null,"healthCheckFrequency":15,"diagnosticsUpdateType":0,"diagnosticsUpdateFrequency":30,"diagnosticsUpdateTime":null,"dateActivated":"2016-07-15T13:44:56.879Z","inService":true,"followUpRequired":false,"maintenanceRequired":false,"monthlyBandwidthLimit":5,"defaultPlaylist":45678,"defaultPlaylistDeployed":true,"licence":98765,"scheduledRebootTime":"20:00:00","rebootAtNextContentCheck":false,"proofOfPlayEnabled":false,"site":{"name":"My Player","addressLine1":"123 Fake Street","addressLine2":"","city":"London","county":"","postcode":"SW1A 1AA","country":"UK","contact":"Mr S Baldrick","phone":"01245 123123","email":"sbaldrick@example.com","referenceCode1":"Main","referenceCode2":"Front","referenceCode3":"Left","latitude":51.5014,"longitude":-0.1419,"timezone":"Europe/London","ipAddress":"5.159.121.68"},"isInTrash":false,"lastScreenshotUrl":"http://"}
Site
Field Definitions
NAME
DESCRIPTION
name
The name assigned to the player or location
addressLine1
The first line of the address
addressLine2
The second line of the address
city
Town/City
county
County/State
postcode
Postcode/Zipcode
country
Country
phone
Contact phone number
email
Email Address
referenceCode1
Reference Code 1
referenceCode2
Reference Code 2
referenceCode3
Reference Code 3
latitude
Latitude portion of the location, represented as a decimal
longitude
Longitude portion of the location, represented as a decimal
timezone
IANA timezone database timezone name
ipAddress
The external IP address detected by Signagelive
Example
{"name":"My Player","addressLine1":"123 Fake Street","addressLine2":"","city":"London","county":"","postcode":"SW1A 1AA","country":"UK","contact":"Mr S Baldrick","phone":"01245 123123","email":"sbaldrick@example.com","referenceCode1":"Main","referenceCode2":"Front","referenceCode3":"Left","latitude":51.5014,"longitude":-0.1419,"timezone":"Europe/London","ipAddress":"5.159.121.68"}
A name that is used to identify a player when it connects to Signagelive
supportsFullscreen
A boolean value that indicates whether or not the player supports fullscreen content
supportsLayouts
A boolean value that indicates whether or not the player supports layouts
supportsWeb
A boolean value that indicates whether or not the player supports web content
supportsStream
A boolean value that indicates whether or not the player supports stream content
supportsTvIn
A boolean value that indicates whether or not the player supports TV-in e.g. HDMI or display port input
supportsPictureInPicture
A boolean value that indicates whether or not the player supports picture in picture
supportsFlash
A boolean value that indicates whether or not the player supports flash content
supportsExecutable
A boolean value that indicates whether or not the player supports executable files
supportsSync
A boolean value that indicates whether or not the player supports player synchronisation
supportsInterrupts
A boolean value that indicates whether or not the player supports interrupts
supportsMediaRss
A boolean value that indicates whether or not the player supports media rss feeds
supportsMediaRssValidity
A boolean value that indicates whether or not the player supports validity in media rss feeds
supportsWidgets
A boolean value that indicates whether or not the player supports widgets
supportsControlInterrupts
A boolean value that indicates whether or not the player supports interrupts in playlists
supportsContentUpdateNotifications
A boolean value that indicates whether or not the player is able to provide notifications when content has been successfully downloaded
supportsStoreForwardScheduling
A boolean value that indicates whether or not the player supports store and forward scheduling.
supportsScheduledRecurrence
A boolean value that indicates whether or not the player supports schedule recurrence
supportsAssetLevelRecurrence
A boolean value that indicates whether or not the player supports asset level recurrence
supportsSystemInformationReporting
A boolean value that indicates whether or not the player supports the reporting of system diagnostics information
supportsSeparateRssContentUpdate
A boolean value that indicates whether or not the player can download RSS feed content separately to content checks
supportsSettingDefaultVideoInput
A boolean value that indicates whether or not the player can set the default video input.
supportsScreenControl
A boolean value that indicates whether or not the player supports switching the screen on and off
supportsBootupNotifications
A boolean value that indicates whether or not the player supports sending bootup notifications to Signagelive
supportsHealthCheckNotifications
A boolean value that indicates whether or not the player supports sending health checks to Signagelive
supportsAutomaticPlayerReboots
A boolean value that indicates whether or not the player supports automatic reboots
supportsInstantPlayerReboots
A boolean value that indicates whether or not the player supports rebooting after a content check
supportsNetworkingConfiguration
A boolean value that indicates whether or not the player supports the setting of networking configuration settings
supportsWirelessConfiguration
A boolean value that indicates whether or not the player supports the setting of wireless network configuration settings
thumbnailUrl
A string value which is a URL to an image which represents the player type.
supportsSSL
A boolean value that indicates whether or not the player supports SSL/TLS.
supportsProofOfPlay
A boolean value that indicates whether or not the player supports proof of play
endPointType
The type of endpoint that the player will connect to. Possible values are: LegacyPlayer VirtualPlayerBridge InstoreScreen PlayerAPI SimpleSMIL FullSMIL
supportedFileTypes
A string which contains a CSV list of supported file types
supportedCodecs
A string which contains a CSV list of supported codecs
Example
{"id":123,"name":"Signagelive PC Client","commonName":"sl-pc","features":{"fullscreen":true,"layouts":true,"web":true,"streams":true,"tvIn":true,"pictureInPicture":false,"flash":true,"executable":true,"sync":true,"interrupts":true,"mediaRss":true,"mediaRssValidity":true,"widgets":false,"controlInterrupts":true,"contentUpdateNotifications":true,"storeForwardScheduling":true,"scheduleRecurrence":true,"assetLevelRecurrence":true,"systemInformationReporting":true,"separateRssContentUpdate":true,"settingDefaultVideoInput":true,"screenControl":true,"bootupNotifications":true,"healthCheckNotifications":true,"automaticPlayerReboots":true,"instantPlayerReboots":true,"networkingConfiguration":true,"wirelessConfiguration":true,"ssl":true,"proofOfPlay":true,"fileTypes":"mp3,ogg,f4a,m4a,wma,wmv,mpg,mpeg,mkv,mov,divx,mp4,m4v,webm,jpg,jpeg,png,gif,swf,html","codecs":"mp3,h264,h265,vc1"},"thumbnailUrl":"http://c1173866.r66.cf3.rackcdn.com/player_display_edition.png","endPointType":"LegacyPlayer"}
Player Content Status
Field Definitions
NAME
DESCRIPTION
Id
An integer representing the Id of the player
status
A string value representing the status of published content for the player: ContentDeployed – All content has been successfully downloaded by the player FutureContentNotDeployed – The player has its current content but it has yet to download some content that will become active in the future ContentNotDeployed – The player has yet to download the content that it should currently be playing
Example
{"id":2671425,"status":"ContentDeployed"}
Player Screen Status
Field Definitions
NAME
DESCRIPTION
Id
An integer representing the Id of the player
status
A string value representing the status of the screen for this player: ScreenOn – The screen is scheduled to be on. ScreenOff – The screen is scheduled to be off
Example
{"id":2671425,"status":"ScreenOn"}
System Information
Field Definitions
NAME
DESCRIPTION
name
The system name as supplied by the client or determined by the player type
manufacturer
The system manufacturer
upTime
System uptime in seconds
systemTime
The system time at the last diagnostics update
timezone
The timezone as reported by the client, specified using the IANA timezone name
operatingSystem
The player operating system – name – the operating system name version – the current OS version
memory
The current status of the client’s memory totalBytes – Total amount of memory in bytes usedBytes – Amount of used memory in bytes
processor
Information about the player’s processor name – The processor name speed – Processor speed in MHz usage – Processor usage in percent
temperatures
A list of temperature sensors name – The sensor name temperatureCelsius – Current temperature in celsius
networkAdapters
A list of network adapters present on the player type – Network adapter type. Values can be “Ethernet”, “Wifi” or “Mobile” dhcp – A boolean value indicating whether or not the adapter us using DHCP ipv4Address – The IPv4 address for the network adapter subnetMask – the subnet mask for the network adapter defaultGateway – The default gateway for the network adapter dns1 – The primary DNS server dns2 – The secondary DNS server macAddress – The MAC address for the network adapter
applicationSettings
A list of name/value pairs of settings set in the application
systemSettings
A list of name/value pairs of settings set on the player’s system
installedSoftware
A list of installed software on the client name – The name of the software version – The installed version publisher – The publisher of the software
runningProcesses
A list of processes currently running on the client name – The name of the process description – A short description provided by the client averageCpuUsage – The average CPU usage in percent averageMemoryUsage – The average memory usage in bytes currentCpuUsage – Current CPU usage in percent currentMemoryUsage – Current memory usage in bytes
monitors
A list of monitors attached to the player name – A name given to the monitor positionX – X-Coordinate for the monitor, to identify its position in a multi-monitor setup. positionY – Y-Coordinate for the monitor, to identify its position in a multi-monitor setup. resolutionX – Monitor width in pixels resolutionY – Monitor height in pixels
drives
A list of storage devices available on the player name – The name given to the storage device e.g. “C:", “Internal Storage” totalBytes – Total size of the storage device in bytes availableBytes – Available space in bytes format – The file format if available e.g. NTFS, FAT32
graphicsControllers
A list of graphics controllers available on the player name – The name given to the graphics controller e.g. “Internal Graphics” or “AMD Radeon R9 380” resolutionX – Output resolution of the device in pixels (width) resolutionY – Output resolution of the device in pixels (height)
The email address of the user who created the note. If the note is created automatically, the author will be “System”
Example
{"id":12345,"text":"This is a note","dateCreated":"2016-07-20T12:29:02.339Z","user":"user@signagelive.com"}
Schedule Item
Field Definitions
NAME
DESCRIPTION
id
The ID of the scheduled layout
name
The name of the scheduled layout or playlist
name
The name of the scheduled layout or playlist
type
The type of schedule. Possible values are: layout playlist playlist
layout
The ID of the layout (null if ‘type’ is playlist)
playlist
The ID of the playlist (null if ‘type’ is layout)
start
The start date/time for the schedule
end
The end date/time for the schedule
deployed
A boolean value to show whether or not the schedule item has been fully downloaded by the player
recurrence
An object defining the recurrence options of this schedule: startTime – The time of day that the schedule item will start playing endTime – The time of day that the schedule will stop playing. If this is before the start time, the schedule will run overnight. days – Recurrence days selections as an integer representation of binary flags where 1 = Sunday and 64 = Saturday validityStart – The date/time that the content will become valid validityEnd – The date/time that the content will expire
The trigger that will start the interrupt. type – The type of interrupt. Possible values are: KeyboardEvent MouseEvent configurationParameters – An array of name/value pairs defining configuration parameters for the trigger. A KeyboardEvent will have an ActionKey and a CancelKey. A MouseEvent will have a ClickRegion, which will be a pipe separated list of regions for a mouse click. An example of an ActionKey or CancelKey value is “A”,”B”, “D0”, or “NumPad0” An example of a ClickRegion for a mouse click is “0,0,1920,1080” or “0,0,200,200|1080,0,200,200”. Each set of 4 numbers corresponds to “X,Y, Width, Height”
action
instruction – A string containing either the scheduledLayout ID to play, or the location of an external executable on the client player. instructionType – The type of interrupt. Possible values are: ScheduledLayout ExternalExecutable duration – The duration that the interrupt will play for. If set to 0, it will play until the content finishes, or until it is cancelled by the endAction mediaAsset – If the interrupt is a single media asset, this will be the ID of that media asset playlist – If the interrupt is a playlist, this will be the playlist ID layout – If the interrupt is a layout, this will be the layout ID
The licence number of the primary licence. This will be the trial licence if it is a trial or the standard licence for other registered licences. For un-registered licences, the this is the only licence.
serialNumber
The serial number of the player that this licence is registered to, or null for an unregistered licence.
siteName
The site name of the player that this licence is registered to, or null for an unregistered licence.
player
The ID of the player that this licence is registered to, or null for an unregistered licence.
code
The licence code of the primary licence
type
The licence type of the primary licence. This will be one of: Trial Standard Renewal
edition
The edition of the licence. This will be one of: Display
duration
The duration of the licence. For a licence that is a converted trial and/or extended with renewal licences, this will be the total duration of all licences. The value is in months
dateAllocated
The date the licence was added to the network
dateRegistered
The date the licence was first
dateExpires
The date the licence expires
isActive
A boolean value that indicates if the licence is active or not. If false, the licence can be reused on new hardware.
trialLicence
If the licence is a converted trial, this will be the ID of the trial licence
maxNumberOfOutputs
The maximum number of outputs (monitors) that the player can display output to
canRenew
A boolean value that indicates whether or not the licence can be renewed e.g. there are appropriate renewals on the network. If the licence is a trial, this will indicate that the licence can be converted to a full licence.
Example
{"id":12345,"number":5432,"serialNumber":"11122","siteName":"A site description","player":45678,"code":"AAA1-BBB2-CCC3-DDD4","type":"Standard","edition":"Display","duration":12,"dateAllocated":"2016-07-02T14:17:00.000Z","dateRegistered":"2016-07-02T14:20:00.000Z","dateExpires":"2017-07-02T14:17:00.000Z","isActive":true,"trialLicence":null,"maxNumberOfOutputs":2,"canRenew":false}
Licence
Field Definitions
NAME
DESCRIPTION
number
The auto generated licence number. This is used for easy identification of the licence
code
The licence code of the primary licence
type
The licence type of the primary licence. This will be one of: Trial Standard Renewal
edition
The edition of the licence. This will be one of: Display Undecided
duration
The duration of the licence. For a licence that is a converted trial and/or extended with renewal licences, this will be the total duration of all licences. The value is in months
dateAllocated
The date the licence was added to the network
dateRegistered
The date the licence was first
dateExpires
The date the licence expires
trialLicence
If the licence is a converted trial, this will be the ID of the trial licence
maxNumberOfOutputs
The maximum number of outputs (monitors) that the player can display output to
isInTrash
A boolean value that indicates whether or not the licence has been trashed
A string representation of the time of day that the screen will turn on
duration
The time, in minutes, that the screen will be on
days
days selections as an integer representation of binary flags where 1 = Sunday and 64 = Saturday. In this example, 62 means that the schedule will be active Monday – Friday
An object for setting screen control on all players on the network
Field Definitions
screenControlSettings
A ScreenControlSettings object to apply to all players. Null to use the system default screen control (most players will use this)
screenControlSchedules
An array of ScreenControlSchedule objects to apply to all players
days
days selections as an integer representation of binary flags where 1 = Sunday and 64 = Saturday. In this example, 62 means that the schedule will be active Monday – Friday
An object containing the content to publish: defaultPlaylist – The id of the default playlist to publish to the players, or null if not publishing a default playlist. layouts – An array of scheduledLayout objects to publish interrupts – An array of interrupt objects to publish
players
An array of integers containing the player ids to publish to.
ignoreWarnings
A boolean value indicating whether or not warnings should be ignored when publishing.
Represents a problem that the user should know about when publishing content.
Field Definitions
NAME
DESCRIPTION
issueLevel
The level of the ‘issue’ Possible values are: Warning Error Info An Error means the content cannot be published
issueType
The type of issue. Possible values are: Codec FileType MediaType Size PublishType General None
text
A message to describe the issue to the user.
Example
{"issueLevel":"Warning","issueType":"Codec","text":"The video codec for myVideo.mp4 is not supported by this player"}
Publish Result
The result of checking the publication against a player
Field Definitions
NAME
DESCRIPTION
player
The id of the player
type
The type of result. This can have one of two values: Check – The publication has been checked against the player but not published Publish – The content was published to the player
result
The result of the check or publication. This can have one of two values: Success Failure
publishIssues
An array of issues found when checking the publication against this player. An error means that the content cannot be published.
Example
{"player":1234,"type":"Publish","result":"Success","publishIssues":["...Array of PublishIssues..."]}
Player Screenshot
An object containing the URL to a player screenshot and details about the screenshot such as the time it was taken.
Field Definitions
NAME
DESCRIPTION
id
ID of the screenshot
player
ID of player the screenshot is for
url
URL pointing to the original, high-quality screenshot image
smallThumbnailUrl
URL pointing to a small thumbnail image of the screenshot
mediumThumbnailUrl
URL pointing to a medium thumbnail image of the screenshot
dateTaken
The date and time that the screenshot was taken
Example
{"Id":11182727,"Player":12345,"url":"https://signagelive.com/playerscreenshots/11182727","smallThumbnailUrl":"https://signagelive.com/playerscreenshots/11182727/small","mediumThumbnailUrl":"https://signagelive.com/playerscreenshots/11182727/medium","dateTaken":"2016-07-22 T 15:54:54.649 Z"}
Player Screenshot Settings
An object containing the URL to a player screenshot and details about the screenshot such as the time it was taken.
Field Definitions
NAME
DESCRIPTION
id
ID of the screenshot settings record
player
ID of the player the screenshot settings record is associated to
enabled
True if remote screenshots are enabled for the player and false if they are not
frequency
The frequency that the player should upload screenshots in minutes
takeScreenshotAtNextContentCheck
If true the player will take a screenshot when it next performs a content check
Create a Network (only a single licence can be added using this method)
HTTP METHOD
POST
URL
/networks/
REQUEST BODY
Create Network Request Object
NORMAL RESPONSE CODE
200
RESPONSE BODY
A Network object with an API Authorization Code
Status
GET
DESCRIPTION
Get the Network Status for a Network
HTTP METHOD
GET
URL
/networks/{network_id}/NetworkStatus
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A Network Status Object
Network KPI Setting
GET
DESCRIPTION
Get Network KPI Settings for a Network
HTTP METHOD
GET
URL
/networks/{network_id}/NetworkKPISettings
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A Network KPI Settings Object
Update
DESCRIPTION
Update Network KPI Settings for a Network
HTTP METHOD
PUT
URL
/networks/{network_id}/NetworkKPISettings/{id}
REQUEST BODY
Network KPI Settings object with updates
NORMAL RESPONSE CODE
200
RESPONSE BODY
Updated Network KPI Settings Object
Player
Get a Player
DESCRIPTION
Gets a player object
HTTP METHOD
GET
URL
/players/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Player object
RESPONSE BODY
Updated Network KPI Settings Object
Get List
DESCRIPTION
Returns a collection of player objects, that can be optionally filtered
HTTP METHOD
GET
URL
/players
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
search
Term to be used to compare against the player serial number, site fields and tags, if omitted then all assets that are not trashed or deleted are returned
string
Empty String
addedFrom
Returns only players commissioned after this date
Date time
addedTo
Returns only players commissioned before this date
Date time
folderid
Folder ID to return the players for. This implies that it is possible to search within a folder
int
If a folder ID is specified that is not on the user’s network then a Bad Response should be thrown
syncGroupId
Sync Group Id to return the players for.
int
intrash
Boolean indicating if to return players in the trash. If this is true ONLY players in the trash will be returned
Boolean
false
true false
start
Starting position in the array of players, if omitted the default is 0
int
0
limit
Number of players to return
int
50
order
Specifies the order to return players
string
serialno
serialno dateadded
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of player objects
Update a Player
DESCRIPTION
Allows the editable fields of a player to be updated
HTTP METHOD
PUT
URL
/players/{id}
REQUEST BODY
Player object with updates
NORMAL RESPONSE
200
RESPONSE BODY
Player object
Delete a Player
DESCRIPTION
Puts a player in the trash
HTTP METHOD
DELETE
URL
/players/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
System Information
Get
DESCRIPTION
Gets the systeminformation for a player
HTTP METHOD
GET
URL
/players/{id}/systeminformation
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
PlayerSystemInformation object
Networking
Get
DESCRIPTION
Gets a player networking object for the player
HTTP METHOD
GET
URL
/players/{id}/networking
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
The PlayerNetworking object
Create
DESCRIPTION
Creates a player networking object
HTTP METHOD
POST
URL
/players/{id}/networking
REQUEST BODY
A new PlayerNetworking object
NORMAL RESPONSE CODE
201
RESPONSE BODY
The new PlayerNetworking object
Update
DESCRIPTION
Edits a player networking object
HTTP METHOD
PUT
URL
/players/{id}/networking
REQUEST BODY
A modified PlayerNetworking object
NORMAL RESPONSE CODE
200
RESPONSE BODY
The modified PlayerNetworking object
Delete
DESCRIPTION
Removes the player networking object from a player
HTTP METHOD
DELETE
URL
/players/{id}/networking
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Notes
Get
DESCRIPTION
Gets all support notes for a player
HTTP METHOD
GET
URL
/players/{id}/notes
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
addedFrom
Returns only notes added after this date
Date time
addedTo
Returns only notes added before this date
Date time
start
Starting position in the array of notes, if omitted the default is 0
int
0
limit
Number of notes to return
int
50
NORMAL RESPONSE CODE
A list of note objects
RESPONSE BODY
200
Create
DESCRIPTION
Creates a new note
HTTP METHOD
POST
URL
/players/{id}/notes
REQUEST BODY
A new note object
NORMAL RESPONSE CODE
201
RESPONSE BODY
The created Note
Update
DESCRIPTION
Edits the specified note
HTTP METHOD
PUT
URL
/players/{id}/notes/{noteid}
REQUEST BODY
A modified note object
NORMAL RESPONSE CODE
200
RESPONSE BODY
The updated note object
Delete
DESCRIPTION
Deletes the specified note
HTTP METHOD
DELETE
URL
/players/{id}/notes/{noteid}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Content
Schedules
Get
DESCRIPTION
Gets all scheduled content items for player
HTTP METHOD
GET
URL
/players/{id}/content/schedules
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
rangeStart
The start date of the range to search for schedule items.
Date time
00:00:00 on the current date
This will return schedules active at any point after this date.
rangeEnd
The end date of the range to search for schedule items.
Date time
This will return schedules active at any point between the rangeStart and this date
start
Starting position in the array of schedule items, if omitted the default is 0
int
0
limit
Number of schedule items to return
int
50
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of ScheduledItem objects
Delete
DESCRIPTION
Deletes the specified scheduled item
HTTP METHOD
DELETE
URL
/players/{id}/content/schedules/{scheduleitemid}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Delete All
DESCRIPTION
Deletes all scheduled items from the player
HTTP METHOD
DELETE
URL
/players/{id}/content/schedules
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Interrupts
Get
DESCRIPTION
Gets all interrupts for player
HTTP METHOD
GET
URL
/players/{id}/content/interrupts/
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of interrupt objects
Update
DESCRIPTION
Edits an interrupt on the player
HTTP METHOD
PUT
URL
/players/{id}/content/interrupts/{interruptid}
REQUEST BODY
The interrupt object with either the mediaAsset, playlist, or layout fields modified
NORMAL RESPONSE CODE
200
RESPONSE BODY
Interrupt object with updates
Delete
DESCRIPTION
Removes the specified interrupt from the player
HTTP METHOD
DELETE
URL
/players/{id}/content/interrupts/{interruptid}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Status
Get
DESCRIPTION
Gets the content status for a player
HTTP METHOD
GET
URL
/players/{id}/content/status
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Content status object
Layouts
Get
DESCRIPTION
Gets a scheduled layout for a player by id
HTTP METHOD
GET
URL
/players/{id}/content/layouts/{scheduledlayoutid}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A ScheduledLayout object
Media Assets
Get
DESCRIPTION
Gets a list of all media assets that have been downloaded to the player
HTTP METHOD
GET
URL
/players/{id}/mediaassets
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of media asset objects
Licence
Summary
Get
DESCRIPTION
Gets a licence summary object for the specified player
HTTP METHOD
GET
URL
/players/{id}/licence/summary
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Licence collection object
Connections
Get
DESCRIPTION
Gets the list of recorded player connections for the player
HTTP METHOD
GET
URL
/players/{id}/connections
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
start
The start position for paging
0
limit
The amount of player connections to return
100
100 is the maximum value
dateFrom
The earliest date to return connections from
Amount is still limited to 100
dateTo
The latest date to return connections from
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of Player Connections
Tags
Get
DESCRIPTION
Gets the tags for the specified player
HTTP METHOD
GET
URL
/players/{id}/tags
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of Tags
Get All
DESCRIPTION
Gets a list of all player tags in use on the network
HTTP METHOD
GET
URL
/players/tags
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of strings
Create
DESCRIPTION
Adds the tag to the tag collection for the specified player
HTTP METHOD
POST
URL
/players/{id}/tags
REQUEST BODY
Tag object with no id
NORMAL RESPONSE CODE
201
RESPONSE BODY
Tag object with id
Update
DESCRIPTION
Allows the user to edit the value of the tag
HTTP METHOD
PUT
URL
/players/{id}/tags/{id}
REQUEST BODY
Tag object with modification to the value
NORMAL RESPONSE CODE
200
RESPONSE BODY
Tag with update
Delete
DESCRIPTION
Allows the user to edit the value of the tag
HTTP METHOD
DELETE
URL
/players/{id}/tags/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Screen Control
Settings
Get
DESCRIPTION
Gets the screen control settings for a player. Note that if nothing is returned, the player will use its own default screen control method. For PC players this means Windows power saving.
HTTP METHOD
GET
URL
/players/{id}/screencontrol/settings
REQUEST BODY
None
NORMAL RESPONSE CODE
201
RESPONSE BODY
A screen control settings object
Create
DESCRIPTION
Creates a new screen control settings object for the player
HTTP METHOD
POST
URL
/players/{id}/screencontrol/settings
REQUEST BODY
A new ScreenControlSettings object with no ID
NORMAL RESPONSE CODE
201
RESPONSE BODY
The ScreenControlSettings object now with an ID
Update
DESCRIPTION
Saves changes to the screen control settings object
HTTP METHOD
PUT
URL
/players/{id}/screencontrol/settings
REQUEST BODY
The edited ScreenControlSettings object
NORMAL RESPONSE CODE
200
RESPONSE BODY
The ScreenControlSettings object with the updates
Delete
DESCRIPTION
Removes screen control settings from a player
HTTP METHOD
DELETE
URL
/players/{id}/screencontrol/settings
REQUEST BODY
None
NORMAL RESPONSE CODE
None
RESPONSE BODY
None
Schedule
Get
DESCRIPTION
Gets the ScreenControlSchedules for this player
HTTP METHOD
GET
URL
/players/{id}/screencontrol/schedules
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
An array of ScreenControlSchedule objects
Create
DESCRIPTION
Creates a new screen control schedule object for the player
HTTP METHOD
POST
URL
/players/{id}/screencontrol/schedules
REQUEST BODY
new ScreenControlSchedule object with no ID
NORMAL RESPONSE CODE
201
RESPONSE BODY
All ScreenControlSchedules for the player
Update
DESCRIPTION
Updates a screen control schedule object for the player
HTTP METHOD
PUT
URL
/players/{id}/screencontrol/schedules/{id}
REQUEST BODY
The updated ScreenControlSchedule object
NORMAL RESPONSE CODE
200
RESPONSE BODY
The updated ScreenControlSchedules object
Delete
DESCRIPTION
Removes a screen control schedule object from the player
Starting position in the array of notes, if omitted the default is 0
int
0
limit
Number of notes to return
int
50
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
An array of available screenshots
Request
Post
DESCRIPTION
Request that the player takes a screenshot at the next content check
HTTP METHOD
POST
URL
/player/{id}/screenshots/request
REQUEST BODY
A PlayerScreenshotRequest containing the id of the player
NORMAL RESPONSE CODE
204
RESPONSE BODY
None
Settings
Get
DESCRIPTION
Get screenshot settings for a player
HTTP METHOD
GET
URL
/player/{id}/screenshots/settings
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
The player’s screenshot configuration
Create
DESCRIPTION
Creates screenshot settings for a player
HTTP METHOD
POST
URL
/player/{id}/screenshots/settings
REQUEST BODY
The new screenshot settings with no ID
NORMAL RESPONSE CODE
200
RESPONSE BODY
The created screenshot settings with generatedID
Update
DESCRIPTION
Updates the screenshot settings for a player
HTTP METHOD
PUT
URL
/player/{id}/screenshots/settings
REQUEST BODY
The edited screenshot settings
NORMAL RESPONSE CODE
200
RESPONSE BODY
The updated screenshot settings
Upload Log Files
DESCRIPTION
Sets the player to upload log files
HTTP METHOD
PUT
URL
/players/{id}/uploadlogfiles
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
cancelUpload
If we want to cancel the upload of log files, we set this to true
boolean
false
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Bandwidth
Get
DESCRIPTION
Gets bandwidth used this month by the player
HTTP METHOD
GET
URL
/players/{id}/bandwidth
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A BandwidthUsage object
Proof of Play
Note that calls to Proof of Play will return ‘Unauthorized’ if Proof of Play is not enabled on your network.
Get
DESCRIPTION
Gets the PoP reference or the specified player
HTTP METHOD
GET
URL
/players/{id}/proofofplay/references
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of Proof of Play References for the player
Create
DESCRIPTION
Adds the reference to the PoP reference collection for the specified player
HTTP METHOD
POST
URL
/players/{id}/proofofplay/references
REQUEST BODY
Proof of Play reference with no ID
NORMAL RESPONSE CODE
201
RESPONSE BODY
Proof of Play reference with the new ID
Update
DESCRIPTION
Allows the user to edit the value of the proof of play reference
HTTP METHOD
PUT
URL
/players/{id}/proofofplay/references/{id}
REQUEST BODY
Proof of Play reference with modification to the value
NORMAL RESPONSE CODE
200
RESPONSE BODY
Proof of Play reference with update
Delete
DESCRIPTION
Allows the user to delete the Proof of Play reference
HTTP METHOD
DELETE
URL
/players/{id}/proofofplay/references/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Licences
Get
DESCRIPTION
Gets a licence object
HTTP METHOD
GET
URL
/licences/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Licence object
Summary
Get All
DESCRIPTION
Gets a collection of licence summary objects for the specified network.
HTTP METHOD
GET
URL
/licences/summary
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
search
Term to be used to compare against the player name, site name, licence code or serial number. If omitted then all licences that are not trashed or deleted are returned
string
type
The type of licence.
Date time
Any type
Standard Trial
inUse
Whether or not a licence has been registered or used as a renewal.
boolean
Both registered and unregistered licences are returned
true false
maxOutputs
Maximum number of outputs for a player using this licence.
integer
Any integer equal to or greater than 0
inTrash
Whether or not a licence is in the trash.
boolean
Only licences not in the trash are returned
true false
start
Starting position in the array of licence summaries, if omitted the default is 0
int
0
limit
Number of licence summaries to return
int
50
status
The licence status.
string
All
All Active Activateable Unregistered Deactivated Expired ExpireToday Expire7 Expire30 Expire60
sort
The sort order for the licences
string
expiryDate
sortDirection
The sort direction, Ascending (asc) or Descending (desc)
string
asc desc
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A collection of Licence summary objects
Get
DESCRIPTION
Gets a licence summary object for the specified licence
HTTP METHOD
GET
URL
/licences/{id}/summary
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Licence summary object
Activate
DESCRIPTION
Gets a licence summary object for the specified licence
DESCRIPTION
Activates a licence using the provided activation code
A csv containing any of the following values: audio image video flash stream web rss tvin widget
folderid
Folder ID to return the assets for. This implies that it is possible to search within a folder
int
If a folder ID is specified that is not on the user’s network then a Bad Response should be thrown
intrash
Boolean indicating if to return asset in the trash. If this is true ONLY assets in the trash will be returned
Boolean
false
true false
start
Starting position in the array of media assets, if omitted the default is 0
int
0
limit
Number of media assets to return,
int
50
providers
CSV of third party providers and will limits the media assets returned to the specified providers
string
Empty String
screenfeed
order
Specifies the order to return media assets options are returned
string
alphanumeric
alphanumeric datecreated lastused lastModified
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of Media Asset objects
Get
DESCRIPTION
Gets a single media asset object
HTTP METHOD
GET
URL
/mediaassets/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Media Asset object
Create
DESCRIPTION
Creates a new media asset the same request is used for file uploads, non files (i.e. adds a web page, IPTV Stream or RSS/MRSS Feed) and adding a media asset from a Digital Asset Management Tool
HTTP METHOD
POST
URL
/mediaassets/add
REQUEST BODY
An array of New Media Asset Request Objects
NORMAL RESPONSE CODE
201
RESPONSE BODY
An array of New Media Asset Response Objects
Add Media Asset from a Digital Asset Management Tool
Signagelive have added a mechanism to be able to add content using a URL pointing at their Digital Asset Management platform, Signagelive will take this, download the file, and validate it is usable, and then send the success or failure of this to a provided webhook. It is possible to send multiple Media Assets at once.
DESCRIPTION
Add Media Asset from a Digital Asset Management Tool
HTTP METHOD
POST
URL
/mediaassets/add
REQUEST BODY
An array of New Media Asset Request Objects
NORMAL RESPONSE CODE
201
RESPONSE BODY
An array of New Media Asset Response Objects
Once Signagelive has processed the request, we will send the outcome to the configured webHook. The body included will be a Remote Sync Media Asset Status object. If success is true, the asset is ready to be used and the ID is included.
If success is false, then errors will be included as the reason why. The error codes are as follows:
ERROR CODE
Description
SLRSR0001
Asset could not be downloaded from the remote URL
SLRSR0002
The file type is unknown to Signagelive based on the extension
SLRSR0003
The media asset could not be uploaded to Signagelive storage (cloud files)
SLRSR0004
There was an error saving the new media asset to the database
SLRSR0005
Thumbnail could not be generated
SLRSR0006
Uncaught exception thrown
SLRSR0007
Network Real Time Event not found
SLRSR0008
Unable to add Real Time event/s to media asset
Update
DESCRIPTION
Allows the name of the media asset or if it is included in Proof of Play to be updated.
HTTP METHOD
PUT
URL
/mediaassets/{id}
REQUEST BODY
Media Asset object with updates – note that only the name and PoP is updatable
NORMAL RESPONSE CODE
200
RESPONSE BODY
Media Asset object
Delete
DESCRIPTION
Moves the specified media asset to the trash
HTTP METHOD
DELETE
URL
/mediaassets/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Thumbnails
Request
DESCRIPTION
Requests a new thumbnail for the specified media asset
HTTP METHOD
POST
URL
/mediaassets/{id}/thumbnailrequests
REQUEST BODY
Thumbnail Request object with no id
NORMAL RESPONSE CODE
201
RESPONSE BODY
Thumbnail Request Object with the generated Id
Metadata
Get
DESCRIPTION
Gets the metadata for the specified media asset
HTTP METHOD
GET
URL
/mediaassets/{id}/metadata
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Media Asset Metadata object
Tags
Get
DESCRIPTION
Gets the tags for the specified media asset
HTTP METHOD
GET
URL
/mediaassets/{id}/tags
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of Tags
Create
DESCRIPTION
Adds the tag to the tag collection for the specified media asset
HTTP METHOD
POST
URL
/mediaassets/{id}/tags
REQUEST BODY
Tag object with no id
NORMAL RESPONSE CODE
201
RESPONSE BODY
Tag object with id
Update
DESCRIPTION
Allows the user to edit the value of the tag
HTTP METHOD
PUT
URL
/mediaassets/{id}/tags/{id}
REQUEST BODY
Tag object with modification to the value
NORMAL RESPONSE CODE
200
RESPONSE BODY
Tag with update
Delete
DESCRIPTION
Allows the user to edit the value of the tag
HTTP METHOD
DELETE
URL
/mediaassets/{id}/tags/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Proof of Play
Note that calls to Proof of Play will return ‘Unauthorized’ if Proof of Play is not enabled on your network.
Get
DESCRIPTION
Gets the PoP reference or the specified media asset
HTTP METHOD
GET
URL
/mediaassets/{id}/proofofplay/references
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of Proof of Play References for the media asset
Add
DESCRIPTION
Adds the reference to the PoP reference collection for the specified media asset
HTTP METHOD
POST
URL
/mediaassets/{id}/proofofplay/references
REQUEST BODY
Proof of Play reference with no ID
NORMAL RESPONSE CODE
201
RESPONSE BODY
Proof of Play reference with the new ID
Edit
DESCRIPTION
Allows the user to edit the value of the proof of play reference
HTTP METHOD
PUT
URL
/mediaassets/{id}/proofofplay/references/{id}
REQUEST BODY
Proof of Play reference with modification to the value
NORMAL RESPONSE CODE
200
RESPONSE BODY
Proof of Play reference with update
Delete
DESCRIPTION
Allows the user to delete the Proof of Play reference
HTTP METHOD
DELETE
URL
/mediaassets/{id}/proofofplay/references/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Playlists
Get List
DESCRIPTION
Gets a list of playlists
HTTP METHOD
GET
URL
/playlists
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
search
Term to be used to compare against the name and tags, if omitted then all playlists that are not trashed or deleted are returned
string
Empty String
addedFrom
Returns only playlists added after this date
Date time
addedTo
Returns only playlists added before this date
Date time
usedFrom
Returns only playlists used after this date
Date time
usedTo
Returns only playlists used up to this date
Date time
modifiedFrom
Return only playlists last modified after this date
modifiedTo
Return only playlists last modified before this date
folderid
Folder ID to return the playlists for.
int
If a folder ID is specified that is not on the user’s network then a Bad Response should be thrown
intrash
Boolean indicating if to return playlists in the trash. If this is true ONLY playlists in the trash will be returned
Boolean
false
true false
start
Starting position in the array of playlists, if omitted the default is 0
int
0
limit
Number of playlists to return,
int
50
order
Specifies the order to return playlists options are returned
String
alphanumeric
alphanumeric datecreated Lastused modified
deepload
Indicates if the Playlist Media Assets and child objects should be loaded. Only works when getting all assets i.e. not a folder or not trash
Boolean
false
true false
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
List of playlist objects
Get
DESCRIPTION
Gets a specific playlist
HTTP METHOD
GET
URL
/playlists/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Playlist Model
Create
DESCRIPTION
Creates a playlist
HTTP METHOD
POST
URL
/playlists
REQUEST BODY
Playlist Object with no ID
NORMAL RESPONSE CODE
201
RESPONSE BODY
Playlist Model with Id and ID’s for all PlaylistMediaAssets and associated objects
Update
DESCRIPTION
Updates the Playlist
HTTP METHOD
PUT
URL
/playlists/{id}
REQUEST BODY
Playlist Model
NORMAL RESPONSE CODE
200
RESPONSE BODY
Playlist Model
Delete
DESCRIPTION
Deletes the Playlist (moves it to the trash)
HTTP METHOD
DELETE
URL
/playlists/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Add Asset to Playlist
DESCRIPTION
Add an Asset to a Playlist
HTTP METHOD
POST
URL
/playlists/{id}/playlistmediaasset
REQUEST BODY
Add Asset to Playlist Request Model
NORMAL RESPONSE CODE
200
RESPONSE BODY
Add Asset to Playlist Request Response
The Network API has a method to allow for a Media Asset to be added to a Playlist, without the need for retrieving the entire playlist, adding the media to the media assets collection and then resaving the playlist.
The reason for this addition is to make it possible to add a number of media assets to a single playlist in parallel without having to maintain the entire collection of media assets for a playlist, as this is required for each save.
This method accepts requests, and adds them to a queue which will be processed in the background serially for a specific playlist.
Once the request is processed and the playlist is saved, if it is published to a player, then the player will be automatically updated with the new playlist content.
The body of the request requires the entire Playlist Media Asset object, as it would be when adding to a playlist, this can include Validity and Conditional Playback data if required. This object, must also include the entire Media Asset object.
It is also possible to include a web hook, which will be sent a notification when the media is successfully added to the playlist, or an error when it cannot be added to the playlist.
If you set the position to -1, then the asset will be added to the end of the playlist. If you set a position then the asset will be added in that position, and everything after and including the asset currently at that position, will be moved 1 higher in their position.
NOTE: Positions start from 0, so the first media asset in a playlist, will have a position of 0;
Layouts
Get a List
DESCRIPTION
Gets a list of layouts on the current network
HTTP METHOD
GET
URL
/layouts/
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of layouts
Get
DESCRIPTION
Gets a layout
HTTP METHOD
GET
URL
/layouts/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
The Layout object
Create
DESCRIPTION
Create a layout
HTTP METHOD
POST
URL
/layouts/{id}
REQUEST BODY
A new layout object with no ID
NORMAL RESPONSE CODE
200
RESPONSE BODY
A layout object with and ID and IDs for all media windows and sub objects
Update
DESCRIPTION
Edits a layout
HTTP METHOD
PUT
URL
/layouts/{id}
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
autoUpdate
boolean
false
true
REQUEST BODY
The layout object with changes
NORMAL RESPONSE CODE
200
RESPONSE BODY
The updated layout object
Folders
Get All
DESCRIPTION
Gets a list of folders
HTTP METHOD
GET
URL
/folders
REQUIRED PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
type
Folders are generic objects in the Signagelive system, so the type of folder must be specified that is appropriate to the view
string
400 – Bad Request
mediaasset playlist layout player
start
Starting position in the array of folders, if omitted the default is 0
int
0
limit
Number of folders to return,
int
50
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
List of folders objects
Get
DESCRIPTION
Gets the specified folder
HTTP METHOD
GET
URL
/folders/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Folder model
Create
DESCRIPTION
Creates a new folder
HTTP METHOD
POST
URL
/folders
REQUEST BODY
Folder model with no id
NORMAL RESPONSE CODE
201
RESPONSE BODY
Folder model with Id
Update
DESCRIPTION
Updates the specified folder
HTTP METHOD
PUT
URL
/folders/{id}
REQUEST BODY
Folder model – note only the name is updateable
NORMAL RESPONSE CODE
200
RESPONSE BODY
Folder model with updates
Delete
DESCRIPTION
Deletes the specified folder
HTTP METHOD
DELETE
URL
/folders/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Items
Get
DESCRIPTION
Get a list of items in a folder.
HTTP METHOD
GET
URL
/folders/{id}/items
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
search
Term to be used to compare against the item name and tags, if omitted then all items that are not trashed or deleted are returned
Starting position in the array of items, if omitted the default is 0
int
0
limit
Number of items to return,
int
50
providers
CSV of third party providers and will limits the media assets returned to the specified providers
string
Empty String
screenfeed
order
Specifies the order to return items options are returned
string
alphanumeric
alphanumeric datecreated lastused lastModified
REQUEST BODY
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of items within the folder
Add
DESCRIPTION
Adds an item to a folder. The server will check the folder and the item are the same type.
HTTP METHOD
POST
URL
/folders/{id}/items
REQUEST BODY
Item to add to folder
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Delete
DESCRIPTION
Removes an item from a folder.
HTTP METHOD
DELETE
URL
/folders/{id}/items/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Tags
Get
DESCRIPTION
Gets the tags for the specified folder
HTTP METHOD
GET
URL
/folders/{id}/tags
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
List of Tag models
Add
DESCRIPTION
Adds a tag to a folder and subsequently the object in it
HTTP METHOD
POST
URL
/folders/{id}/tags
REQUEST BODY
Tag model with no Id
NORMAL RESPONSE CODE
201
RESPONSE BODY
New Tag model with new Id
Update
DESCRIPTION
Edits a tag to a folder and subsequently the object in it
HTTP METHOD
PUT
URL
/folders/{id}/tags/{id}
REQUEST BODY
Tag model with updates
NORMAL RESPONSE CODE
200
RESPONSE BODY
Tag model with edits
Delete
DESCRIPTION
Deletes a tag from a folder and subsequently the object in it
HTTP METHOD
DELETE
URL
/folders/{id}/tags/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Trash
Get
DESCRIPTION
Lists the objects specified in the trash
HTTP METHOD
GET
URL
/{objectname}/trash – Note options are mediaassets, playlists, players
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
List of specified objects
Add
DESCRIPTION
Adds the specified object to the trash
HTTP METHOD
PUT
URL
/{objectname}/trash – Note options are mediaassets, playlists, players
REQUEST BODY
Object to put in trash
NORMAL RESPONSE CODE
200
RESPONSE BODY
Object passed
Restore
DESCRIPTION
Restores the object specified to the library
HTTP METHOD
PUT
URL
/{objectname}/trash/{id}/restore – Note options are mediaassets, playlists, players
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Permanently Delete
DESCRIPTION
Permanently deletes the object so that it is not available for use in Signagelive
HTTP METHOD
DELETE
URL
/{objectname}/trash/{id} – Note options are mediaassets, playlists, players
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Player Types
Get All
DESCRIPTION
Gets a list of all available player types
HTTP METHOD
GET
URL
/playertypes
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
List of playertype objects
Get
DESCRIPTION
Gets the specified player type
HTTP METHOD
GET
URL
/playertypes/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A playertype object
Player Type KPI Setting
Get
Get All Player Type KPI Settings
DESCRIPTION
Get All Player Type KPI Settings for a Network
HTTP METHOD
GET
URL
/networks/{network_id}/PlayerTypeKPISettings
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of player type kpi settings objects
Create
Create Player Type KPI Setting
DESCRIPTION
Create a new Player Type KPI Setting
HTTP METHOD
POST
URL
/networks/{network_id}/PlayerTypeKPISettings
REQUEST BODY
A new Player Type KPI Setting object
NORMAL RESPONSE CODE
201
RESPONSE BODY
none
Update
Update Player Type KPI Setting
DESCRIPTION
Update an existing Player Type KPI Setting by Id
HTTP METHOD
PUT
URL
/networks/{network_id}/PlayerTypeKPISettings/{id}
REQUEST BODY
Updated Player Type KPI Settings Object
NORMAL RESPONSE CODE
200
RESPONSE BODY
A Player Type KPI Settings object
Delete
Delete Player Type KPI Setting
DESCRIPTION
Delete a Player Type KPI Setting by Id
HTTP METHOD
DELETE
URL
/networks/{network_id}/PlayerTypeKPISettings/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Global Settings
Players
Content Check
DESCRIPTION
Sets the content check settings for all players on the network
HTTP METHOD
PUT
URL
/globalsettings/players/contentcheck
REQUIRED PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
type
The type of content check, either at a set interval or daily
string
400
setInterval: daily
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
interval
The interval for content checks, in minutes
int
None
This can be any value from 1 to 1440. This is required when ‘type’ is ‘setInterval’
time
The time of day for content checks
string
None
The format to be used is HH:MM:SS. This is required when ‘type’ is ‘daily’
separateRssSync
Should RSS feeds by synced separately to content checks?
boolean
None
True if RSS feeds should be synced separately to content checks, otherwise false.
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Health Check
DESCRIPTION
Sets the content check settings for all players on the network
HTTP METHOD
PUT
URL
/globalsettings/players/healthcheck
REQUIRED PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
interval
The interval for health checks, in minutes
int
400
This can be any value from 1 to 1440.
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Reboots
DESCRIPTION
Sets the reboot settings for all players on the network
HTTP METHOD
PUT
URL
/globalsettings/players/reboots
REQUIRED PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
enabled
Enables or disables scheduled reboots
boolean
400
True or false
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
time
The time of day for reboots
string
00:00:00
The format to be used is HH:MM:SS.
rebootAtNextContentCheck
If true, players will reboot at the next content check.
boolean
None
True or false
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Proof of Play
DESCRIPTION
Sets the content check settings for all players on the network. This will return forbidden if proof of play is not enabled on the network.
HTTP METHOD
PUT
URL
/globalsettings/players/proofofplay
REQUIRED PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
enabled
A boolean value to enable or disable proof of play
boolean
400
True or false
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Screen Control
DESCRIPTION
Sets the screen control settings for all players on the network
HTTP METHOD
POST
URL
/globalsettings/players/screencontrol
REQUEST BODY
A GlobalScreenControl object
NORMAL RESPONSE CODE
200
RESPONSE BODY
None
Publish Content
Publish
DESCRIPTION
Publish content to players
HTTP METHOD
POST
URL
/publish/publish
REQUEST BODY
A publication configuration object
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of PublishResult objects
Check
DESCRIPTION
Checks the publication prior to publishing
HTTP METHOD
POST
URL
/publish/checkPublication
REQUEST BODY
A publication configuration object
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of PublishResult objects
Publish an Interrupt Example
Get the Interrupt
Signagelive provides a list of interrupt signals, which need to be included in the publication, to define which interrupt is being used, and will trigger the published content.
You will need to get all, and find the interrupt you are looking to use.
Publish to Players
So that all players have the Trigger published to them, meaning that when we add content it is automatically published, we need to publish the interrupt to all players we currently know about and want to publish the trigger to. Any new players added after this, will need to have the trigger published to them, using this process.
Make sure you set the Playlist object to be the full playlist object returned for the playlist.
Player List
Get List
DESCRIPTION
Gets all playerlists on the network
HTTP METHOD
GET
URL
/playerlists
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of playerlist objects
Get
DESCRIPTION
Gets a playerlist on the network
HTTP METHOD
GET
URL
/playerlists/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A single playerlist object
Create
DESCRIPTION
Saves a playerlist
HTTP METHOD
POST
URL
/playerlists
REQUEST BODY
The new playerlist object
NORMAL RESPONSE CODE
201
RESPONSE BODY
The playerlist object now with an ID
Update
DESCRIPTION
Saves a playerlist
HTTP METHOD
PUT
URL
/playerlists/{ID}/
REQUEST BODY
The playerlist object
NORMAL RESPONSE CODE
200
RESPONSE BODY
The playerlist object with changes
Saved Search
Get All
DESCRIPTION
Gets all saved searches on the network
HTTP METHOD
GET
URL
/savedsearches
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A list of savedsearch objects
Get
DESCRIPTION
Gets a single saved search on the network
HTTP METHOD
GET
URL
/savedsearches/{id}
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
A single savedsearch object
Create
DESCRIPTION
Saves a saved search
HTTP METHOD
POST
URL
/savedsearches
REQUEST BODY
The new SavedSearch object
NORMAL RESPONSE CODE
201
RESPONSE BODY
The saved search object now with an ID
Update
DESCRIPTION
Updates a saved search
HTTP METHOD
PUT
URL
/savedsearches/{ID}/
REQUEST BODY
The SavedSearch object
NORMAL RESPONSE CODE
200
RESPONSE BODY
The saved search object with updates
Users
Get All
DESCRIPTION
Returns a collection of network user objects, that can be optionally filtered
HTTP METHOD
GET
URL
/users
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
RESPONSE IF OMITTED
PERMITTED VALUES
search
Term to be used to compare against the user’s name or email address. If omitted then all users are returned
string
Empty String
start
Starting position in the array of users, if omitted the default is 0
int
0
limit
Number of users to return,
int
50
order
Specifies the order to return
string
email
email
status
Specifies whether to return all users or only enabled or disabled users
string
all
all enabled disabled
role
Specifies whether to return all user levels or a specific level
string
all
superadministrator administrator user messagemanageruser readonly localuser
REQUEST BODY
None
NORMAL RESPONSE CODE
200
RESPONSE BODY
Array of network user objects
Create
DESCRIPTION
Saves a user
HTTP METHOD
POST
URL
/users
REQUEST BODY
The new network user object
NORMAL RESPONSE CODE
201
RESPONSE BODY
The network user object now with an ID
Real Time Events
GET
DESCRIPTION
Gets all System Real Time Events
HTTP METHOD
GET
URL
/system/realtimeevents/
OPTIONAL PARAMETERS
NAME
DESCRIPTION
DATA TYPE
PERMITTED VALUES
search
Term to be used to compare against the real time event name. If omitted then all real time events are returned