API - Syllabus Access

API - Syllabus Access


FYI: All lines within code blocks are numbered, regardless of whether there is more than one line of code provided.

An API is available to retrieve statistics related to views of syllabi. This is helpful for integrating Concourse with other systems to support applications like student retention, utilization, and notifications.

This article covers documentation related to the initial version (v0) of the syllabus access API.

Request

To retrieve JSON for syllabus accesses, first see Retrieval under the API - General Usage article.

For the syllabus_access operation, you can provide any course or external ID. You must be a system administrator to access any course JSON. For example:

  1. /api?version=0&operation=syllabus_access&external_id=ACCT_101_SPR_2025

or

  1. /api?version=0&operation=syllabus_access&course_id=3707

Requests can also be made programmatically by supplying your API key in the X-AUTH-KEY request header, providing your root domain, and appending either of the aforementioned paths.

Response

This API produces output in a JSON format. Below is a formatted excerpt of what you might find when retrieving JSON for syllabus accesses.

  1. {
  2. "id":"281", "external_id":"ECON313_12919_202020",

  3. "totals": {
  4. "managers": 0,
  5. "developers": 1,
  6. "instructors": 4,
  7. "assistants": 0,
  8. "students": 14,
  9. "guests": 3
  10. },
  11. "registrants": [
  12. {
  13. "email": "jsmith34@col.edu",
  14. "external_id": "jsmith34",
  15. "group": "Students",
  16. "first_access": 1527822700,
  17. "last_access": 1527825600,
  18. "total_accesses": 15
  19. },
  20. {
  21.   "email": "mali@col.edu",
  22.   "external_id": null,
  23.   "group": "Students",
  24.   "first_access": null,
  25.   "last_access": null,
  26.   "total_accesses": 0
  27. }
  28. ],
  29. "30_day_log": [
  30. {
  31. "email": "jsmith34@col.edu",
  32. "external_id": "jsmith34",
  33. "when": 1527825600,
  34. "group": "Students"
  35. },
  36. {
  37. "email": "kjones@col.edu",
  38. "external_id": null,
  39. "when": 1527824300,
  40. "group": "Students"
  41. },
  42. {
  43. "email": "gperry2@col.edu",
  44. "external_id": "gperry2",
  45. "when": 1527822700,
  46. "group": "Guests"
  47. },
  48. ...
  49. ]
  50. }

Note: courses and users which have no external ID or accesses will contain null in the output.

Dates and times adhere to the Unix format.

Criteria

All authenticated visits to a syllabus that is viewable are logged. This includes individuals who have system and domain-level permissions.

Public visits and visits to a syllabus where the syllabus group permission is set to None are not logged.

Totals

These counts represent the total number of times a syllabus has been viewed by the given group. These are running totals, meaning these counts do not change in the event users are assigned to different groups or they are dropped from a course.

Registrants

This includes summary statistics (first access, last access, and total accesses) and the current group of all currently registered users in the course. If a user is dropped from the course, they will no longer be included here, though their visits will be preserved in the group totals above.

30 Day Log

This provides an account of all visits to a syllabus over the past thirty days, including Guests. If you require a precise history of visits to syllabi, be sure to warehouse this information in another system at least every 30 days.


    • Related Articles

    • Syllabus Access

      Syllabus Access is a tool that provides insight into syllabus views. This tool is supported by an API and two new reports available in the Report Center. How to Use Syllabus Access Open a syllabus and click on the Users tab (it really is that ...
    • API - Syllabus Content

      FYI: All lines within code blocks are numbered, regardless of whether there is more than one line of code provided. An API is available to retrieve the content, permissions, and metadata related to syllabi. This is helpful for integrating Concourse ...
    • API - Syllabus Changes

      FYI: All lines within code blocks are numbered, regardless of whether there is more than one line of code provided. An API is available to retrieve statistics related to edits made to syllabi. This is helpful for integrating Concourse with other ...
    • API - General Usage

      FYI: All lines within code blocks are numbered, regardless of whether there is more than one line of code provided. An API is available to retrieve certain data stored by Concourse. This article covers documentation related to the initial version ...
    • API - Course Listing

      FYI: All lines within code blocks are numbered, regardless of whether there is more than one line of code provided. An API is available to retrieve a listing of courses stored in Concourse. This is helpful for integrating Concourse with other systems ...