Jump to: navigation, search

Difference between revisions of "StoryBoard/RestAPI"

(Project Group Operations)
(Project Group Operations)
Line 8: Line 8:
 
* Only a super-priviledged Users can perform Storyboard management actions. (create a Project Group, grant other privileges, etc.)
 
* Only a super-priviledged Users can perform Storyboard management actions. (create a Project Group, grant other privileges, etc.)
  
== Project Group Operations ==
+
== Project Group and Project Operations ==
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
Line 23: Line 23:
 
| POST || /project_groups || Creates a new Project Group. || Authorized, StoryboardAdmin
 
| POST || /project_groups || Creates a new Project Group. || Authorized, StoryboardAdmin
 
|-
 
|-
| PUT || /project_groups/(group_name) || Updates a Project Group named (group_name) with new properties. || Authorized, StoryboardAdmin
+
| POST || /project_groups/(group_name)/projects || Creates a new Project in a Project Groups. || Authorized, Admin in Project Group or higher
 +
|-
 +
| PUT || /project_groups/(group_name) || Updates a Project Group named (group_name) with new properties. || Authorized, Admin in Project Group or higher
 +
|-
 +
| PUT || /project_groups/(group_name)/projects/(project_name) || Updates a Project named (project_name). || Authorized, Admin in Project or higher
 
|-
 
|-
 
| DELETE || /project_groups/(group_name) || Deletes a Project Group named (group_name) || Authorized, StoryboardAdmin
 
| DELETE || /project_groups/(group_name) || Deletes a Project Group named (group_name) || Authorized, StoryboardAdmin
 +
|-
 +
| DELETE || /project_groups/(group_name)/projects/(project_name) || Deletes a Project named (project_name) || Authorized, Admin in Project Group or higher
 
|}
 
|}
  

Revision as of 12:44, 27 November 2013

Basic Concepts

Storyboard REST API should be considered as the only instrument to communicate with Storyboard.

  • Most of read operations are accessible without any authorization.
  • User should be authorized to perform non-administrative actions. (create a Story, change a Task status, etc.)
  • User should be authorized and have special privileges to perform administrative actions. (create a Project in a Project Group, change Task Priority, etc.)
  • Only a super-priviledged Users can perform Storyboard management actions. (create a Project Group, grant other privileges, etc.)

Project Group and Project Operations

HTTP Method URL Description Required Permissions
GET /project_groups Returns a list of all existing Project Groups. none
GET /project_groups/(group_name) Returns a Project Group by it's name. none
GET /project_groups/(group_name)/projects Returns a list of Projects in the Project Group by it's name. none
GET /project_groups/(group_name)/projects/(project_name) Returns a Project in the Project Group by it's name. none
POST /project_groups Creates a new Project Group. Authorized, StoryboardAdmin
POST /project_groups/(group_name)/projects Creates a new Project in a Project Groups. Authorized, Admin in Project Group or higher
PUT /project_groups/(group_name) Updates a Project Group named (group_name) with new properties. Authorized, Admin in Project Group or higher
PUT /project_groups/(group_name)/projects/(project_name) Updates a Project named (project_name). Authorized, Admin in Project or higher
DELETE /project_groups/(group_name) Deletes a Project Group named (group_name) Authorized, StoryboardAdmin
DELETE /project_groups/(group_name)/projects/(project_name) Deletes a Project named (project_name) Authorized, Admin in Project Group or higher

Project Operations

HTTP Method URL Description Required Permissions
GET /projects/(project_name) Returns a Project by it's name. none
PUT /projects/(project_name) Updates a Project named (project_name) with new properties. Authorized, Admin in Project or higher

Branch Operations

(TBD)

Milestone Operations

(TBD)

Story Operations

(TBD)

Task Operations

(TBD)

Comment Operations

(TBD)

User Operations

(TBD)

Role Operations

(TBD)

Permission Operations

(TBD)