Groups provide a means to organise multiple accounts collectively. The OpenAthens user administration interface allows operations to be performed on groups of accounts. Currently, the API provides only limited support for groups.
Fetching a group
The group(s) an individual account is a member of is returned as part of the application/vnd.eduserv.iam.account-v1+json object. Further information about a group can be obtained by fetching a group object.
Prerequisites
To fetch group information, a client application must
-
authenticate to the API as described in Authenticating to the API.
-
obtain an account object, or a list of groups for an organisation.
Procedure
Perform a GET request to a group resource.
/api/v1/example.org/group/<id>
This returns a application/vnd.eduserv.iam.admin.group-v1+json object.
Response codes
|
HTTP Response Code |
Description |
|---|---|
|
200 |
The request was successful. |
|
400 |
The request was invalid. |
|
404 |
The group does not exist. |
Example
Request:
GET /api/v1/example.org/group/1234 HTTP/1.1
Authorization: OAApiKey <api-key>
Response (success):
HTTP/1.1 200 OK
Content-Type: application/vnd.eduserv.iam.admin.group-v1+json
{
"id": "1234",
"name": "group1",
"links" : [
{ "rel" : "up",
"type" : "application/vnd.eduserv.iam.admin.organisation-v1+json",
"href" : "/api/v1/example.org/organisation/1234",
"method" : "get"
}
]
}
application/vnd.eduserv.iam.admin.group-v1+json object
|
Object field |
Description |
|---|---|
|
name |
The name of the group. |
Listing groups
Groups belong to and are created by organisations. Therefore an application/vnd.eduserv.iam.admin.organisation-v1+json object provides a link to a resource that will return a list of groups for that organisation.
Prerequisites
To fetch group information, a client application must
-
authenticate to the API as described in Authenticating to the API.
-
obtain an organisation object, as described in Fetching organisations via the API.
Procedure
Follow the link from an organisation object with a media type of application/vnd.eduserv.iam.admin.groupList-v1+json by performing a GET request to:
/api/v1/example.org/organisation/<id>/groups
The response payload is a list of groups.
Response codes
|
HTTP Response Code |
Description |
|---|---|
|
200 |
The request was successful. |
|
400 |
The request was invalid. |
|
404 |
The organisation does not exist. |
Example
Request:
GET /api/v1/example.org/organisation/1234/groups HTTP/1.1
Authorization: OAApiKey <api-key>
Response (success):
HTTP/1.1 200 OK
Content-Type: application/vnd.eduserv.iam.admin.groupList-v1+json
{
"groups": [
{ "name" : "group1", "href" : "/api/v1/example.org/group/1234" },
{ "name" : "group2", "href" : "/api/v1/example.org/group/5678" },
{ "name" : "group3", "href" : "/api/v1/example.org/group/9012" },
{ "name" : "group4", "href" : "/api/v1/example.org/group/3456" }
],
"links" : [
{ "rel" : "up",
"type" : "application/vnd.eduserv.iam.admin.organisation-v1+json",
"href" : "/api/v1/example.org/organisation/1234",
"method" : "get"
}
]
}
See also:
-
API overview -
Authenticating to the API -
API entry-point -
Fetching attribute schemas via the API -
Fetching organisations via the API -
Fetching Groups via the API -
API bulk operations -
Fetching available service providers via the API -
Generating authentication tokens for end-users via the API -
API usage examples -
Fetching raw statistics data via the API -
Account management via the API -
Fetching statistics reports via the API