Skip to main content

Fusion Signage API (1.0)

Download OpenAPI specification:Download

folder

Folders are used to organise digital signage content, including media, playlists and schedules, for easier management.

List folders

Returns an object containing a list of folders and permissions for root folders.

Authorizations:
personal-access-token

Responses

Response samples

Content type
application/json
{
  • "folders": [
    ],
  • "rootPermissions": {
    }
}

Create folder

Authorizations:
personal-access-token
Request Body schema: application/json
required
name
required
string [ 1 .. 250 ] characters
parentId
number or null

Leave null to create a root folder.

sortSequence
number

A comparable number representing the sortable sequence of this folder relative to its siblings. Does not need to be in a precise incremental order - e.g. 1, 2, 3 or 1, 10, 100 will be accepted.

If this matches the sort sequence of a sibling, then siblings will be shifted to achieve the desired sort order. There is no guarantee that the value you provide will be used exactly as-is.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "parentId": 0,
  • "sortSequence": 0
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string"
}

Update folder

Authorizations:
personal-access-token
path Parameters
id
required
number
Request Body schema: application/json
required
name
string [ 1 .. 250 ] characters
parentId
number or null

Leave null to create a root folder.

sortSequence
number

A comparable number representing the sortable sequence of this folder relative to its siblings. Does not need to be in a precise incremental order - e.g. 1, 2, 3 or 1, 10, 100 will be accepted.

If this matches the sort sequence of a sibling, then siblings will be shifted to achieve the desired sort order. There is no guarantee that the value you provide will be used exactly as-is.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "parentId": 0,
  • "sortSequence": 0
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string"
}

Delete folder

The folder must be empty of assets and subfolders before it can be deleted.

Authorizations:
personal-access-token
path Parameters
id
required
number

Responses

asset

Assets provide a unified, high-level representation of all supported digital signage content, such as media, playlists and schedules.

List assets

This API is intended to be used to build folder-based views of signage content. It will return any content that can be assigned to a folder. You can use the content-specific APIs (such as /playlists and /media) and aggregate the content yourself if you prefer.

Authorizations:
personal-access-token
query Parameters
folderId
required
number
type
string
Enum: "PLAYLIST" "SCHEDULE" "MEDIA"
offset
required
number
Default: 0
limit
required
number
Default: 10
sort
string^[A-Za-z0-9_.]+:(asc|desc)$
Examples:
  • sort=id:desc -
  • sort=id:asc -

Optional sort in the format field:dir where dir is asc or desc.

Responses

Response samples

Content type
application/json
{
  • "total": 0,
  • "offset": 0,
  • "limit": 0,
  • "data": [
    ]
}

Bulk move assets

This API is a convenience API to move assets between folders. You can use the content-specific APIs (such as /playlists/:id and /media/:id) and move the assets directly if you prefer.

Authorizations:
personal-access-token
Request Body schema: application/json
required
folderId
required
number

The destination folder id to move the assets to.

required
Array of objects (MinimalAsset) non-empty

The assets to move.

Responses

Request samples

Content type
application/json
{
  • "folderId": 0,
  • "assets": [
    ]
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string"
}

Bulk delete assets

This API is a convenience API to delete assets. You can use the content-specific APIs (such as /playlists/:id and /media/:id) and delete the assets directly if you prefer.

Authorizations:
personal-access-token
Request Body schema: application/json
required
required
Array of objects (MinimalAsset) non-empty

The assets to delete.

Array (non-empty)
id
required
number
type
required
string
Enum: "PLAYLIST" "SCHEDULE" "MEDIA"

Responses

Request samples

Content type
application/json
{
  • "assets": [
    ]
}

media

Media represents visual content such as images, videos, web pages and dynamic templates that can be added to playlists.

Create media

Authorizations:
personal-access-token
Request Body schema: application/json
required
WebsiteOptions (object) or PowerBiOptions (object) or TableauOptions (object) or DesignOptions (object) or WidgetOptions (object)

Specific options related to the media type.

required
object

The origin of the media item. This includes the type of media and where it is located.

name
required
string <= 150 characters

The publicly visible name of the media item. This could be the file name or a human-readable name.

folderId
required
number

The folder to store the media item in.

Responses

Request samples

Content type
application/json
{
  • "options": {
    },
  • "origin": {},
  • "name": "string",
  • "folderId": 0
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "folder": {
    }
}

List media

Authorizations:
personal-access-token
query Parameters
folderId
number
mediaType
string
Enum: "IMAGE" "VIDEO" "WIDGET" "WEBSITE" "POWER_BI" "TABLEAU" "DESIGN" "ZONE"
offset
required
number
Default: 0
limit
required
number
Default: 10
sort
string^[A-Za-z0-9_.]+:(asc|desc)$
Examples:
  • sort=id:desc -
  • sort=id:asc -

Optional sort in the format field:dir where dir is asc or desc.

Responses

Response samples

Content type
application/json
{
  • "total": 0,
  • "offset": 0,
  • "limit": 0,
  • "data": [
    ]
}

Start a media upload

Prepares and returns an upload URL that can be used to upload a file. Only use this for media items that have a PROVIDED source. Clients must PUT the file against the returned URL.

Authorizations:
personal-access-token
path Parameters
id
required
number

Responses

Response samples

Content type
application/json
{
  • "uploadUrl": "string"
}

Complete a media upload

Authorizations:
personal-access-token
path Parameters
id
required
number
Request Body schema: application/json
required
uploadUrl
required
string <uri>
contentType
required
string

Responses

Request samples

Content type
application/json
{}

Delete media

This will also delete any files that were uploaded.

Authorizations:
personal-access-token
path Parameters
id
required
number

Responses

Update media

