DEV Community

Bhavesh Pawar
Bhavesh Pawar

Posted on

What is AGS and When Does Your Edtech Product Actually Need It in 2026

If you've built an LTI integration and grades aren't syncing back to the LMS automatically, you're missing AGS. If you're building a new edtech product and wondering whether you need it at all - here's the clear answer.

What AGS is

AGS stands for Assignment and Grade Services. It's one of three services that make up LTI Advantage - the extended capability layer built on top of LTI 1.3.

When a student completes an activity in your external tool, AGS is what sends their score back to the LMS gradebook. Without AGS, instructors have to manually enter grades, your tool and the LMS stay disconnected, and the integration feels incomplete to every teacher who uses it.

AGS does two things specifically. First, it lets your tool create a gradebook column in the LMS for a specific assignment - called a line item. Second, it lets your tool post a score against that line item for a specific student.

That's the whole thing. It sounds simple. The implementation has some edges worth knowing.

When you need AGS

You need AGS if any of these apply to your product:

Your tool includes assessments, quizzes, or any activity where students receive a score that instructors need in their gradebook. Without AGS, those grades live only inside your tool and instructors work from two separate systems.

You're selling to schools or universities where grade passback is a procurement requirement. Most institutions that use Canvas, Moodle, Blackboard, or Brightspace expect LTI tools to sync grades automatically. Asking instructors to manually transfer grades is a fast path to low adoption.

You want your integration to feel native inside the LMS rather than like a separate tool bolted on. AGS is part of what makes an LTI integration feel complete.

When you don't need AGS

Not every edtech product needs grade passback. You can skip AGS if:

Your tool is purely content delivery - videos, reading materials, reference resources - where there's no score to report back. An interactive textbook or a content library doesn't need grade passback.

Your tool tracks completion or engagement but not grades. Some products report that a student completed an activity without assigning a numeric score. LTI can pass a simple completion status without full AGS implementation in some cases.

Your primary customers are individual instructors or self-directed learners rather than institutions using a centralized LMS gradebook.

How AGS works in practice

When an instructor sets up your tool in their LMS course, AGS lets you create a line item - essentially reserving a gradebook column for your activity. You can do this at launch time or proactively if you have Names and Role Provisioning Services access.

When a student completes the activity in your tool, you post a result to that line item using the AGS endpoint. The LMS receives it and populates the gradebook column for that student automatically.

The score format is a decimal between 0 and 1, representing the fraction of the maximum score. If the maximum is 100 and the student scored 85, you send 0.85. The LMS handles the display formatting.

One thing to know: AGS calls are made server-to-server, not during the user's session. You need to store the line item URL and the service token from the LTI launch to make AGS calls later. If you don't capture those at launch, you can't do grade passback after the fact.

AGS vs the old LTI 1.1 outcomes service

LTI 1.1 had a basic outcomes service for grade passback, but it was limited and unreliable. It only supported a single score per launch, the passback was asynchronous and often inconsistent across LMS platforms, and there was no way to create gradebook columns programmatically.

AGS is more reliable, supports multiple scores per student per activity, lets you create and manage line items programmatically, and works consistently across LMS platforms that support LTI Advantage. If you're on LTI 1.1 and grade passback is important to your product, migrating to LTI 1.3 with AGS is the upgrade that makes it work properly.

The platforms that support AGS

Canvas, Moodle, Blackboard, and D2L Brightspace all support AGS as part of their LTI Advantage implementation. Schoology also supports it. If you're targeting any of these platforms and your product has gradeable activities, AGS should be in your integration.

FAQ

Can we implement AGS without LTI 1.3?

No. AGS is part of LTI Advantage which requires LTI 1.3 as the foundation. If you're still on LTI 1.1, you'd need to migrate to LTI 1.3 before implementing AGS.

What if the instructor hasn't set up a gradebook column before our tool launches?

You can create the line item programmatically at launch time as part of your LTI launch handling. You don't need the instructor to set anything up manually - AGS gives your tool the ability to create the column itself.

Does AGS work for group activities or only individual student scores?

AGS posts scores per student per line item. Group activities where every student gets the same score are supported - you just post the same score for each student individually. There's no native group submission concept in AGS.

What's the difference between AGS and Deep Linking?

Deep Linking is a separate LTI Advantage service that lets instructors browse and select specific content from your tool to embed in their course. AGS handles grade passback. They're independent - you can implement one without the other depending on what your product needs.

Top comments (0)