Rest Issues » History » Version 46

Jean-Philippe Lang, 2013-01-30 22:20

1 1 Jean-Philippe Lang
h1. Issues
2 1 Jean-Philippe Lang
3 28 Jean-Philippe Lang
{{>toc}}
4 28 Jean-Philippe Lang
5 1 Jean-Philippe Lang
h2. Listing issues
6 1 Jean-Philippe Lang
7 45 Jean-Philippe Lang
  GET /issues.[format]
8 1 Jean-Philippe Lang
9 2 Jean-Philippe Lang
Returns a paginated list of issues. By default, it returns open issues only.
10 1 Jean-Philippe Lang
11 1 Jean-Philippe Lang
+Parameters+:
12 26 Etienne Massip
13 21 Alex Last
* @offset@: skip this number of issues in response (optional)
14 21 Alex Last
* @limit@: number of issues per page (optional)
15 36 Emmanuel Bourgerie
* @sort@: column to sort with. Append @:desc@ to invert the order.
16 23 Alex Last
17 2 Jean-Philippe Lang
Optional filters:
18 2 Jean-Philippe Lang
19 30 Ilya Kulakov
* @project_id@: get issues from the project with the given id, where id is either project id or project identifier
20 40 Matthias Lamoureux
* @subproject_id@: get issues from the subproject with the given id. You can use @project_id=XXX&subproject_id=!*@ to get only the issues of a given project and none of its subprojects.
21 2 Jean-Philippe Lang
* @tracker_id@: get issues from the tracker with the given id
22 33 Ilya Kulakov
* @status_id@: get issues with the given status id only. Possible values: @open@, @closed@, @*@ to get open and closed issues, status id
23 29 Michael Fuchs
* @assigned_to_id@: get issues which are assigned to the given user id
24 25 John Manktelow
* @cf_x@: get issues with the given value for custom field with an ID of @x@. (Custom field must have 'used as a filter' checked.)
25 2 Jean-Philippe Lang
* ...
26 2 Jean-Philippe Lang
27 2 Jean-Philippe Lang
+Examples+:
28 2 Jean-Philippe Lang
29 2 Jean-Philippe Lang
<pre>
30 2 Jean-Philippe Lang
GET /issues.xml
31 2 Jean-Philippe Lang
GET /issues.xml?project_id=2
32 1 Jean-Philippe Lang
GET /issues.xml?project_id=2&tracker_id=1
33 29 Michael Fuchs
GET /issues.xml?assigned_to_id=6
34 12 Robert Palmer
GET /issues.xml?status_id=closed
35 1 Jean-Philippe Lang
GET /issues.xml?status_id=*
36 25 John Manktelow
GET /issues.xml?cf_1=abcdef
37 21 Alex Last
38 21 Alex Last
Paging example:
39 45 Jean-Philippe Lang
GET /issues.xml?offset=0&limit=100
40 45 Jean-Philippe Lang
GET /issues.xml?offset=100&limit=100
41 39 Sridhar P
42 39 Sridhar P
To fetch issues for a date range:
43 12 Robert Palmer
GET /issues.xml?created_on=><2012-03-01|2012-03-07
44 12 Robert Palmer
</pre>
45 1 Jean-Philippe Lang
46 1 Jean-Philippe Lang
+Response+:
47 1 Jean-Philippe Lang
48 1 Jean-Philippe Lang
<pre>
49 1 Jean-Philippe Lang
<?xml version="1.0" encoding="UTF-8"?>
50 1 Jean-Philippe Lang
<issues type="array" count="1640">
51 3 Christoph Witzany
  <issue>
52 3 Christoph Witzany
    <id>4326</id>
53 1 Jean-Philippe Lang
    <project name="Redmine" id="1"/>
54 1 Jean-Philippe Lang
    <tracker name="Feature" id="2"/>
55 1 Jean-Philippe Lang
    <status name="New" id="1"/>
56 1 Jean-Philippe Lang
    <priority name="Normal" id="4"/>
57 1 Jean-Philippe Lang
    <author name="John Smith" id="10106"/>
58 1 Jean-Philippe Lang
    <category name="Email notifications" id="9"/>
59 1 Jean-Philippe Lang
    <subject>
60 1 Jean-Philippe Lang
      Aggregate Multiple Issue Changes for Email Notifications
61 1 Jean-Philippe Lang
    </subject>
62 1 Jean-Philippe Lang
    <description>
63 1 Jean-Philippe Lang
      This is not to be confused with another useful proposed feature that
64 1 Jean-Philippe Lang
      would do digest emails for notifications.
65 1 Jean-Philippe Lang
    </description>
66 1 Jean-Philippe Lang
    <start_date>2009-12-03</start_date>
67 1 Jean-Philippe Lang
    <due_date></due_date>
