專案

一般

個人檔案

動作

問題

列出問題

GET /issues.[format]

傳回分頁的問題清單。預設情況下,它只傳回未解決的問題。

參數:

  • offset:在回應中跳過此數量的問題(可選)
  • limit:每頁的問題數量(可選)
  • sort:排序依據的欄位。附加 :desc 以反轉順序。
  • include:提取關聯的資料(可選,使用逗號提取多個關聯)。可能的值
    • attachments - 從 3.4.0 版開始
    • 關聯

可選的篩選器

  • issue_id:取得具有指定 ID 的問題,或使用 ',' 分隔多個 ID 以取得多個問題。
  • project_id:取得具有指定 ID 的專案中的問題(數值,而非專案識別碼)。
  • subproject_id:取得具有指定 ID 的子專案中的問題。您可以使用 project_id=XXX&subproject_id=!* 來僅取得指定專案的問題,而不包含其任何子專案。
  • tracker_id:取得具有指定 ID 的追蹤清單中的問題
  • status_id:僅取得具有指定狀態 ID 的問題。可能的值:openclosed* 以取得未解決和已解決的問題、狀態 ID
  • assigned_to_id:取得指派給指定使用者 ID 的問題。可以使用 me 代替 ID 來提取登入使用者(透過 API 金鑰或 HTTP 驗證)的所有問題
  • parent_id:取得父問題為指定 ID 的問題。
  • cf_x:取得自訂欄位 ID 為 x 且具有指定值的 問題。(自訂欄位必須勾選「用於篩選」)。
  • ...

注意:包含「>」、「<」或「=」的運算子應進行十六進制編碼,以便正確解析。大多數進化的 API 用戶端預設會為您執行此操作,但為了清楚起見,以下範例是在沒有考慮此類魔法功能的情況下編寫的。

範例:

GET /issues.xml
GET /issues.xml?issue_id=1
GET /issues.xml?issue_id=1,2
GET /issues.xml?project_id=2
GET /issues.xml?project_id=2&tracker_id=1
GET /issues.xml?assigned_to_id=6
GET /issues.xml?assigned_to_id=me
GET /issues.xml?status_id=closed
GET /issues.xml?status_id=*
GET /issues.xml?cf_1=abcdef
GET /issues.xml?sort=category:desc,updated_on

Paging example:
GET /issues.xml?offset=0&limit=100
GET /issues.xml?offset=100&limit=100

To fetch issues for a date range (uncrypted filter is "><2012-03-01|2012-03-07") :
GET /issues.xml?created_on=%3E%3C2012-03-01|2012-03-07

To fetch issues created after a certain date (uncrypted filter is ">=2012-03-01") :
GET /issues.xml?created_on=%3E%3D2012-03-01

Or before a certain date (uncrypted filter is "<= 2012-03-07") :
GET /issues.xml?created_on=%3C%3D2012-03-07

To fetch issues created after a certain timestamp (uncrypted filter is ">=2014-01-02T08:12:32Z") :
GET /issues.xml?created_on=%3E%3D2014-01-02T08:12:32Z

To fetch issues updated after a certain timestamp (uncrypted filter is ">=2014-01-02T08:12:32Z") :
GET /issues.xml?updated_on=%3E%3D2014-01-02T08:12:32Z

To fetch issues for which custom field 4 contains the substring "foo" :
GET /issues.xml?cf_4=~foo

回應:

