Kitura Sample Project
- Clone this repository
- Change current directory to the repository
- Run
swift build
- Run
.build/debug/TasksServer
Get projects
This end point has no parameters.
GET http://localhost:8090/projects
[
{
"id" : "5",
"name" : "Lang-8",
"tasks" : [
]
},
{
"id" : "6",
"name" : "HiNative",
"tasks" : [
{
"title" : "Write an issue",
"deadline" : 58853,
"id" : "3",
"project_id" : "6",
"completed" : false
}
]
}
]
Get a project information
- :id - UInt64, required
GET http://localhost:8090/projects/6
{
"id" : "6",
"name" : "HiNative",
"tasks" : [
{
"title" : "Write an issue",
"deadline" : 58853,
"id" : "3",
"project_id" : "6",
"completed" : false
}
]
}
Create new project
- name - String, required
POST http://localhost:8090/projects?name=HiNative
{
"id" : "6",
"name" : "HiNative",
"tasks" : [
]
}
Change information of a project
- :id - UInt64, required
- name - String, required
PATCH http://localhost:8090/projects/6?name=NewName
{
"id" : "6",
"name" : "NewName",
"tasks" : [
]
}
Delete a project
- :id - UInt64, required
DELETE http://localhost:8090/projects/1
Response is empty.
Get tasks of a project
- :project_id - UInt64, required
Get a task information
- :project_id - UInt64, required
- :task_id - UInt64, required
GET http://localhost:8090/projects/1/tasks/1
{
"title" : "task",
"deadline" : null,
"id" : "1",
"project_id" : "1",
"completed" : false
}
Create a task of a project
- :project_id - UInt64, required
- title : String, required
- deadline : Int, time interval from 1970
- completed : Bool, default is false
POST http://localhost:8090/projects/6/tasks?title=task&deadline=16284&completed=false
{
"title" : "task",
"deadline" : 16284,
"id" : "2",
"project_id" : "6",
"completed" : false
}
Change information of a task
- :project_id - UInt64, required
- :task_id - UInt64, required
- title - String
- deadline - Int, time interval from 1970
- completed - Bool, default is false
PATCH http://localhost:8090/projects/6/tasks/2?title=changed&deadline=21196&completed=false
{
"title" : "changed",
"deadline" : 21196,
"id" : "2",
"project_id" : "6",
"completed" : false
}
Delete a task of a project
- :project_id - UInt64, required
- :task_id - UInt64, required
DELETE http://localhost:8090/projects/6/tasks/2
Response is empty.