Symptom
You to post learning events to SAP SuccessFactors Learning to indicate that the user has finished a learning item and is complete, passed, failed, or some other completion status.
Various people in your organization post learning events to SAP SuccessFactors Learning: users can post the completion of self-assigned courses, and supervisors and administrators can post the completion of courses for users. Exactly how each user role can post learning events depends on your configuration.
Environment
- Learning Management System (LMS)
Reproducing the Issue
Please read / refer to Learning OData API Reference (OData API Reference)
Cause
Limitations for Record Learning Event to Learning History Web Service
We have built the Record Learning Event to Learning History web service with some limitations which affect how you should build your web service client.
Limitation or Assumption |
Note |
---|---|
E-Signatures not supported |
We do not support e-signatures because e-signatures have special identity verification rules that should be handled within SAP SuccessFactors Learning and not by an outside client. |
Financial actions not supported |
Financial actions (such as tallying the cost of an event and how it is distributed among the participants) is not supported. Use the record learning wizard (financial) in SAP SuccessFactors Learning administration. |
Updates to learning events not supported |
If the web service client makes a mistake when recording the learning event, it can be corrected or deleted in SAP SuccessFactors Learning administration. |
Users cannot record for scheduled offerings |
If you call the web service as an administrator, you can record learning events based on a scheduled offering. If you call the web service as a user or supervisor, you cannot record learning based on the scheduled offering. |
Array limiting |
Each API call is an array of 10 users and their learning items that should be posted to SAP SuccessFactorsLearning. If you pass more than 10 combinations of learning items and users in an array, the web service will not work synchronously and you can see performance degradation. |
Call limiting |
We do not support more than 100 calls a minute. |
Attachments |
We do not support attachments. |
Enumerated list discovery |
We do not support the discovery of enumerated lists. For example, you cannot get a list of completion status values that are permitted when you post an event to SAP SuccessFactors Learning. |
Event post permissions |
The user role calling the web service must have permission, for the associated learning item, to post the results of a learning event. |
Default Permissions for Learning Items
Learning items have two process control flags: Supervisors can record Learning events for subordinates and User can record Learning Events for themselves. When the former is true, supervisors can post learning completions for that learning item into their employees' learning records. When the latter is true, users themselves can post events for that learning item into their own records.
You can globally control the default settings for these two flags. Every new learning item will default to true if you set these to true. Change them in SAP SuccessFactorsLearning administration: System Admin Configuration User Settings User Learning Event Recording Defaults .
This Field… |
…Is Used as Follows |
---|---|
User can record learning events for items |
If you select this checkbox, any new learning items have their User can record Learning Events for themselves checkbox select ( Learning Items Summmary ). Learning events can also be recorded automatically. For example, online items can have automatic recording. |
Supervisors can record learning events for items |
If you select this checkbox, any new learning items have their Supervisors can record Learning Events for subordinates checkbox select ( Learning Items Summmary ). Learning events can also be recorded automatically. For example, online items can have automatic recording. |
Approval Processes Between User Post and Learning Records
You can insert an approval process between the moment that users post learning events and the time that the event is included in their learning records. For example, you might want a supervisor to verify that the user has attended a seminar before the user gets credit in learning records.
These two settings are global to the tenant (company). Every user or supervisor in your system and every learning item or external event uses the processes you define here. Change them in SAP SuccessFactors Learning administration: System Admin Configuration User Settings User-recorded Learning Event Approval Process Settings .
This Field… |
…Is Used as Follows |
---|---|
Require approval when users record internal events |
When selected, if users attempt to post a learning item completion to learning records, they must first get approval. You associate an approval process with this control. This setting only applies if users have access to the workflow Access Record Learning Events. |
Require approval when users record external events |
When selected, if users attempt to post an external event completion to learning records, they must first get approval. You associate an approval process with this control. This setting only applies if users have access to the workflow Access Record External Learning Events. |
Resolution
Posting Leanring Events to the LMS with a Web Sevice
Post Learning Events as Users or Supervisors with a Web Service
POST learning/odatav4/public/user/learningEvent/v1/recordLearningEvents
body - Users or Supervisors
{ "componentTypeID": "COURSE", "componentID": "CRSE-345", "revisionDate": 1428506077000, "studentID" : "bsmith" "completionStatus":"COMPLETE", "completionDate":1428506077000, "completionTimeZone":"US/Eastern", "grade":"A", "revisionNumber":"1", "creditHours":0.5, "cpeHours":0.5, "contactHours":0.5, "totalHours":0.5, "instructorName":"Sally Marshall", "scheduleOfferingID":1234 }
Post Learning Events as Administrators with a Web Service
POST learning/odatav4/public/admin/learningEvent/v1/recordLearningEvents
This call shows the service, criteria (if applicable), and entity that you want for the business task you want to accomplish. To see descriptions of the data of the entity, data types, related entities, and requirements, please call the service metadata: GET /learning/odatav4/public/<admin or user>/<service name>/<version>/$metadata.
body - Admin enrollment
{ "componentTypeID": "COURSE", "componentID": "CRSE-345", "revisionDate": 1428506077000, "studentID" : "bsmith" "completionStatus":"COMPLETE", "completionDate":1428506077000, "completionTimeZone":"US/Eastern", "grade":"A", "revisionNumber":"1", "creditHours":0.5, "cpeHours":0.5, "contactHours":0.5, "totalHours":0.5, "instructorName":"Sally Marshall", "scheduleOfferingID":1234 }
}
Keywords
- record event learning history webservices
- webservices learning history
- learning history webservices