Service limitations in the reference implementation

Service limitations in the reference implementation

I cannot find any documentation for the reference implementation (at so some of the below may just be intended limitations, but I believe that some are bugs.

I have found that requests to the Names and Role Provisioning service ignores the rlid, role and groups query parameters. Similarly the limit, tag, resource_id and resource_link_id query parameters are ignored by the Line item service, and the Result service ignores the user_id query parameter.

A POST to the line items endpoint is returning a 302 redirect rather than a 201 Created response.

Section 2.2.5 of the Assignment and Grade Services spec states that a "tool MUST NOT change the id, resourceId, resourceLinkId and tag values" but a PUT request to a line item endpoint allows the resourceId and tag values to be updated. What is the reason in the spec behind prohibiting a tool from updating these values? I assume that the intention is that tools delete the line item and recreate it if they want to change the associated resourceId or tag value, but this means all the gradebook history will be lost for this column which is a shame. I think it would be helpful to allow tools to update these properties, but I agree that platforms should not (as per section 2.2.4).

The reference implementation is returning the resource ID of a line item as "resourceid" rather than "resourceId" as per the spec.

A GET request to an invalid line item endpoint (e.g. one which has been deleted) is generating a server error in the reference implementation.

When submitting a score (POST) the response received is a 201 with a body containing the result object, not a 204 with no content as per the spec. Furthermore, submitting a score with no score, a gradingProgress of "NotReady" and an activityProgress of "Initialized" does not delete the result (as suggested it should in section 3.4 of the spec), but sets the resultScore to "0.0" and the resultMaximum to null and is still returned by GET requests to the Result service. The responses from both the Score Publish and Result services are also using a string value for the resultScore property, rather than numeric value (see section of the spec).

Hopefully, someone can update the reference implementation to resolve these bugs and point me to the documentation which identifies the elements of the specs which are not supported. Thanks,

re: Service limitations in the reference implementation

Thank you for your feedback Stephen.  We will be reviewing / addressing the information provided and will respond as appropriate.