Application configs Resource

Provides access and management of application configs.

GET /{tenantGuid}/api/v1/applicationConfigs

Available Since:
12.11.0

Search for application configs.

Samples

Sample 1 request

Get all application configs sorted by application name in ascending order.

 GET /SRP00000/api/v1/applicationConfigs
 

Sample 1 response body

       
{
     "appConfigs":[{
         "appGuid":"49a02f3c-88fd-436c-9297-24e0f573841b",
         "appName":"AnalyticsSampleApp",
         "appPackageId":"com.blackberry.example.analytics",
         "guid":"39888307-E42F-4D06-9868-A7F8CE83521C",
         "name":"AppConfigWithDefaultValues",
         "rank":0
     },{
         "appGuid":"3f2b01fd-abe1-41f4-afee-fe2e4b523eb9",
         "appName":"UEMClientEnterprise(in-house)",
         "appPackageId":"com.blackberry.uem.enterprise",
         "guid":"6357C15D-0A75-4773-9B3C-3F79993738EF",
         "name":"AppConfigWithDefaultValues",
         "rank":0
     }]
 }
       
 

Sample 2 request

Get the first 2 application configs that have an application name that starts with "Sample", sorted by rank in descending order.

 GET /SRP00000/api/v1/applicationConfigs?query=appName=Sample*&max=2&sortBy=rank%20DESC
 

Sample 2 response body

 
{
     "appConfigs":[{
         "appGuid":"2cc32e67-d139-4718-b16a-9baec1eefed1",
         "appName":"Sample-RSSReader",
         "appPackageId":"com.good.gd.example.rssreader",
         "guid":"3E59C926-0D08-40E1-BB56-214BB8F68046",
         "name":"AppConfigWithDefaultValues",
         "rank":2
     },{
         "appGuid":"46bbe5d2-b2dc-459c-bce5-edffd20d0405",
         "appName":"Sample-SecureSQL",
         "appPackageId":"com.good.gd.example.securesql",
         "guid":"C9B06081-7F86-4C08-8D15-6D1FA36CF3F7",
         "name":"AppConfigWithDefaultValues",
         "rank":0
     }]
 }
 
 

Request Parameters
Name Location Description Type
max query The maximum number of application config results to get. If not specified, all existed application configs will be returned. int
query query Query parameter for filtering the results. The format is <field name>=<query value>, for example appName=testApp. Multiple field-value pairs can be provided in the query with each pair separated with a comma, in which case only applications configs matching all of the criteria provided will be included in the response. Querying for empty/null values is not supported.

By default, a case-insensitive exact match will be performed for each field in the query. For fields that support prefix (i.e. starts with) matching, append an asterisk ("*") to the end of the value. For example, to find application configs that have a appName that start with "test", specify appName=test*. To match an asterisk at the end of a string instead of prefix matching, the asterisk must be escaped with a backslash.

Special characters (comma, backslash) in query values must be escaped with a backslash.

The following table describes the fields that can be used in the query.

Field Type Description Supports prefix matching
appName string Name of the application Yes
appPackageId string Package ID of the application. No
appGuid string GUID of the application. No
guid string GUID of the application config. No
name string Name of the application config. Yes
rank integer Rank of the application config. No
 
