SlideShare a Scribd company logo
1 of 44
Download to read offline
Redmineをちょっと便利に! 
プログラミング無しで使ってみるREST API
 
前田剛 
(ファーエンドテクノロジー株式会社)
2018/05/26 redmine.tokyo
スライド公開URL: 
h ps://vividtone.github.io/redmine‐tokyo‐slide‐20180526/
1
プログラミングをせずに、コマンドラインツールの組み合わせでRedmineのAPIにアクセス
してみます。
curl: HTTPリクエストを行う
jq: JSONデータを整形・加工する
2
RedmineのREST APIRedmineのREST API
3
REST APIとはREST APIとは
Redmineが持つデータに、外部から 
(Web UIを経由せず)アクセスできる仕組み。
4
アクセス方法アクセス方法
HTTPでリクエストすると、XMLまたはJSON形式のレスポンスが帰ってくる
5
REST APIの何がうれしい?REST APIの何がうれしい?
他システムからRedmineを操作できる
自動化、チャットボットなど
Web UIの操作ではできないことが実現できる
6
APIを利用したツール例APIを利用したツール例
1. Redmineチケット★一括★
2. Redmine No fier
7
①Redmineチケット★一括★
Excelファイルを読み込んでチケットを登録
h ps://www.vector.co.jp/so /winnt/u l/se503347.html
8
②Redmine No fier
チケットの更新をデスクトップに通知
h ps://github.com/emsk/redmine‐no fier
9
REST APIの利用準備REST APIの利用準備
10
前提条件前提条件
コマンドラインからAPIを利用してみます
扱いやすいJSON形式を利用します
APIへのアクセスを行う端末のOSは Ubuntu または macOS を想定しています
Windowsの人は Windows Subsystem for Linux をインストールするなどしてください
11
REST APIを有効にするREST APIを有効にする
「管理」→「設定」→「API」タブの「RESTによるWebサービスを有効にする」をON
12
jq をPCにインストールするjq をPCにインストールする
jq はJSON形式のテキストを整形・加工するツール。APIで取得したデータの処理に使う。
ubuntu:ubuntu:
macOS:macOS:
sudo apt-get install jq
brew install jq
13
APIにアクセスできるかテストAPIにアクセスできるかテスト
curl --user ID: 'http://redmine.test/issues.json?limit=1'
| jq .
14
こんな感じの画面が出ればOK
15
APIで遊んでみるAPIで遊んでみる
16
ユーザー一覧の取得ユーザー一覧の取得
Redmineのユーザー一覧をJSON形式で取得する
curl --user admin: 'http://redmine.test/users.json?limit=100'
17
{"users":
[{"id":1,"login":"admin","firstname":"Redmine","lastname":"Admin","mail"
07-19T17:12:21Z","last_login_on":"2018-05-
25T20:24:22Z","custom_fields":[{"id":4,"name":"Phone
number","value":""},{"id":5,"name":"Money","value":""}]},
{"id":3,"login":"dlopper","firstname":"Dave","lastname":"Lopper","mail":
07-19T17:33:19Z","custom_fields":[{"id":4,"name":"Phone
number","value":""},{"id":5,"name":"Money","value":""}]},
{"id":22,"login":"example","firstname":"Some","lastname":"One","mail":"s
05-24T13:40:12Z","custom_fields":[{"id":4,"name":"Phone
number","value":""},{"id":5,"name":"Money","value":""}]},
{"id":2,"login":"jsmith","firstname":"John","lastname":"Smith","mail":"j
07-19T17:32:09Z","last_login_on":"2006-07-
19T20:42:15Z","custom_fields":[{"id":4,"name":"Phone
number","value":"01 42 50 00 00"},{"id":5,"name":"Money","value":""}]},
18
jq で見やすく整形jq で見やすく整形
curl --user admin: 'http://redmine.test/users.json?limit=100' |
jq .
19
{
"users": [
{
"id": 1,
"login": "admin",
"firstname": "Redmine",
"lastname": "Admin",
"mail": "admin@somenet.foo",
"created_on": "2006-07-19T17:12:21Z",
"last_login_on": "2018-05-25T20:33:44Z",
"custom_fields": [
{
"id": 4,
"name": "Phone number",
"value": ""
20
ユーザー一覧のJSONをCSVに変換ユーザー一覧のJSONをCSVに変換
1. users[] の値を取り出して、
2. 各ユーザーのデータから必要な値を取り出して配列に変換して、
3. CSVに変換
curl --user admin: http://redmine.test/users.json | jq -r
'.users[] | [.login, .mail, .firstname, .lastname] | @csv'
21
フォーマット: ログインID,メールアドレス,名,姓
"admin","admin@somenet.foo","Redmine","Admin"
"dlopper","dlopper@somenet.foo","Dave","Lopper"
"jsmith","jsmith@somenet.foo","John","Smith"
"miscuser8","miscuser8@foo.bar","User","Misc"
"miscuser9","miscuser9@foo.bar","User","Misc"
"rhill","rhill@somenet.foo","Robert","Hill"
"someone","someone@foo.bar","Some","One"
22
ユーザーを登録するユーザーを登録する
ファイル newuser.json を用意して
実行
{
"user": {
"login": "maeda",
"mail": "maeda@example.com",
"firstname": " ",
"lastname": " ",
"password": "I3JlZG1pbmV0"
}
}
cat newuser.json | curl 'http://redmine.test/users.json' --user admin:
--header 'Content-type: application/json' --data @-
23
ユーザーをCSVから一括登録するユーザーをCSVから一括登録する
ファイル user.csv を用意して
実行
user0001,foo@example.com,Joe,Bloggs,HiaH4JJd
user0002,bar@example.com,Jane,Public,9iQYyLn5
user0003,baz@example.com,Chris,Wong,dG9EFggG
cat /tmp/users.csv | while read LINE
do
echo $LINE | jq -R 'gsub(""";"") | split(",") | {"user": {"login": .
[0], "mail": .[1], "firstname": .[2], "lastname": .[3], "password": .
[4]}}' | curl -v 'http://redmine.test/users.json' --user admin:
--header 'Content-type: application/json' --data @-
done
24
1. 1行ずつ読み取りコマンド実行: 
2. ダブルクォーテーションを削除: 
3. コンマで分割: 
4. JSONに変換: 
5. 標準入力からJSONを受け取りAPIを呼び出してユーザー登録: 
cat /tmp/users.csv | while read LINE
do
echo $LINE | jq -R 'gsub(""";"") | split(",") | {"user": {"login": .
[0], "mail": .[1], "firstname": .[2], "lastname": .[3], "password": .
[4]}}' | curl 'http://redmine.test/users.json' --user admin: --
header 'Content-type: application/json' --data @-
done
25
チケット操作チケット操作
#
curl http:// /issues.json --user ID:
#
curl http:// /issues/1.json --user ID:
#
curl http:// /issues.json --user ID: --header
'Content-type: application/json' --data '{"issue": {"project_id": 1,
"tracker_id": 1, "subject": " ", "description": " "}}'
#
curl http:// /issues/5.json --user ID: --request
'PUT' --header 'Content-type: application/json' --data '{"issue":
{"subject": " ", "description": " "}}'
#
curl http:// /issues/16.json --user ID: --request
'DELETE'
26
指定したチケットを取得する指定したチケットを取得する
curl --user ID: 'http://redmine.test/issues/1.json' | jq .
27
{
"issue": {
"id": 1,
"project": {
"id": 1,
"name": "eCookbook"
},
"tracker": {
"id": 1,
"name": "Bug"
},
"status": {
"id": 1,
"name": "New"
},
28
チケットを1行のテキストに変換チケットを1行のテキストに変換
コマンド
結果
curl --user ID: 'http://redmine.test/issues/1.json?
limit=100' | jq '.issue | "(.tracker.name) #(.id) - (.subject) (
(.status.name)) http://redmine.test/issues/(.id)" | @text'
Bug #1 - Cannot print recipes (New) http://redmine.test/issues/1
29
開始日が今日以前のチケットを抽出開始日が今日以前のチケットを抽出
コマンド
結果
curl --user ID: "http://redmine.test/issues.json?
limit=100&start_date=<=`date +%Y-%m-%d`&sort=start_date" | jq -r
'.issues[] | "(.tracker["name"]) #(.id) - (.subject) (
(.start_date))" | @text'
Bug #3 - Error 281 when updating a recipe (2018-05-08)
Bug #7 - Issue due today (2018-05-13)
Feature request #2 - Add ingredients categories (2018-05-21)
Bug #1 - Cannot print recipes (2018-05-22)
Bug #6 - Issue of a private subproject (2018-05-23)
Bug #9 - Blocked Issue (2018-05-23)
Bug #10 - Issue Doing the Blocking (2018-05-23)
30
未完了で、自分が担当で、更新日が7日以上前のチケット未完了で、自分が担当で、更新日が7日以上前のチケット
から1件をランダムに表示から1件をランダムに表示
コマンド
結果
curl --user ID: "http://redmine.test/issues.json?
limit=100&assigned_to_id=me&updated_on=<=`date -v-7d +%Y-%m-%d`" | jq -
r '.issues[] | "(.tracker.name) #(.id) - (.subject) ((.updated_on))
http://redmine.test/issues/(.id)" | @text' | python -c 'import sys,
random; print(random.choice(sys.stdin.readlines()));'
Bug #3 - Error 281 when updating a recipe (2006-07-19T19:07:27Z)
http://redmine.test/issues/3
31
題名が正規表現にマッチするチケットを探す題名が正規表現にマッチするチケットを探す
1万件の未完了チケットの中から、題名が   にマッチするチケットを探す
※すごく遅いです
for OFFSET in `seq 0 100 10000`; do curl --user ID:
"https:// /issues.json?limit=100&offset=$OFFSET" | jq -r
'.issues[] | select(.subject | test(" | "; "i")) | "
(.tracker["name"]) #(.id) - (.subject)"'; done
32
Redmine API 利用TIPSRedmine API 利用TIPS
33
レスポンスはXMLかJSONレスポンスはXMLかJSON
URLの拡張子でXMLかJSONか決まる
コマンドラインで使うなら JSON がおすすめ。 jq が強力で、また 登録用データを作るのもXMLより楽
# XML
curl --user ID: 'http://redmine.test/issues/1.xml'
# JSON
curl --user ID: 'http://redmine.test/issues/1.json'
34
1回のリクエストで取得できるのは最大100件1回のリクエストで取得できるのは最大100件
デフォルトは25件。URLのパラメータ   を指定して増やせるが、上限は100
それ以上のデータを取得するには   の値を変えながら複数のリクエストを行う
# 0..99
curl --user admin: 'http://redmine.test/users.json?limit=100'
# 100..199
curl --user admin: 'http://redmine.test/users.json?
limit=100&offset=100'
# 200..299
curl --user admin: 'http://redmine.test/users.json?
limit=100&offset=200'
35
認証はbasic認証またはAPIキーで行う認証はbasic認証またはAPIキーで行う
basic認証basic認証
APIキーAPIキー
APIキーは「個人設定」画面のサイドバー内「APIアクセスキー」で確認する
curl --user ID: 'http://redmine.test/issues.json'
curl --header 'X-Redmine-API-Key: API '
'http://redmine.test/issues.json'
36
offsetを 0 から 900 まで100ずつ増やしながら10回のリクエストを行う例
for OFFSET in `seq 0 100 900`; do curl --user admin:
"http://redmine.test/users.json?limit=100&offset=$OFFSET" | jq -r
'.users[] | [.login, .mail, .firstname, .lastname] | @csv'; done >
support-users.csv
37
一部のオブジェクトはシステム管理者権限が必要一部のオブジェクトはシステム管理者権限が必要
ユーザー、グループ、カスタムフィールドの一覧など
38
デバッグにはcurl のデバッグにはcurl の オプションが便利オプションが便利
ヘッダが見えるのでRedmineサーバとの通信で何が起こっているか把握しやすい
#
$ curl -v --user ID: "http://redmine.test/users.json"
.
( )
.
< HTTP/1.1 403 Forbidden
< X-Frame-Options: SAMEORIGIN
< X-XSS-Protection: 1; mode=block
< X-Content-Type-Options: nosniff
< Content-Type: application/json
.
.
39
情報源情報源
Redmine API
 
ドキュメント化されていない機能が一部あるjq
h p://www.redmine.org/projects/redmine/wiki/Rest_api
h ps://stedolan.github.io/jq/manual/
40
まとめまとめ
41
curl と jq を使えば、プログラミング無しでAPIを活用できる。案外簡単!
Web UIでできないこともAPIを使えば実現できる場合あり
ちょっとした自動化にも使えそう
APIでRedmineをちょっと便利に!
42
ありがとうございましたありがとうございました
前田剛 ( ) 
ファーエンドテクノロジー株式会社 
代表取締役
 
というサイトを運営してます
「 」という本を書きました
Redmineのコミッターとして開発を手伝っています
@g_maeda
Redmine.JP
入門Redmine
43

More Related Content

What's hot

例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪Takuto Wada
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.Kuniharu(州晴) AKAHANE(赤羽根)
 
Redmineの意外と知らない便利機能(Redmine 4.2対応版)
Redmineの意外と知らない便利機能(Redmine 4.2対応版)Redmineの意外と知らない便利機能(Redmine 4.2対応版)
Redmineの意外と知らない便利機能(Redmine 4.2対応版)Go Maeda
 
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」akipii Oga
 
Redmine 5.0 + RedMica 2.1 新機能評価ガイド
Redmine 5.0 + RedMica 2.1 新機能評価ガイドRedmine 5.0 + RedMica 2.1 新機能評価ガイド
Redmine 5.0 + RedMica 2.1 新機能評価ガイドGo Maeda
 
はじめる! Redmine (2021年版)
はじめる! Redmine (2021年版) はじめる! Redmine (2021年版)
はじめる! Redmine (2021年版) Go Maeda
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
うちのRedmineの使い方
うちのRedmineの使い方うちのRedmineの使い方
うちのRedmineの使い方Tomohisa Kusukawa
 
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション土岐 孝平
 
Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門Minoru Maeda
 
Test Yourself - テストを書くと何がどう変わるか
Test Yourself - テストを書くと何がどう変わるかTest Yourself - テストを書くと何がどう変わるか
Test Yourself - テストを書くと何がどう変わるかTakuto Wada
 
チケット駆動開発現場の最前線.pdf
チケット駆動開発現場の最前線.pdfチケット駆動開発現場の最前線.pdf
チケット駆動開発現場の最前線.pdfYokoba
 
うちのRedmineの使い方(2)
うちのRedmineの使い方(2)うちのRedmineの使い方(2)
うちのRedmineの使い方(2)Tomohisa Kusukawa
 
Redmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システム
Redmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システムRedmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システム
Redmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システムGo Maeda
 
Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例Tomohisa Kusukawa
 
Redmineの情報を自分好みに見える化した話
Redmineの情報を自分好みに見える化した話Redmineの情報を自分好みに見える化した話
Redmineの情報を自分好みに見える化した話ToshiharuSakai
 
DBスキーマもバージョン管理したい!
DBスキーマもバージョン管理したい!DBスキーマもバージョン管理したい!
DBスキーマもバージョン管理したい!kwatch
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドAkihiro Suda
 
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計増田 亨
 

What's hot (20)

例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
 
Redmineの意外と知らない便利機能(Redmine 4.2対応版)
Redmineの意外と知らない便利機能(Redmine 4.2対応版)Redmineの意外と知らない便利機能(Redmine 4.2対応版)
Redmineの意外と知らない便利機能(Redmine 4.2対応版)
 
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
 
Redmine 5.0 + RedMica 2.1 新機能評価ガイド
Redmine 5.0 + RedMica 2.1 新機能評価ガイドRedmine 5.0 + RedMica 2.1 新機能評価ガイド
Redmine 5.0 + RedMica 2.1 新機能評価ガイド
 
はじめる! Redmine (2021年版)
はじめる! Redmine (2021年版) はじめる! Redmine (2021年版)
はじめる! Redmine (2021年版)
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
うちのRedmineの使い方
うちのRedmineの使い方うちのRedmineの使い方
うちのRedmineの使い方
 
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
 
Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門
 
Test Yourself - テストを書くと何がどう変わるか
Test Yourself - テストを書くと何がどう変わるかTest Yourself - テストを書くと何がどう変わるか
Test Yourself - テストを書くと何がどう変わるか
 
チケット駆動開発現場の最前線.pdf
チケット駆動開発現場の最前線.pdfチケット駆動開発現場の最前線.pdf
チケット駆動開発現場の最前線.pdf
 
うちのRedmineの使い方(2)
うちのRedmineの使い方(2)うちのRedmineの使い方(2)
うちのRedmineの使い方(2)
 
Redmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システム
Redmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システムRedmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システム
Redmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システム
 
Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例
 
Redmineの情報を自分好みに見える化した話
Redmineの情報を自分好みに見える化した話Redmineの情報を自分好みに見える化した話
Redmineの情報を自分好みに見える化した話
 
DBスキーマもバージョン管理したい!
DBスキーマもバージョン管理したい!DBスキーマもバージョン管理したい!
DBスキーマもバージョン管理したい!
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
 
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
 

Similar to Redmineをちょっと便利に! プログラミング無しで使ってみるREST API

ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用Yatabe Terumasa
 
Express Web Application Framework
Express Web Application FrameworkExpress Web Application Framework
Express Web Application FrameworkLearningTech
 
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例Yoshifumi Kawai
 
Spring Rooで作るGWTアプリケーション
Spring Rooで作るGWTアプリケーションSpring Rooで作るGWTアプリケーション
Spring Rooで作るGWTアプリケーションToshiaki Maki
 
Rails and twitter #twtr_hack
Rails and twitter #twtr_hackRails and twitter #twtr_hack
Rails and twitter #twtr_hacki7a
 
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Yuji Takayama
 
Using Ext Direct with SenchaTouch2
Using Ext Direct with SenchaTouch2Using Ext Direct with SenchaTouch2
Using Ext Direct with SenchaTouch2久司 中村
 
Next2Dで始めるゲーム開発 - Game Development Starting with Next2D
Next2Dで始めるゲーム開発  - Game Development Starting with Next2DNext2Dで始めるゲーム開発  - Game Development Starting with Next2D
Next2Dで始めるゲーム開発 - Game Development Starting with Next2DToshiyuki Ienaga
 
ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)Kentaro Ebisawa
 
Redmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspointsRedmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspointsShinji Tamura
 
【18-C-4】Google App Engine - 無限の彼方へ
【18-C-4】Google App Engine - 無限の彼方へ【18-C-4】Google App Engine - 無限の彼方へ
【18-C-4】Google App Engine - 無限の彼方へDevelopers Summit
 
CEDEC 2013 Unity on Windows 8
CEDEC 2013 Unity on Windows 8CEDEC 2013 Unity on Windows 8
CEDEC 2013 Unity on Windows 8Akira Onishi
 
Ruby on Rails Tutorial
Ruby on Rails TutorialRuby on Rails Tutorial
Ruby on Rails TutorialKen Iiboshi
 
Azure Application Insights とか
Azure Application Insights とかAzure Application Insights とか
Azure Application Insights とかTakekazu Omi
 
Okinawa.rb 第2回勉強会
Okinawa.rb 第2回勉強会Okinawa.rb 第2回勉強会
Okinawa.rb 第2回勉強会Naoki Takaesu
 
AppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころAppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころMasayuki Wakizaka
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Mori Shingo
 
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api   cms どうでしょう - 大阪夏の陣初めての Data api   cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣Yuji Takayama
 
Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説貴仁 大和屋
 

Similar to Redmineをちょっと便利に! プログラミング無しで使ってみるREST API (20)

ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用
 
Express Web Application Framework
Express Web Application FrameworkExpress Web Application Framework
Express Web Application Framework
 
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
 
Ajax 応用
Ajax 応用Ajax 応用
Ajax 応用
 
Spring Rooで作るGWTアプリケーション
Spring Rooで作るGWTアプリケーションSpring Rooで作るGWTアプリケーション
Spring Rooで作るGWTアプリケーション
 
Rails and twitter #twtr_hack
Rails and twitter #twtr_hackRails and twitter #twtr_hack
Rails and twitter #twtr_hack
 
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
 
Using Ext Direct with SenchaTouch2
Using Ext Direct with SenchaTouch2Using Ext Direct with SenchaTouch2
Using Ext Direct with SenchaTouch2
 
Next2Dで始めるゲーム開発 - Game Development Starting with Next2D
Next2Dで始めるゲーム開発  - Game Development Starting with Next2DNext2Dで始めるゲーム開発  - Game Development Starting with Next2D
Next2Dで始めるゲーム開発 - Game Development Starting with Next2D
 
ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)
 
Redmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspointsRedmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspoints
 
【18-C-4】Google App Engine - 無限の彼方へ
【18-C-4】Google App Engine - 無限の彼方へ【18-C-4】Google App Engine - 無限の彼方へ
【18-C-4】Google App Engine - 無限の彼方へ
 
CEDEC 2013 Unity on Windows 8
CEDEC 2013 Unity on Windows 8CEDEC 2013 Unity on Windows 8
CEDEC 2013 Unity on Windows 8
 
Ruby on Rails Tutorial
Ruby on Rails TutorialRuby on Rails Tutorial
Ruby on Rails Tutorial
 
Azure Application Insights とか
Azure Application Insights とかAzure Application Insights とか
Azure Application Insights とか
 
Okinawa.rb 第2回勉強会
Okinawa.rb 第2回勉強会Okinawa.rb 第2回勉強会
Okinawa.rb 第2回勉強会
 
AppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころAppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころ
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
 
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api   cms どうでしょう - 大阪夏の陣初めての Data api   cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣
 
Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説
 

More from Go Maeda

RedMica 2.2 (2022-11) 新機能ハイライト
RedMica 2.2 (2022-11) 新機能ハイライトRedMica 2.2 (2022-11) 新機能ハイライト
RedMica 2.2 (2022-11) 新機能ハイライトGo Maeda
 
Redmineの開発状況のこれまでと現在
Redmineの開発状況のこれまでと現在Redmineの開発状況のこれまでと現在
Redmineの開発状況のこれまでと現在Go Maeda
 
挫折しないRedmine (2022)
 挫折しないRedmine  (2022) 挫折しないRedmine  (2022)
挫折しないRedmine (2022)Go Maeda
 
RedMica 2.0 (2021-11) 新機能ハイライト
RedMica 2.0 (2021-11) 新機能ハイライトRedMica 2.0 (2021-11) 新機能ハイライト
RedMica 2.0 (2021-11) 新機能ハイライトGo Maeda
 
Redmine 4.2 新機能評価ガイド
Redmine 4.2 新機能評価ガイドRedmine 4.2 新機能評価ガイド
Redmine 4.2 新機能評価ガイドGo Maeda
 
Redmine 4.1 / RedMica 1.0ユーザーのための RedMica 1.1 (2020-05)・ 1.2 (2020-11) 新機能ガイド
Redmine 4.1 / RedMica 1.0ユーザーのための RedMica  1.1 (2020-05)・ 1.2 (2020-11) 新機能ガイドRedmine 4.1 / RedMica 1.0ユーザーのための RedMica  1.1 (2020-05)・ 1.2 (2020-11) 新機能ガイド
Redmine 4.1 / RedMica 1.0ユーザーのための RedMica 1.1 (2020-05)・ 1.2 (2020-11) 新機能ガイドGo Maeda
 
Redmineの開発体制の現況2020
Redmineの開発体制の現況2020Redmineの開発体制の現況2020
Redmineの開発体制の現況2020Go Maeda
 
【Redmine 4.2 を先取り】RedMica 1.1 (2020-05) 新機能ハイライト
【Redmine 4.2 を先取り】RedMica  1.1 (2020-05) 新機能ハイライト【Redmine 4.2 を先取り】RedMica  1.1 (2020-05) 新機能ハイライト
【Redmine 4.2 を先取り】RedMica 1.1 (2020-05) 新機能ハイライトGo Maeda
 
RedMica — The future Redmine you can get today / 今日使える明日のRedmine
RedMica — The future Redmine you can get today / 今日使える明日のRedmineRedMica — The future Redmine you can get today / 今日使える明日のRedmine
RedMica — The future Redmine you can get today / 今日使える明日のRedmineGo Maeda
 
Redmine 4.1 新機能評価ガイド <速報版>
Redmine 4.1 新機能評価ガイド <速報版>Redmine 4.1 新機能評価ガイド <速報版>
Redmine 4.1 新機能評価ガイド <速報版>Go Maeda
 
Redmine 4.0 の新機能、Redmine 4.1の開発状況
Redmine 4.0 の新機能、Redmine 4.1の開発状況Redmine 4.0 の新機能、Redmine 4.1の開発状況
Redmine 4.0 の新機能、Redmine 4.1の開発状況Go Maeda
 
Redmine 4.0 おすすめ新機能 ピックアップ(第2版)
Redmine 4.0 おすすめ新機能 ピックアップ(第2版)Redmine 4.0 おすすめ新機能 ピックアップ(第2版)
Redmine 4.0 おすすめ新機能 ピックアップ(第2版)Go Maeda
 
12 years of Redmine and 10 years of Far End Technologies
12 years of Redmine and 10 years of Far End Technologies12 years of Redmine and 10 years of Far End Technologies
12 years of Redmine and 10 years of Far End TechnologiesGo Maeda
 
はじめる! Redmine (2017)
 はじめる! Redmine (2017) はじめる! Redmine (2017)
はじめる! Redmine (2017)Go Maeda
 
開発チームに必要なツールと情報をすべて集約。Redmineベースのプロジェクト管理クラウドサービス「Planio」
開発チームに必要なツールと情報をすべて集約。Redmineベースのプロジェクト管理クラウドサービス「Planio」開発チームに必要なツールと情報をすべて集約。Redmineベースのプロジェクト管理クラウドサービス「Planio」
開発チームに必要なツールと情報をすべて集約。Redmineベースのプロジェクト管理クラウドサービス「Planio」Go Maeda
 
Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫Go Maeda
 
Redmine 10周年記念 10年ふりかえり
Redmine 10周年記念 10年ふりかえりRedmine 10周年記念 10年ふりかえり
Redmine 10周年記念 10年ふりかえりGo Maeda
 
みんなでRedmineをより良くしよう −Redmineプロジェクトへの貢献の仕方−
みんなでRedmineをより良くしよう −Redmineプロジェクトへの貢献の仕方−みんなでRedmineをより良くしよう −Redmineプロジェクトへの貢献の仕方−
みんなでRedmineをより良くしよう −Redmineプロジェクトへの貢献の仕方−Go Maeda
 
2015年に追加されたRedmineの新機能とこれからのRedmine
2015年に追加されたRedmineの新機能とこれからのRedmine2015年に追加されたRedmineの新機能とこれからのRedmine
2015年に追加されたRedmineの新機能とこれからのRedmineGo Maeda
 
Redmineを使ったヘルプデスクシステムでサポート業務を効率化
Redmineを使ったヘルプデスクシステムでサポート業務を効率化Redmineを使ったヘルプデスクシステムでサポート業務を効率化
Redmineを使ったヘルプデスクシステムでサポート業務を効率化Go Maeda
 

More from Go Maeda (20)

RedMica 2.2 (2022-11) 新機能ハイライト
RedMica 2.2 (2022-11) 新機能ハイライトRedMica 2.2 (2022-11) 新機能ハイライト
RedMica 2.2 (2022-11) 新機能ハイライト
 
Redmineの開発状況のこれまでと現在
Redmineの開発状況のこれまでと現在Redmineの開発状況のこれまでと現在
Redmineの開発状況のこれまでと現在
 
挫折しないRedmine (2022)
 挫折しないRedmine  (2022) 挫折しないRedmine  (2022)
挫折しないRedmine (2022)
 
RedMica 2.0 (2021-11) 新機能ハイライト
RedMica 2.0 (2021-11) 新機能ハイライトRedMica 2.0 (2021-11) 新機能ハイライト
RedMica 2.0 (2021-11) 新機能ハイライト
 
Redmine 4.2 新機能評価ガイド
Redmine 4.2 新機能評価ガイドRedmine 4.2 新機能評価ガイド
Redmine 4.2 新機能評価ガイド
 
Redmine 4.1 / RedMica 1.0ユーザーのための RedMica 1.1 (2020-05)・ 1.2 (2020-11) 新機能ガイド
Redmine 4.1 / RedMica 1.0ユーザーのための RedMica  1.1 (2020-05)・ 1.2 (2020-11) 新機能ガイドRedmine 4.1 / RedMica 1.0ユーザーのための RedMica  1.1 (2020-05)・ 1.2 (2020-11) 新機能ガイド
Redmine 4.1 / RedMica 1.0ユーザーのための RedMica 1.1 (2020-05)・ 1.2 (2020-11) 新機能ガイド
 
Redmineの開発体制の現況2020
Redmineの開発体制の現況2020Redmineの開発体制の現況2020
Redmineの開発体制の現況2020
 
【Redmine 4.2 を先取り】RedMica 1.1 (2020-05) 新機能ハイライト
【Redmine 4.2 を先取り】RedMica  1.1 (2020-05) 新機能ハイライト【Redmine 4.2 を先取り】RedMica  1.1 (2020-05) 新機能ハイライト
【Redmine 4.2 を先取り】RedMica 1.1 (2020-05) 新機能ハイライト
 
RedMica — The future Redmine you can get today / 今日使える明日のRedmine
RedMica — The future Redmine you can get today / 今日使える明日のRedmineRedMica — The future Redmine you can get today / 今日使える明日のRedmine
RedMica — The future Redmine you can get today / 今日使える明日のRedmine
 
Redmine 4.1 新機能評価ガイド <速報版>
Redmine 4.1 新機能評価ガイド <速報版>Redmine 4.1 新機能評価ガイド <速報版>
Redmine 4.1 新機能評価ガイド <速報版>
 
Redmine 4.0 の新機能、Redmine 4.1の開発状況
Redmine 4.0 の新機能、Redmine 4.1の開発状況Redmine 4.0 の新機能、Redmine 4.1の開発状況
Redmine 4.0 の新機能、Redmine 4.1の開発状況
 
Redmine 4.0 おすすめ新機能 ピックアップ(第2版)
Redmine 4.0 おすすめ新機能 ピックアップ(第2版)Redmine 4.0 おすすめ新機能 ピックアップ(第2版)
Redmine 4.0 おすすめ新機能 ピックアップ(第2版)
 
12 years of Redmine and 10 years of Far End Technologies
12 years of Redmine and 10 years of Far End Technologies12 years of Redmine and 10 years of Far End Technologies
12 years of Redmine and 10 years of Far End Technologies
 
はじめる! Redmine (2017)
 はじめる! Redmine (2017) はじめる! Redmine (2017)
はじめる! Redmine (2017)
 
開発チームに必要なツールと情報をすべて集約。Redmineベースのプロジェクト管理クラウドサービス「Planio」
開発チームに必要なツールと情報をすべて集約。Redmineベースのプロジェクト管理クラウドサービス「Planio」開発チームに必要なツールと情報をすべて集約。Redmineベースのプロジェクト管理クラウドサービス「Planio」
開発チームに必要なツールと情報をすべて集約。Redmineベースのプロジェクト管理クラウドサービス「Planio」
 
Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫
 
Redmine 10周年記念 10年ふりかえり
Redmine 10周年記念 10年ふりかえりRedmine 10周年記念 10年ふりかえり
Redmine 10周年記念 10年ふりかえり
 
みんなでRedmineをより良くしよう −Redmineプロジェクトへの貢献の仕方−
みんなでRedmineをより良くしよう −Redmineプロジェクトへの貢献の仕方−みんなでRedmineをより良くしよう −Redmineプロジェクトへの貢献の仕方−
みんなでRedmineをより良くしよう −Redmineプロジェクトへの貢献の仕方−
 
2015年に追加されたRedmineの新機能とこれからのRedmine
2015年に追加されたRedmineの新機能とこれからのRedmine2015年に追加されたRedmineの新機能とこれからのRedmine
2015年に追加されたRedmineの新機能とこれからのRedmine
 
Redmineを使ったヘルプデスクシステムでサポート業務を効率化
Redmineを使ったヘルプデスクシステムでサポート業務を効率化Redmineを使ったヘルプデスクシステムでサポート業務を効率化
Redmineを使ったヘルプデスクシステムでサポート業務を効率化
 

Redmineをちょっと便利に! プログラミング無しで使ってみるREST API