summaryrefslogtreecommitdiff
path: root/docs/gl_objects/notes.rst
blob: 26d0e5ec115637ba33193d1da8f7fddf381f3f2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
.. _project-notes:

#####
Notes
#####

You can manipulate notes (comments) on group epics, project issues, merge requests and
snippets.

Reference
---------

* v4 API:

  Epics:

  * :class:`gitlab.v4.objects.GroupEpicNote`
  * :class:`gitlab.v4.objects.GroupEpicNoteManager`
  * :attr:`gitlab.v4.objects.GroupEpic.notes`

  Issues:

  + :class:`gitlab.v4.objects.ProjectIssueNote`
  + :class:`gitlab.v4.objects.ProjectIssueNoteManager`
  + :attr:`gitlab.v4.objects.ProjectIssue.notes`

  MergeRequests:

  + :class:`gitlab.v4.objects.ProjectMergeRequestNote`
  + :class:`gitlab.v4.objects.ProjectMergeRequestNoteManager`
  + :attr:`gitlab.v4.objects.ProjectMergeRequest.notes`

  Snippets:

  + :class:`gitlab.v4.objects.ProjectSnippetNote`
  + :class:`gitlab.v4.objects.ProjectSnippetNoteManager`
  + :attr:`gitlab.v4.objects.ProjectSnippet.notes`

* GitLab API: https://docs.gitlab.com/ce/api/notes.html

Examples
--------

List the notes for a resource::

    e_notes = epic.notes.list()
    i_notes = issue.notes.list()
    mr_notes = mr.notes.list()
    s_notes = snippet.notes.list()

Get a note for a resource::

    e_note = epic.notes.get(note_id)
    i_note = issue.notes.get(note_id)
    mr_note = mr.notes.get(note_id)
    s_note = snippet.notes.get(note_id)

Create a note for a resource::

    e_note = epic.notes.create({'body': 'note content'})
    i_note = issue.notes.create({'body': 'note content'})
    mr_note = mr.notes.create({'body': 'note content'})
    s_note = snippet.notes.create({'body': 'note content'})

Update a note for a resource::

    note.body = 'updated note content'
    note.save()

Delete a note for a resource::

    note.delete()