cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
786
Views
0
Helpful
9
Replies

Issue with the 'Update SkillProfile By ID' WxCC API

Sundarsara
Level 1
Level 1

I'm having some issues with the 'Update SkillProfile By ID' API. I'm sending a PUT HTTP request to https://api.wxcc-us1.cisco.com/organization/<my orgID>/skill-profile/<skillprofileID>  with the following body

{
"id": "0787d7a8-6457-49b9-baa1-243c6ecXXXX",
"name": "WBG_POC_KISHORE",
"description": "POC",
"activeSkills": [
{
"id": "2339d9b6-4489-482b-a54b-521675baXXXX",
"skillId": "GSS_WBG_Password_SD",
"booleanValue": false,
"textValue": "",
"proficiencyValue": 8
}
],
"activeEnumSkills": [
{
"id": "",
"enumSkillValueId": ""
}
]
}
 
When doing so I get this response:
Please find the attachment.
Update_skill_profile_error.PNG
 
This suggests that it's a failed validation to me. I could see error message as ""skillID not found for given orgID.  Has anyone successfully used the "Update SkillProfile By ID" API?
1 Accepted Solution

Hi @Sundarsara , 

It seems the payload information which is provided in API doesn't work for me either. However I tried pasting payload information which i used in Postman and it worked. 

asmvar1234_0-1699364615549.png

You can use the same if you want 
{

"activeSkills": [
{
"booleanValue": false,
"createdTime": 0,
"id": "",
"lastUpdatedTime": 0,
"organizationId": "",
"proficiencyValue": 0,
"skillId": "",
"textValue": "",
"version": 0
}
],
"createdTime": 0,
"description": "",
"id": "",
"lastUpdatedTime": 0,
"name": "",
"organizationId": "",
"version": 0
}

View solution in original post

9 Replies 9

Sundarsara
Level 1
Level 1

Hi asmvar@1234 ,

Yup, its working fine now.

Thanks for your support.

Regards,

Sundarrajan S

Happy to Help ☺️

Hi asmvar@1234 ,

Thanks for the help, but when we try to change proficiency for multiple SKILLID's am getting below error,

Body:

"id": "0787d7a8-6457-49b9-baa1-243c6ec99f20",
"name": "WBG_POC_KISHORE",
"description": "POC",
"activeSkills": [
{
"booleanValue": false,
"createdTime": 0,
"id": "9542c608-f268-4438-b672-f0169e5d55f9",
"lastUpdatedTime": 0,
"organizationId": "c0a54e64-768f-4541-b747-eec09e225252",
"proficiencyValue": 5,
"skillId": "ffb958ba-bc2f-4d53-ad2a-4b530ead6db0",
"textValue": "",
"version": 0
},
{
"booleanValue": false,
"createdTime": 0,
"id": "2339d9b6-4489-482b-a54b-521675ba6de8",
"lastUpdatedTime": 0,
"organizationId": "c0a54e64-768f-4541-b747-eec09e225252",
"proficiencyValue": 6,
"skillId": "e71605e2-3694-4bed-91f0-5b7cceb88ee5",
"textValue": "",
"version": 0
}

]

}

 

Error:

 

409Response
 

 

{
"trackingId": "ccconfig_e7b0a386-adb0-46db-a1a3-8b4570180b21",
"error": {
"key": "409",
"reason": "Duplicate entry 'c0a54e64-768f-4541-b747-eec09e225252-0787d7a8-6457-49b9-baa1-243' for key 'UKifou2qufa9mdvfxi6bpwhqi98'",
"message": [
{
"description": "Duplicate entry 'c0a54e64-768f-4541-b747-eec09e225252-0787d7a8-6457-49b9-baa1-243' for key 'UKifou2qufa9mdvfxi6bpwhqi98'"
}
]
}
}

 

Hi @kkuppusamy1  , 

Ideally Skill Profile ID should be common and each skill definition ID will have individual value. As i noticed from the payload if your skill is not "Boolean" then you can keep value as blank and change only proficiency value. It does work for with one skill profile having multiple skills. sharing response. 

asmvar1234_0-1699429661281.png

Try this as payload for multiple skill definition

"activeSkills": [
{
"booleanValue": true,
"createdTime": 0,
"id": "",
"lastUpdatedTime": 0,
"organizationId": "",
"proficiencyValue": 0,
"skillId": "",
"textValue": "",
"version": 0
},
{
"booleanValue": true,
"createdTime": 0,
"id": "",
"lastUpdatedTime": 0,
"organizationId": "",
"proficiencyValue": 0,
"skillId": "",
"textValue": "",
"version": 0
}

],

 

Sundarsara
Level 1
Level 1

Hi asmvar@1234 ,

Thanks for your information.

We tried out with as your suggested information, now we could face new error message as below. 

Also, note we are using put method to skill profile to change the proficiency of skill definition

0e984d28-b0d0-4f8d-89a6-eb389bdd0796.PNG

Regards,

Sundarrajan S

Hi @Sundarsara , 

It seems the payload information which is provided in API doesn't work for me either. However I tried pasting payload information which i used in Postman and it worked. 

asmvar1234_0-1699364615549.png

You can use the same if you want 
{

"activeSkills": [
{
"booleanValue": false,
"createdTime": 0,
"id": "",
"lastUpdatedTime": 0,
"organizationId": "",
"proficiencyValue": 0,
"skillId": "",
"textValue": "",
"version": 0
}
],
"createdTime": 0,
"description": "",
"id": "",
"lastUpdatedTime": 0,
"name": "",
"organizationId": "",
"version": 0
}

Sundarsara
Level 1
Level 1

Hi asmvar@1234 

Thanks for your reply.

Yes, we tried out Get Skill Profiles API and we used that output response into Update SkillProfile By ID API. Still we are facing the same issue. So, could you please help us further.

Regards,

Sundarrajan S

 

Hi @Sundarsara , 

Here you go with Payload information which i did for put request. In my case I was using Skill definition as "Boolean". 

asmvar1234_0-1699337492602.png

If you liked the suggestion please mark it as solution provided.

Regards
Asmit



 

asmvar@1234
Spotlight
Spotlight

It does work for me.. Try to comment out payload which is not needed. Get output of Get Skill Profiles and then accordingly make the required changes in payload. 

asmvar1234_1-1699279469002.png