1 About
Purpose of this document is to outline the auth integration process for Education Service Providers who require SSO functionality between WizIQ and their custom applications.
2 Current SSO support
WizIQ supports Oauth2 authentication as of now.
3 User Registration Process
Admin/ESP of the concerned academy logs in to WizIQ and uploads user information csv file in a prescribed format (check below). The information of all the users provided in the csv is updated to database and is validated through email verification process.
CSV Header Format
Email,FirstName,LastName,About,Phone,Designation,Organization,Manager,Roles,Address1,Address2,City,State,Country,ZipCode
4 API End Points for Oauth
Following are the API's provided by WizIQ for SSO:
4.1 Get access_token
4.1.1 Request
End Point
|
|
Method
|
POST
|
Headers
|
Content-Type : application/x-www-form-urlencoded
|
Params
|
grant_type:password
client_id:lPmPCXrCr/1K90zBxNKNzaQS0hIY1hi7
client_secret :
ZsqN2/txZnjKe73SGdFwWQo3z6Ekwj9UAuJIiTXCZ2j46qCW1fd9g==
password:*******
|
4.1.2 Success Response
{
"access_token": "9rf5zBSyLcfoaAzKrqXSlAep5cYChHQ3lZX1t2fWrXrLZ-dfG9jcX19KSXKK11h sDfj8qpv1sXZnHkhPipcdneNZjcJ4TJRKlgfmalOFtkk58pvAPknhKMTgHc2WcanaYxgB8o7yXprN4s278h9WzA5— JIWHdW- VLT14BAbDVazovr4qS 3Ci5G03IEV0T1feYZznq_0Cuh6V S7Jchb3pAUCK9fkftKQPc0mU hdA4VwH1uQkxU82NA86 38AQfZqDV70DvY Oad0tiREJrJl75iZk8S2z5V0NV9_yvTH4Gu4Xnjq4ZbIf- ahZEf2dUjXfj4svLkMgDeqEAiugydFoPv7fQ5Vj2EEp4icshPZqVmajDRNymLjv8LuObf b2P2cixWyr6oMXLtT9EPZcgV5lWjkMaTf0",
"token_type": "bearer",
"expires_in": 1799,
"refresh_token": "ab43c9b01faf400496f0ed32b0fb1681",
"as:client_id": "lPmPCXrCr/1K90zBxNKNzaQS0hIY1hi7",
"userName": "jkmdbr@rediffmail.com",
".issued": "Tue, 28 Mar 2017 12:24:43 GMT",
".expires": "Tue, 28 Mar 2017 12:54:43 GMT"
}
4.1.3 Failure Response
{
"error": "invalid_clientId",
"error_description": "Client 'lPmPCXrCr/1K90zBxNKNzaQS0hIY1hi7' is not registered in the system."
}
{
"error": "invalid_grant",
"error_description": "Must be a valid Email Address"
}
{
"error": "invalid_grant",
"error_description": "username or password is incorrect."
}
4.2 Get Refresh Token
4.2.1 Request
End Point
|
|
Method
|
POST
|
Headers
|
Content-Type :
application/x-www-form-urlencoded
|
Params
|
grant_type:refresh_token
client_id:lPmPCrCr/1K90zBxNKNzaQS0hIY1hi7
client_secret:4ZsqN2/txZnjKe73SGdFwWQo3z6
Ekwj9UAuJIiTXCZ2j46qCW1fd9g==
refresh_token:ab43c9b01faf400496f0ed32b0fb1681
|
4.2.2 Success Response
{
"access_token": "OQ2Xaj1lGjOn2iAbOdVkOUkcSYZ65_sGNeudYX29I_- tptITZaDoHkr9WDhpD7BHSXh1VDng8CRmhW6NCQdLw0gAEQa67-eC- p0le3WOiTL8A137xt9sD6pPdXR8kIBRYt9U6uQqvNjmyunOAYD3NIAFtu- QFZXmSbdwT7ML7Eoj7TQAIYPml3vcif7w70ZhwssDRyl0gKs9PqGUwyP-Pgwlasi- iQHWGsix5T-HKC1YFT3DqzMgP2hd6jH8GoiN1F K7VGTHWM1KtcldhkDB vbVJk7Te JkqiyopWKzwGbGI5PFDEYCauHoQrzxoEfH_qrtcjQB YeW_O5X N5 DN8OuHVfNGr68yaV08p9V0JvZQFjj2rXrbUliX6LX 4EL0DYYCRX6lDmF vRd9fLV23OQWafyDfFKjxcC qW7z68B kQswjWAWFWf",
"token_type": "bearer",
"expires_in": 1799,
"refresh_token": "13ad1d2b90814d99847929bd9d522529",
"as:client_id": "lPmPCXrCr/1K90zBxNKNzaQS0hIY1hi7",
"userName": "jkmdbr@rediffmail.com",
".issued": "Tue, 28 Mar 2017 12:27:57 GMT",
".expires": "Tue, 28 Mar 2017 12:57:57 GMT"
}
4.2.3 Failure Response
{
"error": "invalid_grant"
}
{
"error": "invalid_clientId",
"error_description": "Client 'lPmPCXrCr/1K90zBxNKNzaQS0hIY1hi7' is not registered in the system."
}
4.3 Check IsValidLogin
4.3.1 Request
End Point
|
|
Method
|
POST
|
Headers
|
Content-Type :
application/x-www-form-urlencoded
Authorization - bearer
39uDJEMPsK_HGQISb3wYZHrqYKVB8NDpO40hXOpAmQGZkRIekxXqfOrLi038TMsWkjs8z5e99UwMtPXZb3B2-HkkyFPGbdb5D1MZEW4I6KY8oJsZu3PG3LJfRm98KKECNFyNsS6Z0I7OQKgu257d6VkfvfVDm05-SbR_17faEseUVIFpW0m0s89PTLHQBCeqhOJzoJihsOur6tIRUTGGF7M07GhbpNsXk2tVd0TQYzXelndepx3bZI3j_f74LvrXNbwGuaI3RFiL0_gdKoL3qrTN6S500TQtesrKB5ltNsFTH-Givf21adTpxVIH-Gw0fL7JxRIiW6DKRuQBJIGhypbQIGZIeFgsov1LHCpV-rERWLEJpdgdXM6kmTNpMhP5RsLaiGsVTeh8O490fiNweejGqROKRob7tSWXzLrQq1_FOJlb
|
Params
|
client_id:lPmPCXrCr/1K90zBxNKNzaQS0hIY1hi7
refresh_token:ab43c9b01faf400496f0ed32b0fb1681
|
4.3.2 Success Response
{
"httpStatusCode": 200,
"responseMessage": "true"
}
4.3.3 Failure Response
Status : 400 Bad Request
{
"message": "refresh_token not found."
}
Status : 401 Unauthorized
{
"message": "Authorization has been denied for this request."
}
4.4 For Logout
4.4.1 Request
End Point
|
|
Method
|
POST
|
Headers
|
Content-Type :
application/x-www-form-urlencoded
Authorization - bearer
39uDJEMPsK_HGQISb3wYZHrqYKVB8NDpO40hXOpAmQGZkRIekxXqfOrLi038TMsWkjs8z5e99UwMtPXZb3B2-HkkyFPGbdb5D1MZEW4I6KY8oJsZu3PG3LJfRm98KKECNFyNsS6Z0I7OQKgu257d6VkfvfVDm05-SbR_17faEseUVIFpW0m0s89PTLHQBCeqhOJzoJihsOur6tIRUTGGF7M07GhbpNsXk2tVd0TQYzXelndepx3bZI3j_f74LvrXNbwGuaI3RFiL0_gdKoL3qrTN6S500TQtesrKB5ltNsFTH-Givf21adTpxVIH-Gw0fL7JxRIiW6DKRuQBJIGhypbQIGZIeFgsov1LHCpV-rERWLEJpdgdXM6kmTNpMhP5RsLaiGsVTeh8O490fiNweejGqROKRob7tSWXzLrQq1_FOJlb
|
Params
|
client_id:lPmPCXrCr/1K9zBxNKNzaQS0hIY1hi7
refresh_token:ab43c9b01faf400496f0ed32b0fb1681
|
4.4.2 Success Response
{
"httpStatusCode": 200,
"responseMessage": "true"
}
4.4.3 Failure Response
Status : 400 Bad Request
{
"message": "refresh_token not found."
}
4.5 Get User
4.5.1 Request
End Point
|
|
Method
|
POST
|
Headers
|
Content-Type :
application/x-www-form-urlencoded
Content-Type -
application/x-www-form-urlencoded
Authorization - bearer
39uDJEMPsK_HGQISb3wYZHrqYKVB8NDpO40hXOpAmQGZkRIekxXqfOrLi038TMsWkjs8z5e99UwMtPXZb3B2-HkkyFPGbdb5D1MZEW4I6KY8oJsZu3PG3LJfRm98KKECNFyNsS6Z0I7OQKgu257d6VkfvfVDm05-SbR_17faEseUVIFpW0m0s89PTLHQBCeqhOJzoJihsOur6tIRUTGGF7M07GhbpNsXk2tVd0TQYzXelndepx3bZI3j_f74LvrXNbwGuaI3RFiL0_gdKoL3qrTN6S500TQtesrKB5ltNsFTH-Givf21adTpxVIH-Gw0fL7JxRIiW6DKRuQBJIGhypbQIGZIeFgsov1LHCpV-rERWLEJpdgdXM6kmTNpMhP5RsLaiGsVTeh8O490fiNweejGqROKRob7tSWXzLrQq1_FOJlb
|
4.5.2 Success Response
Status : 200 OK
{
"city": null,
"state": null,
"country": "India",
"gender": null,
"displayName": "vibhor",
"name": "VIBHOR ANAND",
"wizIQId": 5927329,
"packageId": 0,
"timezoneId": 23,
"userType": 1,
"email": "jp200034@gmail.com",
"mobileNumber": null,
"smallUserImagePath": "//d2dmszldu8of4z.cloudfront.net/ut/ust/nav.gif",
"mediumUserImagePath": "//d2dmszldu8of4z.cloudfront.net/ut/umt/nav.gif",
"largeUserImagePath": "//d2dmszldu8of4z.cloudfront.net/ut/ult/nav.gif",
"imageURL": null,
"firstName": "VIBHOR",
"lastName": "ANAND",
"profileURL": "vibhor-anand5927329",
"mobilePhone": null,
"homePhone": null,
"workPhone": null,
"dob": null,
"isActive": true,
"address": null,
"espId": 242808,
"academyEmail": "JP200034@gmail.com",
"subDomainURL": "lms.wiziq.com"
}
4.5.3 Failure Response
Status : 401 Unauthorized
{
"message": "Authorization has been denied for this request."
}
4.6 For Redirect
4.6.1 Request
End Point
|
|
Method
|
POST
|
Headers
|
Content-Type :
application/x-www-form-urlencoded
Content-Type -
application/x-www-form-urlencoded
Authorization - bearer
39uDJEMPsK_HGQISb3wYZHrqYKVB8NDpO40hXOpAmQGZkRIekxXqfOrLi038TMsWkjs8z5e99UwMtPXZb3B2-HkkyFPGbdb5D1MZEW4I6KY8oJsZu3PG3LJfRm98KKECNFyNsS6Z0I7OQKgu257d6VkfvfVDm05-SbR_17faEseUVIFpW0m0s89PTLHQBCeqhOJzoJihsOur6tIRUTGGF7M07GhbpNsXk2tVd0TQYzXelndepx3bZI3j_f74LvrXNbwGuaI3RFiL0_gdKoL3qrTN6S500TQtesrKB5ltNsFTH-Givf21adTpxVIH-Gw0fL7JxRIiW6DKRuQBJIGhypbQIGZIeFgsov1LHCpV-rERWLEJpdgdXM6kmTNpMhP5RsLaiGsVTeh8O490fiNweejGqROKRob7tSWXzLrQq1_FOJlb
|
Params
|
X-Auth-RefreshToken:88d1f0b408124b429ff7ae802aa868b8
X-Auth-ClientId:lPmPCXrCr/1K90zBxNKNzaQS0hIY1hi7
X-Auth-EspId:242808
|