The Canvas headers include a link object (usually), in form: Link: <https://canvas.url/api/v1/[...]?page=1&per_page=10>; rel="current", <https://canvas.url/api/v1/[...]?page=2&per_page=10>; rel="next", <https://canvas.url/api/v1/[...]?page=1&per_page=10>; rel="first", <https://canvas.url/api/v1/[...]?page=15&per_page=10>; rel="last"

In this case, we need to download every page from 1 to 15 to capture all data. This function parses the response object intelligently, using only HEAD requests, to figure out these page requirements.

paginate(x)

Arguments

x

a httr response object

Value

unparsed responses

Examples

not_run({ resp <- canvas_query(url, args, "HEAD") get_pages(resp) })