FirefoxのRESTクライアントを使ってRedmineにチケットを追加

REST機能(RedmineAPI)を使って、Redmineにチケットを登録してみました。

ExcelやAccessでマクロを組んで大量投入することもできますが、今回は、Firefoxのアドオン「Poster」からRESTする方法を紹介します。

 

スポンサーリンク

Redmineの設定 - RESTを有効にする

RESTを使用できるように、先ずはRedmineを設定しましょう。

システム管理者でRedmineにログインして、設定の「API」タブを開き、「RESTによるWebサービスを有効にする」にチェックを入れます。

Redmine3.2.2では「API」タブですが、バージョンによって「認証」タブの場合があります。

 

Redmineの設定 - APIアクセスキーを取得する

RESTでチケットを更新するユーザーの個人設定画面から、APIアクセスキーを取得します。

後でPosterに設定しますので、メモ帳などにペーストしておいてください。

 

「Poster」のインストール

Redmine側の準備は終わりましたので、次は、Firefoxのアドオンマネージャで「Poster」を検索して、インストールしましょう。

インストール後は、アドオンを有効にするため再起動してください。

 

「Poster」の起動方法

インストールした「Poster」を起動します。FireFoxのメニューバーのツールから「Poster」をクリックしてください。

img_5743485822ba3

 

「Poster」への入力内容

今回はチケット登録ですので、URL には次のように入力します。

URL形式
<RedmineのURL>/issues.xml?format=xml&key=<APIアクセスキー>

URLサンプル
http://localhost/redmine/issues.xml?format=xml&key=2dd799678e009a9105915073557f9865d9d71fe7

 

Content Type には、「application/xml」を指定します。

Content には、登録したいチケットの内容を「XML形式」で入力します。XMLの詳細は、Redmine公式サイトで解説されていますので、ご参考にしてください。

Rest api - Redmine
Redmine

 

今回は、次のような内容を、チケットとして登録してみます。

<?xml version="1.0"?>
<issue>
    <tracker_id>1</tracker_id>
    <project_id>1</project_id>
    <subject>POSTで作成したチケットです</subject>
    <description>うまく登録できるかな</description>
    <custom_fields type="array">
        <custom_field id="1"><value>カスタムフィールドにも登録</value></custom_field>
        <custom_field id="2"><value>日付なら次のように入力</value></custom_field>
        <custom_field id="3"><value>2016-05-24</value></custom_field>
    </custom_fields>
</issue>

 

プロジェクトやトラッカー、カスタムフィールドの「id」は、MySQL(Redmine)に接続すれば簡単に調べることができます。方法を紹介していますので、ご参考にしてください。

A5:SQL Mk-2をMySQL(Redmine)に接続する方法
『A5:SQL Mk-2』のインストールから、Bitnami Redmine StackのMySQL(Redmine)に接続するまでを解説します。

 

またXMLでは、タグ表記などと被るため使用できない文字があります。それらは、エンティティ参照による表記に変換して入力する必要がありますので、ご注意ください。

※無意識に使ってしまい、エラーになることがよくあります(^^;)

文字エンティティ参照による表記
< (右大なり)&lt;
> (左大なり)&gt;
& (アンパーサント)&amp;
” (ダブルクォーテーション)&quot;
‘ (シングルクォーテーション)&apos;

 

REST(POST処理)の実行

すべてを入力したら、[POST]ボタンをクリックしてみましょう。

 

次のような画面が表示されれば、処理は成功です。

 

確認のため、登録したチケットをRedmineで表示してみました。

 

タイトルとURLをコピーしました