04-25-2022 04:55 AM
Hi everyone
I have found an inconsistent behavior in the responses provided by the Software Suggestion API.
The same request would produce different responses, and only one of them seems to be correct and match the recommended versions shown (starred) in software download page.
For example, the following request:
https://api.cisco.com/software/suggestion/v2/suggestions/releases/productIds/ISR4321/K9
Sometimes produces 3 suggestions for "mdfId": "286006221" (see below) and sometimes produces 2 suggestions for "mdfId": "286006221" (see below). This lack of reliability and requirement for manual checking renders the API useless for automation purposes.
Have anybody faced an issue like this?
Who should I report this to?
Thanks!!
3 suggestions for "mdfId": "286006221" à Incorrect answer
[...]
{
"id": "3",
"product": {
"basePID": "ISR4321/K9",
"mdfId": "286006221",
"productName": "4321 Integrated Services Router",
"softwareType": "IOS XE Software"
},
"suggestions": [
{
"id": "1",
"isSuggested": "Y",
"releaseFormat1": "17.3.5",
"releaseFormat2": "17.3.5",
"releaseDate": "10-Feb-2022",
"majorRelease": "17",
"releaseTrain": "17.3",
"releaseLifeCycle": "MD",
"relDispName": "Amsterdam-17.3.5",
"trainDispName": "Amsterdam-17.3",
"errorDetailsResponse": null
},
{
"id": "2",
"isSuggested": "Y",
"releaseFormat1": "17.3.4a",
"releaseFormat2": "17.3.4a",
"releaseDate": "20-Jul-2021",
"majorRelease": "17",
"releaseTrain": "17.3",
"releaseLifeCycle": "MD",
"relDispName": "Amsterdam-17.3.4a",
"trainDispName": "Amsterdam-17.3",
"errorDetailsResponse": null
},
{
"id": "3",
"isSuggested": "Y",
"releaseFormat1": "16.12.5",
"releaseFormat2": "16.12.5",
"releaseDate": "31-Jan-2021",
"majorRelease": "16",
"releaseTrain": "16.12",
"releaseLifeCycle": "MD",
"relDispName": "Gibraltar-16.12.5",
"trainDispName": "Gibraltar-16.12",
"errorDetailsResponse": null
}
]
},
[...]
2 suggestions for "mdfId": "286006221" à Correct answer
[...]
{
"id": "1",
"product": {
"basePID": "ISR4321/K9",
"mdfId": "286006221",
"productName": "4321 Integrated Services Router",
"softwareType": "IOS XE Software"
},
"suggestions": [
{
"id": "1",
"isSuggested": "Y",
"releaseFormat1": "17.3.5",
"releaseFormat2": "17.3.5",
"releaseDate": "10-Feb-2022",
"majorRelease": "17",
"releaseTrain": "17.3",
"releaseLifeCycle": "MD",
"relDispName": "Amsterdam-17.3.5",
"trainDispName": "Amsterdam-17.3",
"errorDetailsResponse": null
},
{
"id": "2",
"isSuggested": "Y",
"releaseFormat1": "16.12.5",
"releaseFormat2": "16.12.5",
"releaseDate": "31-Jan-2021",
"majorRelease": "16",
"releaseTrain": "16.12",
"releaseLifeCycle": "MD",
"relDispName": "Gibraltar-16.12.5",
"trainDispName": "Gibraltar-16.12",
"errorDetailsResponse": null
}
]
},
[...]
05-05-2022 08:44 AM
Hi,
I noticed a similar behaviour for other API Calls.
If you query suggested release with or without images the lookup seems to traverse the category.
But for Devices like a C9800-CL-K9 the response contains the AireOS vWLC image because they are in the same category.
{ "paginationResponseRecord": { "pageIndex": "1", "lastIndex": "1", "totalRecords": "2", "pageRecords": "2", "selfLink": "https://api.cisco.com/software/suggestion/v2/suggestions/releases/productIds/C9800-CL-K9", "title": "Software Suggestions" }, "productList": [ { "id": "1", "product": { "basePID": "C9800-CL-K9", "mdfId": "284464214", "productName": "Virtual Wireless Controller", "softwareType": "Wireless LAN Controller Software" }, "suggestions": [ { "id": "1", "isSuggested": "Y", "releaseFormat1": "8.10.171.0", "releaseFormat2": "8.10.171.0", "releaseDate": "03-Mar-2022", "majorRelease": "8.10", "releaseTrain": "", "releaseLifeCycle": "", "relDispName": "8.10.171.0", "trainDispName": "", "errorDetailsResponse": null } ] }, { "id": "2", "product": { "basePID": "C9800-CL-K9", "mdfId": "286322605", "productName": "Catalyst 9800-CL Wireless Controller for Cloud", "softwareType": "IOS XE Software" }, "suggestions": [ { "id": "1", "isSuggested": "Y", "releaseFormat1": "17.3.5a", "releaseFormat2": "17.3.5a", "releaseDate": "03-Mar-2022", "majorRelease": "17", "releaseTrain": "17.3", "releaseLifeCycle": "MD", "relDispName": "Amsterdam-17.3.5a", "trainDispName": "Amsterdam-17.3", "errorDetailsResponse": null } ] } ], "status": "Success", "errorDetailsResponse": null }
Suggest Compatible didn't provide any response if PID and currentRelease is searched
{ "paginationResponseRecord": { "pageIndex": "1", "lastIndex": "1", "totalRecords": "2", "pageRecords": "2", "selfLink": "https://api.cisco.com/software/suggestion/v2/suggestions/compatible/productId/C9800-CL-K9?currentRelease=17.3.4", "title": "Software Suggestions" }, "suggestions": [ { "id": "1", "basePID": "C9800-CL-K9", "mdfId": "286322605", "productName": "", "softwareType": "IOS XE Software", "releaseFormat1": "", "releaseFormat2": "", "releaseDate": "", "majorRelease": "", "releaseTrain": "", "releaseLifeCycle": "", "relDispName": "", "trainDispName": "", "errorDetailsResponse": { "errorCode": "S3_INV_RELEASE", "errorDescription": "Please enter a valid release version", "suggestedAction": "", "inputIdentifier": "C9800-CL-K9" } },
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide