Project

General

Profile

Actions

redmine.org の Rest_api_with_ruby の日本語訳です。

Ruby での REST API の使用法

Redmine の REST API は Rails の RESTful の仕様にあわせて作成されています。
そのため、 ActiveResource を使用するのが一番素直な方法でしょう。

ActiveResource

以下は Redmine REST API を使った簡単な ruby スクリプトです。

require 'rubygems'
require 'active_resource'

# クライアント側でのチケットのモデル
class Issue < ActiveResource::Base
  self.site = 'http://redmine.server/'
  self.user = 'foo'
  self.password = 'bar'
end

# チケットの取得
issues = Issue.find(:all)
puts issues.first.subject

# ID で指定したチケットを取得
issue = Issue.find(1)
puts issue.description
puts issue.author.name

# チケットの作成
issue = Issue.new(
  :subject => 'REST API',
  :assigned_to_id => 1,
  :project_id => 1,
  :custom_field_values => {'2' => 'Fixed'}
)
if issue.save
  puts issue.id
else
  puts issue.errors.full_messages
end

# チケットの更新
issue = Issue.find(1)
issue.subject = 'REST API'
issue.save

# チケットの削除
issue = Issue.find(1)
issue.destroy

RedmineClient gem

Eric Davis によって Redmine API 用に ActiveResource をラップしたものが gem パッケージとして公開されています。
詳しい情報と使用例に関しては以下のチケットを見て下さい。

Updated by Mitsuyoshi Yoshida almost 9 years ago · 2 revisions