68 1 Jean-Philippe Lang
    <done_ratio>0</done_ratio>
69 1 Jean-Philippe Lang
    <estimated_hours></estimated_hours>
70 1 Jean-Philippe Lang
    <custom_fields>
71 1 Jean-Philippe Lang
      <custom_field name="Resolution" id="2">Duplicate</custom_field>
72 1 Jean-Philippe Lang
      <custom_field name="Texte" id="5">Test</custom_field>
73 1 Jean-Philippe Lang
      <custom_field name="Boolean" id="6">1</custom_field>
74 1 Jean-Philippe Lang
      <custom_field name="Date" id="7">2010-01-12</custom_field>
75 1 Jean-Philippe Lang
    </custom_fields>
76 1 Jean-Philippe Lang
    <created_on>Thu Dec 03 15:02:12 +0100 2009</created_on>
77 1 Jean-Philippe Lang
    <updated_on>Sun Jan 03 12:08:41 +0100 2010</updated_on>
78 1 Jean-Philippe Lang
  </issue>
79 3 Christoph Witzany
  <issue>
80 3 Christoph Witzany
    <id>4325</id>
81 1 Jean-Philippe Lang
    ...
82 1 Jean-Philippe Lang
  </issue>
83 1 Jean-Philippe Lang
</issues>
84 1 Jean-Philippe Lang
</pre>
85 1 Jean-Philippe Lang
86 1 Jean-Philippe Lang
h2. Showing an issue
87 1 Jean-Philippe Lang
88 31 Ilya Kulakov
<pre>
89 43 Jean-Philippe Lang
GET /issues/[id].[format]
90 31 Ilya Kulakov
</pre>
91 31 Ilya Kulakov
92 43 Jean-Philippe Lang
+Parameters+:
93 1 Jean-Philippe Lang
94 43 Jean-Philippe Lang
* @include@: fetch associated data (optional, use comma to fetch multiple associations). Possible values:
95 1 Jean-Philippe Lang
96 43 Jean-Philippe Lang
  * @children@
97 43 Jean-Philippe Lang
  * @attachments@
98 43 Jean-Philippe Lang
  * @relations@
99 43 Jean-Philippe Lang
  * @changesets@
100 43 Jean-Philippe Lang
  * @journals@ - See [[Rest_IssueJournals|Issue journals]] for more information.
101 43 Jean-Philippe Lang
  * @watchers@ - Since 2.3.0
102 1 Jean-Philippe Lang
103 43 Jean-Philippe Lang
+Examples+:
104 43 Jean-Philippe Lang
105 43 Jean-Philippe Lang
<pre>
106 43 Jean-Philippe Lang
GET /issues/2.xml
107 43 Jean-Philippe Lang
GET /issues/2.json
108 43 Jean-Philippe Lang
109 43 Jean-Philippe Lang
GET /issues/2.xml
110 43 Jean-Philippe Lang
GET /issues/2.xml?include=attachments
111 1 Jean-Philippe Lang
GET /issues/2.xml?include=attachments,journals
112 43 Jean-Philippe Lang
</pre>
113 43 Jean-Philippe Lang
114 1 Jean-Philippe Lang
h2. Creating an issue
115 1 Jean-Philippe Lang
116 45 Jean-Philippe Lang
  POST /issues.[format]
117 1 Jean-Philippe Lang
118 45 Jean-Philippe Lang
+Parameters+:
119 1 Jean-Philippe Lang
120 45 Jean-Philippe Lang
* @issue@ - A hash of the issue attributes:
121 1 Jean-Philippe Lang
122 45 Jean-Philippe Lang
  * @project_id@
123 45 Jean-Philippe Lang
  * @tracker_id@
124 45 Jean-Philippe Lang
  * @status_id@
125 45 Jean-Philippe Lang
  * @subject@
126 45 Jean-Philippe Lang
  * @description@
127 45 Jean-Philippe Lang
  * @category_id@
128 45 Jean-Philippe Lang
  * @assigned_to_id@ - ID of the user to assign the issue to (currently no mechanism to assign by name)
129 45 Jean-Philippe Lang
  * @parent_issue_id@ - ID of the parent issue
