BigW Consortium Gitlab
Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gitlab-ce
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Forest Godfrey
gitlab-ce
Commits
fd9cd5ae
Commit
fd9cd5ae
authored
Jun 16, 2016
by
Robert Schilling
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add todos API documentation and changelog
parent
40c685c5
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
220 additions
and
3 deletions
+220
-3
CHANGELOG
CHANGELOG
+1
-0
README.md
doc/api/README.md
+1
-0
todos.md
doc/api/todos.md
+217
-0
todos.rb
lib/api/todos.rb
+1
-3
No files found.
CHANGELOG
View file @
fd9cd5ae
...
@@ -19,6 +19,7 @@ v 8.10.0 (unreleased)
...
@@ -19,6 +19,7 @@ v 8.10.0 (unreleased)
- Fix changing issue state columns in milestone view
- Fix changing issue state columns in milestone view
- Add notification settings dropdown for groups
- Add notification settings dropdown for groups
- Allow importing from Github using Personal Access Tokens. (Eric K Idema)
- Allow importing from Github using Personal Access Tokens. (Eric K Idema)
- API: Todos !3188 (Robert Schilling)
- Fix user creation with stronger minimum password requirements !4054 (nathan-pmt)
- Fix user creation with stronger minimum password requirements !4054 (nathan-pmt)
- PipelinesFinder uses git cache data
- PipelinesFinder uses git cache data
- Check for conflicts with existing Project's wiki path when creating a new project.
- Check for conflicts with existing Project's wiki path when creating a new project.
...
...
doc/api/README.md
View file @
fd9cd5ae
...
@@ -36,6 +36,7 @@ following locations:
...
@@ -36,6 +36,7 @@ following locations:
-
[
System Hooks
](
system_hooks.md
)
-
[
System Hooks
](
system_hooks.md
)
-
[
Tags
](
tags.md
)
-
[
Tags
](
tags.md
)
-
[
Users
](
users.md
)
-
[
Users
](
users.md
)
-
[
Todos
](
todos.md
)
### Internal CI API
### Internal CI API
...
...
doc/api/todos.md
0 → 100644
View file @
fd9cd5ae
# Todos
**Note:**
This feature was
[
introduced
][
ce-3188
]
in GitLab 8.10
## Get a list of todos
Returns a list of todos. When no filter is applied, it returns all pending todos
for the current user. Different filters allow the user to
```
GET /todos
```
Parameters:
| Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
|
`action_id`
| integer | no | The ID of the action of the todo. See the table below for the ID mapping |
|
`author_id`
| integer | no | The ID of an author |
|
`project_id`
| integer | no | The ID of a project |
|
`state`
| string | no | The state of the todo. Can be either
`pending`
or
`done`
|
|
`type`
| string | no | The type of an todo. Can be either
`Issue`
or
`MergeRequest`
|
|
`action_id`
| Action |
| ----------- | ------ |
| 1 | Issuable assigned |
| 2 | Mentioned in issuable |
| 3 | Build failed |
| 4 | Todo marked for you |
```bash
curl -H "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab.example.com/api/v3/todos
```
Example Response:
```
json
[
{
"id"
:
130
,
"project"
:
{
"id"
:
1
,
"name"
:
"Underscore"
,
"name_with_namespace"
:
"Documentcloud / Underscore"
,
"path"
:
"underscore"
,
"path_with_namespace"
:
"documentcloud/underscore"
},
"author"
:
{
"name"
:
"Juwan Abbott"
,
"username"
:
"halle"
,
"id"
:
8
,
"state"
:
"active"
,
"avatar_url"
:
"http://www.gravatar.com/avatar/a0086c7b9e0d73312f32ff745fdcb43e?s=80&d=identicon"
,
"web_url"
:
"https://gitlab.example.com/u/halle"
},
"action_name"
:
"assigned"
,
"target_id"
:
71
,
"target_type"
:
"Issue"
,
"target_reference"
:
"#1"
,
"target_url"
:
"https://gitlab.example.com/documentcloud/underscore/issues/1"
,
"body"
:
"At voluptas qui nulla soluta qui et."
,
"state"
:
"pending"
,
"created_at"
:
"2016-05-20T20:52:00.626Z"
},
{
"id"
:
129
,
"project"
:
{
"id"
:
1
,
"name"
:
"Underscore"
,
"name_with_namespace"
:
"Documentcloud / Underscore"
,
"path"
:
"underscore"
,
"path_with_namespace"
:
"documentcloud/underscore"
},
"author"
:
{
"name"
:
"Juwan Abbott"
,
"username"
:
"halle"
,
"id"
:
8
,
"state"
:
"active"
,
"avatar_url"
:
"http://www.gravatar.com/avatar/a0086c7b9e0d73312f32ff745fdcb43e?s=80&d=identicon"
,
"web_url"
:
"https://gitlab.example.com/u/halle"
},
"action_name"
:
"mentioned"
,
"target_id"
:
79
,
"target_type"
:
"Issue"
,
"target_reference"
:
"#9"
,
"target_url"
:
"https://gitlab.example.com/documentcloud/underscore/issues/9#note_959"
,
"body"
:
"@root Fix this shit"
,
"state"
:
"pending"
,
"created_at"
:
"2016-05-20T20:51:51.503Z"
}
]
```
## Mark a todo as done
Marks a single pending todo given by its ID for the current user as done. The to
marked as done is returned in the response.
```
DELETE /todos/:id
```
Parameters:
| Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
|
`id`
| integer | yes | The ID of a todo |
```
bash
curl
-X
DELETE
-H
"PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK"
https://gitlab.example.com/api/v3/todos/130
```
Example Response:
```
json
{
"id"
:
130
,
"project"
:
{
"id"
:
1
,
"name"
:
"Underscore"
,
"name_with_namespace"
:
"Documentcloud / Underscore"
,
"path"
:
"underscore"
,
"path_with_namespace"
:
"documentcloud/underscore"
},
"author"
:
{
"name"
:
"Juwan Abbott"
,
"username"
:
"halle"
,
"id"
:
8
,
"state"
:
"active"
,
"avatar_url"
:
"http://www.gravatar.com/avatar/a0086c7b9e0d73312f32ff745fdcb43e?s=80&d=identicon"
,
"web_url"
:
"https://gitlab.example.com/u/halle"
},
"action_name"
:
"assigned"
,
"target_id"
:
71
,
"target_type"
:
"Issue"
,
"target_reference"
:
"#1"
,
"target_url"
:
"https://gitlab.example.com/documentcloud/underscore/issues/1"
,
"body"
:
"At voluptas qui nulla soluta qui et."
,
"state"
:
"done"
,
"created_at"
:
"2016-05-20T20:52:00.626Z"
}
```
## Mark all todos as done
Marks all pending todos for the current user as done. All todos marked as done
are returned in the response.
```
DELETE /todos
```
```
bash
curl
-X
DELETE
-H
"PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK"
https://gitlab.example.com/api/v3/todos
```
Example Response:
```
json
[
{
"id"
:
130
,
"project"
:
{
"id"
:
1
,
"name"
:
"Underscore"
,
"name_with_namespace"
:
"Documentcloud / Underscore"
,
"path"
:
"underscore"
,
"path_with_namespace"
:
"documentcloud/underscore"
},
"author"
:
{
"name"
:
"Juwan Abbott"
,
"username"
:
"halle"
,
"id"
:
8
,
"state"
:
"active"
,
"avatar_url"
:
"http://www.gravatar.com/avatar/a0086c7b9e0d73312f32ff745fdcb43e?s=80&d=identicon"
,
"web_url"
:
"https://gitlab.example.com/u/halle"
},
"action_name"
:
"assigned"
,
"target_id"
:
71
,
"target_type"
:
"Issue"
,
"target_reference"
:
"#1"
,
"target_url"
:
"https://gitlab.example.com/documentcloud/underscore/issues/1"
,
"body"
:
"At voluptas qui nulla soluta qui et."
,
"state"
:
"done"
,
"created_at"
:
"2016-05-20T20:52:00.626Z"
},
{
"id"
:
129
,
"project"
:
{
"id"
:
1
,
"name"
:
"Underscore"
,
"name_with_namespace"
:
"Documentcloud / Underscore"
,
"path"
:
"underscore"
,
"path_with_namespace"
:
"documentcloud/underscore"
},
"author"
:
{
"name"
:
"Juwan Abbott"
,
"username"
:
"halle"
,
"id"
:
8
,
"state"
:
"active"
,
"avatar_url"
:
"http://www.gravatar.com/avatar/a0086c7b9e0d73312f32ff745fdcb43e?s=80&d=identicon"
,
"web_url"
:
"https://gitlab.example.com/u/halle"
},
"action_name"
:
"mentioned"
,
"target_id"
:
79
,
"target_type"
:
"Issue"
,
"target_reference"
:
"#9"
,
"target_url"
:
"https://gitlab.example.com/documentcloud/underscore/issues/9#note_959"
,
"body"
:
"@root Fix this shit"
,
"state"
:
"done"
,
"created_at"
:
"2016-05-20T20:51:51.503Z"
}
]
```
[
ce-3188
]:
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/3188
lib/api/todos.rb
View file @
fd9cd5ae
...
@@ -21,13 +21,12 @@ module API
...
@@ -21,13 +21,12 @@ module API
present
paginate
(
todos
),
with:
Entities
::
Todo
present
paginate
(
todos
),
with:
Entities
::
Todo
end
end
# Mark todo as done
# Mark
a
todo as done
#
#
# Parameters:
# Parameters:
# id: (required) - The ID of the todo being marked as done
# id: (required) - The ID of the todo being marked as done
#
#
# Example Request:
# Example Request:
#
# DELETE /todos/:id
# DELETE /todos/:id
#
#
delete
':id'
do
delete
':id'
do
...
@@ -40,7 +39,6 @@ module API
...
@@ -40,7 +39,6 @@ module API
# Mark all todos as done
# Mark all todos as done
#
#
# Example Request:
# Example Request:
#
# DELETE /todos
# DELETE /todos
#
#
delete
do
delete
do
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment