フローサービスAPIについて

フローサービスAPIは、プロジェクトの登録やフローの実行などを簡単に行うことができるWebAPIです。

目次

リクエスト

HTTPメソッド
HTTPメソッド 説明
GET データを取得する時に使用します。list, show などのAPIで使用します。
POST フローサービスに対して登録や更新、削除などを行うときに使用します。register, unregister, execute, post などのAPIで使用します。

POSTメソッドの場合、リクエストパラメーターはx-www-form-urlencoded形式で指定してください。

リクエストURL

リクエスト先のURLは次のような形式になります。

http://{Hostname}:{Port}/api/{Module}/{Function}[.{Format}]

上記のURL中の{Hostname}などのキーワードの説明については次の通りです。

キーワード 説明
Hostname フローサービスのホスト名またはIPアドレスを指定します。
Port フローサービスのフローデザイナーリスナーのポート番号を指定します。標準インストールした場合は21381となります。
Module APIのモジュール名を指定します。例えば、authとかflowなどです。
Function APIの機能名を指定します。例えば、loginとかlogoutなどです。
Format 結果の形式をxmlまたはjsonで指定します。省略した場合はxmlとなります。
例えば、loginの結果をjson形式で取得したい場合は
http://{Hostname}:{Port}/api/auth/login.json
となります。

▲ このページのトップへ

レスポンス

APIの実行が成功した場合、HTTPステータスコードは200(OK)が返ります。
APIの実行がエラーとなった場合にどのようなHTTPステータスコードとエラーコードが返るかについては、共通エラーコードと各機能の「エラーケース」を参照してください。

共通エラーコード
エラーコード HTTPステータスコード 説明
2000 400 Bad Request 必須パラメーターがないなどのようにリクエストに誤りがある場合
2001 403 Forbidden ログインに失敗したり、ログインしていなかった場合
2002 404 Not Found URLが誤っていた場合
2003 405 Method Not Allowed リクエストされたHTTPメソッド(GETやPOSTなど)が許可されていない場合
9000 500 Internal Server Error サーバー内部でエラーが発生した場合
成功結果の形式
<result>
	<status>success</status>
	<data>
		各APIごとの実行結果
	</data>
</result>
エラー結果の形式
<result>
	<status>failure</status>
	<data>
		<code>エラーコード</code>
		<message>エラーメッセージ</message>
	</data>
</result>

▲ このページのトップへ

APIの実行方法

APIを実行するためには、次の手順で行います。

  1. ログインAPIであるauth/loginを実行します
  2. ログインAPIが成功するとセッションIDを取得することができます
  3. 各APIの実行では、X-Fs-SessionIdという名前のHTTPヘッダに、ログインAPIで取得したセッションIDを設定してください
  4. 最後にログアウトAPIであるauth/logoutを実行します

以下に上記の手順での実行例を記します。

1. ログインAPIを実行
POST /api/auth/login HTTP/1.1
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Content-Length: 26

user=/guest&password=guest
2. ログインAPIの結果からセッションIDを取得
<result>
	<status>success</status>
	<data>
		<sessionId>F15B47BC1F004DB489BAF1E4CDD0100D</sessionId>
	</data>
</result>
3. 各APIを実行(ここではproject/listを実行しています)
GET /api/project/list HTTP/1.1
X-Fs-SessionId: F15B47BC1F004DB489BAF1E4CDD0100D
4. ログアウトAPIを実行
POST /api/auth/logout HTTP/1.1
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Content-Length: 42

sessionId=F15B47BC1F004DB489BAF1E4CDD0100D

▲ このページのトップへ