Get lineitem all parameters

nzykava
Journeyman

Get lineitem all parameters

Hi!

I send the grade for assessment to a canvas that looks like this:

URL: https://lti-service.svc.schoology.com/lti-service/tool/6979384059/services/assignment-grade/v2p0/sec...

 

 {
    timestamp: DateTime.now,
    scoreMaximum: 1,
    scoreGiven: 0.2,
    activityProgress: 'Completed',
    gradingProgress: 'FullyGraded',
    userId: 1122,
    'https://schoology.schoology.com/lti/submission':
     {
       new_submission: true,
       submission_type: 'basic_lti_launch',
       submission_data: my_launch_url
     }
  }

 


The score is displayed correctly, but if I want to get information about the assessment, I don't see my launch URL.
If I make a request to this URL https://lti-service.svc.schoology.com/lti-service/tool/6979384059/services/assignment-grade/v2p0/sec... I only get label, resourceLinkId, scoreMaximum and resourceId, but I don't see my_launch_url.

Please help me to understand where I can get launch_url. Or maybe schoology doesn't support this functionality?







5 Replies
jhexgalarza
Padawan

Hi @nzykava , did you resolve your problem ? I am also wondering if Schoology support this kind of submissions.

nzykava
Journeyman

Hello! I couldn't resolve my problem. And I think that Schoology doesn't support all lineitems attributes 🙁

hanmari
Hobbyist

When I decode the JWT I receive from Schoology I search for the https://purl.imsglobal.org/spec/lti-ags/claim/endpoint entity tag which should have the following attributes:

  • lineitems
  • lineitem
  • scope

While I can find the lineitems and scope attributes, I cannot find the lineitem attribute which contains the precise url to which I should send the Assessment and Grade Services (AGS) 2.0 outcomes. When the lineitem attribute is not available, I should be able to query the url provided under the lineitems attribute and receive back a list of available lineitem endpoints. However, when I have tried this I only have ever received back an empty array. I would appreciate it if a technician at Schoology could help us determine how to get the grade passback URL that we need.

jhexgalarza
Padawan

The only way I can get the lineitem  claim is by adding all the properties for the lineitem object in Deeplinking creation step for the type LtiResourceLink. You can find them here: https://www.imsglobal.org/spec/lti-dl/v2p0#lti-resource-link.  

mikeyoung
Padawan

Hi Hanmari! You might've already figured this out, but you have to create your own lineitem by sending a correct POST request with the resourcelinkid and label that matches the original resource link to the lineitems URL.

All of this is documented in this somewhat buried PDF: https://help.powerschool.com/xvwqy85873/attachments/xvwqy85873/Schoology_App_Center_Developers_Hubtk....

Yes, this works differently than other LMSs like Canvas, which is annoying ¯\_(ツ)_/¯ But it's not technically—from what I can tell—against the rules of the LTI spec.