Summary
The Digication API can be used as an alternative to the CSV import (documented here) for the creation of users and courses, and the task of enrolling users into courses.
For a daily sync of account and enrollment data, most schools opt to implement a school-hosted component that pulls data from a source (for example, the registrar's database), converts the data to the CSV format Digication expects, and posts the resulting file to Digication. Instead of this daily batch approach, the API allows a school to develop custom software with the ability to modifiy user and course records one at a time.
The basic protocol and format of the Digication API are documented here: https://support.digicationclassic.com/hc/en-us/articles/360014418972-API-Basics
Available Methods
Course Methods:
Method: course.list - lists courses
params:
courseid - digication internal id for the course, to specify a specific course, optional
page - defaults to 1
limit - courses per page, defaults to 250, max 250
title - string for partial match in the course title, optional
sort - title or createdts, defaults to title
returns:
courses[n][startdts] - start date of the course
courses[n][enddts] - end date of the course
courses[n][courseid] - digication internal id for the course
courses[n][title] - title of the course
courses[n][coursenumber] - course number
courses[n][otherid] - unique syncid of the course
courses[n][description] - course description
Method: course.create - creates a course
params:
coursetype - one of COURSE COMMUNITY or ASSESSMENT
title - title of the course
coursenumber - course number, optional
description - course description, optional
otherid - unique syncid of the course
startdts - start date of the course
enddts - end date of the course
gradebookf - enables the gradebook, defaults to 0
attendancef - enables attendance, defaults to 0
discussionsf - enables discussions, defaults to 0
portfoliosf - enables portfolios, defaults to 0
assignmentf - enables assignments, defaults to 0
standardf - enables standards, defaults to 0
openenrollf - enables self enrollment, defaults to 0
returns:
courseid - digication internal id of the course
otherid - unique syncid of the course
Method: course.update - updates a course
params:
same as course.create except:
courseid - the digication internal id of the course
coursetype - optional on update
title - optional on update
otherid - optional on update
startdts - optional on update
enddts - optional on update
returns:
courseid - digication internal id of the course
otherid - unique syncid of the course
Method: course.retrieve - returns course information for a course
params:
courseid - the digication internal id of the course
otherid - unique syncid of the course, required only if courseid is not specified
returns:
courseid - the digication internal id of the course
title - title of the course
coursenumber - course number, optional
description - course description, optional
otherid - unique syncid of the course
startdts - start date of the course
enddts - end date of the course
Enrollment Methods:
Method: course.listusers - lists users (and groups) registered to a course
params:
courseid - the digication internal id of the course
otherid - unique syncid of the course, required only if courseid is not specified
returns:
users[n][userid] - digication internal id of the user
users[n][firstname] - first name of the user
users[n][lastname] - last name of thee user
users[n][username] - username of the user
users[n][otherid] - unique syncid of the user
users[n][school_email] - official email of the user
users[n][notify_email] - preferred contact email of the user
users[n][facultyf] - 1 if the user has faculty for the course, otherwise 0
roles[n][roleid] - digication internal id of the group
roles[n][rolename] - name of the group
roles[n][facultyf] - 1 if the group has faculty access for the course, otherwise 0
Method: course.useradd - registers a user to a course
params:
course_otherid - unqiue syncid of the course
user_otherid - unique syncid of the user
facultyf - enables faculty access for the user, default 0
returns:
nothing
Method: course.userremove - removes a user from a course
params:
course_otherid - unqiue syncid of the course
user_otherid - unique syncid of the user
returns:
nothing
User Methods:
Method: user.create - creates a user account
params:
username - username of the user
otherid - unique syncid of the user
firstname - first name of the user
lastname - last name of the user
password - password of the user, optional
timezonekey - time zone of the user, defaults to system time zone
email - official email of the user
facultyf - 1 if the user is faculty, defaults to 0
alumnif - 1 if the user is alumni, defaults to 0
deactivatef - 1 if the user is deactivated, defaults to 0
email_verified - enables automatic log in to support helpdesk as email address, default 0
returns:
otherid - unique syncid of the user
userid - digication internal id of the user
Method: user.update - updates user information for a user
params:
same as user.create except:
userid - digication internal id of the user
username - optional on update
otherid - optional on update
firstname - optional on update
lastname - optional on update
email - optional on update
returns:
otherid - unique syncid of the user
userid - digication internal id of the user
Method: user.retrieve - returns user information for a user
params:
one of the following:
userid - digication internal id of the user
otherid - unique syncid of the user
username - username of the user
email - email address of the user
returns:
userid - digication internal id of the user
otherid - unique syncid of the user
username - username of the user
school_email - official email address of the user
firstname - first name of the user
lastname - last name of the user
birthday - the user's birthday
major - the user's major
graduation - the user's graduation year
website - the user's website
activef - 0 if the user is deactivated, otherwise 1
logindts - date of the user's last login
facultyf - 1 if the user is faculty, otherwise 0
Comments
Please sign in to leave a comment.