<?xml version="1.0" encoding="UTF-8"?>
<issues type="array" count="1640">
  <issue>
    <id>4326</id>
    <project name="Redmine" id="1"/>
    <tracker name="Feature" id="2"/>
    <status name="New" id="1"/>
    <priority name="Normal" id="4"/>
    <author name="John Smith" id="10106"/>
    <category name="Email notifications" id="9"/>
    <subject>
      Aggregate Multiple Issue Changes for Email Notifications
    </subject>
    <description>
      This is not to be confused with another useful proposed feature that
      would do digest emails for notifications.
    </description>
    <start_date>2009-12-03</start_date>
    <due_date></due_date>
    <done_ratio>0</done_ratio>
    <estimated_hours></estimated_hours>
    <custom_fields>
      <custom_field name="Resolution" id="2">Duplicate</custom_field>
      <custom_field name="Texte" id="5">Test</custom_field>
      <custom_field name="Boolean" id="6">1</custom_field>
      <custom_field name="Date" id="7">2010-01-12</custom_field>
    </custom_fields>
    <created_on>Thu Dec 03 15:02:12 +0100 2009</created_on>
    <updated_on>Sun Jan 03 12:08:41 +0100 2010</updated_on>
  </issue>
  <issue>
    <id>4325</id>
    ...
  </issue>
</issues>

顯示問題

GET /issues/[id].[format]

參數:

  • include:提取關聯的資料(可選,使用逗號提取多個關聯)。可能的值
    • 子項目
    • 附件
    • 關聯
    • 變更集
    • journals - 如需更多資訊,請參閱問題日誌
    • watchers - 從 2.3.0 版開始
    • allowed_statuses - 從 5.0.x 版開始,根據以下內容傳回可用的允許狀態(與問題編輯表單中提供的相同值):
      • 問題的目前追蹤清單、問題的目前狀態和成員的角色(已定義的工作流程);
      • 是否存在任何未解決的子任務;
      • 是否存在任何未解決的阻擋問題;
      • 是否存在已關閉的父問題。

範例:

GET /issues/2.xml
GET /issues/2.json

GET /issues/2.xml
GET /issues/2.xml?include=attachments
GET /issues/2.xml?include=attachments,journals

建立問題

POST /issues.[format]

參數:

  • issue - 問題屬性的雜湊
    • project_id
    • tracker_id
    • status_id
    • priority_id
    • 主旨
    • 說明
    • category_id
    • fixed_version_id - 目標版本的 ID(先前稱為「修復版本」,且在 API 中仍以此稱呼)
    • assigned_to_id - 要指派問題給使用者的 ID(目前沒有依名稱指派的機制)
    • parent_issue_id - 父問題的 ID
    • custom_fields - 請參閱 自訂欄位
    • watcher_user_ids - 要新增為關注者的使用者 ID 陣列(自 2.3.0 版起)
    • is_private - 使用 true 或 false 表示問題是否為私人問題
    • estimated_hours - 問題的估計時數

建立問題時可以新增附件,請參閱 附加檔案

範例:

POST /issues.xml

<?xml version="1.0"?>
<issue>
  <project_id>1</project_id>
  <subject>Example</subject>
  <priority_id>4</priority_id>
</issue>

POST /issues.json

{
  "issue": {
    "project_id": 1,
    "subject": "Example",
    "priority_id": 4
  }
}

更新問題

PUT /issues/[id].[format]

參數:

  • issue - 問題屬性的雜湊
    • project_id
    • tracker_id
    • status_id
    • 主旨
    • ...
    • notes - 有關更新的註解
    • private_notes - 如果註解為私人註解,則為 true

更新問題時可以新增附件,請參閱 附加檔案

範例:

PUT /issues/[id].xml
<?xml version="1.0"?>
<issue>
  <subject>Subject changed</subject>
  <notes>The subject was changed</notes>
</issue>
PUT /issues/[id].json
{
  "issue": {
    "subject": "Subject changed",
    "notes": "The subject was changed" 
  }
}

刪除問題

DELETE /issues/[id].[format]

新增關注者

2.3.0 版新增

POST /issues/[id]/watchers.[format]

參數:

  • user_id(必填):要新增為關注者的使用者 ID

移除關注者

2.3.0 版新增

DELETE /issues/[id]/watchers/[user_id].[format]

參數

Mischa The Evil大約 3 年前 更新 · 70 個修訂