Project

General

Profile

Actions

Rest api with ruby » History » Revision 8

« Previous | Revision 8/15 (diff) | Next »
Toshi MARUYAMA, 2016-04-25 14:23
commnet out "issue.destroy" because this sample id is hard-coded "1"


Using the REST API with Ruby

Redmine REST API follows the Rails's RESTful conventions, so using it with ActiveResource is pretty straightforward.

ActiveResource

Here is a simple ruby script that demonstrates how to use the Redmine REST API:

require 'rubygems'
require 'active_resource'

# Issue model on the client side
class Issue < ActiveResource::Base
  self.site = 'http://redmine.server/'
  self.user = 'foo'
  self.password = 'bar'
end

# Retrieving issues
issues = Issue.find(:all)
puts issues.first.subject

# Retrieving an issue
issue = Issue.find(1)
puts issue.description
puts issue.author.name

# Creating an issue
issue = Issue.new(
  :subject => 'REST API',
  :assigned_to_id => 1,
  :project_id => 1
)
issue.custom_field_values = {'2' => 'Fixed'}
if issue.save
  puts issue.id
else
  puts issue.errors.full_messages
end

# Updating an issue
issue = Issue.find(1)
issue.subject = 'REST API'
issue.save

# Deleting an issue
issue = Issue.find(1)
#issue.destroy

You may need to set include_root_in_json = true in your ActiveResource class

Updated by Toshi MARUYAMA over 8 years ago · 8 revisions