Integrate external systems with the FROST Admin APIs
|
Title |
Integrate external systems with the FROST Admin APIs |
|
Heading |
How to integrate external systems with the FROST Admin APIs? |
|
Description |
API Integration For any 3rd party application to integrate with FROST API, they need to generate the token first using the “client_cridentials” grant type of Identity server. Fetch token via client_credentials by client application need to do the following steps:
Prerequisites ClientId: This will be shared by the super admin user and should be used during access token generation. Client secret: This will be shared by the super admin user and should be used during access token generation. UserId: This will be shared by the super admin user. This is an encrypted userId that will be used to pass the ‘created_by’ values in the tenant & user create API. |
|
Tenant Creation API |
This API will create a new tenant in the system. |
|
POST Request |
API : https://<DOMAIN_NAME>/admin/api/tenant/create |
|
Header |
authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkVFOEMxNDdDNTAwM0ZBRDBFODAxQ0EwQjYxNDFDQTBCN0Q5Qzg3ODMiLCJ0U7wwWgqsLKKGbVO8cfdWTXBWrHr2Mn75Bigw0xPZ2QpZBLKq0soMaq6YiFBSJKNlSdrzxgg (Identity Server Access Token) |
|
Payload |
{"Name":"Test Tenant","DefaultOrg":"Test Tenant","DefaultFirstName":"Vinod","DefaultLastName":"Kumar","DefaultUserName":"vinod.kumar","DefaultUserEmail":"vinod.kumar@learningmate.com","Description":"","Platforms":"4,6,7,2","ShortCode":"TES01","URL":"https://unifiedfrost-qa.learningmate.co/auth/#/login/TES01","CaseURL":"https://api.unifiedfrost-qa.learningmate.co/server/api/v1/TES01/ims/case/v1p0","SubscriptionEndDate":"2099-12-30T00:00:00.000Z","LandingPlatform":4,"IsSelfRegistration":false,"DomainNames":"","PlayModuleLOR":false,"PlayAssessmentLOR":false,"LTIOut":false,"LoginWithGoogle":false,"UserSignUp":false,"NumberOfRepositories":1,"TenantTypeId":2,"NotifyEmailsTo":"vinod.kumar@learningmate.com","SignUpRoleId":null,"SignUpLandingPlatform":"","IdentityServerAuth":false,"IsBypassFrost":false,"BypassUrl":"","IsDomainCheck":false,"JsonPath":"","JsonSize":0,"DisplayName":"TEST","LogoOrDisplayName":2,"Logo":"","BrandingLogo":"","OverrideBranding":false,"IsLtiSso":false,"EditorMode":"old","EditorType":"","IsLmsConfig":false,"IsEditAccessOnLMS":false,"IsWiris":false,"CreatedBy":"xm_VM3r4Qr7ct876ZvnUKw","IsCanvasLTIExport":false,"DuplicateResourceOption":1,"IsKalturaMediaGallery":false,"KalturaMediaGalleryUrl":"","ExportTypes":"3,4","ExportTypeLtiVersion":"","DeepPublishLtiVersion":1,"IsHomepageOnCanvas":false,"IsSyllabusOnCanvas":false,"IsLtiEmbedOnDeepPublish":false,"IsQuickLinkNavigation":false,"LtiEmbedOptionTypes":"","QuickLinkOptions":""} |
|
Response |
{ "Status": "Success", "Message": "Tenant created successfully", "TenantId": "e3de9c58-67ed-4701-9ba8-2c00fe499887" } |
Tenant Creation Payload Details
|
Name |
IsValuesMandatory |
Default |
Allowed Values |
Description |
|---|---|---|---|---|
|
Name |
Yes |
- |
Test Tenant |
Tenant Name |
|
DefaultOrg |
Yes |
- |
Test Tenant |
Name of the Level 1 Default Organization of the Tenant |
|
DefaultFirstName |
Yes |
- |
Test |
Tenant Admin First Name |
|
DefaultLastName |
Yes |
- |
Admin |
Tenant Admin Last Name |
|
DefaultUserName |
Yes |
- |
Test.User |
Tenant Admin User Name |
|
DefaultUserEmail |
Yes |
- |
Test.User@lm.com |
Tenant Admin User Email |
|
Description |
No |
- |
Test Tenant |
Tenant Description |
|
Platforms |
Yes |
- |
4,6,7,2,3 |
Tenant Platforms |
|
ShortCode |
Yes |
- |
TT001 |
Short Code of the Tenant |
|
URL |
No |
- |
“” |
Tenant Login URL |
|
CaseURL |
No |
- |
“” |
Case Url needed for Align Platform |
|
LandingPlatform |
Yes |
- |
2 |
Lading Platform for a user after successful login |
|
IsSelfRegistration |
No |
FALSE |
FALSE |
Enable/Disable User Self-Registration to Review Align |
|
DomainNames |
No |
- |
learningmate.com,gmail.com,mailinator.com |
Allowed domains for new user sign up |
|
LoginWithGoogle |
No |
FALSE |
TRUE |
Enable/Disable Login with Google |
|
UserSignUp |
No |
FALSE |
TRUE |
Enable/Disable New User Sign Up |
|
TenantTypeId |
Yes |
- |
1 |
Tenant Type Id. (Internal/Sandbox/Client) |
|
NotifyEmailsTo |
No |
- |
Test.User2@lm.com |
Notify Tenant Creation To |
|
SignUpRoleId |
No |
- |
“” |
Role for new user sign up |
|
SignUpLandingPlatform |
No |
- |
4,6,7,2,3 |
Platforms access for new user sign up |
|
IdentityServerAuth |
No |
FALSE |
FALSE |
SSO with External Identity Server |
|
IsBypassFrost |
No |
FALSE |
FALSE |
Enable/Disable Bypass Frost Login URL |
|
BypassUrl |
No |
https://abcd.com |
Bypass Frost Login URL |
|
|
IsDomainCheck |
No |
FALSE |
FALSE |
Check domain of new user sign up |
|
**JsonPath |
No |
- |
“” |
Json Path |
|
**JsonSize |
No |
- |
0 |
Json Size |
|
DisplayName |
Yes |
- |
Test Tenant 02 |
Display Name of Tenant |
|
LogoOrDisplayName |
Yes |
- |
1 |
Display Logo Or DisplayName on Tenant Switch |
|
Logo |
Yes |
- |
“” |
Tenant Logo Path |
|
BrandingLogo |
No |
- |
“” |
Branding Logo Path |
|
OverrideBranding |
No |
FALSE |
FALSE |
Override Branding Logo and replace in place of Tenant Logo |
|
IsLtiSso |
No |
FALSE |
FALSE |
Enable/Disable LTI SSO |
|
EditorMode |
Yes |
- |
new |
Editor Mode new/old |
|
IsEditAccessOnLMS |
No |
FALSE |
TRUE |
Enable/Disable Edit Access on LMS |
|
CreatedBy |
Yes |
- |
xm_VM3r4fdT6ZvnUKw |
A user who is creating user account, its a encrypted value. |
|
IsCanvasLTIExport |
No |
FALSE |
TRUE |
Enable/Disable Canvas LTI Export as native pages |
|
DuplicateResourceOption |
Yes |
- |
1 |
Duplicating Global Resources(Ask me Everytime/Convert to Local Resource/Retain Global Resource) |
|
IsKalturaMediaGallery |
No |
FALSE |
FALSE |
Enable/Disable Kaltura Media Gallery |
|
KalturaMediaGalleryUrl |
No |
- |
Kaltura Media Gallery Url |
|
|
ExportTypes |
No |
- |
1,2,3,4,5,6,7,8,9 |
Delivery Channels |
|
ExportTypeLtiVersion |
No |
- |
[{"Id":8,"LtiVersion":2}] |
Export Type for Canvas LTI |
|
DeepPublishLtiVersion |
No |
- |
3 |
Deep-Publish Type |
|
IsHomepageOnCanvas |
No |
FALSE |
TRUE |
Enable/Disable Setting Course Homepage on Canvas |
|
IsSyllabusOnCanvas |
No |
FALSE |
TRUE |
Enable/Disable Setting the Syllabus on Canvas |
|
IsLtiEmbedOnDeepPublish |
No |
FALSE |
TRUE |
Enable/Disable Display LTI embed |
|
IsQuickLinkNavigation |
No |
FALSE |
TRUE |
Enable/Disable Quick link navigation |
|
LtiEmbedOptionTypes |
No |
- |
1,2 |
Lti Embed Option Types |
|
QuickLinkOptions |
No |
- |
1,2 |
Quick Link Options |
Note: ** These two attributes have been deprecated for use, but currently exist as a attribute with (JsonPath = “” & JsonSize = 0) values in payload.
|
User Creation API |
This API is used to create a new user in the system |
|
POST Request |
API : https://<DOMAIN_NAME>/admin/api/user/create |
|
Header |
authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkVFOEMxNDdDNTAwM0ZBRDBFODAxQ0EwQjYxNDFDQTBCN0Q5Qzg3ODMiLCJ0U7wwWgqsLKKGbVO8cfdWTXBWrHr2Mn75Bigw0xPZ2QpZBLKq0soMaq6YiFBSJKNlSdrzxgg (Identity Server Access Token) |
|
Payload |
{"email":"vinod.kumar+1@learningmate.com","confirmemail":null,"password":"","confirmPassword":"","firstName":"Vinod","lastName":"Kumar","UserTypeName":"admin","UserId":null,"Active":1,"OrganizationType":1,"OrgId":"923cb092-e3c9-4523-aeac-e2429a3745c0","Platforms":[4,6,7,2],"UserName":"Vinod.Kumar1","CreatedBy":"xm_VM3r4Qr7ct876ZvnUKw","UserTypeId":1,"UniqueId":"Vinod.Kumar1","fromApp":"OAUTH","TenantId":"59580a97-be52-46f0-a8f3-2a3153a8ee93","RoleId":"db254d8c-85d0-4256-9626-ffbdf763137d","InstituteName":"LearningMate"} |
|
Response |
{ "status": "Create User: user created successfully/ExistingUser", "userId": "1e5a6537-0843-4b62-be29-64a1494b4044" } |
User Creation Payload Details
|
Name |
IsValuesMandatory |
Default |
Allowed Values |
Description |
|---|---|---|---|---|
|
|
Yes |
- |
"test.user@lm.com" |
User email address |
|
confirmemail |
Yes |
- |
||
|
password |
No |
- |
||
|
confirmPassword |
No |
- |
||
|
firstName |
Yes |
- |
"TestUser18" |
User’s First Name |
|
lastName |
Yes |
- |
"Test" |
User’s Last Name |
|
UserTypeName |
Yes |
- |
"admin" |
User type i.e. admin, student, etc |
|
UserId |
No |
- |
null |
|
|
Active |
Yes |
- |
1 |
AccountType i.e. Active or Inactive |
|
OrganizationType |
Yes |
- |
1 |
Organization Type |
|
OrgId |
Yes |
- |
"260a9c39-a9d5-48ee-96f8-6a78050d9470" |
OrganizationId a GUID |
|
Platforms |
Yes |
- |
{[3]} |
Platform on which user needs to create. |
|
UserName |
Yes |
- |
"User18" |
username for user |
|
CreatedBy |
Yes |
- |
"xm_VM3r4Qr7ct876ZvnUKw" |
A user who is creating a user account, is an encrypted value. |
|
UserTypeId |
Yes |
- |
1 |
UserType Id i.e admin=1 etc |
|
UniqueId |
Yes |
- |
"User18" |
Unique id of user |
|
fromApp |
No |
“” |
“” |
|
|
TenantId |
Yes |
- |
"7c7cc344-4f51-482e-8a99-65d81a70a34b" |
TenantId a GUID |
|
RoleId |
Yes |
- |
"0b0cbb3a-53f6-49ba-9b50-6e4f8e4f6bbd" |
Role Id as GUID |
|
InstituteName |
Yes |
- |
LearningMate |
Organization Name |