Ungraded quizzes and surveys are invisible in the Canvas to-do feed

Answer

Practice quizzes and surveys are excluded from Canvas's to-do feed unless an app explicitly asks for them (include[]=ungraded_quizzes) — and even then they only appear in a window from right now to one week out, with no backward window at all. A required survey can cost you participation points without ever appearing on your list.

What you see

Your instructor assigns a start-of-term survey, a syllabus quiz worth participation credit, or an ungraded practice quiz that the course still expects you to complete. Whichever it is, it never lands on your Canvas to-do list. You find out it existed when the participation points are already gone — or when a classmate mentions it in the group chat the day after it closed.

The same thing happens in reverse: a survey that was showing yesterday is not there today, because its due date has passed and there is no look-back at all. Regular assignments get a four-week backward window in the to-do feed (due_after: 4.weeks.ago, alongside the same feed's one-week forward limit). Ungraded quizzes get none.

Why it happens

Two separate mechanisms stack here.

First, they are opt-in. The to-do feed does not contain ungraded quizzes by default. An app reading the Canvas API has to pass the ungraded_quizzes include parameter to get them at all. Instructure's Users API reference describes the parameter plainly: it optionally includes ungraded quizzes "(such as practice quizzes and surveys) in the list," and notes they are returned under a quiz key instead of an assignment key — a different shape from the assignment items around it.

Second, when they do appear, the window is narrower. In Canvas's own source, the scope that assembles ungraded quizzes for the to-do feed takes due_after: Time.zone.now, due_before: 1.week.from_now as its defaults. Read that literally: the window opens at the current moment and closes one week out. Nothing overdue. Nothing further ahead than seven days. A survey due in ten days is not in the feed; the same survey is in the feed on day four; and one minute after it is due, it is out of the feed again, whether or not you completed it.

Neither behavior is a bug, and neither is stated in Instructure's Users API reference — the page documenting this endpoint. The result is that surveys, syllabus quizzes and ungraded checks can be required coursework and still never reach the list you are checking.

What you can do about it

A note on Margin

Margin does not currently request ungraded quizzes, so these items are not captured — a real gap, stated rather than implied.

Evidence

Evidence grade: PRIMARY (Canvas source plus Instructure's own documentation).