Jump to: navigation, search

Difference between revisions of "StoryBoard/RestAPI"

(Project Operations)
(Project Group Operations)
Line 16: Line 16:
 
|-
 
|-
 
| GET || /project_groups/(group_name) || Returns a Project Group by it's name. || 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 || Creates a new Project Group. || Authorized, StoryboardAdmin

Revision as of 12:39, 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 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
PUT /project_groups/(group_name) Updates a Project Group named (group_name) with new properties. Authorized, StoryboardAdmin
DELETE /project_groups/(group_name) Deletes a Project Group named (group_name) Authorized, StoryboardAdmin

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)