Update User Apps

Released in SBE 20.13. Updates the application entitlements for a particular user. Supports partial update.

Update unique entitlement of an app for this user. Entitlement can be installation, visibility or product

PATCHyourpodURL.symphony.com/pod/v1/admin/user/{uid}/app/entitlement/list
Path parameters
uid*integer (int64)

User ID as a decimal integer

Header parameters
Body
appId*string

Unique ID for the Application

Example: "selerity"
listedenum

If "TRUE", this application will be listed in the appstore for this user. If "FALSE", this application will be hidden in the appstore. If "KEEP" or not set, the current value is kept. If "REMOVE", it will be removed from user settings and the pod level setting's value will be used.

Example: "KEEP"
TRUEFALSEKEEPREMOVE
installenum

If "TRUE", this application will be installed for this user. If "FALSE", this application will not be installed for this user. If "KEEP" or not set, the current value is kept. If "REMOVE", it will be removed from user settings and the pod level setting's value will be used.

Example: true
TRUEFALSEKEEPREMOVE
productProduct (object)

Application Product

Response

Success

Body
appId*string

Unique ID for the Application

Example: "selerity"
appNamestring

Name for this Application

Example: "Selerity Context"
listed*boolean

if true, this application will be listed in the appstore for this user. Otherwise, this application will be hidden in the appstore.

Example: true
install*boolean

if true, it indicate this application is installed for this user. Otherwise, this user does not have this application installed.

Example: true
productsProductList (array of Product (object))
Request
const response = await fetch('yourpodURL.symphony.com/pod/v1/admin/user/{uid}/app/entitlement/list', {
    method: 'PATCH',
    headers: {
      "sessionToken": "text",
      "Content-Type": "application/json"
    },
    body: JSON.stringify([
      {
        "appId": "selerity"
      }
    ]),
});
const data = await response.json();
Response
[
  {
    "appId": "djApp",
    "appName": "Dow Jones",
    "listed": true,
    "install": false
  },
  {
    "appId": "selerity",
    "appName": "Selerity Context",
    "listed": true,
    "install": true,
    "products": [
      {
        "appId": "selerity",
        "name": "Standard",
        "subscribed": true,
        "type": "default"
      },
      {
        "appId": "selerity",
        "name": "Premium",
        "sku": "AcDccU53SsY",
        "subscribed": false,
        "type": "premium"
      }
    ]
  }
]

As shown in the example, the request body is structured as an array [] of individual apps to be updated.

📘 Info

Unlike Update All User Apps endpoint, it is not mandatory to provide in the body request all app entitlements for a given app. You can therefore update only one or several of them among the following body params: "install", "listed", or "products".

The "product" field is not required but cannot be set to "null". When provided, please specify all subfields specified such as in the example: "appId", "subscribed", "type", "sku", and "name".

Last updated