diff --git a/app/views/help/api.html.haml b/app/views/help/api.html.haml
index 00085166..3f16637d 100644
--- a/app/views/help/api.html.haml
+++ b/app/views/help/api.html.haml
@@ -21,6 +21,8 @@
= link_to "Issues", "#issues", 'data-toggle' => 'tab'
%li
= link_to "Milestones", "#milestones", 'data-toggle' => 'tab'
+ %li
+ = link_to "Notes", "#notes", 'data-toggle' => 'tab'
.tab-content
.tab-pane.active#README
@@ -94,3 +96,12 @@
.file_content.wiki
= preserve do
= markdown File.read(Rails.root.join("doc", "api", "milestones.md"))
+
+ .tab-pane#notes
+ .file_holder
+ .file_title
+ %i.icon-file
+ Notes
+ .file_content.wiki
+ = preserve do
+ = markdown File.read(Rails.root.join("doc", "api", "notes.md"))
diff --git a/doc/api/notes.md b/doc/api/notes.md
new file mode 100644
index 00000000..3d8309d3
--- /dev/null
+++ b/doc/api/notes.md
@@ -0,0 +1,121 @@
+## List notes
+
+### List project wall notes
+
+Get a list of project wall notes.
+
+```
+GET /projects/:id/notes
+```
+
+```json
+[
+ {
+ "id": 522,
+ "body": "The solution is rather tricky",
+ "author": {
+ "id": 1,
+ "email": "john@example.com",
+ "name": "John Smith",
+ "blocked": false,
+ "created_at": "2012-05-23T08:00:58Z"
+ },
+ "updated_at":"2012-11-27T19:16:44Z",
+ "created_at":"2012-11-27T19:16:44Z"
+ }
+]
+```
+
+Parameters:
+
++ `id` (required) - The ID or code name of a project
+
+### List issue notes
+
+Get a list of issue notes.
+
+```
+GET /projects/:id/issues/:issue_id/notes
+```
+
+Parameters:
+
++ `id` (required) - The ID or code name of a project
++ `issue_id` (required) - The ID of an issue
+
+### List snippet notes
+
+Get a list of snippet notes.
+
+```
+GET /projects/:id/snippets/:snippet_id/notes
+```
+
+Parameters:
+
++ `id` (required) - The ID or code name of a project
++ `snippet_id` (required) - The ID of a snippet
+
+## Single note
+
+### Single issue note
+
+Get an issue note.
+
+```
+GET /projects/:id/issues/:issue_id/:notes/:note_id
+```
+
+Parameters:
+
++ `id` (required) - The ID or code name of a project
++ `issue_id` (required) - The ID of a project issue
++ `note_id` (required) - The ID of an issue note
+
+### Single snippet note
+
+Get a snippet note.
+
+```
+GET /projects/:id/issues/:snippet_id/:notes/:note_id
+```
+
+Parameters:
+
++ `id` (required) - The ID or code name of a project
++ `snippet_id` (required) - The ID of a project snippet
++ `note_id` (required) - The ID of an snippet note
+
+## New note
+
+### New issue note
+
+Create a new issue note.
+
+```
+POST /projects/:id/issues/:issue_id/notes
+```
+
+Parameters:
+
++ `id` (required) - The ID or code name of a project
++ `issue_id` (required) - The ID of an issue
++ `body` (required) - The content of a note
+
+Will return created note with status `201 Created` on success, or `404 Not found` on fail.
+
+### New snippet note
+
+Create a new snippet note.
+
+```
+POST /projects/:id/snippets/:snippet_id/notes
+```
+
+Parameters:
+
++ `id` (required) - The ID or code name of a project
++ `snippet_id` (required) - The ID of an snippet
++ `body` (required) - The content of a note
+
+Will return created note with status `201 Created` on success, or `404 Not found` on fail.