Comment on page
Application Manifest Bundle
Each application's metadata is represented by a manifest file called
bundle.json
. You must create a manifest file for your application and submit it to either your pod administrator for internal apps, or Symphony for apps meant for the public marketplace.To create and upload a file:
- 1.Create the manifest file that your application requires.
- 2.Upload the manifest file to Symphony: drag and drop the file into the application creation window of the administrative portal.
The following bundle file is only applied for Developer Mode. Note that it is an array of apps, allowing you to load multiple apps at once.
bundle.json - Developer Mode
{
"applications": [
{
"type": "sandbox",
"id": "hello",
"name": "Hello World",
"blurb": "This is a hello world app with a few example extension API invocations!",
"publisher": "Symphony",
"url": "https://localhost:4000/controller.html",
"domain": "localhost",
"icon": "https://localhost:4000/icon.png"
}
]
}
bundle.json via UI
bundle.json via API
{
"appGroupId": "testapplication",
"name": "Application name",
"description": "Enter the application description, as it will appear in the Symphony Market",
"publisher": "Symphony",
"loadUrl": "https://symphony.myapplication.com:4000/controller.html",
"domain": ".myapplication.com",
"iconUrl": "https://symphony.myapplication.com/icon.png",
"notification": {
"url": "https://symphony.myapplication.com:4000/podInfo",
"apiKey": "super-secret-key"
},
"permissions": [
"ACT_AS_USER",
"GET_BASIC_CONTACT_INFO",
"GET_PRESENCE"],
"certificate": "-----BEGIN CERTIFICATE-----\nMIICpTCCAY2gAwIBAgIBATANBgkqhk...sCPV2jH\n0hFUK5JHPrGO\n-----END CERTIFICATE-----\n",
"allowOrigins": "myapplication.com",
"rsaKey": "-----BEGIN PUBLIC KEY-----\nMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA1QGTGazbI/\n-----END PUBLIC KEY-----"
}
{
"applicationInfo": {
"appId": "my-test-app",
"name": "my-test-app-update",
"appUrl": "https://joe.mydomain.com",
"domain": "mydomain.com",
"publisher": "Updated Joe Smith"
},
"description": "updating an app",
"allowOrigins": "mydomain.com",
"iconUrl": "https://symphony.myapplication.com/icon.png",
"permissions": [
"ACT_AS_USER",
"SEND_MESSAGES"
],
"cert": "certificate",
"authenticationKeys": {
"current": {
"key":"-----BEGIN PUBLIC KEY-----\nMIICIjANBgkqhkiG9w0....YOUR_NEW_KEY...cCAwEAAQ==\n-----END PUBLIC KEY-----"
}
The table describes the required and additional optional fields.
Field | Description | Required | Type |
appGroupId | Applied for version 1.53 onwards. The unique identifier for your app. The ID must not match any existing app IDs or user names. It consists of alphanumeric characters [0-9,A-Z, a-z], underscores (_), and dashes. Note: Do not use a colon (:) in this field, or you will receive a 401 Unauthorized error. | Required | String |
name | The name of your app, which will be displayed in the Symphony Market. | Required | String |
description | The description of your app, which will be displayed in the Symphony Market. | Optional | String |
publisher | The publisher of your app, which will be displayed in the Symphony Market. | Optional | String |
loadUrl | The location of the app's controller, which will be displayed in a hidden iframe. Value must start with https:// .Note: Do not specify this value for On Behalf Of (OBO) applications. | Required, except for OBO applications | URI |
domain | The domain for your app, which should match the controller file URL. | Required | URI |
iconUrl | An icon for your app (32x32 px), which will be displayed in the Symphony Market. | Optional | URI |
notification | Fields required in order to receive webhook callback containing pod information (ie. pod, authentication and Agent URLs). | Optional | Object |
url | URL which the pod will call to send pod information to the application | Optional | String |
apiKey | Secret key used to validate the pod when calling the notification URL. | Optional | String |
permissions | List of permissions the application requires. See Permissions details for on-behalf-of applications. | Optional | List |
certificate | Optional | String | |
rsaKey | Optional | String | |
allowOrigins | The origin or origins that this application is allowed to receive cross-domain requests from. | Optional | URI |
type | Applied for 1.52 and prior versions.This field should be set to sandbox , which indicates that this is a standalone app, embedded within Symphony's client. | Required | String |
id | Applied for 1.52 and prior versions. The unique identifier for your app.
Note: Do not use a colon (:) in this field, or you will receive a 401 Unauthorized error. | Required | String |
blurb | Applied for Developer Mode.
Field for display in the Symphony Market and Admin Portal. | Optional | String |
icon | Applied for Developer Mode.
An icon for your app (32x32 px), which will be displayed in the Symphony Market. | Optional | String |
Last modified 2mo ago