This feature is currently available to a limited number of early-access customers.
We’ll share further updates once we’re ready to widen availability.
Overview
The Evidence and Activity log OData feeds are built upon the existing Evidence feeds but return data from the new Activity log as well as evidence. The feeds work in the same way as the feeds on which they’re based, supporting filtering, ordering etc. The only difference beyond the additional activity data is that a maximum result page size is set by default to support improved performance and stability.
Feed: Learning Plan Evidence with Activity data
Path: /odata/1.0/LearningPlanEvidenceWithActivityData
Schema
All fields defined in the Learning Plan Evidence feed will be returned plus the following additional fields:
| ActivityLogId | int | the unique identifier for the activity record or null if not applicable (i.e. is not an Activity log). |
| Description | string | a description of the activity or null if not applicable (i.e. is not an Activity log). |
| RejectionReason | string | a description for why the activity was rejected or null if not applicable (i.e. is not an Activity log). |
| Status | string | the status of the activity, which is one of the following values or null if not applicable (i.e. is not an Activity log): Submitted, Accepted, Rejected, Resubmitted. |
| IsActivityLog | boolean | true for activity records. |
Example:
Paging
To return a large number of rows, you will need to use paging with the new feeds. There is a default maximum page size which will be used for unbound queries. For more information see the Paging section in the OData API Performance User Guide.
Feed: Users with Expansion to Evidence and Activity data
Path: odata/1.0/Users?&$expand=UserEvidencesWithActivityData_Evidences
Schema
All fields defined in the User Evidence feed expanded with the navigation property UserEvidencesWithActivityData_Evidences will be returned. All Evidences fields plus the following additional activity-specific fields:
| ActivityLogId | int | the unique identifier for the activity record or null if not applicable (i.e. is not an Activity log). |
| Description | string | a description of the activity or null if not applicable (i.e. is not an Activity log). |
| RejectionReason | string | a description for why the activity was rejected. Null if not applicable (i.e. is not an Activity log). |
| Status | string | the status of the activity, which is one of the following values: Submitted, Accepted, Rejected, Resubmitted or null if not applicable (i.e. is not an Activity log). |
Examples:
Best practice
Import only the tables and columns you need. Apply filters (e.g. date range, status, etc.) to reduce data volume and improve refresh performance. Build pagination into queries from the start. See the OData API Performance User Guide for more information.
Activity log to Evidence field mappings
The table below describes how Activity data maps to evidence OData fields.
Evidence Field |
Data Type |
ActivityLogs Mapping |
|---|---|---|
ActivityLogId |
int |
Id |
LearnerId |
int |
LearnerId |
SubmissionDate |
datetime |
Timestamp |
SpentTime |
int |
HoursLogged + MinutesLogged |
ComponentId |
int |
ComponentId |
SpentTimeType |
string |
0 => PaidWorkingHours 1 => OwnTimeBeingPaid 2 => OwnTimeReceivingTOIL Anything else => None |
EvidenceKind |
string |
Always ActivityLog |
ConfirmedStatus |
string |
Submitted => PendingAssessment Accepted => Accepted Rejected => Referred Resubmitted => PendingAssessment |
LatestStatus |
string |
Submitted => PendingAssessment Accepted => Accepted Rejected => Referred Resubmitted => PendingAssessment |
CompletedDate |
datetime |
DateOfActivity |