130 45 Jean-Philippe Lang
  * @custom_fields@ - See [[Rest_api#Working-with-custom-fields|Custom fields]]
131 45 Jean-Philippe Lang
  * @watcher_user_ids@ - Array of user ids to add as watchers (since 2.3.0)
132 45 Jean-Philippe Lang
133 1 Jean-Philippe Lang
Attachments can be added when you create an issue, see [[Rest_api#Attaching-files|Attaching files]].
134 1 Jean-Philippe Lang
135 45 Jean-Philippe Lang
+Examples+:
136 1 Jean-Philippe Lang
137 45 Jean-Philippe Lang
<pre>
138 45 Jean-Philippe Lang
POST /issues.xml
139 45 Jean-Philippe Lang
<?xml version="1.0"?>
140 45 Jean-Philippe Lang
<issue>
141 45 Jean-Philippe Lang
  <project_id>1</project_id>
142 45 Jean-Philippe Lang
  <subject>Example</subject>
143 45 Jean-Philippe Lang
  <priority_id>4</priority_id>
144 45 Jean-Philippe Lang
</issue>
145 45 Jean-Philippe Lang
</pre>
146 1 Jean-Philippe Lang
147 1 Jean-Philippe Lang
148 45 Jean-Philippe Lang
<pre>
149 45 Jean-Philippe Lang
POST /issues.json
150 45 Jean-Philippe Lang
{
151 45 Jean-Philippe Lang
  "issue": {
152 45 Jean-Philippe Lang
    "project_id": 1,
153 45 Jean-Philippe Lang
    "subject": "Example",
154 45 Jean-Philippe Lang
    "priority_id": 4
155 45 Jean-Philippe Lang
  }
156 45 Jean-Philippe Lang
}
157 45 Jean-Philippe Lang
</pre>
158 45 Jean-Philippe Lang
159 38 Jean-Philippe Lang
h2. Updating an issue
160 5 Damien Churchill
161 45 Jean-Philippe Lang
  PUT /issues/[id].[format]
162 5 Damien Churchill
163 45 Jean-Philippe Lang
+Parameters+:
164 5 Damien Churchill
165 45 Jean-Philippe Lang
* @issue@ - A hash of the issue attributes
166 27 Stéphane Schoorens
167 45 Jean-Philippe Lang
  * @project_id@
168 45 Jean-Philippe Lang
  * @tracker_id@
169 45 Jean-Philippe Lang
  * @status_id@
170 45 Jean-Philippe Lang
  * @subject@
171 45 Jean-Philippe Lang
  * ...
172 45 Jean-Philippe Lang
  * @notes@ - Comments about the update
173 1 Jean-Philippe Lang
174 45 Jean-Philippe Lang
Attachments can be added when you update an issue, see [[Rest_api#Attaching-files|Attaching files]].
175 45 Jean-Philippe Lang
176 45 Jean-Philippe Lang
+Examples+:
177 45 Jean-Philippe Lang
178 45 Jean-Philippe Lang
<pre>
179 45 Jean-Philippe Lang
PUT /issues/[id].xml
180 45 Jean-Philippe Lang
<?xml version="1.0"?>
181 45 Jean-Philippe Lang
<issue>
182 45 Jean-Philippe Lang
  <subject>Subject changed</subject>
183 45 Jean-Philippe Lang
  <notes>The subject was changed</notes>
184 45 Jean-Philippe Lang
</issue>
185 45 Jean-Philippe Lang
</pre>
186 45 Jean-Philippe Lang
187 45 Jean-Philippe Lang
<pre>
188 45 Jean-Philippe Lang
PUT /issues/[id].json
189 45 Jean-Philippe Lang
{
190 45 Jean-Philippe Lang
  "issue": {
191 45 Jean-Philippe Lang
    "subject": "Subject changed",
192 45 Jean-Philippe Lang
    "notes": "The subject was changed"
193 45 Jean-Philippe Lang
  }
194 1 Jean-Philippe Lang
}
195 45 Jean-Philippe Lang
</pre>
196 44 Jean-Philippe Lang
197 44 Jean-Philippe Lang
h2. Deleting an issue
198 44 Jean-Philippe Lang
199 45 Jean-Philippe Lang
  DELETE /issues/[id].[format]
200 44 Jean-Philippe Lang
201 46 Jean-Philippe Lang
h2. Adding a watcher 
202 1 Jean-Philippe Lang
203 46 Jean-Philippe Lang
_Added in 2.3.0_
204 46 Jean-Philippe Lang
205 44 Jean-Philippe Lang
  POST /issues/[id]/watchers.[format]
206 44 Jean-Philippe Lang
207 44 Jean-Philippe Lang
+Parameters+:
208 44 Jean-Philippe Lang
209 44 Jean-Philippe Lang
* @user_id@ (required): id of the user to add as a watcher
210 44 Jean-Philippe Lang
211 1 Jean-Philippe Lang
h2. Removing a watcher
212 46 Jean-Philippe Lang
213 46 Jean-Philippe Lang
_Added in 2.3.0_
214 1 Jean-Philippe Lang
215 1 Jean-Philippe Lang
  DELETE /issues/[id]/watchers/[user_id].[format]
216 1 Jean-Philippe Lang
217 1 Jean-Philippe Lang
+Parameters+: _none_