Project Group
Project group is the link object between Projects and Groups. With them you define which groups belongs to what project, and what they can do in the project.
Attributes
project
The id of the project the membership is for.
When requesting, can be expanded to the full project object by including the query parameter expand=project
.
- Type:
string
- Required:
true
group
The id of the group the membership is for.
When requesting, can be expanded to the full group object by including the query parameter expand=group
.
- Type:
string
- Required:
true
role
The role the group has in the project. Must be one of admin
, manager
, master
, developer
, or guest
.
- Type:
string
- Required:
true
Operations
GET /projects/:project_id/project_groups
List all project groups for a project, with optional limit and offset parameters, as a metadata-results object.
GET /projects/:project_id/project_groups/:group_id
Return a specific project group.
Example request
curl -X GET \
-H "Accept: application/vnd.hth.v1" \
-H "Authorization: hth.company_key='$COMPANY_KEY',account_key='$ACCOUNT_KEY'" \
https://helixteamhub.cloud/api/projects/luotsi/project_groups/devs
Example response
{
"api_status": 200,
"api_timestamp": "2013-11-28T09:38:42Z",
"project": {
"id": "luotsi"
},
"group": {
"id": "devs"
},
"role": "developer"
}
POST /projects/:project_id/project_groups
Add a group to a project.
Example request
curl -X POST \
-H "Accept: application/vnd.hth.v1" \
-H "Authorization: hth.company_key='$COMPANY_KEY',account_key='$ACCOUNT_KEY'" \
-H "Content-Type: application/json" \
-d '{ "id": "devs", "role": "developer" }' \
https://helixteamhub.cloud/api/projects/luotsi/project_groups
Example response
{
"api_status": 201,
"api_timestamp": "2013-11-28T09:41:47Z",
"project": {
"id": "luotsi"
},
"group": {
"id": "devs"
},
"role": "developer"
}
PUT /projects/:project_id/project_groups/:group_id
Update role for a project group. Returns the updated project group.
Example request
curl -X PUT \
-H "Accept: application/vnd.hth.v1" \
-H "Authorization: hth.company_key='$COMPANY_KEY',account_key='$ACCOUNT_KEY'" \
-H "Content-Type: application/json" \
-d '{ "role": "admin" }' \
https://helixteamhub.cloud/api/projects/luotsi/project_groups/devs
Example response
{
"api_status": 200,
"api_timestamp": "2013-11-28T09:44:26Z",
"project": {
"id": "luotsi"
},
"group": {
"id": "devs"
},
"role": "admin"
}
DELETE /projects/:project_id/project_groups/:group_id
Remove a group from a project. Returns the removed project group.
Example request
curl -X DELETE \
-H "Accept: application/vnd.hth.v1" \
-H "Authorization: hth.company_key='$COMPANY_KEY',account_key='$ACCOUNT_KEY'" \
https://helixteamhub.cloud/api/projects/luotsi/project_groups/devs
Example response
{
"api_status": 200,
"api_timestamp": "2013-11-28T09:45:50Z",
"project": {
"id": "luotsi"
},
"group": {
"id": "devs"
},
"role": "admin"
}