Hi everyone,
We are working on LTI 1.3 implementation. We have deep-linking working and now trying to implement score service. However, we keep getting 500 (Internal Server Error) from the token service. We have followed steps outlined here
OAuth2 Endpoints - Canvas LMS REST API Documentation.
We are generating a token request via a POST /login/oauth2/token with a grant_type of client_credentials and a properly formed JWT signed with our private key. The Scope is https://purl.imsglobal.org/spec/lti-ags/scope/score
Here is a sample Score json.
{
"activityProgress": "Completed",
"gradingProgress": "FullyGraded",
"scoreGiven": 32.0,
"scoreMaximum": 100.0,
"timestamp": "\/Date(1572302484610)\/",
"userId": "bf14f352-16f3-498d-8f65-780b80b8c581"
}
We are able to get the tokens from other platforms. Is there anything we should be doing to get a valid token back?
Found the solution, so posting in case others run into this. We were sending the timestamps like iat and nbf enclosed in quotation marks. They should have been sent as numbers.