PythonでRedmine APIを操作する方法(初心者向け)
はじめに
PythonでRedmine APIを操作することで、チケット情報の取得・更新・登録を自動化できます。本記事では、Redmine APIの基本と、Pythonを使った操作方法を初心者向けに解説します。
Redmine APIとは?
Redmine API(REST API)を利用すると、外部システムやスクリプトからRedmineのデータにアクセスできます。APIを使うことで以下の操作が可能です。
- チケットの取得・更新・作成
- プロジェクト情報の取得
- ユーザー情報の管理
- 添付ファイルのアップロード など
APIを利用するためには、APIキー を発行し、認証を行う必要があります。
事前準備
1. Redmine APIの有効化
Redmineの管理画面で以下の設定を行います。 1. Redmineに管理者権限でログイン 2. 「管理」 → 「設定」 → 「認証」タブを開く 3. 「REST APIを有効にする」にチェックを入れる
2. APIキーの取得
PythonでRedmine APIを使う
必要なライブラリのインストール
PythonでRedmine APIを扱うには、python-redmine
ライブラリを利用します。以下のコマンドでインストールしましょう。
pip install python-redmine
API接続の基本設定
PythonスクリプトでRedmine APIに接続するコードを記述します。
from redmine import Redmine # RedmineのURLとAPIキーを設定 REDMINE_URL = "https://your-redmine.com" API_KEY = "your_api_key" # Redmineに接続 redmine = Redmine(REDMINE_URL, key=API_KEY) # 接続確認 try: user = redmine.user.get('current') print(f"ログインユーザー: {user.firstname} {user.lastname}") except Exception as e: print(f"接続エラー: {e}")
チケット情報の取得
特定のチケット情報を取得
以下のコードで、特定のチケットIDを指定して詳細情報を取得できます。
# チケットIDを指定 ticket_id = 12345 # チケット情報を取得 try: ticket = redmine.issue.get(ticket_id) print(f"チケットの件名: {ticket.subject}") print(f"ステータス: {ticket.status.name}") print(f"担当者: {ticket.assigned_to}") except Exception as e: print(f"エラー: {e}")
プロジェクトのすべてのチケットを取得
プロジェクトIDを指定して、すべてのチケットを取得できます。
# プロジェクトIDを指定 project_id = "my_project" # チケット一覧を取得 try: issues = redmine.issue.filter(project_id=project_id) for issue in issues: print(f"[{issue.id}] {issue.subject} - {issue.status.name}") except Exception as e: print(f"エラー: {e}")
まとめ
✅ Redmine APIを有効化し、APIキーを取得する
✅ python-redmineライブラリを使ってRedmineに接続する
✅ チケット情報を取得し、プロジェクトの管理を自動化する
次回の記事では、Redmine APIを使ってチケットを更新・新規作成する方法 を紹介します。ぜひ活用してみてください!