When you enroll a large number of
users in a course, first decide whether to enroll the users directly
or create a group and enroll it. Adobe recommends these best practices
for enrolling users in courses:
-
Enroll users directly in courses using
permissions-update
,
which allows you to enroll 1000, 10,000, or more users with a single
API call.
-
Add the users to a group and enroll it only if you plan to
reuse the group (for example, to enroll it in multiple courses).
In this case, you can add only 200 users at a time.
Enroll a large number of users (1000+) directly in a course
-
Get the
sco-id
of the course (see
Find courses and curriculums
).
-
Get the
principal-id
of each user you want
to enroll.
To do this, you can:
-
Call
principal-list
with
filters to list the users you want to enroll:
https://example.com/api/xml?action=principal-list&filter-type=user
&filter-type=sales
-
Read the values from a file.
-
Write a method that calls
permissions-update
with
multiple trios of
acl-id
,
principal-id
,
and
permission-id
:
https://example.com/api/xml?action=permissions-update
&acl-id=2007064258&principal-id=2007105030&permission-id=view&acl-id=2007064258&principal-id=2006258745&permission-id=view ...
-
The
acl-id
is the
sco-id
of
the course.
-
The
permission-id
is
view
to
enroll users.
-
The
principal-id
is unique in each trio.
If
any trios have incorrect information,
permissions-update
returns
an
ok
status, executes the correct trios, and does
not execute the invalid ones.
-
Call
permissions-info
to check that the
users have been enrolled:
https://example.com/api/xml?action=permissions-info
&acl-id=2007064258&filter-permission-id=view
Without
a
principal-id
, this call returns a list of all
principals enrolled in the course.
Unenroll a large number of users (1000+) from a course
-
Get
the
sco-id
of the course (see
Find courses and curriculums
).
-
Get the
principal-id
of each user you want
to remove. You can:
-
Call
principal-list
with
filters to list the users you want to unenroll:
https://example.com/api/xml?action=principal-list&filter-type=user
&filter-account-id=624520
-
Read the values from a file.
-
Write a method that calls
permissions-update
with
multiple trios of
acl-id
,
principal-id
,
and
permission-id
:
https://example.com/api/xml?action=permissions-update
&acl-id=2007064258&principal-id=2007105030&permission-id=denied&acl-id=2007064258&principal-id=2006258745&permission-id=denied ...
The
permission-id
is
denied
to
unenroll users from the course.
-
Call
permissions-info
to check that the
users have been removed:
https://example.com/api/xml?action=permissions-info
&acl-id=2007064258&filter-permission-id=denied
Enroll a large group (1000+) in a course
-
Create
a group.
-
With the XML API
-
Call
principal-update
and parse the response
for the
principal-id
:
https://example.com/api/xml?action=principal-update&type=group
&has-children=1&name=developersc5
-
With Adobe Connect
-
Central Create the group at Administration > Users and
Groups > New Group. Take the
principal-id
of
the new group from the browser URL.
-
Add the users you want to enroll to the group. You can use
an API call or Adobe Connect Central, but you can add only 200 users
at a time.
-
With the XML API
-
Call
group-membership-update
, using multiple trios
of
group-id
,
principal-id
, and
is-member=true
:
https://example.com/api/xml?action=group-membership-update
&group-id=4930296&principal-id=2006258745&is-member=true
&group-id=4930296&principal-id=2007343711&is-member=true
If
any trios have incorrect information,
group-membership-update
returns
an
ok
status, but the user in the incorrect trio
is not added to the group.
-
With Adobe Connect Central
-
Navigate to Administration > Users and Groups > Import.
You can import users from a CSV (comma-delimited) file with at least
a login ID for each user.
-
Get the
sco-id
of the course (see
Find courses and curriculums
) using
the
sco-id
of the specialized training folder that
contains the course.
-
Call
permissions-update
to enroll the group
in the course:
https://example.com/api/xml?action=permissions-update
&acl-id=2007064258&principal-id=2007105030&permission-id=view
Unenroll a large group (1000+) from a course
-
Call
permissions‑info
‑ on the
course, filtering for a
permission-id
of
view
:
https://example.com/api/xml?action=permissions-info
&acl-id=2007064258&filter-permission-id=view&filter-type=group
-
Parse the response for the
principal-id
of
the group:
<principal principal-id="2006258745" is-primary="false" type="group"
has-children="true" permission-id="view">
<name>developers</name>
<login>developers@acme.com</login>
</principal>
-
Call
permissions-update
with a
permission-id
of
denied
to remove
the group’s access to the course:
https://example.com/api/xml?action=permissions-update
&acl-id=2007064258&principal-id=2007105030&permission-id=denied
|
|
|