sortBy query The field to sort the application configs results by. The format is <field name> ASC|DESC, where ASC means to sort the results in ascending order and DESC means descending order. For example, to sort the results by appName in descending order, specify appName DESC. If not specified, a value of appName ASC will be used. The following fields are allowed: name (application config's name), appName, rank.  
Response Codes
Code Condition Data type
200 OK (even if no application configs are found).
400 Invalid search query.
Response Body
Media type Data type Description
application/vnd.blackberry.applicationconfigs-v1+json Application configs (JSON)

POST /{tenantGuid}/api/v1/applicationConfigs

Available Since:
12.13.0

Create a BlackBerry Dynamics application config. The following fields are required to create a BlackBerry Dynamics application config: appGuid, name, settings. Any other fields are ignored.
Creating non-BlackBerry Dynamics application config is not supported.
Form a request according to the application config definition schema. Use the following route to get the schema:
GET /{tenantGuid}/api/v1/applications/{appGuid}/configDefinition/schema

    Request requirements:
  • The 'appGuid', 'name' and 'settings' fields are required.
  • Specify all settings that are not hidden.
  • Hidden setting cannot be specified.
  • You must specify permitted values (type, length, and so on) according to the application config definition schema.

Samples

Sample request body

 
 {
     "appGuid": "8c457932-3aa6-4303-b6d3-39096a742d57",
     "name": "testConfig",
     "settings": {
         "display": {
             "Retain": "1 year",
             "tabs": ["Upd", "Proj", "Pers", "Press"]
         },
         "about": {},
         "update": {
             "canUpdate": true,
             "photoUpdate": true
         }
     }
 }
 

Sample response body

 
 {
     "appGuid": "8c457932-3aa6-4303-b6d3-39096a742d57",
     "appName": "myBBDynamicsApp",
     "appPackageId": "com.ua.en",
     "guid": "B604BEB5-D89B-4560-B4B6-BC80D3702410",
     "name": "testConfig",
     "rank": 4,
     "definitionVersion": 8,
     "settings": {
         "policyVersion": "1.0",
         "display": {
             "Retain": "1 year",
             "tabs": ["Upd", "Proj", "Pers", "Press"]
         },
         "about": {},
         "update": {
             "canUpdate": true,
             "photoUpdate": true
         }
     }
 }
 

Request Body
Media type Data type
application/vnd.blackberry.applicationconfig-v1+json Application config (JSON)
Response Codes
Code Condition Data type
201 Created.
400 Invalid request. For example, invalid field semantics or missing required field.
Response Body
Media type Data type Description
application/vnd.blackberry.applicationconfig-v1+json Application config (JSON)

DELETE /{tenantGuid}/api/v1/applicationConfigs/{appConfigGuid}

Available Since:
12.13.0

Delete a BlackBerry Dynamics application config.

Request Parameters
Name Location Description
appConfigGuid path GUID of the application config.
Response Codes
Code Condition Data type
204 App config deleted.
    400 Invalid request. For example, invalid field semantics or missing required field.
    404 Application config not found.

    GET /{tenantGuid}/api/v1/applicationConfigs/{appConfigGuid}

    Available Since:
    12.11.0

    Get application config by GUID.

    Sample response body

     
    {
       "appGuid": "196aa476-a3dd-4ac9-8e85-9f015b0da7a0",
       "appName": "UEM Client",
       "appPackageId": "com.blackberry.ema",
       "guid": "93062448-20E9-4FE9-811D-321306428644",
       "name": "App Config With Default Values",
       "rank": 0,
       "definitionVersion": 9,
       "settings": {
         "apkPackageName": "com.rim.mobilefusion.client",
         "GD_SDK_Security_AllowBypassUnlock": true,
         "certProviderAppName": null,
         "certProviderUTISchemes": null,
         "apkCertificateDigestSha256": "2A:5A:32:BF:68:75:D5:50:1A:2B:9E:07:78:C7:B4:A2:B0:FE:EC:C4:40:E2:CF:8C:16:10:96:3C:74:A8:49:77"
       }
     }
     
     

    Request Parameters
    Name Location Description
    appConfigGuid path GUID of the application config to get
    Response Codes
    Code Condition Data type
    200 OK.
    404 Application config not found.
    Response Body
    Media type Data type Description
    application/vnd.blackberry.applicationconfig-v1+json Application config (JSON)

    PATCH /{tenantGuid}/api/v1/applicationConfigs/{appConfigGuid}

    Available Since:
    12.13.0

    Update any of the following fields for a BlackBerry Dynamics application config: name, settings.

    GUID does not need to be specified because it is specified in the URL. Any other fields are ignored.
    If no changes are detected in the request, the response will indicate success without making changes to the application config. Updating non-BlackBerry Dynamics application config is not supported.
    Form a request according to the application config definition schema. Use the following route to get the schema:
    GET /{tenantGuid}/api/v1/applications/{appGuid}/configDefinition/schema

      Request requirements:
    • The 'name' and 'settings' fields are required to be set.
    • Specify all settings that are not hidden.
    • Hidden setting cannot be specified.
    • You must specify permitted values (type, length, and so on) according to the application config definition schema.

    Samples

    Sample request body

     
     {
         "name": "testConfig",
         "settings": {
             "display": {
                 "Retain": "1 year",
                 "tabs": ["Upd", "Proj", "Pers", "Press"]
             },
             "about": {},
             "update": {
                 "canUpdate": true,
                 "photoUpdate": true
             }
         }
     }
     

    Sample response body

     
     {
         "appGuid": "8c457932-3aa6-4303-b6d3-39096a742d57",
         "appName": "myBBDynamicsApp",
         "appPackageId": "com.ua.en",
         "guid": "638E6C35-FD80-446F-8A69-55F6276299C0",
         "name": "testConfig",
         "rank": 3,
         "definitionVersion": 8,
         "settings": {
             "policyVersion": "1.0",
             "display": {
                 "Retain": "1 year",
                 "tabs": ["Upd", "Proj", "Pers", "Press"]
             },
             "about": {},
             "update": {
                 "canUpdate": true,
                 "photoUpdate": true
             }
         }
     }
     

    Request Parameters
    Name Location Description
    appConfigGuid path GUID of the BlackBerry Dynamics application config.
    Request Body
    Media type Data type
    application/vnd.blackberry.applicationconfig-v1+json Application config (JSON)
    Response Codes
    Code Condition Data type
    200 Updated.
    400 Invalid request. For example, invalid field semantics or missing required field.
    404 Application config not found.
    Response Body
    Media type Data type Description
    application/vnd.blackberry.applicationconfig-v1+json Application config (JSON)