Khalibre LMS (Preview)

With the Khalibre LMS Connector, you can extend LMS capabilities by integrating with the system of your choice through the APIs. This connector allows you to manage course published in Khalibre platform for your organization. You can book learner into the course that your organization has published and query their progress. You can also see available courses published in the platform and detail course information.
This connector is available in the following products and regions:
Service | Class | Regions |
---|---|---|
Copilot Studio | Premium | All Power Automate regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
Logic Apps | Standard | All Logic Apps regions except the following: - Azure Government regions - Azure China regions - US Department of Defense (DoD) |
Power Apps | Premium | All Power Apps regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
Power Automate | Premium | All Power Automate regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
Contact | |
---|---|
Name | Khalibre Support |
URL | https://www.khalibre.com/contact-us |
contact@khalibre.com |
Connector Metadata | |
---|---|
Publisher | Khalibre |
Website | https://www.khalibre.com/ |
Privacy policy | https://www.khalibre.com/privacy-policy |
Categories | Productivity;Collaboration |
Khalibre LMS connector
Khalibre is the provider of the Khalibre Platform, used by Crosswired and other collaboration and capacity building portals. We are a social enterprise, formed in 2010 in Singapore and Cambodia to deliver business technology solutions, capacity building and learning platform for medium and large organizations globally. With the Khalibre LMS Connector, you can extend LMS capabilities by integrating with the system of your choice through the APIs.
Prerequisites
You will need the following to proceed:
- Khalibre platform account
- Your organization enables API Integrations for learning management system
- OAuth 2.0 credentials generated for secure API Integrations
How to get OAuth 2.0 credentials
Login as an organization admin and navigate to organization Settings > API Integrations. Under OAuth 2.0 credentials section, you can obtain the client ID & secret. You can also delete the credentials or generate new credentials.
Supported triggers
With When an HTTP request is received as a trigger, you can provide the endpoint where Khalibre platform will send trigger action for the following operations:
- Course created (event type: course.created)
- Course status is changed from draft to public.
- Course updated (event type: course.updated)
- Course information is updated.
- Course deleted (event type: course.deleted)
- Course status changes from public to draft.
- Course status is changed from public to archive.
- Course is deleted.
- Community updated (event type: community.updated)
- Community name is updated.
- Course share (event type: course.shared)
- Community admin added shared course into the community.
- Course unshared (event type: course.unshared)
- Shared course is removed from the community.
- Course progress status (event type: course.status)
- Learner made progress and course status is changed.
- Course progress activity (event type: course.activity)
- Learner made progress and completed new course activity.
You can register your endpoint to Khalibre platform through organization Settings > API Integrations. Under Webhooks section, enable the webhooks and provide your endpoint to Webhook URL field. Khalibre platform will make an HTTP post to this URL when there is any event related to the course.
Supported Actions
Read courses
: Returns all organization courses with visibility set to API.Read course detail
: Returns course detail information for a given course ID.Progress by course ID
: Returns all learner progresses for a given course ID.Progress by email
: Returns all learner progresses for a given learner email address.Book course
: Book a learner to a given course ID.
Note - Course ID here is equivalent to class ID in Khalibre platform.
You can also obtain a link to API developer doc through organization Settings > API Integrations > API developer doc.
Creating a connection
The connector supports the following authentication types:
Default | Parameters for creating connection. | All regions | Not shareable |
Default
Applicable: All regions
Parameters for creating connection.
This is not shareable connection. If the power app is shared with another user, another user will be prompted to create new connection explicitly.
Name | Type | Description | Required |
---|---|---|---|
Host name | string | Host name without http/https (Example: khalibre.com). | True |
Client ID | string | Client ID for OAuth2 credentials. | True |
Client secret | securestring | Client secret for OAuth2 credentials. | True |
Throttling Limits
Name | Calls | Renewal Period |
---|---|---|
API calls per connection | 100 | 60 seconds |
Actions
Book course |
Book course for learner by email address |
Progress by course ID |
Show learner progress by course ID. |
Progress by email |
Show learner progress by learner email. |
Read course detail |
Read course detail by course ID. |
Read courses |
Read list of courses exposed from your organization. |
Book course
Book course for learner by email address
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
communityId
|
communityId | True | integer |
Community ID that learner will join to access the course. |
courseId
|
courseId | True | integer |
Course ID that learner will book. |
email
|
learnerEmail | True | string |
Learner email address. |
firstname
|
learnerFirstname | string |
Learner firstname. |
|
lastname
|
learnerLastname | string |
Learner lastname. |
Progress by course ID
Show learner progress by course ID.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Course ID
|
courseId | True | integer |
Course ID that organization has published. |
Pagination
|
page | integer |
Current pagination |
|
Page size
|
pageSize | integer |
Number of items to be fetched per request. |
Returns
Name | Path | Type | Description |
---|---|---|---|
facets
|
facets | array of |
facets |
items
|
items | array of object |
items |
activityOverdue
|
items.activityOverdue | boolean |
activityOverdue |
bookingDate
|
items.bookingDate | string |
bookingDate |
classTitle
|
items.classTitle | string |
classTitle |
id
|
items.community.id | integer |
id |
name
|
items.community.name | string |
name |
completedActivity
|
items.completedActivity | integer |
completedActivity |
courseId
|
items.courseId | integer |
courseId |
courseOverdue
|
items.courseOverdue | boolean |
courseOverdue |
emailAddress
|
items.emailAddress | string |
emailAddress |
firstName
|
items.firstName | string |
firstName |
lastName
|
items.lastName | string |
lastName |
recentUpdateDate
|
items.recentUpdateDate | string |
recentUpdateDate |
status
|
items.status | integer |
status |
statusDescription
|
items.statusDescription | string |
statusDescription |
title
|
items.title | string |
title |
totalActivity
|
items.totalActivity | integer |
totalActivity |
lastPage
|
lastPage | integer |
lastPage |
page
|
page | integer |
page |
pageSize
|
pageSize | integer |
pageSize |
totalCount
|
totalCount | integer |
totalCount |
Progress by email
Show learner progress by learner email.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Learner email
|
learnerEmail | True | string |
Learner email address. |
Pagination
|
page | integer |
Current pagination |
|
Page size
|
pageSize | integer |
Number of items to be fetched per request. |
Returns
Name | Path | Type | Description |
---|---|---|---|
facets
|
facets | array of |
facets |
items
|
items | array of object |
items |
activityOverdue
|
items.activityOverdue | boolean |
activityOverdue |
bookingDate
|
items.bookingDate | string |
bookingDate |
classTitle
|
items.classTitle | string |
classTitle |
id
|
items.community.id | integer |
id |
name
|
items.community.name | string |
name |
completedActivity
|
items.completedActivity | integer |
completedActivity |
courseId
|
items.courseId | integer |
courseId |
courseOverdue
|
items.courseOverdue | boolean |
courseOverdue |
emailAddress
|
items.emailAddress | string |
emailAddress |
firstName
|
items.firstName | string |
firstName |
lastName
|
items.lastName | string |
lastName |
recentUpdateDate
|
items.recentUpdateDate | string |
recentUpdateDate |
status
|
items.status | integer |
status |
statusDescription
|
items.statusDescription | string |
statusDescription |
title
|
items.title | string |
title |
totalActivity
|
items.totalActivity | integer |
totalActivity |
lastPage
|
lastPage | integer |
lastPage |
page
|
page | integer |
page |
pageSize
|
pageSize | integer |
pageSize |
totalCount
|
totalCount | integer |
totalCount |
Read course detail
Read course detail by course ID.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Course ID
|
courseId | True | integer |
Course ID that organization has published. |
Returns
Name | Path | Type | Description |
---|---|---|---|
additionalBookingNote
|
additionalBookingNote | string |
additionalBookingNote |
bannerUrl
|
bannerUrl | string |
bannerUrl |
classTitle
|
classTitle | string |
classTitle |
communities
|
communities | array of object |
communities |
id
|
communities.id | integer |
id |
name
|
communities.name | string |
name |
courseExpiryPeriod
|
courseExpiryPeriod | integer |
courseExpiryPeriod |
courseId
|
courseId | integer |
courseId |
createdDate
|
createdDate | string |
createdDate |
currency
|
currency | string |
currency |
dayBeforeBook
|
dayBeforeBook | integer |
dayBeforeBook |
dayBeforeCancel
|
dayBeforeCancel | integer |
dayBeforeCancel |
key
|
deliveryMethod.key | string |
key |
value
|
deliveryMethod.value | string |
value |
description
|
description | string |
description |
endDate
|
endDate | string |
endDate |
expectedDuration
|
expectedDuration | integer |
expectedDuration |
languages
|
languages | array of string |
languages |
modifiedDate
|
modifiedDate | string |
modifiedDate |
price
|
price | double |
price |
startDate
|
startDate | string |
startDate |
timezone
|
timezone | string |
timezone |
title
|
title | string |
title |
totalActivity
|
totalActivity | integer |
totalActivity |
Read courses
Read list of courses exposed from your organization.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Page size
|
pageSize | integer |
Number of items to be fetched per request. |
|
Pagination
|
page | integer |
Current pagination |
|
Keyword
|
keywords | string |
Search keyword to filer course. |
Returns
Name | Path | Type | Description |
---|---|---|---|
facets
|
facets | array of string |
facets |
items
|
items | array of object |
items |
additionalBookingNote
|
items.additionalBookingNote | string |
additionalBookingNote |
bannerUrl
|
items.bannerUrl | string |
bannerUrl |
classTitle
|
items.classTitle | string |
classTitle |
communities
|
items.communities | array of object |
communities |
id
|
items.communities.id | integer |
id |
name
|
items.communities.name | string |
name |
|
items.courseExpiryPeriod | integer |
courseExpiryPeriod |
|
items.courseId | integer |
courseId |
createdDate
|
items.createdDate | string |
createdDate |
currency
|
items.currency | string |
currency |
|
items.dayBeforeBook | integer |
dayBeforeBook |
|
items.dayBeforeCancel | integer |
dayBeforeCancel |
key
|
items.deliveryMethod.key | string |
key |
value
|
items.deliveryMethod.value | string |
value |
description
|
items.description | string |
description |
|
items.expectedDuration | integer |
expectedDuration |
languages
|
items.languages | array of string |
languages |
modifiedDate
|
items.modifiedDate | string |
modifiedDate |
|
items.price | double |
price |
timezone
|
items.timezone | string |
timezone |
title
|
items.title | string |
title |
|
items.totalActivity | integer |
totalActivity |
endDate
|
items.endDate | string |
endDate |
startDate
|
items.startDate | string |
startDate |
|
lastPage | integer |
lastPage |
|
page | integer |
page |
|
pageSize | integer |
pageSize |
|
totalCount | integer |
totalCount |