The Application Manifest
The application manifest is a JSON file used for configuring an application. There are two ways to declare the manifest:
if you develop your application as an npm package (which we strongly encourage everybody to do) then you can add a
deskpro
key inside yourpackage.json
file and declare it there. This method has the advantage that you can skip some fields as they will be picked up from thepackage.json
file and also you will have all the configuration in one place.
For example:
place a
manifest.json
file in the root folder of your project.
For example:
Manifest reference
Required properties:
Optional properties:
appVersion
This is a required property
Specifies the version number of the app. We suggest using a semver number here. If you use the package.json
to define the manifest you don't need to add this property, the value of the root version
key will be used instead.
name
This is a required property
This is the identifier of your application which must be unique. This is semantically equivalent to the name
key from package.json
and its value has the same syntactic constraints. You only need to specify this field when you use the manifest.json
file, otherwise it will be the same as the package.json
name key.
description
This is a required property
A one or two line brief about what your application does. This will be displayed in the administration interface and when the application is installed. You don't need to specify this if your are using the package.json
definition, the value of the root description
key will be used instead
author
This is a required property
This property if a JSON object with the following structure:
The name
is an individual or company name. The email
property is used for support requests from your application users and the url
can point to a page about the author or the app.
scope
This is a required property
This property determines the audience of and the services required by your application, as applications can be written for Agents, Admins and Portal Users
The only scope we are fully supporting at the moment is agent
and this means your application will only be available for agents
targets
This is a required property
This property is a list of targets and a target is a pair of a page and a location inside Deskpro where the application's iframe will be loaded.
Example:
You can have more than one target, but we are only fully supporting ticket-sidebar
at the moment. With ticket-sidebar
your application will be shown each time you open a ticket, on the right side in a vertical container
isSingle
This is an optional property
This property controls how many instances an application can have and by default is set to false
, which means as many instances as needed. An application instance is created when you install the application and then you can give that instance a different configuration.
However, most of the time you will want your app to have a single instance so set this property to `true:
title
This is an optional property
When specified, this property is used to provide the display name of your application, which is shown everywhere with your application. We recommend to always specify this property, otherwise the application identifier will be used
Last updated