Group Resources

Resource Group

Useful Information

Spaces Resources are identified by the following resource name: /spaces/{spaceName}/groups/{groupName} where "spaceName" is the name of the space and "groupName" is the name of the group. Group members are denoted by: /spaces/{spaceName}/groups/{groupName}/members/{memberId}

Handy Hint

The Resources API examples should map to the use cases presented in previous sections.

List Groups for Space

HTTP Component

HTTP Component Value

Description

Method

GET

 

Body

None

 

Encoding

None

 

Accept

text/html

Currently we only support returning via HTML.  Future versions could support Atom or RSS

Response Code

200

Success

 

403

Unauthorized

 

401

Authentication

Example HTTP Request

GET /spaces/IdM/groups HTTP/1.1
Host: registry.rutgers.edu

Example HTTP Response

HTTP/1.1 OK 200

<ul>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/Safeword">Idm:Safeword</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/CAS">Idm:CAS</a></li>
</ul>

Create Group

HTTP Component

HTTP Component Value

Description

Method

PUT

 

Body

list of owners

 

Encoding

www-url-form-encoding

Currently we only support sending info via form encoding. Future versions could support Atom or RSS

Response Code

204

Success

 

403

Unauthorized

 

400

Bad User Request

 

409

Conflict

 

401

Authentication

Example HTTP Request

PUT /spaces/IdM/groups/Safeword HTTP/1.1
Host: registry.rutgers.edu

owner_id=45678&owner_id=343232

Example HTTP Response

HTTP/1.1 204 No Content

Delete Group

HTTP Component

HTTP Component Value

Description

Method

DELETE

 

Body

None

 

Response Code

200

Success

 

403

Unauthorized

 

404

Not Found

 

401

Authentication

Example HTTP Request

DELETE /spaces/IdM/groups/SafeWord HTTP/1.1
Host: registry.rutgers.edu

Example HTTP Response

HTTP/1.1 200 OK

Group 'Idm:Safeword' was deleted.

Rename Group

  • HTTP Method: PUT
  • Encoding: None
  • Body: None
  • Response Code:
    • Success: 204
    • Failure: 404 (group not found)
    • Failure: 409 (conflict)
    • Security Exception: 403 or 401

Example HTTP Request

PUT /spaces/IdM/groups/BadName HTTP/1.1
Host: registry.rutgers.edu

newSpaceName=IdM&newGroupName=Safeword

Example HTTP Response

HTTP/1.1 204 No Content
Location: http://registry.rutgers.edu/spaces/IdM/groups/Safeword

List Group Members

  • HTTP Method: GET
  • Encoding: None
  • Body: None
  • Response Code:
    • Success: 200
    • Failure: 404
    • Security Exception: 403 or 401

Example HTTP Request

GET /spaces/IdM/groups/SafeWord/members HTTP/1.1
Host: registry.rutgers.edu

Example HTTP Response

HTTP/1.1 200 OK

<ul>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/SafeWord/members/567890">567890</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/SafeWord/members/567891">567891</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/SafeWord/members/567892">567892</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/SafeWord/members/567893">567893</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/SafeWord/members/567894">567894</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/SafeWord/members/567895">567895</a></li>
</ul>

Add Members to Group

  • HTTP Method: POST (PUT?)
  • Encoding: www-url-form-encoded
  • Body: list of members
  • Response Code:
    • Success: 200
    • Failure: 400
    • Security Exception: 403 or 401

Example HTTP Request

POST /spaces/IdM/groups/Safeword/members HTTP/1.1
Host: registry.rutgers.edu

member_id=56789&member_id=123456&member_id=234567&member_id=345678

Example HTTP Response

HTML/1.1 200 OK

<ul>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/Safeword/members/56789">56789</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/Safeword/members/123456">123456</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/Safeword/members/234567">234567</a></li>
<li><a href="http://registry.rutgers.edu/spaces/IdM/groups/Safeword/members/345678">345678</a></li>
</ul>

Remove Member from Group

  • HTTP Method: DELETE
  • Encoding: None
  • Body: None
  • Response Code:
    • Success: 200
    • Failure: 404
    • Security Exception: 403 or 401

Example HTTP Request

DELETE /spaces/IdM/groups/SafeWord/members/56789 HTTP/1.1
Host: registry.rutgers.edu

Example HTTP Response

HTTP/1.1 200 OK

Member '56789' deleted from 'Idm:Safeword'

Merge two Groups with a New Name

  • HTTP Method: PUT
  • HTTP Body: two group names
  • HTTP Encoding: www-url-form-encoded
  • HTTP Response Codes:
    • Success: 201
    • Failure: 400
    • Failure: 409
    • Security Exception: 403 or 401

Example HTTP Request

PUT /spaces/Idm/groups/NewGroup HTTP/1.1
Host: registry.rutgers.edu

spaceName1=IdM&groupName1=Safeword&spaceName2=IdM&groupName2=CAS

Example HTTP Response

HTTP/1.1 200 OK

Group 'IdM:NewGroup' created from 'IdM:Safeword' and 'IdM:CAS'.

Merge Two Groups with Existing Name

  • HTTP Method: PUT
  • HTTP Body: group name
  • HTTP Encoding: www-url-form-encoded
  • HTTP Response Codes:
    • Success: 204
    • Failure: 400
    • Failure: 404
    • Security: 403 or 401

Example HTTP Request

PUT /spaces/IdM/groups/Safeword HTTP/1.1
Host: registry.rutgers.edu

mergeSpaceName=IdM&mergeGroupName=SecurID

Example HTTP Response

HTTP/1.1 204 No Content