Authorizations:
personal-access-token
path Parameters
id
required
number
Request Body schema: application/json
required
name
string <= 150 characters
folderId
number

The folder to move the media item to.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "folderId": 0
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "folder": {
    }
}

Get media

Authorizations:
personal-access-token
path Parameters
id
required
number

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "origin": {},
  • "name": "string",
  • "folder": {
    },
  • "status": "CREATED",
  • "options": { },
  • "thumbnail": {
    },
  • "durationInSeconds": 0,
  • "dimensions": {
    },
  • "created": "2019-08-24T14:15:22Z"
}

Get media files

This will return file metadata about the media file(s) we have created as a result of processing your media uploads. Your uploaded media is converted into formats suitable for digital signage, so we may have more than one representation of your media. The files can be downloaded using the URL of each file.

Authorizations:
personal-access-token
path Parameters
id
required
number

Responses

Response samples

Content type
application/json
[]

playlist

Playlists are collections of media items with specific playback settings. Playlists are used to deploy content to screens.

Create playlist

Authorizations:
personal-access-token
Request Body schema: application/json
required
required
Array of MediaPlaylistItemRequestDTO (object) or SubPlaylistPlaylistItemRequestDTO (object)

The items to play in this playlist. These can be media items or another playlist.

The order of items in this list determines the order they will be played.

name
required
string <= 150 characters

The name of the playlist that provides context for the content or details about its purpose.

folderId
required
number

The folder to store playlist in.

object

An optional overlay to apply to the playlist. The configured media will overlay the entire playlist. Use this to display logos, clocks, tickers throughout your entire playlist.

Responses

Request samples

Content type
application/json
{
  • "items": [
    ],
  • "name": "string",
  • "folderId": 0,
  • "overlay": {
    }
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "folder": {
    }
}

List playlists

Authorizations:
personal-access-token
query Parameters
folderId
number
offset
required
number
Default: 0
limit
required
number
Default: 10
sort
string^[A-Za-z0-9_.]+:(asc|desc)$
Examples:
  • sort=id:desc -
  • sort=id:asc -

Optional sort in the format field:dir where dir is asc or desc.

Responses

Response samples

Content type
application/json
{
  • "total": 0,
  • "offset": 0,
  • "limit": 0,
  • "data": [
    ]
}

Update playlist

Authorizations:
personal-access-token
path Parameters
id
required
number
Request Body schema: application/json
required
Array of MediaPlaylistItemRequestDTO (object) or SubPlaylistPlaylistItemRequestDTO (object)

The items to play in this playlist. These can be media items or another playlist.

The order of items in this list determines the order they will be played.

name
string <= 150 characters

The name of the playlist that provides context for the content or details about its purpose.

folderId
number

The folder to store playlist in.

object

An optional overlay to apply to the playlist. The configured media will overlay the entire playlist. Use this to display logos, clocks, tickers throughout your entire playlist.

Responses

Request samples

Content type
application/json
{
  • "items": [
    ],
  • "name": "string",
  • "folderId": 0,
  • "overlay": {
    }
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "folder": {
    }
}

Delete playlist

The deleted playlist will automatically be removed from playlists where it is a sub playlist, and any zones that reference it. The playlist will be unpublished from screens.

Authorizations:
personal-access-token
path Parameters
id
required
number

Responses

Get playlist

Authorizations:
personal-access-token
path Parameters
id
required
number

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "folder": {
    },
  • "items": [
    ],
  • "overlay": {
    },
  • "permissions": {
    }
}

screen

Screens are the hardware devices running the signage player application to display your content.

Pair screen

Authorizations:
personal-access-token
Request Body schema: application/json
required
pairingCode
required
string

The pairing code that is viewable on the screen.

licenceNumber
string

The licence to assign to the screen. If not provided, then the next available licence will be assigned.

displayName
required
string

The screen name viewable in the CMS.

ianaTimezone
required
string

The IANA timezone to assign to the screen.

object (Metadata)

Responses

Request samples

Content type
application/json
{
  • "pairingCode": "string",
  • "licenceNumber": "string",
  • "displayName": "string",
  • "ianaTimezone": "string",
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "identity": "string",
  • "displayName": "string"
}

Configure screen

Authorizations:
personal-access-token
path Parameters
identity
required
string
Request Body schema: application/json
required
displayName
string

The screen name viewable in the CMS.

ianaTimezone
string

The IANA timezone to assign to the screen.

object (Metadata)

Responses

Request samples

Content type
application/json
{
  • "displayName": "string",
  • "ianaTimezone": "string",
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "identity": "string",
  • "displayName": "string"
}

Get screen

Authorizations:
personal-access-token
path Parameters
identity
required
string

Responses

Response samples

Content type
application/json
{
  • "identity": "string",
  • "configuration": {
    },
  • "deviceReport": {
    },
  • "content": {
    },
  • "state": {
    },
  • "permissions": {
    }
}

Delete screen

Authorizations:
personal-access-token
path Parameters
identity
required
string

Responses

List screens

Authorizations:
personal-access-token
query Parameters
applicationVersion
string
Example: applicationVersion=1.0.3
runtime
string
Enum: "ANDROID" "TIZEN" "BRIGHTSIGN" "WEB" "WEBOS" "WINDOWS" "LINUX"
tags
Array of strings non-empty
offset
required
number
Default: 0
limit
required
number
Default: 10
sort
string^[A-Za-z0-9_.]+:(asc|desc)$
Examples:
  • sort=id:desc -
  • sort=id:asc -

Optional sort in the format field:dir where dir is asc or desc.

Responses

Response samples

Content type
application/json
{
  • "total": 0,
  • "offset": 0,
  • "limit": 0,
  • "data": [
    ]
}