Best Of
Re: How to Determine if Discussion has Feedback from Instructor via API
@Joshua.V.999
I believe I am tagging the correct individual (we met at D2L Fusion 2026 in Phoenix in the Builders Lab), but I think I may have found my answer.
Hi @Stephen.R.50 and @Matt.W.287 — thank you both for looking into this. I wanted to circle back and share that I did find a working approach, in case it helps anyone else who lands here.
The key insight is that discussion feedback isn't exposed through the Discussions API — it surfaces through the Grades API, provided the topic is associated with a grade item. The "Overall Feedback" an instructor enters in Quick Eval or the discussion grading interface is written to the grade value's Comments field, not to anything under /discussions/.
Here's the chain I ended up with (LE v1.95, LP v1.58):
1. Pull grade objects and find the discussion-linked ones
GET /d2l/api/le/1.95/{orgUnitId}/grades/
Each grade object may carry an AssociatedTool property. For discussions, AssociatedTool.ToolId === 3000, and AssociatedTool.ToolItemId is the discussion TopicId. That gives you a topic → grade-item map:
if (tool && tool.ToolId === 3000 && tool.ToolItemId) {
discussionGradeMap[tool.ToolItemId] = gradeObject.Id;
}
(For reference, ToolId === 51000 is Quizzes, and assignments come through the Dropbox API — same pattern works for those.)
2. Enumerate topics so you have names/IDs to join against
GET /d2l/api/le/1.95/{orgUnitId}/discussions/forums/
GET /d2l/api/le/1.95/{orgUnitId}/discussions/forums/{forumId}/topics/
3. Pull grade values for each discussion-linked grade item
GET /d2l/api/le/1.95/{orgUnitId}/grades/{gradeObjectId}/values/?pageSize=200
4. Read feedback off the returned GradeValue
This was the piece that took me a few tries. A student has instructor feedback when GradeValue.Comments.Html or GradeValue.Comments.Text is non-empty:
var hasFeedback = v.GradeValue && v.GradeValue.Comments && ((v.GradeValue.Comments.Html && v.GradeValue.Comments.Html.trim().length > 0) || (v.GradeValue.Comments.Text && v.GradeValue.Comments.Text.trim().length > 0));
Worth noting: I initially checked Comments.Content (the RichText shape documented elsewhere) and got zero hits across courses I knew had feedback. Dumping the raw GradeValue JSON for a graded student showed the payload uses Html and Text. If you're getting empty results, that's the first thing I'd check.
The same object also answers "who left it and when":
GradeValue.LastModified→ feedback timestampGradeValue.LastModifiedBy→ the instructor's user ID (resolvable to a name via the classlist/enrollments API)
Taking the max LastModified across students with non-empty comments gives you a per-topic "last feedback given" date, which is what my dashboard surfaces.
I verified this against a course where an instructor had graded a discussion via Quick Eval — all six students who posted came back with both a grade and populated Comments.Html.
The important caveat — where your answer still holds
This only works for discussion topics associated with a grade item. For a topic with no linked grade item, there are no grade values to inspect, and I found no reliable API path to determine whether an instructor left feedback. The ScoreOutOf/ScoredCount fields on the topic object only tell you a score was entered, not that written feedback exists. So for ungraded discussions, "not available via API" appears to still be the correct answer.
It's also specifically the grading feedback that's detectable — an instructor replying inline within the thread as a post is a different thing and isn't captured here.
Hope this saves someone else some time.
Monthly Brightspace Guided Training Webinars
All customers have the opportunity to attend monthly Brightspace Guided Training Webinars and get their questions answered with the help of the D2L Training Team.
Each month we have the following two sessions:
Brightspace Guided Training: What’s New for the Month
Want to stay on top of the latest and greatest in Brightspace being released this month? This session will cover all the newest release information for this month!
Brightspace Guided Training: Q&A
You bring the agenda. Ask your Brightspace questions about teaching, course building, training, supporting or administering in our open question and answer session.
Sign up for future sessions here!
To make sure you never miss a session, bookmark this discussion thread. You’ll receive notifications when new training opportunities are shared.
Look forward to seeing you there!
Re: Product and Services Preview updates
The August 2026 Product and Services Preview is now available.
Maryna.Z.8542
Re: Release Notes Updates
The September 2026/20.26.09 Preview Release Notes are now live and ready for review!
Please note, this is only a preview for the upcoming Brightspace version, which we will begin to roll out on September 3, 2026. All features described are subject to change before then.
Maryna.Z.8542
Re: Peer assessment tool
Hi @Michael.C.442 , that is the public roadmap and shows you what is coming. We have our internal roadmap where we prioritize items for the tool. When the item is ready and reaching its release date, it'll show up on the public roadmap.
Jackie
Jackie.G.212
Re: Creating Shared Folders in Analytics Builder
Hi Rachel,
Thank you for your questions.
Yes, the sharing analyses option is available, and we strongly recommend doing that. The video below demonstrates how to do this. I hope that it helps.
Regards,
Michel
Michel.S.892
Re: Release Notes Updates
The August 2026/20.26.08 Preview Release Notes are now live and ready for review!
Please note, this is only a preview for the upcoming Brightspace version, which we will begin to roll out on August 6, 2026. All features described are subject to change before then.
Also, the July 2026/20.26.07 Release Notes have been republished to include the following changes:
- Updated the D2L Lumi Feedback – New integrations, expanded file support, and reliability improvements | Updated release note.
- Updated the Discussions – Anonymous Discussion posts are visible when assessing learners and viewing statistics | New release note with a note about assessing individual learners in Discussions.
- Added a General Announcement to notify users of the July 2026 update to Brightspace minimum supported browser versions.
Claire.D.5469
Re: Community Updates
Explore Community, Academy, Knowledge, and Localization at Fusion 2026!
Fusion 2026 is almost here, and we’re excited to connect with you in Phoenix, AZ from July 8–10! Stop by the Community, Knowledge, and Localization Lab to meet our teams, share your feedback, review early design concepts, and help us improve the resources and support experiences you use.
While you’re there, you can also take on the Community Bingo Challenge, complete the Community CSAT Survey, explore Course Package Translation Services, and scan the Fusion Challenge QR code to collect 150 points.
Can’t make it to Phoenix? You can still join some of the activities virtually and help shape the future of the Brightspace Community. We can’t wait to connect, learn, and build better Community experiences together!
➡️ Discover everything happening at Fusion 2026
Attendance in Gradebooks
Is there a way to include attendance grades into a gradebook and to also be included in the final grading?
📚 Happy World Book Day!
April 23 is World Book Day, and you know our Community is all about learning and sharing knowledge with one another!
So we want to know… what's the one book that has stuck with you long after you finished it? The one you still think about, recommend to others, or that makes you want to reset your mind just to re-read it?
Drop it in the comments and share why it left a mark. It can be any genre. We'd love to discover your hidden gems! 👇
Community.T.9768


