App and Solution
Solutions
Update Solution
10min
overview developers can use the updatesolution api to modify their registered solutions with a single call with this api, developers can easily add new attributes, update existing ones, or remove certain specifications with a single call additionally, there are two endpoints available to add or remove apps within a solution deleteappslisting and addappslisting these endpoints allow developers to update existing applications in a solution version or remove redundant apps update soln endpoint patch developer/solutions/versions/{solutionversionid} attributes the updatesolution api utilizes the same attributes as the registersolution endpoint parameter description displayname the name of the solution that will be displayed within the marketplace and console shortdescription a short description of the solution for display on the marketplace isconsolecompatible specifies if the solution is console compatible the acceptable boolean values are true false longdescription a long description of the solution for display on the marketplace visibility specifies if the solution is visible to all organizations or a few organizations in the marketplace visibility isprivate specifies if the application is visible publicly or for subscription this value should be false if the app is visible in the marketplace visibility permissiontype this is only applicable when isprivate is false determines whether the selected orgs are permitted from viewing the solution in the marketplace acceptable values allow deny visibility orgidentifiers visibility orgidentifiers only applicable when isprivate is false provides a list of organization short names where a given permission is applied categories the categories that the solution belongs to this is a free form, tag like set of strings some example categories include lastmile and transport management solnurls a list of urls associated with the solution solnurls name name of the url entry solnurls url url of the entry api information regarding associated api endpoints if solution of type api api apibaseurl the base url of the api api apidetails list of urls associated with the api solution productfamily a product family is displayed on the marketplace to list of urls associated with the api solution systemappsettings a list of system app settings objects specifying the core appurn , the settings displayname , and the settingsurl systemappsettings appurn the app urn of the system (core) application example platform\ app\ mts systemappsettings displayname the display name to be shown for this setting example mts settings systemappsettings settingsurl the relative url for this system app setting example /app/mts/settings example request the following example request updates the displayname , shortdescription , supportedcountries { "displayname" "last mile delivery v2", "shortdescription" "an optimized last mile delivery solution to ensure on time deliveries and reduce costs " } this payload does the following update the displayname to "last mile delivery v2" update the shortdescription add "uk" to the supportedcountries list all other existing attributes would remain unchanged updating array values when updating a solution, it's important to note that you need to pass all existing array attributes along with any new values you want to add or modify this applies to all attributes that are stored as arrays, such as solution urls, categories, or any other relevant array fields example adding a new solution url let's say you have previously registered an app with two solution urls { "solnurls" \[ { "name" "solution 1", "url" "https //example com/solution1" }, { "name" "solution 2", "url" "https //example com/solution2" } ] } now, if you want to add a third solution url to your app, you need to include the existing solution urls in the update request along with the new url here's an example of how you would update your app using the api { "solnurls" \[ { "name" "solution 1", "url" "https //example com/solution1" }, { "name" "solution 2", "url" "https //example com/solution2" }, { "name" "solution 3", "url" "https //example com/solution3" } ] } in the above example, we include the existing solution urls ( https //example com/solution1 and https //example com/solution2 ) along with the new url ( https //example com/solution3 ) in the solnurls array the same principle applies to all array attributes when updating a solution if you want to add, remove, or modify any values in an array attribute, you need to provide the complete updated array in the api request add or update apps within a solution endpoint put /developer/solutions/versions/{solutionversionid}/apps to add or update apps in a solution, call addappslisting and provide the following information the applications array listingid the unique human readable identifier of the application semver the semver version of the application displayorder assigning a numerical value to the display order controls its listing sequence within a solution's left navigation set to '0' or leave blank to hide the app from the console's menu initsequence the sequence in which the permission file for a given app should be onboarded to a tenant ( ) indicates that listingid and semver are required example request the following request adds version 1 0 2 of the truck trackers app to the solution { "applications" \[ { "listingid" "truck trackers", "semver" "1 0 2", "displayorder" 2, "initsequence" 3 } ] } remove application from solution endpoint delete /developer/solutions/versions/{solutionversionid}/apps to remove an app from a soln, call deleteappslisting and provide the listingid of the app to delete in the applications array the following request would delete the "last mile delivery" example request { "applications" \[ { "listingid" "last mile delivery" } ] }