プロジェクト

全般

プロフィール

Vote #75512

未完了

support due_date when creating or updating issues via REST API

Admin Redmine さんが約4年前に追加. 約4年前に更新.

ステータス:
New
優先度:
通常
担当者:
-
カテゴリ:
REST API_32
対象バージョン:
-
開始日:
2022/05/09
期日:
進捗率:

0%

予定工数:
category_id:
32
version_id:
0
issue_org_id:
17732
author_id:
102866
assigned_to_id:
0
comments:
2
status_id:
1
tracker_id:
2
plus1:
0
affected_version:
closed_on:
affected_version_id:
ステータス-->[New]

説明

As far as I can tell, the REST Issues API returns due_date, but won't accept (unless it requires a particular date format).

Context: I am writing a python script to generate a set of related tickets for each student in a course. I can create and update issues except when I add something like: due_date="2014-08-22"

Disclaimer: I am not an expert at Ruby or Redmine.
Looking at app/models/issue.rb and app/models/version.rb, version.rb has a getter/setter for due_date and issue.rb does not. Are there reasons not to support certain attributes in REST API?

Thank you for your consideration and assistance.
Clif


journals

I have no problems generating issues with a due_date. Please check your response for any error message ex:

<pre>
< HTTP/1.1 422 Unprocessable Entity
< Date: Tue, 26 Aug 2014 10:02:40 GMT
< Server: Apache/2.2.22 (Debian)
< X-UA-Compatible: IE=Edge,chrome=1
< Cache-Control: no-cache
< X-Powered-By: Phusion Passenger 4.0.20
< Status: 422 Unprocessable Entity
< Transfer-Encoding: chunked
< Content-Type: application/json; charset=utf-8
<
* Connection #0 to host redmine_server left intact
{"errors":["Due date must be greater than start date"]}*
</pre>

A working example using curl to *create* an issue,
substitute your correct project_id, tracker_id, API-Key, and redmine url:

<pre>
curl -v -k -H "Content-Type: application/json" -X POST --data '{ "issue": { "subject": "Example Subject", "project_id":"test", "tracker_id": 1, "due_date": "2015-08-30" } }' -H "X-Redmine-API-Key: xxxx" https://redmine_server/issues.json
</pre>

A working example using curl to *update* an issue,
substitute your correct API-Key, redmine host, and issue number ([issue_number].json):

<pre>
curl -v -k -H "Content-Type: application/json" -X PUT --data '{ "issue": { "due_date": "2015-10-31" } }' -H "X-Redmine-API-Key: xxxx" https://redmine_server/issues/1.json
</pre>

_Clif Kussmaul wrote:_
> Disclaimer: I am not an expert at Ruby or Redmine.
> Looking at app/models/issue.rb and app/models/version.rb, version.rb has a getter/setter for due_date and issue.rb does not. Are there reasons _not_ to support certain attributes in REST API?

The issue's model does not explicitly have getter/setter written in the class (def due_date). It is created automagically using "safe_attributes".
--------------------------------------------------------------------------------
Michael, thank you for your prompt and thoughtful response.
JSON isn't working on my redmine - I think it's a software version issue -
so I converted your curl PUT update example to XML and added a GET, as follows:

<pre>
curl -v -k -H "Content-Type: application/xml" -X PUT
--data '<issue><due_date>2014-09-05</due_date><description>new desc</description></issue>'
-H "X-Redmine-API-Key: XXXX" http://redmine_server/issues/7.xml
</pre>

<pre>
curl -v -k -H "Content-Type: application/xml" -X GET
-H "X-Redmine-API-Key: XXXX" http://redmine_server/issues/7.xml
</pre>

(I inserted line breaks above for readability).

They both return Status 200 OK.
The GET results shows the new description, but the due date is blank: <due_date></due_date>
In the browser interface, I see the same - new desc, but no due_date.

Here is my redmine installation information:
<pre>
Environment:
Redmine version 2.5.1.stable.13139
Ruby version 1.9.3-p448 (2013-06-27) [x86_64-linux]
Rails version 3.2.18
Environment production
Database adapter Mysql2
SCM:
Subversion 1.7.8
Mercurial 2.2.3
Git 1.7.11.7
Filesystem
Redmine plugins:
redmine_ckeditor 1.0.16
redmine_monitoring_controlling 0.1.1
redmine_spent_time 2.6.5
redmine_work_time 0.2.14
</pre>

Thank you again for your help,
Clif

--------------------------------------------------------------------------------

Admin Redmine さんが約4年前に更新

  • カテゴリREST API_32 にセット

他の形式にエクスポート: Atom PDF

いいね!0
いいね!0