Constructs a request object to interact with the Canvas Learning Management System's API using specific course and quiz parameters. Requires environment variables for Canvas domain, course ID, and API token.
Value
A httr2
request object pre-configured with the Canvas domain, course ID, and API token, see ?canvas_env_vars
.
See browseVignettes("httr2")
for how to work with request objects.
Details
canvas_api()
is for API operations ("endpoints") beginning with api/v1/courses
and documented at https://canvas.instructure.com/doc/api/index.html.
In particular, the Classic Quizzes API is documented at https://canvas.instructure.com/doc/api/quizzes.html.
canvas_new_quiz()
is for New Quizzes, which instead is at api/quiz/v1/courses
and documented at https://canvas.instructure.com/doc/api/new_quizzes.html.
Examples
if (FALSE) { # \dontrun{
library(tidyverse)
library(httr2)
# Get information on all course modules
modules <- canvas_api("modules") |>
req_perform() |>
resp_body_json()
# We need to compact() to remove NULL elements for map_dfr() to work
modules |> map_dfr(compact)
} # }