Pass back grades via LTI Assignment and Grade Services (AGS)

domain: imsglobal.org · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. During an LTI 1.3 resource link launch, inspect the https://purl.imsglobal.org/spec/lti-ags/claim/endpoint claim in the id_token JWT; it provides the lineitems URL, the optional lineitem URL (if a single pre-created grade column exists), and the available scopes.
  2. If no lineitem URL is provided and you need to create a grade column, POST a lineitem object (with label, scoreMaximum, and optional resourceId) to the lineitems URL using Content-Type: application/vnd.ims.lis.v2.lineitem+json.
  3. Obtain a scoped Bearer token by making a JWT Bearer client assertion request to the platform's OAuth 2.0 token endpoint, requesting the scope https://purl.imsglobal.org/spec/lti-ags/scope/score; use the token endpoint URL from the platform's OIDC configuration.
  4. POST the score to {lineitem_url}/scores using Content-Type: application/vnd.ims.lis.v1.score+json; the body must include userId (the learner's subject claim from the launch JWT), activityProgress (e.g., Completed), gradingProgress (e.g., FullyGraded), scoreGiven, scoreMaximum, and timestamp.
  5. To read back results, GET {lineitem_url}/results using the scope https://purl.imsglobal.org/spec/lti-ags/scope/result.readonly; results are returned as application/vnd.ims.lis.v2.resultcontainer+json.
  6. Store the lineitem URL alongside the LTI launch session so future score submissions reference the correct grade column without requiring a new launch.

Known gotchas

Related routes

Read course roster and post grades using LTI Advantage services (NRPS and AGS)
imsglobal.org · 5 steps · unrated
Configure LTI Assignment and Grade Services (AGS) to create a new line item for an external assessment tool and post a score without requiring a prior student launch
imsglobal.org · 6 steps · unrated
Configure LTI Advantage Assignment and Grade Services (AGS) to create a line item programmatically and post scores without a preceding student launch
imsglobal.org · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans