Plantronics Developer Connection - Assets Management Firmware Upgrade https://developer.plantronics.com/blog/assets-management-firmware-upgrade en Asset Management APIs https://developer.plantronics.com/article/asset-management-apis <div class="field field-name-field-keywords field-type-taxonomy-term-reference field-label-above"> <div class="field-label">Keywords:&nbsp;</div> <div class="field-items"> <span class="field-item even label label-default keyword-label"><a href="/blog/assets-management-firmware-upgrade" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Assets Management Firmware Upgrade</a></span> </div> </div><div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div class="field-item even" property="content:encoded"><span style="color:#FF0000;"><strong>PROTOTYPE CODE</strong></span><br /> Prototype Asset Management APIs are available which enable developers to embed Plantronics Manager Pro asset management functionality into their applications.  Use the APIs to manage headset firmware, deploy Hub software, make Policy updates. Specifically, the Asset Management APIs expose the following functionality to developers: <ul> <li>Retrieve pre-existing asset Policies. See tenant <a href="https://www.plantronics.com/content/dam/plantronics/documents-and-guides/user-guides/manager-pro-ug-en.pdf">Policy details (.pdf)</a> </li> <li>Update / Create new Policies for Hub client software and headset firmware in a tenant; for all users in the entire tenant or a set of users.</li> <li>Lookup the latest available firmware version for a product.</li> </ul> <strong>Authorization Access Flow</strong> <br /> How to gain authorization to create asset Policies in a tenant.<br /> <br /> <strong>1. Register an App using this API</strong><br /> <br /> <div class="media media-element-container media-default"><div id="file-328" class="file file-image file-image-jpeg"> <h2 class="element-invisible"><a href="/files/1jpg">1.JPG</a></h2> <div class="content"> <img class="media-element file-default img-responsive" data-delta="1" typeof="foaf:Image" src="https://developer.plantronics.com/sites/default/files/1.JPG" width="707" height="561" alt="" /> </div> </div> </div><br /> <br /> <strong>2. Subscribe the App for different Plantronics Manager Pro subscription tiers. Ensure VERSIONPOLICY subscription is subscribed for POLICY management APIs<br /> <br /> <div class="media media-element-container media-default"><div id="file-329" class="file file-image file-image-jpeg"> <h2 class="element-invisible"><a href="/files/2jpg">2.JPG</a></h2> <div class="content"> <img class="media-element file-default img-responsive" data-delta="2" typeof="foaf:Image" src="https://developer.plantronics.com/sites/default/files/2.JPG" width="707" height="588" alt="" /> </div> </div> </div><br /> <br /> 3. Authorize the App for all subscriptions using this API</strong><br /> <div class="media media-element-container media-default"><div id="file-330" class="file file-image file-image-jpeg"> <h2 class="element-invisible"><a href="/files/3jpg">3.JPG</a></h2> <div class="content"> <img class="media-element file-default img-responsive" data-delta="3" typeof="foaf:Image" src="https://developer.plantronics.com/sites/default/files/3.JPG" width="714" height="331" alt="" /> </div> </div> </div><br /> <br /> <strong>After the App is authorized for VERSIONPOLICY Subscriptions, we can use the below APIs to create/delete/update Policies </strong><br /> <br /> <div class="media media-element-container media-default"><div id="file-333" class="file file-image file-image-jpeg"> <h2 class="element-invisible"><a href="/files/4jpg">4.JPG</a></h2> <div class="content"> <img class="media-element file-default img-responsive" data-delta="3" typeof="foaf:Image" src="https://developer.plantronics.com/sites/default/files/4.JPG" width="1578" height="794" alt="" /> </div> </div> </div><br /> <br /> <strong>Policy Get:</strong><br />   <pre style="margin-top: 5px; margin-bottom: 0px; padding: 10px; border: 1px solid rgb(229, 224, 198); font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; font-size: 0.9em; line-height: inherit; font-family: &quot;Anonymous Pro&quot;, Menlo, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, monospace; vertical-align: baseline; background-color: rgb(252, 246, 219); max-height: 400px; overflow-y: auto;"> curl -X GET --header 'Accept: application/json' --header 'appId: 7da9a155-3214-40a2-9326-07028566d153' 'https://partner-api.sqa.pltzone.org/v1/assets/management/tenant/e3260224-e88a-434c-9fd9-c5d3c068dbac/policy?policyId=3ac31140-082e-434f-8a3c-59ccd3ae7c4c&amp;page=0&amp;count=10</pre> <br /> <br /> <strong>Policy Create:</strong><br /> <br /> <strong><span style="color:#0000FF;">curl -X POST \<br />   https://partner-api.plt-oda-staging.plantronicsmanager.com​/v1/assets/management/tenant/e3260224-e88a-434c-9fd9-c5d3c068dbac/policy \<br />   -H 'Content-Type: application/json' \<br />   -H 'Postman-Token: 7a782558-2d4c-4fdf-a1ee-cc7340ca7292' \<br />   -H 'appId: 7da9a155-3214-40a2-9326-07028566d153' \<br />   -H 'cache-control: no-cache' \<br />   -H 'charset: UTF-8' \<br />   -d '{<br />   "adminNotes": "This is test policy creation for firmware type",<br />   "allowDecline": false,<br />   "createdAt": "2018-10-02T00:39:18.967Z",<br />   "deploymentType": "string",<br />   "displayVersion": "Latest",<br />   "groupIds": [<br />     "string"<br />   ],<br />   "id": "string",<br />   "includeMobileHosts": false,<br />   "lastActivated": "2018-10-02T00:39:18.967Z",<br />   "lastModified": "2018-10-02T00:39:18.967Z",<br />   "links": [<br />     {<br />       "href": "string",<br />       "rel": "string",<br />       "templated": true<br />     }<br />   ],<br />   "localFilePath": "string",<br />   "name": "Policy-1",<br />   "noteToUsers": "string",<br />   "notificationInterval": 60,<br />   "productId": "127",<br />   "recipientFilter": "desktopOnly",<br />   "scheduleEndTime": "2018-10-02T00:39:18.967Z",<br />   "scheduleStartDate": "2018-10-02T00:39:18.967Z",<br />   "scheduleStartTime": "2018-10-02T00:39:18.967Z",<br />   "settingsJobId": 0,<br />   "status": "Active",<br />   "type": "firmware",<br />   "updateMethod": "none",<br />   "userIds": [<br />     "string"<br />   ],<br />   "version": "Latest"<br /> }'</span><br /> <br /> Policy Create Response:</strong><br /> <br /> <div class="media media-element-container media-default"><div id="file-334" class="file file-image file-image-jpeg"> <h2 class="element-invisible"><a href="/files/5jpg">5.JPG</a></h2> <div class="content"> <img class="media-element file-default img-responsive" data-delta="3" typeof="foaf:Image" src="https://developer.plantronics.com/sites/default/files/5.JPG" width="904" height="663" alt="" /> </div> </div> </div><br /> <br /> <strong>Policy Update:</strong><br /> <br /> <span style="color:#0000FF;"><strong>curl -X PUT \<br />   https://partner-api.sqa.pltzone.org/v1/assets/management/tenant/e3260224-e88a-434c-9fd9-c5d3c068dbac/policy/c8343b06-9e3b-4499-9802-f0197c285c06 \<br />   -H 'Content-Type: application/json' \<br />   -H 'Postman-Token: 156f4499-79f8-46b4-81c7-c0276b6f905f' \<br />   -H 'appId: 7da9a155-3214-40a2-9326-07028566d153' \<br />   -H 'cache-control: no-cache' \<br />   -H 'charset: UTF-8' \<br />   -d '{<br />                 "settingsJobId": 1516750796131,<br />                 "name": "Policy-change",<br />                 "type": "firmware",<br />                 "status": "Active",<br />                 "updateMethod": "advertise",<br />                 "notificationInterval": 60,<br />                 "allowDecline": false,<br />                 "adminNotes": "",<br />                 "recipientFilter": "allUsers",<br />                 "noteToUsers": null,<br />                 "productId": "c01a",<br />                 "localFilePath": null,<br />                 "version": null,<br />                 "lastModified": 1516779596000,<br />                 "lastActivated": null,<br />                 "createdAt": null,<br />                 "displayVersion": "",<br />                 "groupIds": null,<br />                 "userIds": null,<br />                 "includeMobileHosts": false,<br />                 "scheduleStartDate": null,<br />                 "scheduleStartTime": null,<br />                 "scheduleEndTime": null,<br />                 "deploymentType": null,<br />                 "id": "29d519e9-ee3a-4581-a306-40749a98a67f"<br />             }'</strong></span><br /> <br /> <strong>Policy Update Response:</strong><br /> <br /> <div class="media media-element-container media-default"><div id="file-336" class="file file-image file-image-jpeg"> <h2 class="element-invisible"><a href="/files/6jpg-0">6.JPG</a></h2> <div class="content"> <img class="media-element file-default img-responsive" data-delta="5" typeof="foaf:Image" src="https://developer.plantronics.com/sites/default/files/6_0.JPG" width="1109" height="646" alt="" /> </div> </div> </div><br /> <br /> <strong>Policy Delete:</strong><br /> <br /> <strong><span style="color:#0000FF;">curl -X DELETE \<br />   'https://partner-api.plt-oda-staging.plantronicsmanager.com/v1/assets/management/tenant/2879509f-1137-45a1-bc1b-ae2b4dd8969d/policy/e907db0d-3298-4171-815b-b9bf52d81b37?apikey=1hKMMPFMmaldnC0rcohvXN0UX7UeWPjb%20' \<br />   -H 'Content-Type: application/json' \<br />   -H 'Postman-Token: 87ba4e19-c0b9-47ec-9d7f-e1bc4bb41346' \<br />   -H 'appId: 49470905-3990-47b3-aa39-c3ec08e944de' \<br />   -H 'cache-control: no-cache' \<br />   -H 'charset: UTF-8' \<br />   -d '{<br />                 "settingsJobId": 1516750796131,<br />                 "name": "AGN Basic Settings2",<br />                 "type": "deviceSettings",<br />                 "status": "Active",<br />                 "updateMethod": "advertise",<br />                 "notificationInterval": 60,<br />                 "allowDecline": false,<br />                 "adminNotes": "",<br />                 "recipientFilter": "allUsers",<br />                 "noteToUsers": null,<br />                 "settings": {<br />                     "lyncDialTone": {<br />                         "timestamp": 0,<br />                         "status": "DISABLED",<br />                         "isLockable": true,<br />                         "isReadonly": true,<br />                         "value": "true",<br />                         "defaultValue": "true",<br />                         "possibleValues": [<br />                             "-1",<br />                             "true",<br />                             "false"<br />                         ],<br />                         "type": "BOOLEAN",<br />                         "id": "lyncDialTone"<br />                     },<br />                     "twaPeriod": {<br />                         "timestamp": 0,<br />                         "status": "ENABLED",<br />                         "isLockable": true,<br />                         "isReadonly": false,<br />                         "value": "-1",<br />                         "defaultValue": "8",<br />                         "possibleValues": [<br />                             "-1",<br />                             "2",<br />                             "4",<br />                             "6",<br />                             "8"<br />                         ],<br />                         "type": "STRING",<br />                         "id": "twaPeriod"<br />                     },<br />                     "autoAnswerOnDon": {<br />                         "timestamp": 0,<br />                         "status": "ENABLED",<br />                         "isLockable": true,<br />                         "isReadonly": false,<br />                         "value": "-1",<br />                         "defaultValue": "true",<br />                         "possibleValues": [<br />                             "-1",<br />                             "true",<br />                             "false"<br />                         ],<br />                         "type": "BOOLEAN",<br />                         "id": "autoAnswerOnDon"<br />                     },<br />                     "twa": {<br />                         "timestamp": 0,<br />                         "status": "ENABLED",<br />                         "isLockable": true,<br />                         "isReadonly": false,<br />                         "value": "-1",<br />                         "defaultValue": "off",<br />                         "possibleValues": [<br />                             "-1",<br />                             "off",<br />                             "85db",<br />                             "80db"<br />                         ],<br />                         "type": "STRING",<br />                         "id": "twa"<br />                     }<br />                 },<br />                 "productId": "c01a",<br />                 "localFilePath": null,<br />                 "version": null,<br />                 "lastModified": 1516779596000,<br />                 "lastActivated": null,<br />                 "createdAt": null,<br />                 "displayVersion": "",<br />                 "groupIds": null,<br />                 "userIds": null,<br />                 "includeMobileHosts": false,<br />                 "scheduleStartDate": null,<br />                 "scheduleStartTime": null,<br />                 "scheduleEndTime": null,<br />                 "deploymentType": null,<br />                 "id": "12ab5e49-5855-44c5-b515-9261db5d61fb"<br />             }'</span></strong><br /> <br />  </div></div></div> Tue, 26 Mar 2019 17:47:49 +0000 mramakrishnan 1477 at https://developer.plantronics.com https://developer.plantronics.com/article/asset-management-apis#comments